{"name":"konnect","version":"3.9.0","description":"A Pulumi provider dynamically bridged from konnect.","attribution":"This Pulumi package is based on the [`konnect` Terraform Provider](https://github.com/kong/terraform-provider-konnect).","repository":"https://github.com/kong/terraform-provider-konnect","publisher":"kong","meta":{"moduleFormat":"(.*)(?:/[^/]*)"},"language":{"csharp":{"compatibility":"tfbridge20","liftSingleValueMethodReturns":true,"respectSchemaVersion":true},"go":{"generateExtraInputTypes":true,"importBasePath":"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect","liftSingleValueMethodReturns":true,"respectSchemaVersion":true,"rootPackageName":"konnect"},"java":{"basePackage":"","buildFiles":"","gradleNexusPublishPluginVersion":"","gradleTest":""},"nodejs":{"compatibility":"tfbridge20","disableUnionOutputTypes":true,"liftSingleValueMethodReturns":true,"packageDescription":"A Pulumi provider dynamically bridged from konnect.","readme":"\u003e This provider is a derived work of the [Terraform Provider](https://github.com/kong/terraform-provider-konnect)\n\u003e distributed under [MPL 2.0](https://www.mozilla.org/en-US/MPL/2.0/). If you encounter a bug or missing feature,\n\u003e please consult the source [`terraform-provider-konnect` repo](https://github.com/kong/terraform-provider-konnect/issues).","respectSchemaVersion":true},"python":{"compatibility":"tfbridge20","pyproject":{"enabled":true},"readme":"\u003e This provider is a derived work of the [Terraform Provider](https://github.com/kong/terraform-provider-konnect)\n\u003e distributed under [MPL 2.0](https://www.mozilla.org/en-US/MPL/2.0/). If you encounter a bug or missing feature,\n\u003e please consult the source [`terraform-provider-konnect` repo](https://github.com/kong/terraform-provider-konnect/issues).","respectSchemaVersion":true}},"config":{"variables":{"konnectAccessToken":{"type":"string","description":"The Konnect access token is meant to be used by the Konnect dashboard and the decK CLI to authenticate with..","secret":true},"personalAccessToken":{"type":"string","description":"The personal access token is meant to be used as an alternative to basic-auth when accessing Konnect via APIs. You can generate a Personal Access Token (PAT) from the personal access token page in the Konnect dashboard.. Configurable via environment variable `KONNECT_TOKEN`.","secret":true},"serverUrl":{"type":"string","description":"Server URL (defaults to https://global.api.konghq.com)"},"serviceAccessToken":{"type":"string","description":"The Service access token is meant to be used between internal services.\n.","secret":true},"systemAccountAccessToken":{"type":"string","description":"The system account access token is meant for automations and integrations that are not directly associated with a human identity.\nYou can generate a system account Access Token by creating a system account and then obtaining a system account access token for that account.\nThe access token must be passed in the header of a request, for example:\n`curl -X GET 'https://global.api.konghq.com/v2/users/' --header 'Authorization: Bearer spat_i2Ej...'`\n. Configurable via environment variable `KONNECT_SPAT`.","secret":true}}},"types":{"konnect:index/ApiImplementationControlPlaneReference:ApiImplementationControlPlaneReference":{"properties":{"controlPlane":{"$ref":"#/types/konnect:index%2FApiImplementationControlPlaneReferenceControlPlane:ApiImplementationControlPlaneReferenceControlPlane","description":"A Control plane that implements an API. Requires replacement if changed.\n"},"createdAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity creation date.\n"},"id":{"type":"string","description":"Contains a unique identifier used for this resource.\n"},"updatedAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity update date.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["controlPlane","createdAt","id","updatedAt"]}}},"konnect:index/ApiImplementationControlPlaneReferenceControlPlane:ApiImplementationControlPlaneReferenceControlPlane":{"properties":{"accessControlEnforcementEnabled":{"type":"boolean","description":"Indicates if the access control enforcement plugin is installed globally in the target control plane\n"},"id":{"type":"string","description":"Not Null; Requires replacement if changed.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["accessControlEnforcementEnabled","id"]}}},"konnect:index/ApiImplementationServiceReference:ApiImplementationServiceReference":{"properties":{"createdAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity creation date.\n"},"id":{"type":"string","description":"Contains a unique identifier used for this resource.\n"},"service":{"$ref":"#/types/konnect:index%2FApiImplementationServiceReferenceService:ApiImplementationServiceReferenceService","description":"A Gateway service that implements an API. Requires replacement if changed.\n"},"updatedAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity update date.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["createdAt","id","service","updatedAt"]}}},"konnect:index/ApiImplementationServiceReferenceService:ApiImplementationServiceReferenceService":{"properties":{"controlPlaneId":{"type":"string","description":"Not Null; Requires replacement if changed.\n"},"id":{"type":"string","description":"Not Null; Requires replacement if changed.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["controlPlaneId","id"]}}},"konnect:index/ApiPortal:ApiPortal":{"properties":{"displayName":{"type":"string","description":"The display name of the portal. This value will be the portal's \u003cspan pulumi-lang-nodejs=\"`name`\" pulumi-lang-dotnet=\"`Name`\" pulumi-lang-go=\"`name`\" pulumi-lang-python=\"`name`\" pulumi-lang-yaml=\"`name`\" pulumi-lang-java=\"`name`\"\u003e`name`\u003c/span\u003e in Portal API.\n"},"id":{"type":"string","description":"The portal identifier.\n"},"name":{"type":"string","description":"The name of the portal, used to distinguish it from other portals.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["displayName","id","name"]}}},"konnect:index/ApiProductDocumentMetadata:ApiProductDocumentMetadata":{"type":"object"},"konnect:index/ApiProductPortal:ApiProductPortal":{"properties":{"portalId":{"type":"string"},"portalName":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["portalId","portalName"]}}},"konnect:index/ApiProductVersionGatewayService:ApiProductVersionGatewayService":{"properties":{"controlPlaneId":{"type":"string","description":"The identifier of the control plane that the gateway service resides in\n"},"id":{"type":"string","description":"The identifier of a gateway service associated with the version of the API product.\n"},"runtimeGroupId":{"type":"string","description":"This field is deprecated, please use \u003cspan pulumi-lang-nodejs=\"`controlPlaneId`\" pulumi-lang-dotnet=\"`ControlPlaneId`\" pulumi-lang-go=\"`controlPlaneId`\" pulumi-lang-python=\"`control_plane_id`\" pulumi-lang-yaml=\"`controlPlaneId`\" pulumi-lang-java=\"`controlPlaneId`\"\u003e`control_plane_id`\u003c/span\u003e instead. The identifier of the control plane that the gateway service resides in\n","deprecationMessage":"Deprecated"}},"type":"object","required":["controlPlaneId","id"],"language":{"nodejs":{"requiredOutputs":["controlPlaneId","id","runtimeGroupId"]}}},"konnect:index/ApiProductVersionPortal:ApiProductVersionPortal":{"properties":{"applicationRegistrationEnabled":{"type":"boolean"},"authStrategies":{"type":"array","items":{"$ref":"#/types/konnect:index%2FApiProductVersionPortalAuthStrategy:ApiProductVersionPortalAuthStrategy"}},"autoApproveRegistration":{"type":"boolean"},"deprecated":{"type":"boolean"},"portalId":{"type":"string"},"portalName":{"type":"string"},"portalProductVersionId":{"type":"string"},"publishStatus":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["applicationRegistrationEnabled","authStrategies","autoApproveRegistration","deprecated","portalId","portalName","portalProductVersionId","publishStatus"]}}},"konnect:index/ApiProductVersionPortalAuthStrategy:ApiProductVersionPortalAuthStrategy":{"properties":{"id":{"type":"string"},"name":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id","name"]}}},"konnect:index/ApiSpecificationValidationMessage:ApiSpecificationValidationMessage":{"properties":{"message":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["message"]}}},"konnect:index/ApiVersionSpec:ApiVersionSpec":{"properties":{"content":{"type":"string","description":"The raw content of your API spec, in json or yaml format (OpenAPI or AsyncAPI).\n"},"type":{"type":"string","description":"The type of specification being stored. This allows us to render the specification correctly.\n"},"validationMessages":{"type":"array","items":{"$ref":"#/types/konnect:index%2FApiVersionSpecValidationMessage:ApiVersionSpecValidationMessage"},"description":"The errors that occurred while parsing the API version spec.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["type","validationMessages"]}}},"konnect:index/ApiVersionSpecValidationMessage:ApiVersionSpecValidationMessage":{"properties":{"message":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["message"]}}},"konnect:index/ApplicationAuthStrategyKeyAuth:ApplicationAuthStrategyKeyAuth":{"properties":{"active":{"type":"boolean","description":"At least one published entity is using this auth strategy.\n"},"configs":{"$ref":"#/types/konnect:index%2FApplicationAuthStrategyKeyAuthConfigs:ApplicationAuthStrategyKeyAuthConfigs","description":"JSON-B object containing the configuration for the Key Auth strategy. Not Null; Requires replacement if changed.\n"},"createdAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity creation date.\n"},"dcrProvider":{"$ref":"#/types/konnect:index%2FApplicationAuthStrategyKeyAuthDcrProvider:ApplicationAuthStrategyKeyAuthDcrProvider"},"displayName":{"type":"string","description":"The display name of the Auth strategy. This is used to identify the Auth strategy in the Portal UI. Not Null; Requires replacement if changed.\n"},"id":{"type":"string","description":"Contains a unique identifier used for this resource.\n"},"labels":{"type":"object","additionalProperties":{"type":"string"},"description":"Labels store metadata of an entity that can be used for filtering an entity list or for searching across entity types.\n"},"name":{"type":"string","description":"The name of the auth strategy. This is used to identify the auth strategy in the Konnect UI.\n"},"strategyType":{"type":"string","description":"Not Null; must be \u003cspan pulumi-lang-nodejs=\"\"keyAuth\"\" pulumi-lang-dotnet=\"\"KeyAuth\"\" pulumi-lang-go=\"\"keyAuth\"\" pulumi-lang-python=\"\"key_auth\"\" pulumi-lang-yaml=\"\"keyAuth\"\" pulumi-lang-java=\"\"keyAuth\"\"\u003e\"key_auth\"\u003c/span\u003e; Requires replacement if changed.\n"},"updatedAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity update date.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["active","configs","createdAt","dcrProvider","displayName","id","labels","name","strategyType","updatedAt"]}}},"konnect:index/ApplicationAuthStrategyKeyAuthConfigs:ApplicationAuthStrategyKeyAuthConfigs":{"properties":{"keyAuth":{"$ref":"#/types/konnect:index%2FApplicationAuthStrategyKeyAuthConfigsKeyAuth:ApplicationAuthStrategyKeyAuthConfigsKeyAuth","description":"The most basic mode to configure an Application Auth Strategy for an API Product Version.\nUsing this mode will allow developers to generate API keys that will authenticate their application requests.\nOnce authenticated, an application will be granted access to any Product Version it is registered for that is configured for Key Auth.\nNot Null; Requires replacement if changed.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["keyAuth"]}}},"konnect:index/ApplicationAuthStrategyKeyAuthConfigsKeyAuth:ApplicationAuthStrategyKeyAuthConfigsKeyAuth":{"properties":{"keyNames":{"type":"array","items":{"type":"string"},"description":"The names of the headers containing the API key. You can specify multiple header names. Requires replacement if changed.\n"},"ttl":{"$ref":"#/types/konnect:index%2FApplicationAuthStrategyKeyAuthConfigsKeyAuthTtl:ApplicationAuthStrategyKeyAuthConfigsKeyAuthTtl","description":"Default maximum Time-To-Live for keys created under this strategy. Requires replacement if changed.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["ttl"]}}},"konnect:index/ApplicationAuthStrategyKeyAuthConfigsKeyAuthTtl:ApplicationAuthStrategyKeyAuthConfigsKeyAuthTtl":{"properties":{"unit":{"type":"string","description":"Not Null; must be one of [\"days\", \"weeks\", \"years\"]; Requires replacement if changed.\n"},"value":{"type":"number","description":"Not Null; Requires replacement if changed.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["unit","value"]}}},"konnect:index/ApplicationAuthStrategyKeyAuthDcrProvider:ApplicationAuthStrategyKeyAuthDcrProvider":{"properties":{"displayName":{"type":"string","description":"The display name of the DCR provider. This is used to identify the DCR provider in the Portal UI.\n"},"id":{"type":"string","description":"Contains a unique identifier used for this resource.\n"},"name":{"type":"string"},"providerType":{"type":"string","description":"The type of DCR provider.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["displayName","id","name","providerType"]}}},"konnect:index/ApplicationAuthStrategyOpenidConnect:ApplicationAuthStrategyOpenidConnect":{"properties":{"active":{"type":"boolean","description":"At least one published entity is using this auth strategy.\n"},"configs":{"$ref":"#/types/konnect:index%2FApplicationAuthStrategyOpenidConnectConfigs:ApplicationAuthStrategyOpenidConnectConfigs","description":"JSON-B object containing the configuration for the OIDC strategy. Not Null; Requires replacement if changed.\n"},"createdAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity creation date.\n"},"dcrProvider":{"$ref":"#/types/konnect:index%2FApplicationAuthStrategyOpenidConnectDcrProvider:ApplicationAuthStrategyOpenidConnectDcrProvider"},"dcrProviderId":{"type":"string","description":"Requires replacement if changed.\n"},"displayName":{"type":"string","description":"The display name of the Auth strategy. This is used to identify the Auth strategy in the Portal UI. Not Null; Requires replacement if changed.\n"},"id":{"type":"string","description":"Contains a unique identifier used for this resource.\n"},"labels":{"type":"object","additionalProperties":{"type":"string"},"description":"Labels store metadata of an entity that can be used for filtering an entity list or for searching across entity types.\n"},"name":{"type":"string","description":"The name of the auth strategy. This is used to identify the auth strategy in the Konnect UI.\n"},"strategyType":{"type":"string","description":"Not Null; must be \u003cspan pulumi-lang-nodejs=\"\"openidConnect\"\" pulumi-lang-dotnet=\"\"OpenidConnect\"\" pulumi-lang-go=\"\"openidConnect\"\" pulumi-lang-python=\"\"openid_connect\"\" pulumi-lang-yaml=\"\"openidConnect\"\" pulumi-lang-java=\"\"openidConnect\"\"\u003e\"openid_connect\"\u003c/span\u003e; Requires replacement if changed.\n"},"updatedAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity update date.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["active","configs","createdAt","dcrProvider","displayName","id","labels","name","strategyType","updatedAt"]}}},"konnect:index/ApplicationAuthStrategyOpenidConnectConfigs:ApplicationAuthStrategyOpenidConnectConfigs":{"properties":{"openidConnect":{"$ref":"#/types/konnect:index%2FApplicationAuthStrategyOpenidConnectConfigsOpenidConnect:ApplicationAuthStrategyOpenidConnectConfigsOpenidConnect","description":"A more advanced mode to configure an API Product Version’s Application Auth Strategy.\nUsing this mode will allow developers to use API credentials issued from an external IdP that will authenticate their application requests.\nOnce authenticated, an application will be granted access to any Product Version it is registered for that is configured for the same Auth Strategy.\nAn OIDC strategy may be used in conjunction with a DCR provider to automatically create the IdP application.\nNot Null; Requires replacement if changed.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["openidConnect"]}}},"konnect:index/ApplicationAuthStrategyOpenidConnectConfigsOpenidConnect:ApplicationAuthStrategyOpenidConnectConfigsOpenidConnect":{"properties":{"additionalProperties":{"type":"string","description":"Requires replacement if changed.; Parsed as JSON.\n"},"authMethods":{"type":"array","items":{"type":"string"},"description":"Not Null; Requires replacement if changed.\n"},"credentialClaims":{"type":"array","items":{"type":"string"},"description":"Not Null; Requires replacement if changed.\n"},"issuer":{"type":"string","description":"Not Null; Requires replacement if changed.\n"},"scopes":{"type":"array","items":{"type":"string"},"description":"Not Null; Requires replacement if changed.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["additionalProperties","authMethods","credentialClaims","issuer","scopes"]}}},"konnect:index/ApplicationAuthStrategyOpenidConnectDcrProvider:ApplicationAuthStrategyOpenidConnectDcrProvider":{"properties":{"displayName":{"type":"string","description":"The display name of the DCR provider. This is used to identify the DCR provider in the Portal UI.\n"},"id":{"type":"string","description":"Contains a unique identifier used for this resource.\n"},"name":{"type":"string"},"providerType":{"type":"string","description":"The type of DCR provider.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["displayName","id","name","providerType"]}}},"konnect:index/CloudGatewayConfigurationDataplaneGroup:CloudGatewayConfigurationDataplaneGroup":{"properties":{"autoscale":{"$ref":"#/types/konnect:index%2FCloudGatewayConfigurationDataplaneGroupAutoscale:CloudGatewayConfigurationDataplaneGroupAutoscale"},"cloudGatewayNetworkId":{"type":"string","description":"The network ID to operate on. For serverless.v1 kind of cloud gateways, this field should be omitted.\n"},"createdAt":{"type":"string","description":"An RFC-3339 timestamp representation of data-plane group creation date.\n"},"egressIpAddresses":{"type":"array","items":{"type":"string"},"description":"List of egress IP addresses for the network that this data-plane group runs on.\n"},"environments":{"type":"array","items":{"$ref":"#/types/konnect:index%2FCloudGatewayConfigurationDataplaneGroupEnvironment:CloudGatewayConfigurationDataplaneGroupEnvironment"},"description":"Array of environment variables to set for a data-plane group.\n"},"id":{"type":"string","description":"ID of the data-plane group that represents a deployment target for a set of data-planes.\n"},"privateIpAddresses":{"type":"array","items":{"type":"string"},"description":"List of private IP addresses of the internal load balancer that proxies traffic to this data-plane group.\n"},"provider":{"type":"string","description":"Name of cloud provider. Not Null; must be one of [\"aws\", \"azure\", \"gcp\"]\n"},"region":{"type":"string","description":"Region ID for cloud provider region. Not Null\n"},"state":{"type":"string","description":"State of the data-plane group.\n"},"updatedAt":{"type":"string","description":"An RFC-3339 timestamp representation of data-plane group update date.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["autoscale","cloudGatewayNetworkId","createdAt","egressIpAddresses","environments","id","privateIpAddresses","provider","region","state","updatedAt"]}}},"konnect:index/CloudGatewayConfigurationDataplaneGroupAutoscale:CloudGatewayConfigurationDataplaneGroupAutoscale":{"properties":{"configurationDataPlaneGroupAutoscaleAutopilot":{"$ref":"#/types/konnect:index%2FCloudGatewayConfigurationDataplaneGroupAutoscaleConfigurationDataPlaneGroupAutoscaleAutopilot:CloudGatewayConfigurationDataplaneGroupAutoscaleConfigurationDataPlaneGroupAutoscaleAutopilot","description":"Object that describes the autopilot autoscaling strategy. For serverless.v1 kind of cloud gateways, this field should be omitted.\n"},"configurationDataPlaneGroupAutoscaleStatic":{"$ref":"#/types/konnect:index%2FCloudGatewayConfigurationDataplaneGroupAutoscaleConfigurationDataPlaneGroupAutoscaleStatic:CloudGatewayConfigurationDataplaneGroupAutoscaleConfigurationDataPlaneGroupAutoscaleStatic","description":"Object that describes the static autoscaling strategy. Deprecated in favor of the autopilot autoscaling strategy. Static autoscaling will be removed in a future version. For serverless.v1 kind of cloud gateways, this field should be omitted.\n","deprecationMessage":"Deprecated"}},"type":"object"},"konnect:index/CloudGatewayConfigurationDataplaneGroupAutoscaleConfigurationDataPlaneGroupAutoscaleAutopilot:CloudGatewayConfigurationDataplaneGroupAutoscaleConfigurationDataPlaneGroupAutoscaleAutopilot":{"properties":{"baseRps":{"type":"number","description":"Base number of requests per second that the deployment target should support. Not Null\n"},"kind":{"type":"string","description":"Not Null; must be \"autopilot\"\n"},"maxRps":{"type":"number","description":"Max number of requests per second that the deployment target should support. If not set, this defaults to 10x base*rps. This field is deprecated and shouldn't be used in new configurations as it will be removed in a future version. max*rps is now calculated as 10x base_rps.\n","deprecationMessage":"Deprecated"}},"type":"object","language":{"nodejs":{"requiredOutputs":["baseRps","kind","maxRps"]}}},"konnect:index/CloudGatewayConfigurationDataplaneGroupAutoscaleConfigurationDataPlaneGroupAutoscaleStatic:CloudGatewayConfigurationDataplaneGroupAutoscaleConfigurationDataPlaneGroupAutoscaleStatic":{"properties":{"instanceType":{"type":"string","description":"Instance type name to indicate capacity. Not Null; must be one of [\"small\", \"medium\", \"large\"]\n"},"kind":{"type":"string","description":"Not Null; must be \"static\"\n"},"requestedInstances":{"type":"number","description":"Number of data-planes the deployment target will contain. Not Null\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["instanceType","kind","requestedInstances"]}}},"konnect:index/CloudGatewayConfigurationDataplaneGroupEnvironment:CloudGatewayConfigurationDataplaneGroupEnvironment":{"properties":{"name":{"type":"string","description":"Name of the environment variable field to set for the data-plane group. Must be prefixed by KONG_. Not Null\n"},"value":{"type":"string","description":"Value assigned to the environment variable field for the data-plane group. Not Null\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["name","value"]}}},"konnect:index/CloudGatewayCustomDomainStateMetadata:CloudGatewayCustomDomainStateMetadata":{"properties":{"reason":{"type":"string","description":"Reason why the custom domain may be in an erroneous state, reported from backing infrastructure.\n"},"reportedStatus":{"type":"string","description":"Reported status of the custom domain from backing infrastructure.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["reason","reportedStatus"]}}},"konnect:index/CloudGatewayNetworkProviderMetadata:CloudGatewayNetworkProviderMetadata":{"properties":{"subnetIds":{"type":"array","items":{"type":"string"}},"vpcId":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["subnetIds","vpcId"]}}},"konnect:index/CloudGatewayPrivateDnsAwsPrivateDnsResolverResponse:CloudGatewayPrivateDnsAwsPrivateDnsResolverResponse":{"properties":{"createdAt":{"type":"string","description":"An RFC-3339 timestamp representation of Private DNS creation date.\n"},"entityVersion":{"type":"number","description":"Monotonically-increasing version count of the Private DNS, to indicate the order of updates to the\nPrivate DNS.\n"},"id":{"type":"string"},"name":{"type":"string","description":"Human-readable name of the Private DNS.\n"},"privateDnsAttachmentConfig":{"$ref":"#/types/konnect:index%2FCloudGatewayPrivateDnsAwsPrivateDnsResolverResponsePrivateDnsAttachmentConfig:CloudGatewayPrivateDnsAwsPrivateDnsResolverResponsePrivateDnsAttachmentConfig"},"state":{"type":"string","description":"The current state of the Private DNS attachment. Possible values:\n"},"stateMetadata":{"$ref":"#/types/konnect:index%2FCloudGatewayPrivateDnsAwsPrivateDnsResolverResponseStateMetadata:CloudGatewayPrivateDnsAwsPrivateDnsResolverResponseStateMetadata","description":"Metadata describing the backing state of the Private Dns and why it may be in an erroneous state.\n"},"updatedAt":{"type":"string","description":"An RFC-3339 timestamp representation of Private DNS update date.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["createdAt","entityVersion","id","name","privateDnsAttachmentConfig","state","stateMetadata","updatedAt"]}}},"konnect:index/CloudGatewayPrivateDnsAwsPrivateDnsResolverResponsePrivateDnsAttachmentConfig:CloudGatewayPrivateDnsAwsPrivateDnsResolverResponsePrivateDnsAttachmentConfig":{"properties":{"dnsConfig":{"type":"object","additionalProperties":{"$ref":"#/types/konnect:index%2FCloudGatewayPrivateDnsAwsPrivateDnsResolverResponsePrivateDnsAttachmentConfigDnsConfig:CloudGatewayPrivateDnsAwsPrivateDnsResolverResponsePrivateDnsAttachmentConfigDnsConfig"},"description":"Object that contains mappings from proxied internal domains to remote DNS server IP address for a Private DNS Resolver.\n"},"kind":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["dnsConfig","kind"]}}},"konnect:index/CloudGatewayPrivateDnsAwsPrivateDnsResolverResponsePrivateDnsAttachmentConfigDnsConfig:CloudGatewayPrivateDnsAwsPrivateDnsResolverResponsePrivateDnsAttachmentConfigDnsConfig":{"properties":{"remoteDnsServerIpAddresses":{"type":"array","items":{"type":"string"},"description":"IP addresses of remote DNS servers used by the Private DNS Resolver for DNS resolution.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["remoteDnsServerIpAddresses"]}}},"konnect:index/CloudGatewayPrivateDnsAwsPrivateDnsResolverResponseStateMetadata:CloudGatewayPrivateDnsAwsPrivateDnsResolverResponseStateMetadata":{"properties":{"reason":{"type":"string","description":"Reason why the Private Dns may be in an erroneous state, reported from backing infrastructure.\n"},"reportedStatus":{"type":"string","description":"Reported status of the Private Dns from backing infrastructure.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["reason","reportedStatus"]}}},"konnect:index/CloudGatewayPrivateDnsAwsPrivateHostedZoneResponse:CloudGatewayPrivateDnsAwsPrivateHostedZoneResponse":{"properties":{"createdAt":{"type":"string","description":"An RFC-3339 timestamp representation of Private DNS creation date.\n"},"entityVersion":{"type":"number","description":"Monotonically-increasing version count of the Private DNS, to indicate the order of updates to the\nPrivate DNS.\n"},"id":{"type":"string"},"name":{"type":"string","description":"Human-readable name of the Private DNS.\n"},"privateDnsAttachmentConfig":{"$ref":"#/types/konnect:index%2FCloudGatewayPrivateDnsAwsPrivateHostedZoneResponsePrivateDnsAttachmentConfig:CloudGatewayPrivateDnsAwsPrivateHostedZoneResponsePrivateDnsAttachmentConfig"},"state":{"type":"string","description":"The current state of the Private DNS attachment. Possible values:\n"},"stateMetadata":{"$ref":"#/types/konnect:index%2FCloudGatewayPrivateDnsAwsPrivateHostedZoneResponseStateMetadata:CloudGatewayPrivateDnsAwsPrivateHostedZoneResponseStateMetadata","description":"Metadata describing the backing state of the Private Dns and why it may be in an erroneous state.\n"},"updatedAt":{"type":"string","description":"An RFC-3339 timestamp representation of Private DNS update date.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["createdAt","entityVersion","id","name","privateDnsAttachmentConfig","state","stateMetadata","updatedAt"]}}},"konnect:index/CloudGatewayPrivateDnsAwsPrivateHostedZoneResponsePrivateDnsAttachmentConfig:CloudGatewayPrivateDnsAwsPrivateHostedZoneResponsePrivateDnsAttachmentConfig":{"properties":{"hostedZoneId":{"type":"string","description":"AWS Hosted Zone to create attachment to.\n"},"kind":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["hostedZoneId","kind"]}}},"konnect:index/CloudGatewayPrivateDnsAwsPrivateHostedZoneResponseStateMetadata:CloudGatewayPrivateDnsAwsPrivateHostedZoneResponseStateMetadata":{"properties":{"reason":{"type":"string","description":"Reason why the Private Dns may be in an erroneous state, reported from backing infrastructure.\n"},"reportedStatus":{"type":"string","description":"Reported status of the Private Dns from backing infrastructure.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["reason","reportedStatus"]}}},"konnect:index/CloudGatewayPrivateDnsAzurePrivateDnsResolverResponse:CloudGatewayPrivateDnsAzurePrivateDnsResolverResponse":{"properties":{"createdAt":{"type":"string","description":"An RFC-3339 timestamp representation of Private DNS creation date.\n"},"entityVersion":{"type":"number","description":"Monotonically-increasing version count of the Private DNS, to indicate the order of updates to the\nPrivate DNS.\n"},"id":{"type":"string"},"name":{"type":"string","description":"Human-readable name of the Private DNS.\n"},"privateDnsAttachmentConfig":{"$ref":"#/types/konnect:index%2FCloudGatewayPrivateDnsAzurePrivateDnsResolverResponsePrivateDnsAttachmentConfig:CloudGatewayPrivateDnsAzurePrivateDnsResolverResponsePrivateDnsAttachmentConfig"},"state":{"type":"string","description":"The current state of the Private DNS attachment. Possible values:\n"},"stateMetadata":{"$ref":"#/types/konnect:index%2FCloudGatewayPrivateDnsAzurePrivateDnsResolverResponseStateMetadata:CloudGatewayPrivateDnsAzurePrivateDnsResolverResponseStateMetadata","description":"Metadata describing the backing state of the Private Dns and why it may be in an erroneous state.\n"},"updatedAt":{"type":"string","description":"An RFC-3339 timestamp representation of Private DNS update date.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["createdAt","entityVersion","id","name","privateDnsAttachmentConfig","state","stateMetadata","updatedAt"]}}},"konnect:index/CloudGatewayPrivateDnsAzurePrivateDnsResolverResponsePrivateDnsAttachmentConfig:CloudGatewayPrivateDnsAzurePrivateDnsResolverResponsePrivateDnsAttachmentConfig":{"properties":{"dnsConfig":{"type":"object","additionalProperties":{"$ref":"#/types/konnect:index%2FCloudGatewayPrivateDnsAzurePrivateDnsResolverResponsePrivateDnsAttachmentConfigDnsConfig:CloudGatewayPrivateDnsAzurePrivateDnsResolverResponsePrivateDnsAttachmentConfigDnsConfig"},"description":"Object that contains mappings from proxied internal domains to remote DNS server IP address for a Private DNS Resolver.\n"},"kind":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["dnsConfig","kind"]}}},"konnect:index/CloudGatewayPrivateDnsAzurePrivateDnsResolverResponsePrivateDnsAttachmentConfigDnsConfig:CloudGatewayPrivateDnsAzurePrivateDnsResolverResponsePrivateDnsAttachmentConfigDnsConfig":{"properties":{"remoteDnsServerIpAddresses":{"type":"array","items":{"type":"string"},"description":"IP addresses of remote DNS servers used by the Private DNS Resolver for DNS resolution.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["remoteDnsServerIpAddresses"]}}},"konnect:index/CloudGatewayPrivateDnsAzurePrivateDnsResolverResponseStateMetadata:CloudGatewayPrivateDnsAzurePrivateDnsResolverResponseStateMetadata":{"properties":{"reason":{"type":"string","description":"Reason why the Private Dns may be in an erroneous state, reported from backing infrastructure.\n"},"reportedStatus":{"type":"string","description":"Reported status of the Private Dns from backing infrastructure.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["reason","reportedStatus"]}}},"konnect:index/CloudGatewayPrivateDnsAzurePrivateHostedZoneResponse:CloudGatewayPrivateDnsAzurePrivateHostedZoneResponse":{"properties":{"createdAt":{"type":"string","description":"An RFC-3339 timestamp representation of Private DNS creation date.\n"},"entityVersion":{"type":"number","description":"Monotonically-increasing version count of the Private DNS, to indicate the order of updates to the\nPrivate DNS.\n"},"id":{"type":"string"},"name":{"type":"string","description":"Human-readable name of the Private DNS.\n"},"privateDnsAttachmentConfig":{"$ref":"#/types/konnect:index%2FCloudGatewayPrivateDnsAzurePrivateHostedZoneResponsePrivateDnsAttachmentConfig:CloudGatewayPrivateDnsAzurePrivateHostedZoneResponsePrivateDnsAttachmentConfig"},"state":{"type":"string","description":"The current state of the Private DNS attachment. Possible values:\n"},"stateMetadata":{"$ref":"#/types/konnect:index%2FCloudGatewayPrivateDnsAzurePrivateHostedZoneResponseStateMetadata:CloudGatewayPrivateDnsAzurePrivateHostedZoneResponseStateMetadata","description":"Metadata describing the backing state of the Private Dns and why it may be in an erroneous state.\n"},"updatedAt":{"type":"string","description":"An RFC-3339 timestamp representation of Private DNS update date.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["createdAt","entityVersion","id","name","privateDnsAttachmentConfig","state","stateMetadata","updatedAt"]}}},"konnect:index/CloudGatewayPrivateDnsAzurePrivateHostedZoneResponsePrivateDnsAttachmentConfig:CloudGatewayPrivateDnsAzurePrivateHostedZoneResponsePrivateDnsAttachmentConfig":{"properties":{"domainName":{"type":"string","description":"Customer's Azure Private DNS Zone Name.\n"},"kind":{"type":"string"},"peerResourceGroupId":{"type":"string","description":"Customer's Azure Resource Group ID.\n"},"peerSubscriptionId":{"type":"string","description":"Customer's Azure Subscription ID.\n"},"peerTenantId":{"type":"string","description":"Customer's Azure Tenant ID.\n"},"peerVnetLinkName":{"type":"string","description":"Customer's Azure VNet Link Name.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["domainName","kind","peerResourceGroupId","peerSubscriptionId","peerTenantId","peerVnetLinkName"]}}},"konnect:index/CloudGatewayPrivateDnsAzurePrivateHostedZoneResponseStateMetadata:CloudGatewayPrivateDnsAzurePrivateHostedZoneResponseStateMetadata":{"properties":{"reason":{"type":"string","description":"Reason why the Private Dns may be in an erroneous state, reported from backing infrastructure.\n"},"reportedStatus":{"type":"string","description":"Reported status of the Private Dns from backing infrastructure.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["reason","reportedStatus"]}}},"konnect:index/CloudGatewayPrivateDnsGcpPrivateHostedZoneResponse:CloudGatewayPrivateDnsGcpPrivateHostedZoneResponse":{"properties":{"createdAt":{"type":"string","description":"An RFC-3339 timestamp representation of Private DNS creation date.\n"},"entityVersion":{"type":"number","description":"Monotonically-increasing version count of the Private DNS, to indicate the order of updates to the\nPrivate DNS.\n"},"id":{"type":"string"},"name":{"type":"string","description":"Human-readable name of the Private DNS.\n"},"privateDnsAttachmentConfig":{"$ref":"#/types/konnect:index%2FCloudGatewayPrivateDnsGcpPrivateHostedZoneResponsePrivateDnsAttachmentConfig:CloudGatewayPrivateDnsGcpPrivateHostedZoneResponsePrivateDnsAttachmentConfig"},"state":{"type":"string","description":"The current state of the Private DNS attachment. Possible values:\n"},"stateMetadata":{"$ref":"#/types/konnect:index%2FCloudGatewayPrivateDnsGcpPrivateHostedZoneResponseStateMetadata:CloudGatewayPrivateDnsGcpPrivateHostedZoneResponseStateMetadata","description":"Metadata describing the backing state of the Private Dns and why it may be in an erroneous state.\n"},"updatedAt":{"type":"string","description":"An RFC-3339 timestamp representation of Private DNS update date.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["createdAt","entityVersion","id","name","privateDnsAttachmentConfig","state","stateMetadata","updatedAt"]}}},"konnect:index/CloudGatewayPrivateDnsGcpPrivateHostedZoneResponsePrivateDnsAttachmentConfig:CloudGatewayPrivateDnsGcpPrivateHostedZoneResponsePrivateDnsAttachmentConfig":{"properties":{"domainName":{"type":"string","description":"Domain name to create attachment to.\n"},"kind":{"type":"string"},"peerProjectId":{"type":"string","description":"Customer's GCP Project ID.\n"},"peerVpcName":{"type":"string","description":"Customer's GCP VPC ID.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["domainName","kind","peerProjectId","peerVpcName"]}}},"konnect:index/CloudGatewayPrivateDnsGcpPrivateHostedZoneResponseStateMetadata:CloudGatewayPrivateDnsGcpPrivateHostedZoneResponseStateMetadata":{"properties":{"reason":{"type":"string","description":"Reason why the Private Dns may be in an erroneous state, reported from backing infrastructure.\n"},"reportedStatus":{"type":"string","description":"Reported status of the Private Dns from backing infrastructure.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["reason","reportedStatus"]}}},"konnect:index/CloudGatewayPrivateDnsPrivateDnsAttachmentConfig:CloudGatewayPrivateDnsPrivateDnsAttachmentConfig":{"properties":{"awsPrivateDnsResolverAttachmentConfig":{"$ref":"#/types/konnect:index%2FCloudGatewayPrivateDnsPrivateDnsAttachmentConfigAwsPrivateDnsResolverAttachmentConfig:CloudGatewayPrivateDnsPrivateDnsAttachmentConfigAwsPrivateDnsResolverAttachmentConfig","description":"Requires replacement if changed.\n"},"awsPrivateHostedZoneAttachmentConfig":{"$ref":"#/types/konnect:index%2FCloudGatewayPrivateDnsPrivateDnsAttachmentConfigAwsPrivateHostedZoneAttachmentConfig:CloudGatewayPrivateDnsPrivateDnsAttachmentConfigAwsPrivateHostedZoneAttachmentConfig","description":"Requires replacement if changed.\n"},"azurePrivateDnsResolverAttachmentConfig":{"$ref":"#/types/konnect:index%2FCloudGatewayPrivateDnsPrivateDnsAttachmentConfigAzurePrivateDnsResolverAttachmentConfig:CloudGatewayPrivateDnsPrivateDnsAttachmentConfigAzurePrivateDnsResolverAttachmentConfig","description":"Requires replacement if changed.\n"},"azurePrivateHostedZoneAttachmentConfig":{"$ref":"#/types/konnect:index%2FCloudGatewayPrivateDnsPrivateDnsAttachmentConfigAzurePrivateHostedZoneAttachmentConfig:CloudGatewayPrivateDnsPrivateDnsAttachmentConfigAzurePrivateHostedZoneAttachmentConfig","description":"Requires replacement if changed.\n"},"gcpPrivateHostedZoneAttachmentConfig":{"$ref":"#/types/konnect:index%2FCloudGatewayPrivateDnsPrivateDnsAttachmentConfigGcpPrivateHostedZoneAttachmentConfig:CloudGatewayPrivateDnsPrivateDnsAttachmentConfigGcpPrivateHostedZoneAttachmentConfig","description":"Requires replacement if changed.\n"}},"type":"object"},"konnect:index/CloudGatewayPrivateDnsPrivateDnsAttachmentConfigAwsPrivateDnsResolverAttachmentConfig:CloudGatewayPrivateDnsPrivateDnsAttachmentConfigAwsPrivateDnsResolverAttachmentConfig":{"properties":{"dnsConfig":{"type":"object","additionalProperties":{"$ref":"#/types/konnect:index%2FCloudGatewayPrivateDnsPrivateDnsAttachmentConfigAwsPrivateDnsResolverAttachmentConfigDnsConfig:CloudGatewayPrivateDnsPrivateDnsAttachmentConfigAwsPrivateDnsResolverAttachmentConfigDnsConfig"},"description":"Object that contains mappings from proxied internal domains to remote DNS server IP address for a Private DNS Resolver. Requires replacement if changed.\n"},"kind":{"type":"string","description":"must be \"aws-outbound-resolver\"; Requires replacement if changed.\n"}},"type":"object","required":["dnsConfig","kind"]},"konnect:index/CloudGatewayPrivateDnsPrivateDnsAttachmentConfigAwsPrivateDnsResolverAttachmentConfigDnsConfig:CloudGatewayPrivateDnsPrivateDnsAttachmentConfigAwsPrivateDnsResolverAttachmentConfigDnsConfig":{"properties":{"remoteDnsServerIpAddresses":{"type":"array","items":{"type":"string"},"description":"IP addresses of remote DNS servers used by the Private DNS Resolver for DNS resolution. Requires replacement if changed.\n"}},"type":"object","required":["remoteDnsServerIpAddresses"]},"konnect:index/CloudGatewayPrivateDnsPrivateDnsAttachmentConfigAwsPrivateHostedZoneAttachmentConfig:CloudGatewayPrivateDnsPrivateDnsAttachmentConfigAwsPrivateHostedZoneAttachmentConfig":{"properties":{"hostedZoneId":{"type":"string","description":"AWS Hosted Zone to create attachment to. Requires replacement if changed.\n"},"kind":{"type":"string","description":"must be \"aws-private-hosted-zone-attachment\"; Requires replacement if changed.\n"}},"type":"object","required":["hostedZoneId","kind"]},"konnect:index/CloudGatewayPrivateDnsPrivateDnsAttachmentConfigAzurePrivateDnsResolverAttachmentConfig:CloudGatewayPrivateDnsPrivateDnsAttachmentConfigAzurePrivateDnsResolverAttachmentConfig":{"properties":{"dnsConfig":{"type":"object","additionalProperties":{"$ref":"#/types/konnect:index%2FCloudGatewayPrivateDnsPrivateDnsAttachmentConfigAzurePrivateDnsResolverAttachmentConfigDnsConfig:CloudGatewayPrivateDnsPrivateDnsAttachmentConfigAzurePrivateDnsResolverAttachmentConfigDnsConfig"},"description":"Object that contains mappings from proxied internal domains to remote DNS server IP address for a Private DNS Resolver. Requires replacement if changed.\n"},"kind":{"type":"string","description":"must be \"azure-outbound-resolver\"; Requires replacement if changed.\n"}},"type":"object","required":["dnsConfig","kind"]},"konnect:index/CloudGatewayPrivateDnsPrivateDnsAttachmentConfigAzurePrivateDnsResolverAttachmentConfigDnsConfig:CloudGatewayPrivateDnsPrivateDnsAttachmentConfigAzurePrivateDnsResolverAttachmentConfigDnsConfig":{"properties":{"remoteDnsServerIpAddresses":{"type":"array","items":{"type":"string"},"description":"IP addresses of remote DNS servers used by the Private DNS Resolver for DNS resolution. Requires replacement if changed.\n"}},"type":"object","required":["remoteDnsServerIpAddresses"]},"konnect:index/CloudGatewayPrivateDnsPrivateDnsAttachmentConfigAzurePrivateHostedZoneAttachmentConfig:CloudGatewayPrivateDnsPrivateDnsAttachmentConfigAzurePrivateHostedZoneAttachmentConfig":{"properties":{"domainName":{"type":"string","description":"Customer's Azure Private DNS Zone Name. Requires replacement if changed.\n"},"kind":{"type":"string","description":"must be \"azure-private-hosted-zone-attachment\"; Requires replacement if changed.\n"},"peerResourceGroupId":{"type":"string","description":"Customer's Azure Resource Group ID. Requires replacement if changed.\n"},"peerSubscriptionId":{"type":"string","description":"Customer's Azure Subscription ID. Requires replacement if changed.\n"},"peerTenantId":{"type":"string","description":"Customer's Azure Tenant ID. Requires replacement if changed.\n"},"peerVnetLinkName":{"type":"string","description":"Customer's Azure VNet Link Name. Requires replacement if changed.\n"}},"type":"object","required":["domainName","kind","peerResourceGroupId","peerSubscriptionId","peerTenantId","peerVnetLinkName"]},"konnect:index/CloudGatewayPrivateDnsPrivateDnsAttachmentConfigGcpPrivateHostedZoneAttachmentConfig:CloudGatewayPrivateDnsPrivateDnsAttachmentConfigGcpPrivateHostedZoneAttachmentConfig":{"properties":{"domainName":{"type":"string","description":"Domain name to create attachment to. Requires replacement if changed.\n"},"kind":{"type":"string","description":"must be \"gcp-private-hosted-zone-attachment\"; Requires replacement if changed.\n"},"peerProjectId":{"type":"string","description":"Customer's GCP Project ID. Requires replacement if changed.\n"},"peerVpcName":{"type":"string","description":"Customer's GCP VPC ID. Requires replacement if changed.\n"}},"type":"object","required":["domainName","kind","peerProjectId","peerVpcName"]},"konnect:index/CloudGatewayTransitGatewayAwsResourceEndpointGateway:CloudGatewayTransitGatewayAwsResourceEndpointGateway":{"properties":{"dnsConfigs":{"type":"array","items":{"$ref":"#/types/konnect:index%2FCloudGatewayTransitGatewayAwsResourceEndpointGatewayDnsConfig:CloudGatewayTransitGatewayAwsResourceEndpointGatewayDnsConfig"},"description":"List of mappings from remote DNS server IP address sets to proxied internal domains, for a transit gateway\nattachment.\nRequires replacement if changed.\n"},"name":{"type":"string","description":"Human-readable name of the transit gateway. Requires replacement if changed.\n"},"transitGatewayAttachmentConfig":{"$ref":"#/types/konnect:index%2FCloudGatewayTransitGatewayAwsResourceEndpointGatewayTransitGatewayAttachmentConfig:CloudGatewayTransitGatewayAwsResourceEndpointGatewayTransitGatewayAttachmentConfig"}},"type":"object","required":["name","transitGatewayAttachmentConfig"]},"konnect:index/CloudGatewayTransitGatewayAwsResourceEndpointGatewayDnsConfig:CloudGatewayTransitGatewayAwsResourceEndpointGatewayDnsConfig":{"properties":{"domainProxyLists":{"type":"array","items":{"type":"string"},"description":"Internal domain names to proxy for DNS resolution from the listed remote DNS server IP addresses,\nfor a transit gateway.\nRequires replacement if changed.\n"},"remoteDnsServerIpAddresses":{"type":"array","items":{"type":"string"},"description":"Remote DNS Server IP Addresses to connect to for resolving internal DNS via a transit gateway. Requires replacement if changed.\n"}},"type":"object","required":["domainProxyLists","remoteDnsServerIpAddresses"]},"konnect:index/CloudGatewayTransitGatewayAwsResourceEndpointGatewayResponse:CloudGatewayTransitGatewayAwsResourceEndpointGatewayResponse":{"properties":{"createdAt":{"type":"string","description":"An RFC-3339 timestamp representation of transit gateway creation date.\n"},"dnsConfigs":{"type":"array","items":{"$ref":"#/types/konnect:index%2FCloudGatewayTransitGatewayAwsResourceEndpointGatewayResponseDnsConfig:CloudGatewayTransitGatewayAwsResourceEndpointGatewayResponseDnsConfig"},"description":"List of mappings from remote DNS server IP address sets to proxied internal domains, for a transit gateway\nattachment.\n"},"entityVersion":{"type":"number","description":"Monotonically-increasing version count of the transit gateway, to indicate the order of updates to the\ntransit gateway.\n"},"id":{"type":"string"},"name":{"type":"string","description":"Human-readable name of the transit gateway.\n"},"state":{"type":"string","description":"The current state of the Transit Gateway. Possible values:\n"},"stateMetadata":{"$ref":"#/types/konnect:index%2FCloudGatewayTransitGatewayAwsResourceEndpointGatewayResponseStateMetadata:CloudGatewayTransitGatewayAwsResourceEndpointGatewayResponseStateMetadata","description":"Metadata describing the backing state of the transit gateway and why it may be in an erroneous state.\n"},"transitGatewayAttachmentConfig":{"$ref":"#/types/konnect:index%2FCloudGatewayTransitGatewayAwsResourceEndpointGatewayResponseTransitGatewayAttachmentConfig:CloudGatewayTransitGatewayAwsResourceEndpointGatewayResponseTransitGatewayAttachmentConfig"},"updatedAt":{"type":"string","description":"An RFC-3339 timestamp representation of transit gateway update date.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["createdAt","dnsConfigs","entityVersion","id","name","state","stateMetadata","transitGatewayAttachmentConfig","updatedAt"]}}},"konnect:index/CloudGatewayTransitGatewayAwsResourceEndpointGatewayResponseDnsConfig:CloudGatewayTransitGatewayAwsResourceEndpointGatewayResponseDnsConfig":{"properties":{"domainProxyLists":{"type":"array","items":{"type":"string"},"description":"Internal domain names to proxy for DNS resolution from the listed remote DNS server IP addresses,\nfor a transit gateway.\n"},"remoteDnsServerIpAddresses":{"type":"array","items":{"type":"string"},"description":"Remote DNS Server IP Addresses to connect to for resolving internal DNS via a transit gateway.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["domainProxyLists","remoteDnsServerIpAddresses"]}}},"konnect:index/CloudGatewayTransitGatewayAwsResourceEndpointGatewayResponseStateMetadata:CloudGatewayTransitGatewayAwsResourceEndpointGatewayResponseStateMetadata":{"properties":{"reason":{"type":"string","description":"Reason why the transit gateway may be in an erroneous state, reported from backing infrastructure.\n"},"reportedStatus":{"type":"string","description":"Reported status of the transit gateway from backing infrastructure.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["reason","reportedStatus"]}}},"konnect:index/CloudGatewayTransitGatewayAwsResourceEndpointGatewayResponseTransitGatewayAttachmentConfig:CloudGatewayTransitGatewayAwsResourceEndpointGatewayResponseTransitGatewayAttachmentConfig":{"properties":{"kind":{"type":"string"},"ramShareArn":{"type":"string","description":"Resource Share ARN to verify request to create transit gateway attachment.\n"},"resourceConfigs":{"type":"array","items":{"$ref":"#/types/konnect:index%2FCloudGatewayTransitGatewayAwsResourceEndpointGatewayResponseTransitGatewayAttachmentConfigResourceConfig:CloudGatewayTransitGatewayAwsResourceEndpointGatewayResponseTransitGatewayAttachmentConfigResourceConfig"},"description":"List of unique resource config mapping for aws resource endpoint.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["kind","ramShareArn","resourceConfigs"]}}},"konnect:index/CloudGatewayTransitGatewayAwsResourceEndpointGatewayResponseTransitGatewayAttachmentConfigResourceConfig:CloudGatewayTransitGatewayAwsResourceEndpointGatewayResponseTransitGatewayAttachmentConfigResourceConfig":{"properties":{"domainName":{"type":"string","description":"Domain Name to uniquely identify a resource configuration.\n"},"resourceConfigId":{"type":"string","description":"Resource Config ID to uniquely identify a resource configuration.\n"},"state":{"type":"string","description":"The current state of the resource config in AWS Resource Endpoint. Possible values:\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["domainName","resourceConfigId","state"]}}},"konnect:index/CloudGatewayTransitGatewayAwsResourceEndpointGatewayTransitGatewayAttachmentConfig:CloudGatewayTransitGatewayAwsResourceEndpointGatewayTransitGatewayAttachmentConfig":{"properties":{"kind":{"type":"string","description":"must be \"aws-resource-endpoint-attachment\"\n"},"ramShareArn":{"type":"string","description":"Resource Share ARN to verify request to create transit gateway attachment. Requires replacement if changed.\n"},"resourceConfigs":{"type":"array","items":{"$ref":"#/types/konnect:index%2FCloudGatewayTransitGatewayAwsResourceEndpointGatewayTransitGatewayAttachmentConfigResourceConfig:CloudGatewayTransitGatewayAwsResourceEndpointGatewayTransitGatewayAttachmentConfigResourceConfig"},"description":"List of unique resource config mapping for aws resource endpoint.\n"}},"type":"object","required":["kind","ramShareArn"]},"konnect:index/CloudGatewayTransitGatewayAwsResourceEndpointGatewayTransitGatewayAttachmentConfigResourceConfig:CloudGatewayTransitGatewayAwsResourceEndpointGatewayTransitGatewayAttachmentConfigResourceConfig":{"properties":{"domainName":{"type":"string","description":"Domain Name to uniquely identify a resource configuration.\n"},"resourceConfigId":{"type":"string","description":"Resource Config ID to uniquely identify a resource configuration.\n"}},"type":"object","required":["domainName","resourceConfigId"]},"konnect:index/CloudGatewayTransitGatewayAwsTransitGateway:CloudGatewayTransitGatewayAwsTransitGateway":{"properties":{"cidrBlocks":{"type":"array","items":{"type":"string"},"description":"CIDR blocks for constructing a route table for the transit gateway, when attaching to the owning\nnetwork.\n"},"dnsConfigs":{"type":"array","items":{"$ref":"#/types/konnect:index%2FCloudGatewayTransitGatewayAwsTransitGatewayDnsConfig:CloudGatewayTransitGatewayAwsTransitGatewayDnsConfig"},"description":"List of mappings from remote DNS server IP address sets to proxied internal domains, for a transit gateway\nattachment.\nRequires replacement if changed.\n"},"name":{"type":"string","description":"Human-readable name of the transit gateway. Requires replacement if changed.\n"},"transitGatewayAttachmentConfig":{"$ref":"#/types/konnect:index%2FCloudGatewayTransitGatewayAwsTransitGatewayTransitGatewayAttachmentConfig:CloudGatewayTransitGatewayAwsTransitGatewayTransitGatewayAttachmentConfig","description":"Requires replacement if changed.\n"}},"type":"object","required":["cidrBlocks","name","transitGatewayAttachmentConfig"]},"konnect:index/CloudGatewayTransitGatewayAwsTransitGatewayDnsConfig:CloudGatewayTransitGatewayAwsTransitGatewayDnsConfig":{"properties":{"domainProxyLists":{"type":"array","items":{"type":"string"},"description":"Internal domain names to proxy for DNS resolution from the listed remote DNS server IP addresses,\nfor a transit gateway.\nRequires replacement if changed.\n"},"remoteDnsServerIpAddresses":{"type":"array","items":{"type":"string"},"description":"Remote DNS Server IP Addresses to connect to for resolving internal DNS via a transit gateway. Requires replacement if changed.\n"}},"type":"object","required":["domainProxyLists","remoteDnsServerIpAddresses"]},"konnect:index/CloudGatewayTransitGatewayAwsTransitGatewayResponse:CloudGatewayTransitGatewayAwsTransitGatewayResponse":{"properties":{"cidrBlocks":{"type":"array","items":{"type":"string"},"description":"CIDR blocks for constructing a route table for the transit gateway, when attaching to the owning\nnetwork.\n"},"createdAt":{"type":"string","description":"An RFC-3339 timestamp representation of transit gateway creation date.\n"},"dnsConfigs":{"type":"array","items":{"$ref":"#/types/konnect:index%2FCloudGatewayTransitGatewayAwsTransitGatewayResponseDnsConfig:CloudGatewayTransitGatewayAwsTransitGatewayResponseDnsConfig"},"description":"List of mappings from remote DNS server IP address sets to proxied internal domains, for a transit gateway\nattachment.\n"},"entityVersion":{"type":"number","description":"Monotonically-increasing version count of the transit gateway, to indicate the order of updates to the\ntransit gateway.\n"},"id":{"type":"string"},"name":{"type":"string","description":"Human-readable name of the transit gateway.\n"},"state":{"type":"string","description":"The current state of the Transit Gateway. Possible values:\n"},"stateMetadata":{"$ref":"#/types/konnect:index%2FCloudGatewayTransitGatewayAwsTransitGatewayResponseStateMetadata:CloudGatewayTransitGatewayAwsTransitGatewayResponseStateMetadata","description":"Metadata describing the backing state of the transit gateway and why it may be in an erroneous state.\n"},"transitGatewayAttachmentConfig":{"$ref":"#/types/konnect:index%2FCloudGatewayTransitGatewayAwsTransitGatewayResponseTransitGatewayAttachmentConfig:CloudGatewayTransitGatewayAwsTransitGatewayResponseTransitGatewayAttachmentConfig"},"updatedAt":{"type":"string","description":"An RFC-3339 timestamp representation of transit gateway update date.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["cidrBlocks","createdAt","dnsConfigs","entityVersion","id","name","state","stateMetadata","transitGatewayAttachmentConfig","updatedAt"]}}},"konnect:index/CloudGatewayTransitGatewayAwsTransitGatewayResponseDnsConfig:CloudGatewayTransitGatewayAwsTransitGatewayResponseDnsConfig":{"properties":{"domainProxyLists":{"type":"array","items":{"type":"string"},"description":"Internal domain names to proxy for DNS resolution from the listed remote DNS server IP addresses,\nfor a transit gateway.\n"},"remoteDnsServerIpAddresses":{"type":"array","items":{"type":"string"},"description":"Remote DNS Server IP Addresses to connect to for resolving internal DNS via a transit gateway.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["domainProxyLists","remoteDnsServerIpAddresses"]}}},"konnect:index/CloudGatewayTransitGatewayAwsTransitGatewayResponseStateMetadata:CloudGatewayTransitGatewayAwsTransitGatewayResponseStateMetadata":{"properties":{"reason":{"type":"string","description":"Reason why the transit gateway may be in an erroneous state, reported from backing infrastructure.\n"},"reportedStatus":{"type":"string","description":"Reported status of the transit gateway from backing infrastructure.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["reason","reportedStatus"]}}},"konnect:index/CloudGatewayTransitGatewayAwsTransitGatewayResponseTransitGatewayAttachmentConfig:CloudGatewayTransitGatewayAwsTransitGatewayResponseTransitGatewayAttachmentConfig":{"properties":{"kind":{"type":"string"},"ramShareArn":{"type":"string","description":"Resource Share ARN to verify request to create transit gateway attachment.\n"},"transitGatewayId":{"type":"string","description":"AWS Transit Gateway ID to create attachment to.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["kind","ramShareArn","transitGatewayId"]}}},"konnect:index/CloudGatewayTransitGatewayAwsTransitGatewayTransitGatewayAttachmentConfig:CloudGatewayTransitGatewayAwsTransitGatewayTransitGatewayAttachmentConfig":{"properties":{"kind":{"type":"string","description":"must be \"aws-transit-gateway-attachment\"; Requires replacement if changed.\n"},"ramShareArn":{"type":"string","description":"Resource Share ARN to verify request to create transit gateway attachment. Requires replacement if changed.\n"},"transitGatewayId":{"type":"string","description":"AWS Transit Gateway ID to create attachment to. Requires replacement if changed.\n"}},"type":"object","required":["kind","ramShareArn","transitGatewayId"]},"konnect:index/CloudGatewayTransitGatewayAwsVpcPeeringGateway:CloudGatewayTransitGatewayAwsVpcPeeringGateway":{"properties":{"cidrBlocks":{"type":"array","items":{"type":"string"},"description":"CIDR blocks for constructing a route table for the transit gateway, when attaching to the owning\nnetwork.\nRequires replacement if changed.\n"},"dnsConfigs":{"type":"array","items":{"$ref":"#/types/konnect:index%2FCloudGatewayTransitGatewayAwsVpcPeeringGatewayDnsConfig:CloudGatewayTransitGatewayAwsVpcPeeringGatewayDnsConfig"},"description":"List of mappings from remote DNS server IP address sets to proxied internal domains, for a transit gateway\nattachment.\nRequires replacement if changed.\n"},"name":{"type":"string","description":"Human-readable name of the transit gateway. Requires replacement if changed.\n"},"transitGatewayAttachmentConfig":{"$ref":"#/types/konnect:index%2FCloudGatewayTransitGatewayAwsVpcPeeringGatewayTransitGatewayAttachmentConfig:CloudGatewayTransitGatewayAwsVpcPeeringGatewayTransitGatewayAttachmentConfig","description":"Requires replacement if changed.\n"}},"type":"object","required":["cidrBlocks","name","transitGatewayAttachmentConfig"]},"konnect:index/CloudGatewayTransitGatewayAwsVpcPeeringGatewayDnsConfig:CloudGatewayTransitGatewayAwsVpcPeeringGatewayDnsConfig":{"properties":{"domainProxyLists":{"type":"array","items":{"type":"string"},"description":"Internal domain names to proxy for DNS resolution from the listed remote DNS server IP addresses,\nfor a transit gateway.\nRequires replacement if changed.\n"},"remoteDnsServerIpAddresses":{"type":"array","items":{"type":"string"},"description":"Remote DNS Server IP Addresses to connect to for resolving internal DNS via a transit gateway. Requires replacement if changed.\n"}},"type":"object","required":["domainProxyLists","remoteDnsServerIpAddresses"]},"konnect:index/CloudGatewayTransitGatewayAwsVpcPeeringGatewayResponse:CloudGatewayTransitGatewayAwsVpcPeeringGatewayResponse":{"properties":{"cidrBlocks":{"type":"array","items":{"type":"string"},"description":"CIDR blocks for constructing a route table for the transit gateway, when attaching to the owning\nnetwork.\n"},"createdAt":{"type":"string","description":"An RFC-3339 timestamp representation of transit gateway creation date.\n"},"dnsConfigs":{"type":"array","items":{"$ref":"#/types/konnect:index%2FCloudGatewayTransitGatewayAwsVpcPeeringGatewayResponseDnsConfig:CloudGatewayTransitGatewayAwsVpcPeeringGatewayResponseDnsConfig"},"description":"List of mappings from remote DNS server IP address sets to proxied internal domains, for a transit gateway\nattachment.\n"},"entityVersion":{"type":"number","description":"Monotonically-increasing version count of the transit gateway, to indicate the order of updates to the\ntransit gateway.\n"},"id":{"type":"string"},"name":{"type":"string","description":"Human-readable name of the transit gateway.\n"},"state":{"type":"string","description":"The current state of the Transit Gateway. Possible values:\n"},"stateMetadata":{"$ref":"#/types/konnect:index%2FCloudGatewayTransitGatewayAwsVpcPeeringGatewayResponseStateMetadata:CloudGatewayTransitGatewayAwsVpcPeeringGatewayResponseStateMetadata","description":"Metadata describing the backing state of the transit gateway and why it may be in an erroneous state.\n"},"transitGatewayAttachmentConfig":{"$ref":"#/types/konnect:index%2FCloudGatewayTransitGatewayAwsVpcPeeringGatewayResponseTransitGatewayAttachmentConfig:CloudGatewayTransitGatewayAwsVpcPeeringGatewayResponseTransitGatewayAttachmentConfig"},"updatedAt":{"type":"string","description":"An RFC-3339 timestamp representation of transit gateway update date.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["cidrBlocks","createdAt","dnsConfigs","entityVersion","id","name","state","stateMetadata","transitGatewayAttachmentConfig","updatedAt"]}}},"konnect:index/CloudGatewayTransitGatewayAwsVpcPeeringGatewayResponseDnsConfig:CloudGatewayTransitGatewayAwsVpcPeeringGatewayResponseDnsConfig":{"properties":{"domainProxyLists":{"type":"array","items":{"type":"string"},"description":"Internal domain names to proxy for DNS resolution from the listed remote DNS server IP addresses,\nfor a transit gateway.\n"},"remoteDnsServerIpAddresses":{"type":"array","items":{"type":"string"},"description":"Remote DNS Server IP Addresses to connect to for resolving internal DNS via a transit gateway.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["domainProxyLists","remoteDnsServerIpAddresses"]}}},"konnect:index/CloudGatewayTransitGatewayAwsVpcPeeringGatewayResponseStateMetadata:CloudGatewayTransitGatewayAwsVpcPeeringGatewayResponseStateMetadata":{"properties":{"reason":{"type":"string","description":"Reason why the transit gateway may be in an erroneous state, reported from backing infrastructure.\n"},"reportedStatus":{"type":"string","description":"Reported status of the transit gateway from backing infrastructure.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["reason","reportedStatus"]}}},"konnect:index/CloudGatewayTransitGatewayAwsVpcPeeringGatewayResponseTransitGatewayAttachmentConfig:CloudGatewayTransitGatewayAwsVpcPeeringGatewayResponseTransitGatewayAttachmentConfig":{"properties":{"kind":{"type":"string"},"peerAccountId":{"type":"string"},"peerVpcId":{"type":"string"},"peerVpcRegion":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["kind","peerAccountId","peerVpcId","peerVpcRegion"]}}},"konnect:index/CloudGatewayTransitGatewayAwsVpcPeeringGatewayTransitGatewayAttachmentConfig:CloudGatewayTransitGatewayAwsVpcPeeringGatewayTransitGatewayAttachmentConfig":{"properties":{"kind":{"type":"string","description":"must be \"aws-vpc-peering-attachment\"; Requires replacement if changed.\n"},"peerAccountId":{"type":"string","description":"Requires replacement if changed.\n"},"peerVpcId":{"type":"string","description":"Requires replacement if changed.\n"},"peerVpcRegion":{"type":"string","description":"Requires replacement if changed.\n"}},"type":"object","required":["kind","peerAccountId","peerVpcId","peerVpcRegion"]},"konnect:index/CloudGatewayTransitGatewayAzureTransitGateway:CloudGatewayTransitGatewayAzureTransitGateway":{"properties":{"dnsConfigs":{"type":"array","items":{"$ref":"#/types/konnect:index%2FCloudGatewayTransitGatewayAzureTransitGatewayDnsConfig:CloudGatewayTransitGatewayAzureTransitGatewayDnsConfig"},"description":"List of mappings from remote DNS server IP address sets to proxied internal domains, for a transit gateway\nattachment.\nRequires replacement if changed.\n"},"name":{"type":"string","description":"Human-readable name of the transit gateway. Requires replacement if changed.\n"},"transitGatewayAttachmentConfig":{"$ref":"#/types/konnect:index%2FCloudGatewayTransitGatewayAzureTransitGatewayTransitGatewayAttachmentConfig:CloudGatewayTransitGatewayAzureTransitGatewayTransitGatewayAttachmentConfig","description":"Requires replacement if changed.\n"}},"type":"object","required":["name","transitGatewayAttachmentConfig"]},"konnect:index/CloudGatewayTransitGatewayAzureTransitGatewayDnsConfig:CloudGatewayTransitGatewayAzureTransitGatewayDnsConfig":{"properties":{"domainProxyLists":{"type":"array","items":{"type":"string"},"description":"Internal domain names to proxy for DNS resolution from the listed remote DNS server IP addresses,\nfor a transit gateway.\nRequires replacement if changed.\n"},"remoteDnsServerIpAddresses":{"type":"array","items":{"type":"string"},"description":"Remote DNS Server IP Addresses to connect to for resolving internal DNS via a transit gateway. Requires replacement if changed.\n"}},"type":"object","required":["domainProxyLists","remoteDnsServerIpAddresses"]},"konnect:index/CloudGatewayTransitGatewayAzureTransitGatewayResponse:CloudGatewayTransitGatewayAzureTransitGatewayResponse":{"properties":{"createdAt":{"type":"string","description":"An RFC-3339 timestamp representation of transit gateway creation date.\n"},"dnsConfigs":{"type":"array","items":{"$ref":"#/types/konnect:index%2FCloudGatewayTransitGatewayAzureTransitGatewayResponseDnsConfig:CloudGatewayTransitGatewayAzureTransitGatewayResponseDnsConfig"},"description":"List of mappings from remote DNS server IP address sets to proxied internal domains, for a transit gateway\nattachment.\n"},"entityVersion":{"type":"number","description":"Monotonically-increasing version count of the transit gateway, to indicate the order of updates to the\ntransit gateway.\n"},"id":{"type":"string"},"name":{"type":"string","description":"Human-readable name of the transit gateway.\n"},"state":{"type":"string","description":"The current state of the Transit Gateway. Possible values:\n"},"stateMetadata":{"$ref":"#/types/konnect:index%2FCloudGatewayTransitGatewayAzureTransitGatewayResponseStateMetadata:CloudGatewayTransitGatewayAzureTransitGatewayResponseStateMetadata","description":"Metadata describing the backing state of the transit gateway and why it may be in an erroneous state.\n"},"transitGatewayAttachmentConfig":{"$ref":"#/types/konnect:index%2FCloudGatewayTransitGatewayAzureTransitGatewayResponseTransitGatewayAttachmentConfig:CloudGatewayTransitGatewayAzureTransitGatewayResponseTransitGatewayAttachmentConfig"},"updatedAt":{"type":"string","description":"An RFC-3339 timestamp representation of transit gateway update date.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["createdAt","dnsConfigs","entityVersion","id","name","state","stateMetadata","transitGatewayAttachmentConfig","updatedAt"]}}},"konnect:index/CloudGatewayTransitGatewayAzureTransitGatewayResponseDnsConfig:CloudGatewayTransitGatewayAzureTransitGatewayResponseDnsConfig":{"properties":{"domainProxyLists":{"type":"array","items":{"type":"string"},"description":"Internal domain names to proxy for DNS resolution from the listed remote DNS server IP addresses,\nfor a transit gateway.\n"},"remoteDnsServerIpAddresses":{"type":"array","items":{"type":"string"},"description":"Remote DNS Server IP Addresses to connect to for resolving internal DNS via a transit gateway.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["domainProxyLists","remoteDnsServerIpAddresses"]}}},"konnect:index/CloudGatewayTransitGatewayAzureTransitGatewayResponseStateMetadata:CloudGatewayTransitGatewayAzureTransitGatewayResponseStateMetadata":{"properties":{"reason":{"type":"string","description":"Reason why the transit gateway may be in an erroneous state, reported from backing infrastructure.\n"},"reportedStatus":{"type":"string","description":"Reported status of the transit gateway from backing infrastructure.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["reason","reportedStatus"]}}},"konnect:index/CloudGatewayTransitGatewayAzureTransitGatewayResponseTransitGatewayAttachmentConfig:CloudGatewayTransitGatewayAzureTransitGatewayResponseTransitGatewayAttachmentConfig":{"properties":{"kind":{"type":"string"},"resourceGroupName":{"type":"string","description":"Resource Group Name for the Azure VNET Peering attachment.\n"},"subscriptionId":{"type":"string","description":"Subscription ID for the Azure VNET Peering attachment.\n"},"tenantId":{"type":"string","description":"Tenant ID for the Azure VNET Peering attachment.\n"},"vnetName":{"type":"string","description":"VNET Name for the Azure VNET Peering attachment.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["kind","resourceGroupName","subscriptionId","tenantId","vnetName"]}}},"konnect:index/CloudGatewayTransitGatewayAzureTransitGatewayTransitGatewayAttachmentConfig:CloudGatewayTransitGatewayAzureTransitGatewayTransitGatewayAttachmentConfig":{"properties":{"kind":{"type":"string","description":"must be \"azure-vnet-peering-attachment\"; Requires replacement if changed.\n"},"resourceGroupName":{"type":"string","description":"Resource Group Name for the Azure VNET Peering attachment. Requires replacement if changed.\n"},"subscriptionId":{"type":"string","description":"Subscription ID for the Azure VNET Peering attachment. Requires replacement if changed.\n"},"tenantId":{"type":"string","description":"Tenant ID for the Azure VNET Peering attachment. Requires replacement if changed.\n"},"vnetName":{"type":"string","description":"VNET Name for the Azure VNET Peering attachment. Requires replacement if changed.\n"}},"type":"object","required":["kind","resourceGroupName","subscriptionId","tenantId","vnetName"]},"konnect:index/CloudGatewayTransitGatewayAzureVhubPeeringGateway:CloudGatewayTransitGatewayAzureVhubPeeringGateway":{"properties":{"dnsConfigs":{"type":"array","items":{"$ref":"#/types/konnect:index%2FCloudGatewayTransitGatewayAzureVhubPeeringGatewayDnsConfig:CloudGatewayTransitGatewayAzureVhubPeeringGatewayDnsConfig"},"description":"List of mappings from remote DNS server IP address sets to proxied internal domains, for a transit gateway\nattachment.\nRequires replacement if changed.\n"},"name":{"type":"string","description":"Human-readable name of the transit gateway. Requires replacement if changed.\n"}},"type":"object","required":["name"]},"konnect:index/CloudGatewayTransitGatewayAzureVhubPeeringGatewayDnsConfig:CloudGatewayTransitGatewayAzureVhubPeeringGatewayDnsConfig":{"properties":{"domainProxyLists":{"type":"array","items":{"type":"string"},"description":"Internal domain names to proxy for DNS resolution from the listed remote DNS server IP addresses,\nfor a transit gateway.\nRequires replacement if changed.\n"},"remoteDnsServerIpAddresses":{"type":"array","items":{"type":"string"},"description":"Remote DNS Server IP Addresses to connect to for resolving internal DNS via a transit gateway. Requires replacement if changed.\n"}},"type":"object","required":["domainProxyLists","remoteDnsServerIpAddresses"]},"konnect:index/CloudGatewayTransitGatewayAzureVhubPeeringGatewayResponse:CloudGatewayTransitGatewayAzureVhubPeeringGatewayResponse":{"properties":{"createdAt":{"type":"string","description":"An RFC-3339 timestamp representation of transit gateway creation date.\n"},"dnsConfigs":{"type":"array","items":{"$ref":"#/types/konnect:index%2FCloudGatewayTransitGatewayAzureVhubPeeringGatewayResponseDnsConfig:CloudGatewayTransitGatewayAzureVhubPeeringGatewayResponseDnsConfig"},"description":"List of mappings from remote DNS server IP address sets to proxied internal domains, for a transit gateway\nattachment.\n"},"entityVersion":{"type":"number","description":"Monotonically-increasing version count of the transit gateway, to indicate the order of updates to the\ntransit gateway.\n"},"id":{"type":"string"},"name":{"type":"string","description":"Human-readable name of the transit gateway.\n"},"state":{"type":"string","description":"The current state of the Transit Gateway. Possible values:\n"},"stateMetadata":{"$ref":"#/types/konnect:index%2FCloudGatewayTransitGatewayAzureVhubPeeringGatewayResponseStateMetadata:CloudGatewayTransitGatewayAzureVhubPeeringGatewayResponseStateMetadata","description":"Metadata describing the backing state of the transit gateway and why it may be in an erroneous state.\n"},"updatedAt":{"type":"string","description":"An RFC-3339 timestamp representation of transit gateway update date.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["createdAt","dnsConfigs","entityVersion","id","name","state","stateMetadata","updatedAt"]}}},"konnect:index/CloudGatewayTransitGatewayAzureVhubPeeringGatewayResponseDnsConfig:CloudGatewayTransitGatewayAzureVhubPeeringGatewayResponseDnsConfig":{"properties":{"domainProxyLists":{"type":"array","items":{"type":"string"},"description":"Internal domain names to proxy for DNS resolution from the listed remote DNS server IP addresses,\nfor a transit gateway.\n"},"remoteDnsServerIpAddresses":{"type":"array","items":{"type":"string"},"description":"Remote DNS Server IP Addresses to connect to for resolving internal DNS via a transit gateway.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["domainProxyLists","remoteDnsServerIpAddresses"]}}},"konnect:index/CloudGatewayTransitGatewayAzureVhubPeeringGatewayResponseStateMetadata:CloudGatewayTransitGatewayAzureVhubPeeringGatewayResponseStateMetadata":{"properties":{"reason":{"type":"string","description":"Reason why the transit gateway may be in an erroneous state, reported from backing infrastructure.\n"},"reportedStatus":{"type":"string","description":"Reported status of the transit gateway from backing infrastructure.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["reason","reportedStatus"]}}},"konnect:index/CloudGatewayTransitGatewayGcpVpcPeeringTransitGateway:CloudGatewayTransitGatewayGcpVpcPeeringTransitGateway":{"properties":{"dnsConfigs":{"type":"array","items":{"$ref":"#/types/konnect:index%2FCloudGatewayTransitGatewayGcpVpcPeeringTransitGatewayDnsConfig:CloudGatewayTransitGatewayGcpVpcPeeringTransitGatewayDnsConfig"},"description":"List of mappings from remote DNS server IP address sets to proxied internal domains, for a transit gateway\nattachment.\nRequires replacement if changed.\n"},"name":{"type":"string","description":"Human-readable name of the transit gateway. Requires replacement if changed.\n"},"transitGatewayAttachmentConfig":{"$ref":"#/types/konnect:index%2FCloudGatewayTransitGatewayGcpVpcPeeringTransitGatewayTransitGatewayAttachmentConfig:CloudGatewayTransitGatewayGcpVpcPeeringTransitGatewayTransitGatewayAttachmentConfig","description":"Requires replacement if changed.\n"}},"type":"object","required":["name","transitGatewayAttachmentConfig"]},"konnect:index/CloudGatewayTransitGatewayGcpVpcPeeringTransitGatewayDnsConfig:CloudGatewayTransitGatewayGcpVpcPeeringTransitGatewayDnsConfig":{"properties":{"domainProxyLists":{"type":"array","items":{"type":"string"},"description":"Internal domain names to proxy for DNS resolution from the listed remote DNS server IP addresses,\nfor a transit gateway.\nRequires replacement if changed.\n"},"remoteDnsServerIpAddresses":{"type":"array","items":{"type":"string"},"description":"Remote DNS Server IP Addresses to connect to for resolving internal DNS via a transit gateway. Requires replacement if changed.\n"}},"type":"object","required":["domainProxyLists","remoteDnsServerIpAddresses"]},"konnect:index/CloudGatewayTransitGatewayGcpVpcPeeringTransitGatewayTransitGatewayAttachmentConfig:CloudGatewayTransitGatewayGcpVpcPeeringTransitGatewayTransitGatewayAttachmentConfig":{"properties":{"kind":{"type":"string","description":"must be \"gcp-vpc-peering-attachment\"; Requires replacement if changed.\n"},"peerProjectId":{"type":"string","description":"GCP Project ID of the peer account to create attachment to. Requires replacement if changed.\n"},"peerVpcName":{"type":"string","description":"GCP VPC Name of the peer account to create attachment to. Requires replacement if changed.\n"}},"type":"object","required":["kind","peerProjectId","peerVpcName"]},"konnect:index/CloudGatewayTransitGatewayGcpvpcPeeringGatewayResponse:CloudGatewayTransitGatewayGcpvpcPeeringGatewayResponse":{"properties":{"createdAt":{"type":"string","description":"An RFC-3339 timestamp representation of transit gateway creation date.\n"},"dnsConfigs":{"type":"array","items":{"$ref":"#/types/konnect:index%2FCloudGatewayTransitGatewayGcpvpcPeeringGatewayResponseDnsConfig:CloudGatewayTransitGatewayGcpvpcPeeringGatewayResponseDnsConfig"},"description":"List of mappings from remote DNS server IP address sets to proxied internal domains, for a transit gateway\nattachment.\n"},"entityVersion":{"type":"number","description":"Monotonically-increasing version count of the transit gateway, to indicate the order of updates to the\ntransit gateway.\n"},"id":{"type":"string"},"name":{"type":"string","description":"Human-readable name of the transit gateway.\n"},"state":{"type":"string","description":"The current state of the Transit Gateway. Possible values:\n"},"stateMetadata":{"$ref":"#/types/konnect:index%2FCloudGatewayTransitGatewayGcpvpcPeeringGatewayResponseStateMetadata:CloudGatewayTransitGatewayGcpvpcPeeringGatewayResponseStateMetadata","description":"Metadata describing the backing state of the transit gateway and why it may be in an erroneous state.\n"},"transitGatewayAttachmentConfig":{"$ref":"#/types/konnect:index%2FCloudGatewayTransitGatewayGcpvpcPeeringGatewayResponseTransitGatewayAttachmentConfig:CloudGatewayTransitGatewayGcpvpcPeeringGatewayResponseTransitGatewayAttachmentConfig"},"updatedAt":{"type":"string","description":"An RFC-3339 timestamp representation of transit gateway update date.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["createdAt","dnsConfigs","entityVersion","id","name","state","stateMetadata","transitGatewayAttachmentConfig","updatedAt"]}}},"konnect:index/CloudGatewayTransitGatewayGcpvpcPeeringGatewayResponseDnsConfig:CloudGatewayTransitGatewayGcpvpcPeeringGatewayResponseDnsConfig":{"properties":{"domainProxyLists":{"type":"array","items":{"type":"string"},"description":"Internal domain names to proxy for DNS resolution from the listed remote DNS server IP addresses,\nfor a transit gateway.\n"},"remoteDnsServerIpAddresses":{"type":"array","items":{"type":"string"},"description":"Remote DNS Server IP Addresses to connect to for resolving internal DNS via a transit gateway.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["domainProxyLists","remoteDnsServerIpAddresses"]}}},"konnect:index/CloudGatewayTransitGatewayGcpvpcPeeringGatewayResponseStateMetadata:CloudGatewayTransitGatewayGcpvpcPeeringGatewayResponseStateMetadata":{"properties":{"reason":{"type":"string","description":"Reason why the transit gateway may be in an erroneous state, reported from backing infrastructure.\n"},"reportedStatus":{"type":"string","description":"Reported status of the transit gateway from backing infrastructure.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["reason","reportedStatus"]}}},"konnect:index/CloudGatewayTransitGatewayGcpvpcPeeringGatewayResponseTransitGatewayAttachmentConfig:CloudGatewayTransitGatewayGcpvpcPeeringGatewayResponseTransitGatewayAttachmentConfig":{"properties":{"kind":{"type":"string"},"peerProjectId":{"type":"string","description":"GCP Project ID of the peer account to create attachment to.\n"},"peerVpcName":{"type":"string","description":"GCP VPC Name of the peer account to create attachment to.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["kind","peerProjectId","peerVpcName"]}}},"konnect:index/EventGatewayBackendClusterAuthentication:EventGatewayBackendClusterAuthentication":{"properties":{"anonymous":{"$ref":"#/types/konnect:index%2FEventGatewayBackendClusterAuthenticationAnonymous:EventGatewayBackendClusterAuthenticationAnonymous","description":"Anonymous authentication scheme for the backend cluster.\n"},"saslPlain":{"$ref":"#/types/konnect:index%2FEventGatewayBackendClusterAuthenticationSaslPlain:EventGatewayBackendClusterAuthenticationSaslPlain","description":"SASL/PLAIN authentication scheme for the backend cluster without requiring sensitive password data.\n"},"saslScram":{"$ref":"#/types/konnect:index%2FEventGatewayBackendClusterAuthenticationSaslScram:EventGatewayBackendClusterAuthenticationSaslScram","description":"SASL/SCRAM authentication scheme for the backend cluster without requiring sensitive password data.\n"}},"type":"object"},"konnect:index/EventGatewayBackendClusterAuthenticationAnonymous:EventGatewayBackendClusterAuthenticationAnonymous":{"type":"object"},"konnect:index/EventGatewayBackendClusterAuthenticationSaslPlain:EventGatewayBackendClusterAuthenticationSaslPlain":{"properties":{"password":{"type":"string","description":"A sensitive value containing the secret or a reference to a secret as a template string expression.\nIf the value is provided as plain text, it is encrypted at rest and omitted from API responses.\nIf provided as an expression, the expression itself is stored and returned by the API.\nNot Null\n"},"username":{"type":"string","description":"A literal value or a reference to an existing secret as a template string expression.\nThe value is stored and returned by the API as-is, not treated as sensitive information.\nNot Null\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["password","username"]}}},"konnect:index/EventGatewayBackendClusterAuthenticationSaslScram:EventGatewayBackendClusterAuthenticationSaslScram":{"properties":{"algorithm":{"type":"string","description":"The algorithm used for SASL/SCRAM authentication. Not Null; must be one of [\"sha256\", \"sha512\"]\n"},"password":{"type":"string","description":"A sensitive value containing the secret or a reference to a secret as a template string expression.\nIf the value is provided as plain text, it is encrypted at rest and omitted from API responses.\nIf provided as an expression, the expression itself is stored and returned by the API.\nNot Null\n"},"username":{"type":"string","description":"A literal value or a reference to an existing secret as a template string expression.\nThe value is stored and returned by the API as-is, not treated as sensitive information.\nNot Null\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["algorithm","password","username"]}}},"konnect:index/EventGatewayBackendClusterTls:EventGatewayBackendClusterTls":{"properties":{"caBundle":{"type":"string","description":"A literal value or a reference to an existing secret as a template string expression.\nThe value is stored and returned by the API as-is, not treated as sensitive information.\n"},"clientIdentity":{"$ref":"#/types/konnect:index%2FEventGatewayBackendClusterTlsClientIdentity:EventGatewayBackendClusterTlsClientIdentity","description":"Client mTLS configuration.\n"},"enabled":{"type":"boolean","description":"If true, TLS is enabled for connections to this backend cluster. If false, TLS is explicitly disabled.\n"},"insecureSkipVerify":{"type":"boolean","description":"If true, skip certificate verification. It's not secure to use for production. Default: false\n"},"tlsVersions":{"type":"array","items":{"type":"string"},"description":"List of supported TLS versions. Default: [\"tls12\",\"tls13\"]\n"}},"type":"object","required":["enabled"],"language":{"nodejs":{"requiredOutputs":["caBundle","enabled","insecureSkipVerify","tlsVersions"]}}},"konnect:index/EventGatewayBackendClusterTlsClientIdentity:EventGatewayBackendClusterTlsClientIdentity":{"properties":{"certificate":{"type":"string","description":"A literal value or a reference to an existing secret as a template string expression.\nThe value is stored and returned by the API as-is, not treated as sensitive information.\n"},"key":{"type":"string","description":"A sensitive value containing the secret or a reference to a secret as a template string expression.\nIf the value is provided as plain text, it is encrypted at rest and omitted from API responses.\nIf provided as an expression, the expression itself is stored and returned by the API.\n"}},"type":"object","required":["certificate","key"]},"konnect:index/EventGatewayClusterPolicyAclsConfig:EventGatewayClusterPolicyAclsConfig":{"properties":{"rules":{"type":"array","items":{"$ref":"#/types/konnect:index%2FEventGatewayClusterPolicyAclsConfigRule:EventGatewayClusterPolicyAclsConfigRule"},"description":"Every ACL rule in this list applies independently.\n"}},"type":"object","required":["rules"]},"konnect:index/EventGatewayClusterPolicyAclsConfigRule:EventGatewayClusterPolicyAclsConfigRule":{"properties":{"action":{"type":"string","description":"How to handle the request if the rule matches. must be one of [\"allow\", \"deny\"]\n"},"operations":{"type":"array","items":{"$ref":"#/types/konnect:index%2FEventGatewayClusterPolicyAclsConfigRuleOperation:EventGatewayClusterPolicyAclsConfigRuleOperation"},"description":"Types of Kafka operations to match against. Note that not every operation can apply to every resource type.\n"},"resourceNames":{"type":"array","items":{"$ref":"#/types/konnect:index%2FEventGatewayClusterPolicyAclsConfigRuleResourceName:EventGatewayClusterPolicyAclsConfigRuleResourceName"},"description":"If any of these entries match, the resource name matches for this rule. A maximum of 50 entries are allowed.\n"},"resourceType":{"type":"string","description":"This rule applies to access only for type of resource. must be one of [\"topic\", \"group\", \u003cspan pulumi-lang-nodejs=\"\"transactionalId\"\" pulumi-lang-dotnet=\"\"TransactionalId\"\" pulumi-lang-go=\"\"transactionalId\"\" pulumi-lang-python=\"\"transactional_id\"\" pulumi-lang-yaml=\"\"transactionalId\"\" pulumi-lang-java=\"\"transactionalId\"\"\u003e\"transactional_id\"\u003c/span\u003e, \"cluster\"]\n"}},"type":"object","required":["action","operations","resourceNames","resourceType"]},"konnect:index/EventGatewayClusterPolicyAclsConfigRuleOperation:EventGatewayClusterPolicyAclsConfigRuleOperation":{"properties":{"name":{"type":"string","description":"must be one of [\"all\", \"alter\", \"alter*configs\", \"create\", \"delete\", \"describe\", \"describe*configs\", \u003cspan pulumi-lang-nodejs=\"\"idempotentWrite\"\" pulumi-lang-dotnet=\"\"IdempotentWrite\"\" pulumi-lang-go=\"\"idempotentWrite\"\" pulumi-lang-python=\"\"idempotent_write\"\" pulumi-lang-yaml=\"\"idempotentWrite\"\" pulumi-lang-java=\"\"idempotentWrite\"\"\u003e\"idempotent_write\"\u003c/span\u003e, \"read\", \"write\"]\n"}},"type":"object","required":["name"]},"konnect:index/EventGatewayClusterPolicyAclsConfigRuleResourceName:EventGatewayClusterPolicyAclsConfigRuleResourceName":{"properties":{"match":{"type":"string","description":"Currently supported are exact matches and globs.\nAll `*` characters are interpreted as globs, i.e. they match zero or more of any character.\n"}},"type":"object","required":["match"]},"konnect:index/EventGatewayConsumePolicyDecryptConfig:EventGatewayConsumePolicyDecryptConfig":{"properties":{"failureMode":{"type":"string","description":"Describes how to handle failing encryption or decryption.\nUse \u003cspan pulumi-lang-nodejs=\"`error`\" pulumi-lang-dotnet=\"`Error`\" pulumi-lang-go=\"`error`\" pulumi-lang-python=\"`error`\" pulumi-lang-yaml=\"`error`\" pulumi-lang-java=\"`error`\"\u003e`error`\u003c/span\u003e if the record should be rejected if encryption or decryption fails.\nUse \u003cspan pulumi-lang-nodejs=\"`passthrough`\" pulumi-lang-dotnet=\"`Passthrough`\" pulumi-lang-go=\"`passthrough`\" pulumi-lang-python=\"`passthrough`\" pulumi-lang-yaml=\"`passthrough`\" pulumi-lang-java=\"`passthrough`\"\u003e`passthrough`\u003c/span\u003e to ignore encryption or decryption failure and continue proxying the record.\nmust be one of [\"error\", \"passthrough\"]\n"},"keySources":{"type":"array","items":{"$ref":"#/types/konnect:index%2FEventGatewayConsumePolicyDecryptConfigKeySource:EventGatewayConsumePolicyDecryptConfigKeySource"},"description":"Describes how to find a symmetric key for decryption.\n"},"partOfRecords":{"type":"array","items":{"type":"string"},"description":"Describes the parts of a record to decrypt.\n"}},"type":"object","required":["failureMode","keySources","partOfRecords"]},"konnect:index/EventGatewayConsumePolicyDecryptConfigKeySource:EventGatewayConsumePolicyDecryptConfigKeySource":{"properties":{"aws":{"$ref":"#/types/konnect:index%2FEventGatewayConsumePolicyDecryptConfigKeySourceAws:EventGatewayConsumePolicyDecryptConfigKeySourceAws","description":"A key source that uses an AWS KMS to find a symmetric key. Load KMS credentials from the environment.\n"},"static":{"$ref":"#/types/konnect:index%2FEventGatewayConsumePolicyDecryptConfigKeySourceStatic:EventGatewayConsumePolicyDecryptConfigKeySourceStatic","description":"A key source that uses static symmetric keys.\n"}},"type":"object"},"konnect:index/EventGatewayConsumePolicyDecryptConfigKeySourceAws:EventGatewayConsumePolicyDecryptConfigKeySourceAws":{"type":"object"},"konnect:index/EventGatewayConsumePolicyDecryptConfigKeySourceStatic:EventGatewayConsumePolicyDecryptConfigKeySourceStatic":{"type":"object"},"konnect:index/EventGatewayConsumePolicyModifyHeadersConfig:EventGatewayConsumePolicyModifyHeadersConfig":{"properties":{"actions":{"type":"array","items":{"$ref":"#/types/konnect:index%2FEventGatewayConsumePolicyModifyHeadersConfigAction:EventGatewayConsumePolicyModifyHeadersConfigAction"},"description":"Actions are run in sequential order and act on individual headers.\n"}},"type":"object"},"konnect:index/EventGatewayConsumePolicyModifyHeadersConfigAction:EventGatewayConsumePolicyModifyHeadersConfigAction":{"properties":{"remove":{"$ref":"#/types/konnect:index%2FEventGatewayConsumePolicyModifyHeadersConfigActionRemove:EventGatewayConsumePolicyModifyHeadersConfigActionRemove","description":"An action that removes a header by key.\n"},"set":{"$ref":"#/types/konnect:index%2FEventGatewayConsumePolicyModifyHeadersConfigActionSet:EventGatewayConsumePolicyModifyHeadersConfigActionSet","description":"An action that sets a header key and value.\n"}},"type":"object"},"konnect:index/EventGatewayConsumePolicyModifyHeadersConfigActionRemove:EventGatewayConsumePolicyModifyHeadersConfigActionRemove":{"properties":{"key":{"type":"string","description":"The key of the header to remove.\n"}},"type":"object","required":["key"]},"konnect:index/EventGatewayConsumePolicyModifyHeadersConfigActionSet:EventGatewayConsumePolicyModifyHeadersConfigActionSet":{"properties":{"key":{"type":"string","description":"The key of the header to set.\n"},"value":{"type":"string","description":"The value of the header to set.\n"}},"type":"object","required":["key","value"]},"konnect:index/EventGatewayConsumePolicySchemaValidationConfig:EventGatewayConsumePolicySchemaValidationConfig":{"properties":{"keyValidationAction":{"type":"string","description":"Defines a behavior when record key is not valid.\n* mark - marks a record with kong/server header and client ID value\n  to help to identify the clients violating schema.\n* skip - skips delivering a record.\nmust be one of [\"mark\", \"skip\"]\n"},"schemaRegistry":{"$ref":"#/types/konnect:index%2FEventGatewayConsumePolicySchemaValidationConfigSchemaRegistry:EventGatewayConsumePolicySchemaValidationConfigSchemaRegistry"},"type":{"type":"string","description":"How to validate the schema and parse the record.\n*\u003cspan pulumi-lang-nodejs=\" confluentSchemaRegistry \" pulumi-lang-dotnet=\" ConfluentSchemaRegistry \" pulumi-lang-go=\" confluentSchemaRegistry \" pulumi-lang-python=\" confluent_schema_registry \" pulumi-lang-yaml=\" confluentSchemaRegistry \" pulumi-lang-java=\" confluentSchemaRegistry \"\u003e confluent_schema_registry \u003c/span\u003e- validates against confluent schema registry.\n* json - simple JSON parsing without the schema.\nmust be one of [\u003cspan pulumi-lang-nodejs=\"\"confluentSchemaRegistry\"\" pulumi-lang-dotnet=\"\"ConfluentSchemaRegistry\"\" pulumi-lang-go=\"\"confluentSchemaRegistry\"\" pulumi-lang-python=\"\"confluent_schema_registry\"\" pulumi-lang-yaml=\"\"confluentSchemaRegistry\"\" pulumi-lang-java=\"\"confluentSchemaRegistry\"\"\u003e\"confluent_schema_registry\"\u003c/span\u003e, \"json\"]\n"},"valueValidationAction":{"type":"string","description":"Defines a behavior when record value is not valid.\n* mark - marks a record with kong/server header and client ID value\n  to help to identify the clients violating schema.\n* skip - skips delivering a record.\nmust be one of [\"mark\", \"skip\"]\n"}},"type":"object","required":["type"]},"konnect:index/EventGatewayConsumePolicySchemaValidationConfigSchemaRegistry:EventGatewayConsumePolicySchemaValidationConfigSchemaRegistry":{"properties":{"id":{"type":"string","description":"The unique identifier of the schema registry.\n"}},"type":"object","required":["id"]},"konnect:index/EventGatewayConsumePolicySkipRecordConfig:EventGatewayConsumePolicySkipRecordConfig":{"type":"object"},"konnect:index/EventGatewayDataPlaneCertificateMetadata:EventGatewayDataPlaneCertificateMetadata":{"properties":{"dnsNames":{"type":"array","items":{"type":"string"},"description":"The DNS names in the certificate SAN.\n"},"emailAddresses":{"type":"array","items":{"type":"string"},"description":"The email addresses in the certificate SAN.\n"},"expiry":{"type":"number","description":"The expiry date of the certificate as a unix timestamp.\n"},"ipAddresses":{"type":"array","items":{"type":"string"},"description":"The IP addresses in the certificate SAN.\n"},"issuer":{"type":"string","description":"The issuer of the certificate.\n"},"keyUsages":{"type":"array","items":{"type":"string"},"description":"The key usages of the certificate.\n"},"sanNames":{"type":"array","items":{"type":"string"},"description":"The Subject Alternative Names (SAN) of the certificate.\n"},"sha256Fingerprint":{"type":"string","description":"The SHA-256 fingerprint of the certificate.\n"},"subject":{"type":"string","description":"The subject of the certificate.\n"},"uris":{"type":"array","items":{"type":"string"},"description":"The URIs in the certificate SAN.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["dnsNames","emailAddresses","expiry","ipAddresses","issuer","keyUsages","sanNames","sha256Fingerprint","subject","uris"]}}},"konnect:index/EventGatewayListenerPolicyForwardToVirtualClusterConfig:EventGatewayListenerPolicyForwardToVirtualClusterConfig":{"properties":{"portMapping":{"$ref":"#/types/konnect:index%2FEventGatewayListenerPolicyForwardToVirtualClusterConfigPortMapping:EventGatewayListenerPolicyForwardToVirtualClusterConfigPortMapping","description":"The configuration to forward request to \u003cspan pulumi-lang-nodejs=\"`destination`\" pulumi-lang-dotnet=\"`Destination`\" pulumi-lang-go=\"`destination`\" pulumi-lang-python=\"`destination`\" pulumi-lang-yaml=\"`destination`\" pulumi-lang-java=\"`destination`\"\u003e`destination`\u003c/span\u003e and rewrite ports accordingly.\nAll broker ids must fit in the range of ports defined in the listener, if it doesn't the metadata request will\nreturn an error.\n"},"sni":{"$ref":"#/types/konnect:index%2FEventGatewayListenerPolicyForwardToVirtualClusterConfigSni:EventGatewayListenerPolicyForwardToVirtualClusterConfigSni","description":"The configuration to forward requests to virtual clusters configured with SNI routing.\n"}},"type":"object"},"konnect:index/EventGatewayListenerPolicyForwardToVirtualClusterConfigPortMapping:EventGatewayListenerPolicyForwardToVirtualClusterConfigPortMapping":{"properties":{"advertisedHost":{"type":"string","description":"Virtual brokers are advertised to clients using this host. Any kind of host supported by kafka can be used. If not defined, it's listen*address. If listen*address is `0.0.0.0` it's the destination IP of the TCP connection.\n"},"bootstrapPort":{"type":"string","description":"If set to \u003cspan pulumi-lang-nodejs=\"`atStart`\" pulumi-lang-dotnet=\"`AtStart`\" pulumi-lang-go=\"`atStart`\" pulumi-lang-python=\"`at_start`\" pulumi-lang-yaml=\"`atStart`\" pulumi-lang-java=\"`atStart`\"\u003e`at_start`\u003c/span\u003e, the first port will be used as a bootstrap port.\nIt provides a stable endpoint to use as the bootstrap server for clients, regardless of broker\nIDs in the cluster.\n"},"destination":{"$ref":"#/types/konnect:index%2FEventGatewayListenerPolicyForwardToVirtualClusterConfigPortMappingDestination:EventGatewayListenerPolicyForwardToVirtualClusterConfigPortMappingDestination","description":"Reference a virtual cluster by its unique identifier.\n"},"minBrokerId":{"type":"number","description":"The lowest broker node ID in the cluster. Default: 0\n"}},"type":"object","required":["advertisedHost","destination"],"language":{"nodejs":{"requiredOutputs":["advertisedHost","bootstrapPort","destination","minBrokerId"]}}},"konnect:index/EventGatewayListenerPolicyForwardToVirtualClusterConfigPortMappingDestination:EventGatewayListenerPolicyForwardToVirtualClusterConfigPortMappingDestination":{"properties":{"id":{"type":"string","description":"The unique identifier of the virtual cluster.\n"}},"type":"object","required":["id"]},"konnect:index/EventGatewayListenerPolicyForwardToVirtualClusterConfigSni:EventGatewayListenerPolicyForwardToVirtualClusterConfigSni":{"properties":{"advertisedPort":{"type":"number","description":"Virtual brokers are advertised to clients with this port instead of listen_port. Useful when proxy is\nbehind loadbalancer listening on different port.\n"},"brokerHostFormat":{"$ref":"#/types/konnect:index%2FEventGatewayListenerPolicyForwardToVirtualClusterConfigSniBrokerHostFormat:EventGatewayListenerPolicyForwardToVirtualClusterConfigSniBrokerHostFormat","description":"Configures DNS names assigned to brokers in virtual clusters.\n"},"sniSuffix":{"type":"string","description":"Optional suffix for TLS SNI validation.\n"}},"type":"object"},"konnect:index/EventGatewayListenerPolicyForwardToVirtualClusterConfigSniBrokerHostFormat:EventGatewayListenerPolicyForwardToVirtualClusterConfigSniBrokerHostFormat":{"properties":{"type":{"type":"string","description":"Default: \"per*cluster*suffix\"; must be one of [\"per*cluster*suffix\", \u003cspan pulumi-lang-nodejs=\"\"sharedSuffix\"\" pulumi-lang-dotnet=\"\"SharedSuffix\"\" pulumi-lang-go=\"\"sharedSuffix\"\" pulumi-lang-python=\"\"shared_suffix\"\" pulumi-lang-yaml=\"\"sharedSuffix\"\" pulumi-lang-java=\"\"sharedSuffix\"\"\u003e\"shared_suffix\"\u003c/span\u003e]\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["type"]}}},"konnect:index/EventGatewayListenerPolicyTlsServerConfig:EventGatewayListenerPolicyTlsServerConfig":{"properties":{"allowPlaintext":{"type":"boolean","description":"If false, only TLS connections are allowed. If true, both TLS and plaintext connections are allowed. Default: false\n"},"certificates":{"type":"array","items":{"$ref":"#/types/konnect:index%2FEventGatewayListenerPolicyTlsServerConfigCertificate:EventGatewayListenerPolicyTlsServerConfigCertificate"}},"versions":{"$ref":"#/types/konnect:index%2FEventGatewayListenerPolicyTlsServerConfigVersions:EventGatewayListenerPolicyTlsServerConfigVersions","description":"A range of TLS versions.\n"}},"type":"object","required":["certificates"],"language":{"nodejs":{"requiredOutputs":["allowPlaintext","certificates"]}}},"konnect:index/EventGatewayListenerPolicyTlsServerConfigCertificate:EventGatewayListenerPolicyTlsServerConfigCertificate":{"properties":{"certificate":{"type":"string","description":"A literal value or a reference to an existing secret as a template string expression.\nThe value is stored and returned by the API as-is, not treated as sensitive information.\n"},"key":{"type":"string","description":"A sensitive value containing the secret or a reference to a secret as a template string expression.\nIf the value is provided as plain text, it is encrypted at rest and omitted from API responses.\nIf provided as an expression, the expression itself is stored and returned by the API.\n"}},"type":"object","required":["certificate","key"]},"konnect:index/EventGatewayListenerPolicyTlsServerConfigVersions:EventGatewayListenerPolicyTlsServerConfigVersions":{"properties":{"max":{"type":"string","description":"Maximum TLS version to use. Default: \"TLSv1.3\"; must be one of [\"TLSv1.2\", \"TLSv1.3\"]\n"},"min":{"type":"string","description":"Minimum TLS version to use. Default: \"TLSv1.2\"; must be one of [\"TLSv1.2\", \"TLSv1.3\"]\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["max","min"]}}},"konnect:index/EventGatewayProducePolicyEncryptConfig:EventGatewayProducePolicyEncryptConfig":{"properties":{"encryptionKey":{"$ref":"#/types/konnect:index%2FEventGatewayProducePolicyEncryptConfigEncryptionKey:EventGatewayProducePolicyEncryptConfigEncryptionKey","description":"The key to use for encryption.\n"},"failureMode":{"type":"string","description":"Describes how to handle failing encryption or decryption.\nUse \u003cspan pulumi-lang-nodejs=\"`error`\" pulumi-lang-dotnet=\"`Error`\" pulumi-lang-go=\"`error`\" pulumi-lang-python=\"`error`\" pulumi-lang-yaml=\"`error`\" pulumi-lang-java=\"`error`\"\u003e`error`\u003c/span\u003e if the record should be rejected if encryption or decryption fails.\nUse \u003cspan pulumi-lang-nodejs=\"`passthrough`\" pulumi-lang-dotnet=\"`Passthrough`\" pulumi-lang-go=\"`passthrough`\" pulumi-lang-python=\"`passthrough`\" pulumi-lang-yaml=\"`passthrough`\" pulumi-lang-java=\"`passthrough`\"\u003e`passthrough`\u003c/span\u003e to ignore encryption or decryption failure and continue proxying the record.\nmust be one of [\"error\", \"passthrough\"]\n"},"partOfRecords":{"type":"array","items":{"type":"string"},"description":"Describes the parts of a record to encrypt.\n"}},"type":"object","required":["encryptionKey","failureMode","partOfRecords"]},"konnect:index/EventGatewayProducePolicyEncryptConfigEncryptionKey:EventGatewayProducePolicyEncryptConfigEncryptionKey":{"properties":{"aws":{"$ref":"#/types/konnect:index%2FEventGatewayProducePolicyEncryptConfigEncryptionKeyAws:EventGatewayProducePolicyEncryptConfigEncryptionKeyAws","description":"The AWS KMS key to use for encryption.\n"},"static":{"$ref":"#/types/konnect:index%2FEventGatewayProducePolicyEncryptConfigEncryptionKeyStatic:EventGatewayProducePolicyEncryptConfigEncryptionKeyStatic","description":"A static encryption key.\n"}},"type":"object"},"konnect:index/EventGatewayProducePolicyEncryptConfigEncryptionKeyAws:EventGatewayProducePolicyEncryptConfigEncryptionKeyAws":{"properties":{"arn":{"type":"string","description":"The AWS KMS key ARN.\n"}},"type":"object","required":["arn"]},"konnect:index/EventGatewayProducePolicyEncryptConfigEncryptionKeyStatic:EventGatewayProducePolicyEncryptConfigEncryptionKeyStatic":{"properties":{"key":{"$ref":"#/types/konnect:index%2FEventGatewayProducePolicyEncryptConfigEncryptionKeyStaticKey:EventGatewayProducePolicyEncryptConfigEncryptionKeyStaticKey","description":"A static encryption key reference by ID.\n"}},"type":"object","required":["key"]},"konnect:index/EventGatewayProducePolicyEncryptConfigEncryptionKeyStaticKey:EventGatewayProducePolicyEncryptConfigEncryptionKeyStaticKey":{"properties":{"id":{"type":"string","description":"The ID of the static key defined in the key source.\n"}},"type":"object","required":["id"]},"konnect:index/EventGatewayProducePolicyModifyHeadersConfig:EventGatewayProducePolicyModifyHeadersConfig":{"properties":{"actions":{"type":"array","items":{"$ref":"#/types/konnect:index%2FEventGatewayProducePolicyModifyHeadersConfigAction:EventGatewayProducePolicyModifyHeadersConfigAction"},"description":"Actions are run in sequential order and act on individual headers.\n"}},"type":"object"},"konnect:index/EventGatewayProducePolicyModifyHeadersConfigAction:EventGatewayProducePolicyModifyHeadersConfigAction":{"properties":{"remove":{"$ref":"#/types/konnect:index%2FEventGatewayProducePolicyModifyHeadersConfigActionRemove:EventGatewayProducePolicyModifyHeadersConfigActionRemove","description":"An action that removes a header by key.\n"},"set":{"$ref":"#/types/konnect:index%2FEventGatewayProducePolicyModifyHeadersConfigActionSet:EventGatewayProducePolicyModifyHeadersConfigActionSet","description":"An action that sets a header key and value.\n"}},"type":"object"},"konnect:index/EventGatewayProducePolicyModifyHeadersConfigActionRemove:EventGatewayProducePolicyModifyHeadersConfigActionRemove":{"properties":{"key":{"type":"string","description":"The key of the header to remove.\n"}},"type":"object","required":["key"]},"konnect:index/EventGatewayProducePolicyModifyHeadersConfigActionSet:EventGatewayProducePolicyModifyHeadersConfigActionSet":{"properties":{"key":{"type":"string","description":"The key of the header to set.\n"},"value":{"type":"string","description":"The value of the header to set.\n"}},"type":"object","required":["key","value"]},"konnect:index/EventGatewayProducePolicySchemaValidationConfig:EventGatewayProducePolicySchemaValidationConfig":{"properties":{"confluentSchemaRegistry":{"$ref":"#/types/konnect:index%2FEventGatewayProducePolicySchemaValidationConfigConfluentSchemaRegistry:EventGatewayProducePolicySchemaValidationConfigConfluentSchemaRegistry","description":"The configuration of the produce schema validation policy when using a schema registry.\n"},"json":{"$ref":"#/types/konnect:index%2FEventGatewayProducePolicySchemaValidationConfigJson:EventGatewayProducePolicySchemaValidationConfigJson","description":"The configuration of the produce schema validation policy when using JSON parsing without schema.\n"}},"type":"object"},"konnect:index/EventGatewayProducePolicySchemaValidationConfigConfluentSchemaRegistry:EventGatewayProducePolicySchemaValidationConfigConfluentSchemaRegistry":{"properties":{"keyValidationAction":{"type":"string","description":"Defines a behavior when record key is not valid.\n* reject - rejects a batch for topic partition. Only available for produce.\n* mark - marks a record with kong/server header and client ID value\n  to help to identify the clients violating schema.\nmust be one of [\"reject\", \"mark\"]\n"},"schemaRegistry":{"$ref":"#/types/konnect:index%2FEventGatewayProducePolicySchemaValidationConfigConfluentSchemaRegistrySchemaRegistry:EventGatewayProducePolicySchemaValidationConfigConfluentSchemaRegistrySchemaRegistry"},"valueValidationAction":{"type":"string","description":"Defines a behavior when record value is not valid.\n* reject - rejects a batch for topic partition. Only available for produce.\n* mark - marks a record with kong/server header and client ID value\n  to help to identify the clients violating schema.\nmust be one of [\"reject\", \"mark\"]\n"}},"type":"object"},"konnect:index/EventGatewayProducePolicySchemaValidationConfigConfluentSchemaRegistrySchemaRegistry:EventGatewayProducePolicySchemaValidationConfigConfluentSchemaRegistrySchemaRegistry":{"properties":{"id":{"type":"string","description":"The unique identifier of the schema registry.\n"}},"type":"object","required":["id"]},"konnect:index/EventGatewayProducePolicySchemaValidationConfigJson:EventGatewayProducePolicySchemaValidationConfigJson":{"properties":{"keyValidationAction":{"type":"string","description":"Defines a behavior when record key is not valid.\n* reject - rejects a batch for topic partition. Only available for produce.\n* mark - marks a record with kong/server header and client ID value\n  to help to identify the clients violating schema.\nmust be one of [\"reject\", \"mark\"]\n"},"schemaRegistry":{"$ref":"#/types/konnect:index%2FEventGatewayProducePolicySchemaValidationConfigJsonSchemaRegistry:EventGatewayProducePolicySchemaValidationConfigJsonSchemaRegistry"},"valueValidationAction":{"type":"string","description":"Defines a behavior when record value is not valid.\n* reject - rejects a batch for topic partition. Only available for produce.\n* mark - marks a record with kong/server header and client ID value\n  to help to identify the clients violating schema.\nmust be one of [\"reject\", \"mark\"]\n"}},"type":"object"},"konnect:index/EventGatewayProducePolicySchemaValidationConfigJsonSchemaRegistry:EventGatewayProducePolicySchemaValidationConfigJsonSchemaRegistry":{"properties":{"id":{"type":"string","description":"The unique identifier of the schema registry.\n"}},"type":"object","required":["id"]},"konnect:index/EventGatewaySchemaRegistryConfig:EventGatewaySchemaRegistryConfig":{"type":"object"},"konnect:index/EventGatewaySchemaRegistryConfluent:EventGatewaySchemaRegistryConfluent":{"properties":{"config":{"$ref":"#/types/konnect:index%2FEventGatewaySchemaRegistryConfluentConfig:EventGatewaySchemaRegistryConfluentConfig","description":"The configuration of [Confluent Schema Registry](https://github.com/confluentinc/schema-registry)\n"},"description":{"type":"string","description":"A human-readable description.\n"},"labels":{"type":"object","additionalProperties":{"type":"string"},"description":"Labels store metadata of an entity that can be used for filtering an entity list or for searching across entity types.\n"},"name":{"type":"string","description":"The unique name of the schema registry.\n"}},"type":"object","required":["config","name"],"language":{"nodejs":{"requiredOutputs":["config","description","name"]}}},"konnect:index/EventGatewaySchemaRegistryConfluentConfig:EventGatewaySchemaRegistryConfluentConfig":{"properties":{"authentication":{"$ref":"#/types/konnect:index%2FEventGatewaySchemaRegistryConfluentConfigAuthentication:EventGatewaySchemaRegistryConfluentConfigAuthentication","description":"The authentication configuration for the schema registry.\n"},"endpoint":{"type":"string","description":"The endpoint of the Confluent schema registry.\n"},"schemaType":{"type":"string","description":"The format of the message. must be one of [\"avro\", \"json\"]\n"},"timeoutSeconds":{"type":"number","description":"Total time in seconds from establishing connection to receive a response from schema registry. Default: 10\n"}},"type":"object","required":["endpoint","schemaType"],"language":{"nodejs":{"requiredOutputs":["endpoint","schemaType","timeoutSeconds"]}}},"konnect:index/EventGatewaySchemaRegistryConfluentConfigAuthentication:EventGatewaySchemaRegistryConfluentConfigAuthentication":{"properties":{"basic":{"$ref":"#/types/konnect:index%2FEventGatewaySchemaRegistryConfluentConfigAuthenticationBasic:EventGatewaySchemaRegistryConfluentConfigAuthenticationBasic","description":"Basic authentication scheme for the schema registry with username and password.\n"}},"type":"object"},"konnect:index/EventGatewaySchemaRegistryConfluentConfigAuthenticationBasic:EventGatewaySchemaRegistryConfluentConfigAuthenticationBasic":{"properties":{"password":{"type":"string","description":"A sensitive value containing the secret or a reference to a secret as a template string expression.\nIf the value is provided as plain text, it is encrypted at rest and omitted from API responses.\nIf provided as an expression, the expression itself is stored and returned by the API.\n"},"username":{"type":"string","description":"A literal value or a reference to an existing secret as a template string expression.\nThe value is stored and returned by the API as-is, not treated as sensitive information.\n"}},"type":"object","required":["password","username"]},"konnect:index/EventGatewayVirtualClusterAuthentication:EventGatewayVirtualClusterAuthentication":{"properties":{"anonymous":{"$ref":"#/types/konnect:index%2FEventGatewayVirtualClusterAuthenticationAnonymous:EventGatewayVirtualClusterAuthenticationAnonymous"},"oauthBearer":{"$ref":"#/types/konnect:index%2FEventGatewayVirtualClusterAuthenticationOauthBearer:EventGatewayVirtualClusterAuthenticationOauthBearer","description":"Oauth Bearer authentication scheme for the virtual cluster.\n"},"saslPlain":{"$ref":"#/types/konnect:index%2FEventGatewayVirtualClusterAuthenticationSaslPlain:EventGatewayVirtualClusterAuthenticationSaslPlain","description":"SASL/PLAIN authentication scheme for the virtual cluster.\n"},"saslScram":{"$ref":"#/types/konnect:index%2FEventGatewayVirtualClusterAuthenticationSaslScram:EventGatewayVirtualClusterAuthenticationSaslScram","description":"SASL/SCRAM authentication scheme for the virtual cluster.\n"}},"type":"object"},"konnect:index/EventGatewayVirtualClusterAuthenticationAnonymous:EventGatewayVirtualClusterAuthenticationAnonymous":{"type":"object"},"konnect:index/EventGatewayVirtualClusterAuthenticationOauthBearer:EventGatewayVirtualClusterAuthenticationOauthBearer":{"properties":{"claimsMapping":{"$ref":"#/types/konnect:index%2FEventGatewayVirtualClusterAuthenticationOauthBearerClaimsMapping:EventGatewayVirtualClusterAuthenticationOauthBearerClaimsMapping","description":"Maps JWT claims in the case when sub and scope are presented as different claims in your JWT token.\n"},"jwks":{"$ref":"#/types/konnect:index%2FEventGatewayVirtualClusterAuthenticationOauthBearerJwks:EventGatewayVirtualClusterAuthenticationOauthBearerJwks","description":"JSON Web Key Set configuration for verifying token signatures.\n"},"mediation":{"type":"string","description":"Methods to mediate authentication:\n* passthrough - pass authentication from the client through proxy to the backend cluster without any kind of\n  validation\n*\u003cspan pulumi-lang-nodejs=\" validateForward \" pulumi-lang-dotnet=\" ValidateForward \" pulumi-lang-go=\" validateForward \" pulumi-lang-python=\" validate_forward \" pulumi-lang-yaml=\" validateForward \" pulumi-lang-java=\" validateForward \"\u003e validate_forward \u003c/span\u003e- pass authentication from the client through proxy to the backend cluster.\n  Proxy does the validation before forwarding it to the client.\n* terminate - terminate authentication at the proxy level and originate authentication to the backend cluster\n  using the configuration defined at BackendCluster's authentication.\n  SASL auth is not originated if authentication on the\u003cspan pulumi-lang-nodejs=\" backendCluster \" pulumi-lang-dotnet=\" BackendCluster \" pulumi-lang-go=\" backendCluster \" pulumi-lang-python=\" backend_cluster \" pulumi-lang-yaml=\" backendCluster \" pulumi-lang-java=\" backendCluster \"\u003e backend_cluster \u003c/span\u003eis not configured.\nNot Null; must be one of [\"passthrough\", \u003cspan pulumi-lang-nodejs=\"\"validateForward\"\" pulumi-lang-dotnet=\"\"ValidateForward\"\" pulumi-lang-go=\"\"validateForward\"\" pulumi-lang-python=\"\"validate_forward\"\" pulumi-lang-yaml=\"\"validateForward\"\" pulumi-lang-java=\"\"validateForward\"\"\u003e\"validate_forward\"\u003c/span\u003e, \"terminate\"]\n"},"validate":{"$ref":"#/types/konnect:index%2FEventGatewayVirtualClusterAuthenticationOauthBearerValidate:EventGatewayVirtualClusterAuthenticationOauthBearerValidate","description":"Validation rules.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["claimsMapping","jwks","mediation","validate"]}}},"konnect:index/EventGatewayVirtualClusterAuthenticationOauthBearerClaimsMapping:EventGatewayVirtualClusterAuthenticationOauthBearerClaimsMapping":{"properties":{"scope":{"type":"string","description":"Maps the scope claim.\n"},"sub":{"type":"string","description":"Maps the subject claim.\n"}},"type":"object"},"konnect:index/EventGatewayVirtualClusterAuthenticationOauthBearerJwks:EventGatewayVirtualClusterAuthenticationOauthBearerJwks":{"properties":{"cacheExpiration":{"type":"string","description":"Duration after which the gateway will fetch and cache JWKS. Default: \"1h\"\n"},"endpoint":{"type":"string","description":"URL for JWKS endpoint. Not Null\n"},"timeout":{"type":"string","description":"Total time from establishing connection to receive a response from JWKS endpoint. Default: \"10s\"\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["cacheExpiration","endpoint","timeout"]}}},"konnect:index/EventGatewayVirtualClusterAuthenticationOauthBearerValidate:EventGatewayVirtualClusterAuthenticationOauthBearerValidate":{"properties":{"audiences":{"type":"array","items":{"$ref":"#/types/konnect:index%2FEventGatewayVirtualClusterAuthenticationOauthBearerValidateAudience:EventGatewayVirtualClusterAuthenticationOauthBearerValidateAudience"},"description":"List of expected audience values. One of them has to match the audience claim in the token.\n"},"issuer":{"type":"string","description":"Expected token issuer in the token.\n"}},"type":"object"},"konnect:index/EventGatewayVirtualClusterAuthenticationOauthBearerValidateAudience:EventGatewayVirtualClusterAuthenticationOauthBearerValidateAudience":{"properties":{"name":{"type":"string","description":"Not Null\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["name"]}}},"konnect:index/EventGatewayVirtualClusterAuthenticationSaslPlain:EventGatewayVirtualClusterAuthenticationSaslPlain":{"properties":{"mediation":{"type":"string","description":"The mediation type for SASL/PLAIN authentication. Not Null; must be one of [\"passthrough\", \"terminate\"]\n"},"principals":{"type":"array","items":{"$ref":"#/types/konnect:index%2FEventGatewayVirtualClusterAuthenticationSaslPlainPrincipal:EventGatewayVirtualClusterAuthenticationSaslPlainPrincipal"},"description":"List of principals to be able to authenticate with, used with \u003cspan pulumi-lang-nodejs=\"`terminate`\" pulumi-lang-dotnet=\"`Terminate`\" pulumi-lang-go=\"`terminate`\" pulumi-lang-python=\"`terminate`\" pulumi-lang-yaml=\"`terminate`\" pulumi-lang-java=\"`terminate`\"\u003e`terminate`\u003c/span\u003e mediation.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["mediation"]}}},"konnect:index/EventGatewayVirtualClusterAuthenticationSaslPlainPrincipal:EventGatewayVirtualClusterAuthenticationSaslPlainPrincipal":{"properties":{"password":{"type":"string","description":"A sensitive value containing the secret or a reference to a secret as a template string expression.\nIf the value is provided as plain text, it is encrypted at rest and omitted from API responses.\nIf provided as an expression, the expression itself is stored and returned by the API.\nNot Null\n"},"username":{"type":"string","description":"A literal value or a reference to an existing secret as a template string expression.\nThe value is stored and returned by the API as-is, not treated as sensitive information.\nNot Null\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["password","username"]}}},"konnect:index/EventGatewayVirtualClusterAuthenticationSaslScram:EventGatewayVirtualClusterAuthenticationSaslScram":{"properties":{"algorithm":{"type":"string","description":"The algorithm used for SASL/SCRAM authentication. Not Null; must be one of [\"sha256\", \"sha512\"]\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["algorithm"]}}},"konnect:index/EventGatewayVirtualClusterDestination:EventGatewayVirtualClusterDestination":{"properties":{"id":{"type":"string","description":"The unique identifier of the backend cluster.\n"},"name":{"type":"string","description":"The unique name of the backend cluster.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id","name"]}}},"konnect:index/EventGatewayVirtualClusterNamespace:EventGatewayVirtualClusterNamespace":{"properties":{"additional":{"$ref":"#/types/konnect:index%2FEventGatewayVirtualClusterNamespaceAdditional:EventGatewayVirtualClusterNamespaceAdditional"},"mode":{"type":"string","description":"*\u003cspan pulumi-lang-nodejs=\" hidePrefix \" pulumi-lang-dotnet=\" HidePrefix \" pulumi-lang-go=\" hidePrefix \" pulumi-lang-python=\" hide_prefix \" pulumi-lang-yaml=\" hidePrefix \" pulumi-lang-java=\" hidePrefix \"\u003e hide_prefix \u003c/span\u003e- the configured prefix is hidden from clients for topics and IDs when reading.\n  Created resources are written with the prefix on the backend cluster.\n*\u003cspan pulumi-lang-nodejs=\" enforcePrefix \" pulumi-lang-dotnet=\" EnforcePrefix \" pulumi-lang-go=\" enforcePrefix \" pulumi-lang-python=\" enforce_prefix \" pulumi-lang-yaml=\" enforcePrefix \" pulumi-lang-java=\" enforcePrefix \"\u003e enforce_prefix \u003c/span\u003e- the configured prefix remains visible to clients.\n  Created resources must include the prefix or the request will fail.\nmust be one of [\u003cspan pulumi-lang-nodejs=\"\"hidePrefix\"\" pulumi-lang-dotnet=\"\"HidePrefix\"\" pulumi-lang-go=\"\"hidePrefix\"\" pulumi-lang-python=\"\"hide_prefix\"\" pulumi-lang-yaml=\"\"hidePrefix\"\" pulumi-lang-java=\"\"hidePrefix\"\"\u003e\"hide_prefix\"\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"\"enforcePrefix\"\" pulumi-lang-dotnet=\"\"EnforcePrefix\"\" pulumi-lang-go=\"\"enforcePrefix\"\" pulumi-lang-python=\"\"enforce_prefix\"\" pulumi-lang-yaml=\"\"enforcePrefix\"\" pulumi-lang-java=\"\"enforcePrefix\"\"\u003e\"enforce_prefix\"\u003c/span\u003e]\n"},"prefix":{"type":"string","description":"The namespace is differentiated by this chosen prefix.\nFor example, if the prefix is set to \"analytics_\" the topic named \u003cspan pulumi-lang-nodejs=\"\"analyticsUserClicks\"\" pulumi-lang-dotnet=\"\"AnalyticsUserClicks\"\" pulumi-lang-go=\"\"analyticsUserClicks\"\" pulumi-lang-python=\"\"analytics_user_clicks\"\" pulumi-lang-yaml=\"\"analyticsUserClicks\"\" pulumi-lang-java=\"\"analyticsUserClicks\"\"\u003e\"analytics_user_clicks\"\u003c/span\u003e is available to the clients\nof the virtual cluster. Topics without the prefix will be ignored unless added via `additional.topics`.\n"}},"type":"object","required":["mode","prefix"]},"konnect:index/EventGatewayVirtualClusterNamespaceAdditional:EventGatewayVirtualClusterNamespaceAdditional":{"properties":{"consumerGroups":{"type":"array","items":{"$ref":"#/types/konnect:index%2FEventGatewayVirtualClusterNamespaceAdditionalConsumerGroup:EventGatewayVirtualClusterNamespaceAdditionalConsumerGroup"},"description":"Consumer group IDs to expose even if they don't start with the namespace prefix.\n"},"topics":{"type":"array","items":{"$ref":"#/types/konnect:index%2FEventGatewayVirtualClusterNamespaceAdditionalTopic:EventGatewayVirtualClusterNamespaceAdditionalTopic"},"description":"Additional backend topics to expose even if they don't match the namespace prefix.\nThe topics are not affected by the hide/enforce prefix mode.\nIf the client tries to create a topic that matches this list, the request is rejected.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["consumerGroups","topics"]}}},"konnect:index/EventGatewayVirtualClusterNamespaceAdditionalConsumerGroup:EventGatewayVirtualClusterNamespaceAdditionalConsumerGroup":{"properties":{"exactList":{"$ref":"#/types/konnect:index%2FEventGatewayVirtualClusterNamespaceAdditionalConsumerGroupExactList:EventGatewayVirtualClusterNamespaceAdditionalConsumerGroupExactList"},"glob":{"$ref":"#/types/konnect:index%2FEventGatewayVirtualClusterNamespaceAdditionalConsumerGroupGlob:EventGatewayVirtualClusterNamespaceAdditionalConsumerGroupGlob"}},"type":"object"},"konnect:index/EventGatewayVirtualClusterNamespaceAdditionalConsumerGroupExactList:EventGatewayVirtualClusterNamespaceAdditionalConsumerGroupExactList":{"properties":{"exactLists":{"type":"array","items":{"$ref":"#/types/konnect:index%2FEventGatewayVirtualClusterNamespaceAdditionalConsumerGroupExactListExactList:EventGatewayVirtualClusterNamespaceAdditionalConsumerGroupExactListExactList"}}},"type":"object"},"konnect:index/EventGatewayVirtualClusterNamespaceAdditionalConsumerGroupExactListExactList:EventGatewayVirtualClusterNamespaceAdditionalConsumerGroupExactListExactList":{"properties":{"value":{"type":"string","description":"Not Null\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["value"]}}},"konnect:index/EventGatewayVirtualClusterNamespaceAdditionalConsumerGroupGlob:EventGatewayVirtualClusterNamespaceAdditionalConsumerGroupGlob":{"properties":{"glob":{"type":"string","description":"Expose any id that matches this glob pattern (e.g., `my_id_*`). Not Null\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["glob"]}}},"konnect:index/EventGatewayVirtualClusterNamespaceAdditionalTopic:EventGatewayVirtualClusterNamespaceAdditionalTopic":{"properties":{"exactList":{"$ref":"#/types/konnect:index%2FEventGatewayVirtualClusterNamespaceAdditionalTopicExactList:EventGatewayVirtualClusterNamespaceAdditionalTopicExactList"},"glob":{"$ref":"#/types/konnect:index%2FEventGatewayVirtualClusterNamespaceAdditionalTopicGlob:EventGatewayVirtualClusterNamespaceAdditionalTopicGlob"}},"type":"object"},"konnect:index/EventGatewayVirtualClusterNamespaceAdditionalTopicExactList:EventGatewayVirtualClusterNamespaceAdditionalTopicExactList":{"properties":{"conflict":{"type":"string","description":"How to inform the user about conflicts where multiple backend topics would map to the same virtual topic name.\n* warn - log in the Event Gateway logs. Additionally, it sets\u003cspan pulumi-lang-nodejs=\" knepNamespaceTopicConflict \" pulumi-lang-dotnet=\" KnepNamespaceTopicConflict \" pulumi-lang-go=\" knepNamespaceTopicConflict \" pulumi-lang-python=\" knep_namespace_topic_conflict \" pulumi-lang-yaml=\" knepNamespaceTopicConflict \" pulumi-lang-java=\" knepNamespaceTopicConflict \"\u003e knep_namespace_topic_conflict \u003c/span\u003eto 1.\n* ignore - do not do anything. It does not cause\u003cspan pulumi-lang-nodejs=\" knepNamespaceTopicConflict \" pulumi-lang-dotnet=\" KnepNamespaceTopicConflict \" pulumi-lang-go=\" knepNamespaceTopicConflict \" pulumi-lang-python=\" knep_namespace_topic_conflict \" pulumi-lang-yaml=\" knepNamespaceTopicConflict \" pulumi-lang-java=\" knepNamespaceTopicConflict \"\u003e knep_namespace_topic_conflict \u003c/span\u003emetric to be set to 1.\nDefault: \"warn\"; must be one of [\"warn\", \"ignore\"]\n"},"exactLists":{"type":"array","items":{"$ref":"#/types/konnect:index%2FEventGatewayVirtualClusterNamespaceAdditionalTopicExactListExactList:EventGatewayVirtualClusterNamespaceAdditionalTopicExactListExactList"},"description":"Explicit allow-list of backend topic names.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["conflict"]}}},"konnect:index/EventGatewayVirtualClusterNamespaceAdditionalTopicExactListExactList:EventGatewayVirtualClusterNamespaceAdditionalTopicExactListExactList":{"properties":{"backend":{"type":"string","description":"Not Null\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["backend"]}}},"konnect:index/EventGatewayVirtualClusterNamespaceAdditionalTopicGlob:EventGatewayVirtualClusterNamespaceAdditionalTopicGlob":{"properties":{"conflict":{"type":"string","description":"How to inform the user about conflicts where multiple backend topics would map to the same virtual topic name.\n* warn - log in the Event Gateway logs. Additionally, it sets\u003cspan pulumi-lang-nodejs=\" knepNamespaceTopicConflict \" pulumi-lang-dotnet=\" KnepNamespaceTopicConflict \" pulumi-lang-go=\" knepNamespaceTopicConflict \" pulumi-lang-python=\" knep_namespace_topic_conflict \" pulumi-lang-yaml=\" knepNamespaceTopicConflict \" pulumi-lang-java=\" knepNamespaceTopicConflict \"\u003e knep_namespace_topic_conflict \u003c/span\u003eto 1.\n* ignore - do not do anything. It does not cause\u003cspan pulumi-lang-nodejs=\" knepNamespaceTopicConflict \" pulumi-lang-dotnet=\" KnepNamespaceTopicConflict \" pulumi-lang-go=\" knepNamespaceTopicConflict \" pulumi-lang-python=\" knep_namespace_topic_conflict \" pulumi-lang-yaml=\" knepNamespaceTopicConflict \" pulumi-lang-java=\" knepNamespaceTopicConflict \"\u003e knep_namespace_topic_conflict \u003c/span\u003emetric to be set to 1.\nDefault: \"warn\"; must be one of [\"warn\", \"ignore\"]\n"},"glob":{"type":"string","description":"Expose any backend topic that matches this glob pattern (e.g., `operations_data_*`). Not Null\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["conflict","glob"]}}},"konnect:index/GatewayControlPlaneConfig:GatewayControlPlaneConfig":{"properties":{"authType":{"type":"string","description":"The auth type value of the cluster associated with the Runtime Group.\n"},"cloudGateway":{"type":"boolean","description":"Whether the Control Plane can be used for cloud-gateways.\n"},"clusterType":{"type":"string","description":"The ClusterType value of the cluster associated with the Control Plane.\n"},"controlPlaneEndpoint":{"type":"string","description":"Control Plane Endpoint.\n"},"proxyUrls":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayControlPlaneConfigProxyUrl:GatewayControlPlaneConfigProxyUrl"},"description":"Array of proxy URLs associated with reaching the data-planes connected to a control-plane.\n"},"telemetryEndpoint":{"type":"string","description":"Telemetry Endpoint.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["authType","cloudGateway","clusterType","controlPlaneEndpoint","proxyUrls","telemetryEndpoint"]}}},"konnect:index/GatewayControlPlaneConfigProxyUrl:GatewayControlPlaneConfigProxyUrl":{"properties":{"host":{"type":"string","description":"Hostname of the proxy URL.\n"},"port":{"type":"number","description":"Port of the proxy URL.\n"},"protocol":{"type":"string","description":"Protocol of the proxy URL.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["host","port","protocol"]}}},"konnect:index/GatewayControlPlaneMembershipMember:GatewayControlPlaneMembershipMember":{"properties":{"id":{"type":"string","description":"Requires replacement if changed.\n"}},"type":"object","required":["id"]},"konnect:index/GatewayControlPlaneProxyUrl:GatewayControlPlaneProxyUrl":{"properties":{"host":{"type":"string","description":"Hostname of the proxy URL.\n"},"port":{"type":"number","description":"Port of the proxy URL.\n"},"protocol":{"type":"string","description":"Protocol of the proxy URL.\n"}},"type":"object","required":["host","port","protocol"]},"konnect:index/GatewayCustomPluginConsumer:GatewayCustomPluginConsumer":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayCustomPluginConsumerGroup:GatewayCustomPluginConsumerGroup":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayCustomPluginOrdering:GatewayCustomPluginOrdering":{"properties":{"after":{"$ref":"#/types/konnect:index%2FGatewayCustomPluginOrderingAfter:GatewayCustomPluginOrderingAfter"},"before":{"$ref":"#/types/konnect:index%2FGatewayCustomPluginOrderingBefore:GatewayCustomPluginOrderingBefore"}},"type":"object","language":{"nodejs":{"requiredOutputs":["after","before"]}}},"konnect:index/GatewayCustomPluginOrderingAfter:GatewayCustomPluginOrderingAfter":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayCustomPluginOrderingBefore:GatewayCustomPluginOrderingBefore":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayCustomPluginRoute:GatewayCustomPluginRoute":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayCustomPluginService:GatewayCustomPluginService":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayKeyPem:GatewayKeyPem":{"properties":{"privateKey":{"type":"string"},"publicKey":{"type":"string"}},"type":"object"},"konnect:index/GatewayKeySet:GatewayKeySet":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayMtlsAuthCaCertificate:GatewayMtlsAuthCaCertificate":{"properties":{"id":{"type":"string","description":"Requires replacement if changed.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPartialRedisCe:GatewayPartialRedisCe":{"properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPartialRedisCeConfig:GatewayPartialRedisCeConfig","description":"Not Null\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"id":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"name":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"A set of strings representing tags.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["config","createdAt","id","updatedAt"]}}},"konnect:index/GatewayPartialRedisCeConfig:GatewayPartialRedisCeConfig":{"properties":{"cloudAuthentication":{"$ref":"#/types/konnect:index%2FGatewayPartialRedisCeConfigCloudAuthentication:GatewayPartialRedisCeConfigCloudAuthentication","description":"Cloud auth related configs for connecting to a Cloud Provider's Redis instance.\n"},"database":{"type":"number","description":"Database to use for the Redis connection when using the \u003cspan pulumi-lang-nodejs=\"`redis`\" pulumi-lang-dotnet=\"`Redis`\" pulumi-lang-go=\"`redis`\" pulumi-lang-python=\"`redis`\" pulumi-lang-yaml=\"`redis`\" pulumi-lang-java=\"`redis`\"\u003e`redis`\u003c/span\u003e strategy. Default: 0\n"},"host":{"type":"string","description":"A string representing a host name, such as example.com.\n"},"password":{"type":"string","description":"Password to use for Redis connections. If undefined, no AUTH commands are sent to Redis.\n"},"port":{"type":"number","description":"An integer representing a port number between 0 and 65535, inclusive. Default: 6379\n"},"serverName":{"type":"string","description":"A string representing an SNI (server name indication) value for TLS.\n"},"ssl":{"type":"boolean","description":"If set to true, uses SSL to connect to Redis. Default: false\n"},"sslVerify":{"type":"boolean","description":"If set to true, verifies the validity of the server SSL certificate. If setting this parameter, also configure \u003cspan pulumi-lang-nodejs=\"`luaSslTrustedCertificate`\" pulumi-lang-dotnet=\"`LuaSslTrustedCertificate`\" pulumi-lang-go=\"`luaSslTrustedCertificate`\" pulumi-lang-python=\"`lua_ssl_trusted_certificate`\" pulumi-lang-yaml=\"`luaSslTrustedCertificate`\" pulumi-lang-java=\"`luaSslTrustedCertificate`\"\u003e`lua_ssl_trusted_certificate`\u003c/span\u003e in `kong.conf` to specify the CA (or server) certificate used by your Redis server. You may also need to configure \u003cspan pulumi-lang-nodejs=\"`luaSslVerifyDepth`\" pulumi-lang-dotnet=\"`LuaSslVerifyDepth`\" pulumi-lang-go=\"`luaSslVerifyDepth`\" pulumi-lang-python=\"`lua_ssl_verify_depth`\" pulumi-lang-yaml=\"`luaSslVerifyDepth`\" pulumi-lang-java=\"`luaSslVerifyDepth`\"\u003e`lua_ssl_verify_depth`\u003c/span\u003e accordingly. Default: false\n"},"timeout":{"type":"number","description":"An integer representing a timeout in milliseconds. Must be between 0 and 2^31-2. Default: 2000\n"},"username":{"type":"string","description":"Username to use for Redis connections. If undefined, ACL authentication won't be performed. This requires Redis v6.0.0+. To be compatible with Redis v5.x.y, you can set it to \u003cspan pulumi-lang-nodejs=\"`default`\" pulumi-lang-dotnet=\"`Default`\" pulumi-lang-go=\"`default`\" pulumi-lang-python=\"`default`\" pulumi-lang-yaml=\"`default`\" pulumi-lang-java=\"`default`\"\u003e`default`\u003c/span\u003e.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["cloudAuthentication","database","password","port","serverName","ssl","sslVerify","timeout","username"]}}},"konnect:index/GatewayPartialRedisCeConfigCloudAuthentication:GatewayPartialRedisCeConfigCloudAuthentication":{"properties":{"authProvider":{"type":"string","description":"Auth providers to be used to authenticate to a Cloud Provider's Redis instance. must be one of [\"aws\", \"azure\", \"gcp\"]\n"},"awsAccessKeyId":{"type":"string","description":"AWS Access Key ID to be used for authentication when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e.\n"},"awsAssumeRoleArn":{"type":"string","description":"The ARN of the IAM role to assume for generating ElastiCache IAM authentication tokens.\n"},"awsCacheName":{"type":"string","description":"The name of the AWS Elasticache cluster when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e.\n"},"awsIsServerless":{"type":"boolean","description":"This flag specifies whether the cluster is serverless when\u003cspan pulumi-lang-nodejs=\" authProvider \" pulumi-lang-dotnet=\" AuthProvider \" pulumi-lang-go=\" authProvider \" pulumi-lang-python=\" auth_provider \" pulumi-lang-yaml=\" authProvider \" pulumi-lang-java=\" authProvider \"\u003e auth_provider \u003c/span\u003eis set to \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e. Default: true\n"},"awsRegion":{"type":"string","description":"The region of the AWS ElastiCache cluster when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e.\n"},"awsRoleSessionName":{"type":"string","description":"The session name for the temporary credentials when assuming the IAM role.\n"},"awsSecretAccessKey":{"type":"string","description":"AWS Secret Access Key to be used for authentication when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e.\n"},"azureClientId":{"type":"string","description":"Azure Client ID to be used for authentication when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`azure`\" pulumi-lang-dotnet=\"`Azure`\" pulumi-lang-go=\"`azure`\" pulumi-lang-python=\"`azure`\" pulumi-lang-yaml=\"`azure`\" pulumi-lang-java=\"`azure`\"\u003e`azure`\u003c/span\u003e.\n"},"azureClientSecret":{"type":"string","description":"Azure Client Secret to be used for authentication when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`azure`\" pulumi-lang-dotnet=\"`Azure`\" pulumi-lang-go=\"`azure`\" pulumi-lang-python=\"`azure`\" pulumi-lang-yaml=\"`azure`\" pulumi-lang-java=\"`azure`\"\u003e`azure`\u003c/span\u003e.\n"},"azureTenantId":{"type":"string","description":"Azure Tenant ID to be used for authentication when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`azure`\" pulumi-lang-dotnet=\"`Azure`\" pulumi-lang-go=\"`azure`\" pulumi-lang-python=\"`azure`\" pulumi-lang-yaml=\"`azure`\" pulumi-lang-java=\"`azure`\"\u003e`azure`\u003c/span\u003e.\n"},"gcpServiceAccountJson":{"type":"string","description":"GCP Service Account JSON to be used for authentication when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`gcp`\" pulumi-lang-dotnet=\"`Gcp`\" pulumi-lang-go=\"`gcp`\" pulumi-lang-python=\"`gcp`\" pulumi-lang-yaml=\"`gcp`\" pulumi-lang-java=\"`gcp`\"\u003e`gcp`\u003c/span\u003e.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["authProvider","awsIsServerless"]}}},"konnect:index/GatewayPartialRedisEe:GatewayPartialRedisEe":{"properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPartialRedisEeConfig:GatewayPartialRedisEeConfig","description":"Not Null\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"id":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"name":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"A set of strings representing tags.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["config","createdAt","id","updatedAt"]}}},"konnect:index/GatewayPartialRedisEeConfig:GatewayPartialRedisEeConfig":{"properties":{"cloudAuthentication":{"$ref":"#/types/konnect:index%2FGatewayPartialRedisEeConfigCloudAuthentication:GatewayPartialRedisEeConfigCloudAuthentication","description":"Cloud auth related configs for connecting to a Cloud Provider's Redis instance.\n"},"clusterMaxRedirections":{"type":"number","description":"Maximum retry attempts for redirection. Default: 5\n"},"clusterNodes":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPartialRedisEeConfigClusterNode:GatewayPartialRedisEeConfigClusterNode"},"description":"Cluster addresses to use for Redis connections when the \u003cspan pulumi-lang-nodejs=\"`redis`\" pulumi-lang-dotnet=\"`Redis`\" pulumi-lang-go=\"`redis`\" pulumi-lang-python=\"`redis`\" pulumi-lang-yaml=\"`redis`\" pulumi-lang-java=\"`redis`\"\u003e`redis`\u003c/span\u003e strategy is defined. Defining this field implies using a Redis Cluster. The minimum length of the array is 1 element.\n"},"connectTimeout":{"type":"number","description":"An integer representing a timeout in milliseconds. Must be between 0 and 2^31-2. Default: 2000\n"},"connectionIsProxied":{"type":"boolean","description":"If the connection to Redis is proxied (e.g. Envoy), set it \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e. Set the \u003cspan pulumi-lang-nodejs=\"`host`\" pulumi-lang-dotnet=\"`Host`\" pulumi-lang-go=\"`host`\" pulumi-lang-python=\"`host`\" pulumi-lang-yaml=\"`host`\" pulumi-lang-java=\"`host`\"\u003e`host`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`port`\" pulumi-lang-dotnet=\"`Port`\" pulumi-lang-go=\"`port`\" pulumi-lang-python=\"`port`\" pulumi-lang-yaml=\"`port`\" pulumi-lang-java=\"`port`\"\u003e`port`\u003c/span\u003e to point to the proxy address. Default: false\n"},"database":{"type":"number","description":"Database to use for the Redis connection when using the \u003cspan pulumi-lang-nodejs=\"`redis`\" pulumi-lang-dotnet=\"`Redis`\" pulumi-lang-go=\"`redis`\" pulumi-lang-python=\"`redis`\" pulumi-lang-yaml=\"`redis`\" pulumi-lang-java=\"`redis`\"\u003e`redis`\u003c/span\u003e strategy. Default: 0\n"},"host":{"type":"string","description":"A string representing a host name, such as example.com. Default: \"127.0.0.1\"\n"},"keepaliveBacklog":{"type":"number","description":"Limits the total number of opened connections for a pool. If the connection pool is full, connection queues above the limit go into the backlog queue. If the backlog queue is full, subsequent connect operations fail and return \u003cspan pulumi-lang-nodejs=\"`nil`\" pulumi-lang-dotnet=\"`Nil`\" pulumi-lang-go=\"`nil`\" pulumi-lang-python=\"`nil`\" pulumi-lang-yaml=\"`nil`\" pulumi-lang-java=\"`nil`\"\u003e`nil`\u003c/span\u003e. Queued operations (subject to set timeouts) resume once the number of connections in the pool is less than \u003cspan pulumi-lang-nodejs=\"`keepalivePoolSize`\" pulumi-lang-dotnet=\"`KeepalivePoolSize`\" pulumi-lang-go=\"`keepalivePoolSize`\" pulumi-lang-python=\"`keepalive_pool_size`\" pulumi-lang-yaml=\"`keepalivePoolSize`\" pulumi-lang-java=\"`keepalivePoolSize`\"\u003e`keepalive_pool_size`\u003c/span\u003e. If latency is high or throughput is low, try increasing this value. Empirically, this value is larger than \u003cspan pulumi-lang-nodejs=\"`keepalivePoolSize`\" pulumi-lang-dotnet=\"`KeepalivePoolSize`\" pulumi-lang-go=\"`keepalivePoolSize`\" pulumi-lang-python=\"`keepalive_pool_size`\" pulumi-lang-yaml=\"`keepalivePoolSize`\" pulumi-lang-java=\"`keepalivePoolSize`\"\u003e`keepalive_pool_size`\u003c/span\u003e.\n"},"keepalivePoolSize":{"type":"number","description":"The size limit for every cosocket connection pool associated with every remote server, per worker process. If neither \u003cspan pulumi-lang-nodejs=\"`keepalivePoolSize`\" pulumi-lang-dotnet=\"`KeepalivePoolSize`\" pulumi-lang-go=\"`keepalivePoolSize`\" pulumi-lang-python=\"`keepalive_pool_size`\" pulumi-lang-yaml=\"`keepalivePoolSize`\" pulumi-lang-java=\"`keepalivePoolSize`\"\u003e`keepalive_pool_size`\u003c/span\u003e nor \u003cspan pulumi-lang-nodejs=\"`keepaliveBacklog`\" pulumi-lang-dotnet=\"`KeepaliveBacklog`\" pulumi-lang-go=\"`keepaliveBacklog`\" pulumi-lang-python=\"`keepalive_backlog`\" pulumi-lang-yaml=\"`keepaliveBacklog`\" pulumi-lang-java=\"`keepaliveBacklog`\"\u003e`keepalive_backlog`\u003c/span\u003e is specified, no pool is created. If \u003cspan pulumi-lang-nodejs=\"`keepalivePoolSize`\" pulumi-lang-dotnet=\"`KeepalivePoolSize`\" pulumi-lang-go=\"`keepalivePoolSize`\" pulumi-lang-python=\"`keepalive_pool_size`\" pulumi-lang-yaml=\"`keepalivePoolSize`\" pulumi-lang-java=\"`keepalivePoolSize`\"\u003e`keepalive_pool_size`\u003c/span\u003e isn't specified but \u003cspan pulumi-lang-nodejs=\"`keepaliveBacklog`\" pulumi-lang-dotnet=\"`KeepaliveBacklog`\" pulumi-lang-go=\"`keepaliveBacklog`\" pulumi-lang-python=\"`keepalive_backlog`\" pulumi-lang-yaml=\"`keepaliveBacklog`\" pulumi-lang-java=\"`keepaliveBacklog`\"\u003e`keepalive_backlog`\u003c/span\u003e is specified, then the pool uses the default value. Try to increase (e.g. 512) this value if latency is high or throughput is low. Default: 256\n"},"password":{"type":"string","description":"Password to use for Redis connections. If undefined, no AUTH commands are sent to Redis.\n"},"port":{"type":"number","description":"An integer representing a port number between 0 and 65535, inclusive. Default: 6379\n"},"readTimeout":{"type":"number","description":"An integer representing a timeout in milliseconds. Must be between 0 and 2^31-2. Default: 2000\n"},"sendTimeout":{"type":"number","description":"An integer representing a timeout in milliseconds. Must be between 0 and 2^31-2. Default: 2000\n"},"sentinelMaster":{"type":"string","description":"Sentinel master to use for Redis connections. Defining this value implies using Redis Sentinel.\n"},"sentinelNodes":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPartialRedisEeConfigSentinelNode:GatewayPartialRedisEeConfigSentinelNode"},"description":"Sentinel node addresses to use for Redis connections when the \u003cspan pulumi-lang-nodejs=\"`redis`\" pulumi-lang-dotnet=\"`Redis`\" pulumi-lang-go=\"`redis`\" pulumi-lang-python=\"`redis`\" pulumi-lang-yaml=\"`redis`\" pulumi-lang-java=\"`redis`\"\u003e`redis`\u003c/span\u003e strategy is defined. Defining this field implies using a Redis Sentinel. The minimum length of the array is 1 element.\n"},"sentinelPassword":{"type":"string","description":"Sentinel password to authenticate with a Redis Sentinel instance. If undefined, no AUTH commands are sent to Redis Sentinels.\n"},"sentinelRole":{"type":"string","description":"Sentinel role to use for Redis connections when the \u003cspan pulumi-lang-nodejs=\"`redis`\" pulumi-lang-dotnet=\"`Redis`\" pulumi-lang-go=\"`redis`\" pulumi-lang-python=\"`redis`\" pulumi-lang-yaml=\"`redis`\" pulumi-lang-java=\"`redis`\"\u003e`redis`\u003c/span\u003e strategy is defined. Defining this value implies using Redis Sentinel. must be one of [\"any\", \"master\", \"slave\"]\n"},"sentinelUsername":{"type":"string","description":"Sentinel username to authenticate with a Redis Sentinel instance. If undefined, ACL authentication won't be performed. This requires Redis v6.2.0+.\n"},"serverName":{"type":"string","description":"A string representing an SNI (server name indication) value for TLS.\n"},"ssl":{"type":"boolean","description":"If set to true, uses SSL to connect to Redis. Default: false\n"},"sslVerify":{"type":"boolean","description":"If set to true, verifies the validity of the server SSL certificate. If setting this parameter, also configure \u003cspan pulumi-lang-nodejs=\"`luaSslTrustedCertificate`\" pulumi-lang-dotnet=\"`LuaSslTrustedCertificate`\" pulumi-lang-go=\"`luaSslTrustedCertificate`\" pulumi-lang-python=\"`lua_ssl_trusted_certificate`\" pulumi-lang-yaml=\"`luaSslTrustedCertificate`\" pulumi-lang-java=\"`luaSslTrustedCertificate`\"\u003e`lua_ssl_trusted_certificate`\u003c/span\u003e in `kong.conf` to specify the CA (or server) certificate used by your Redis server. You may also need to configure \u003cspan pulumi-lang-nodejs=\"`luaSslVerifyDepth`\" pulumi-lang-dotnet=\"`LuaSslVerifyDepth`\" pulumi-lang-go=\"`luaSslVerifyDepth`\" pulumi-lang-python=\"`lua_ssl_verify_depth`\" pulumi-lang-yaml=\"`luaSslVerifyDepth`\" pulumi-lang-java=\"`luaSslVerifyDepth`\"\u003e`lua_ssl_verify_depth`\u003c/span\u003e accordingly. Default: false\n"},"username":{"type":"string","description":"Username to use for Redis connections. If undefined, ACL authentication won't be performed. This requires Redis v6.0.0+. To be compatible with Redis v5.x.y, you can set it to \u003cspan pulumi-lang-nodejs=\"`default`\" pulumi-lang-dotnet=\"`Default`\" pulumi-lang-go=\"`default`\" pulumi-lang-python=\"`default`\" pulumi-lang-yaml=\"`default`\" pulumi-lang-java=\"`default`\"\u003e`default`\u003c/span\u003e.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["cloudAuthentication","clusterMaxRedirections","clusterNodes","connectTimeout","connectionIsProxied","database","host","keepalivePoolSize","password","port","readTimeout","sendTimeout","sentinelMaster","sentinelNodes","sentinelPassword","sentinelRole","sentinelUsername","ssl","sslVerify"]}}},"konnect:index/GatewayPartialRedisEeConfigCloudAuthentication:GatewayPartialRedisEeConfigCloudAuthentication":{"properties":{"authProvider":{"type":"string","description":"Auth providers to be used to authenticate to a Cloud Provider's Redis instance. must be one of [\"aws\", \"azure\", \"gcp\"]\n"},"awsAccessKeyId":{"type":"string","description":"AWS Access Key ID to be used for authentication when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e.\n"},"awsAssumeRoleArn":{"type":"string","description":"The ARN of the IAM role to assume for generating ElastiCache IAM authentication tokens.\n"},"awsCacheName":{"type":"string","description":"The name of the AWS Elasticache cluster when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e.\n"},"awsIsServerless":{"type":"boolean","description":"This flag specifies whether the cluster is serverless when\u003cspan pulumi-lang-nodejs=\" authProvider \" pulumi-lang-dotnet=\" AuthProvider \" pulumi-lang-go=\" authProvider \" pulumi-lang-python=\" auth_provider \" pulumi-lang-yaml=\" authProvider \" pulumi-lang-java=\" authProvider \"\u003e auth_provider \u003c/span\u003eis set to \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e. Default: true\n"},"awsRegion":{"type":"string","description":"The region of the AWS ElastiCache cluster when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e.\n"},"awsRoleSessionName":{"type":"string","description":"The session name for the temporary credentials when assuming the IAM role.\n"},"awsSecretAccessKey":{"type":"string","description":"AWS Secret Access Key to be used for authentication when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e.\n"},"azureClientId":{"type":"string","description":"Azure Client ID to be used for authentication when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`azure`\" pulumi-lang-dotnet=\"`Azure`\" pulumi-lang-go=\"`azure`\" pulumi-lang-python=\"`azure`\" pulumi-lang-yaml=\"`azure`\" pulumi-lang-java=\"`azure`\"\u003e`azure`\u003c/span\u003e.\n"},"azureClientSecret":{"type":"string","description":"Azure Client Secret to be used for authentication when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`azure`\" pulumi-lang-dotnet=\"`Azure`\" pulumi-lang-go=\"`azure`\" pulumi-lang-python=\"`azure`\" pulumi-lang-yaml=\"`azure`\" pulumi-lang-java=\"`azure`\"\u003e`azure`\u003c/span\u003e.\n"},"azureTenantId":{"type":"string","description":"Azure Tenant ID to be used for authentication when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`azure`\" pulumi-lang-dotnet=\"`Azure`\" pulumi-lang-go=\"`azure`\" pulumi-lang-python=\"`azure`\" pulumi-lang-yaml=\"`azure`\" pulumi-lang-java=\"`azure`\"\u003e`azure`\u003c/span\u003e.\n"},"gcpServiceAccountJson":{"type":"string","description":"GCP Service Account JSON to be used for authentication when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`gcp`\" pulumi-lang-dotnet=\"`Gcp`\" pulumi-lang-go=\"`gcp`\" pulumi-lang-python=\"`gcp`\" pulumi-lang-yaml=\"`gcp`\" pulumi-lang-java=\"`gcp`\"\u003e`gcp`\u003c/span\u003e.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["authProvider","awsIsServerless"]}}},"konnect:index/GatewayPartialRedisEeConfigClusterNode:GatewayPartialRedisEeConfigClusterNode":{"properties":{"ip":{"type":"string","description":"A string representing a host name, such as example.com. Default: \"127.0.0.1\"\n"},"port":{"type":"number","description":"An integer representing a port number between 0 and 65535, inclusive. Default: 6379\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["ip","port"]}}},"konnect:index/GatewayPartialRedisEeConfigSentinelNode:GatewayPartialRedisEeConfigSentinelNode":{"properties":{"host":{"type":"string","description":"A string representing a host name, such as example.com. Default: \"127.0.0.1\"\n"},"port":{"type":"number","description":"An integer representing a port number between 0 and 65535, inclusive. Default: 6379\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["host","port"]}}},"konnect:index/GatewayPluginAceConfig:GatewayPluginAceConfig":{"properties":{"anonymous":{"type":"string","description":"An optional string (consumer UUID or username) value to use as an \u003cspan pulumi-lang-nodejs=\"`anonymous`\" pulumi-lang-dotnet=\"`Anonymous`\" pulumi-lang-go=\"`anonymous`\" pulumi-lang-python=\"`anonymous`\" pulumi-lang-yaml=\"`anonymous`\" pulumi-lang-java=\"`anonymous`\"\u003e`anonymous`\u003c/span\u003e consumer if authentication fails. If empty (default null), the request will fail with an authentication failure \u003cspan pulumi-lang-nodejs=\"`4xx`\" pulumi-lang-dotnet=\"`4xx`\" pulumi-lang-go=\"`4xx`\" pulumi-lang-python=\"`4xx`\" pulumi-lang-yaml=\"`4xx`\" pulumi-lang-java=\"`4xx`\"\u003e`4xx`\u003c/span\u003e. When set, the plugin will skip ACE processing for requests that are already authenticated by other plugins with higher priority.\n"},"matchPolicy":{"type":"string","description":"Determines how the ACE plugin will behave when a request doesn't match an existing operation from an API or API package in Dev Portal. The \u003cspan pulumi-lang-nodejs=\"`required`\" pulumi-lang-dotnet=\"`Required`\" pulumi-lang-go=\"`required`\" pulumi-lang-python=\"`required`\" pulumi-lang-yaml=\"`required`\" pulumi-lang-java=\"`required`\"\u003e`required`\u003c/span\u003e setting requires every incoming request to match a defined operation. If a request doesn't match, ACE rejects the request outright with a 404. The \u003cspan pulumi-lang-nodejs=\"`ifPresent`\" pulumi-lang-dotnet=\"`IfPresent`\" pulumi-lang-go=\"`ifPresent`\" pulumi-lang-python=\"`if_present`\" pulumi-lang-yaml=\"`ifPresent`\" pulumi-lang-java=\"`ifPresent`\"\u003e`if_present`\u003c/span\u003e setting makes the ACE plugin only engage with a request when it matches an operation, allowing a request to still be processed by other plugins with a lower priority than ACE. Default: \"if*present\"; must be one of [\"if*present\", \"required\"]\n"},"rateLimiting":{"$ref":"#/types/konnect:index%2FGatewayPluginAceConfigRateLimiting:GatewayPluginAceConfigRateLimiting"}},"type":"object","language":{"nodejs":{"requiredOutputs":["matchPolicy","rateLimiting"]}}},"konnect:index/GatewayPluginAceConfigRateLimiting:GatewayPluginAceConfigRateLimiting":{"properties":{"redis":{"$ref":"#/types/konnect:index%2FGatewayPluginAceConfigRateLimitingRedis:GatewayPluginAceConfigRateLimitingRedis"},"syncRate":{"type":"number","description":"How often to sync counter data to the central data store. A value of 0 results in synchronous behavior (counter synchronization happens in each request's context and contributes directly to the latency of the request). A value greater than 0 results in asynchronous behavior and specifies the interval (in seconds) for synchronizing counters. The minimum allowed interval is 0.02 seconds (20ms). If omitted, the plugin ignores sync behavior entirely and only stores counters in node memory.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["redis"]}}},"konnect:index/GatewayPluginAceConfigRateLimitingRedis:GatewayPluginAceConfigRateLimitingRedis":{"properties":{"cloudAuthentication":{"$ref":"#/types/konnect:index%2FGatewayPluginAceConfigRateLimitingRedisCloudAuthentication:GatewayPluginAceConfigRateLimitingRedisCloudAuthentication","description":"Cloud auth related configs for connecting to a Cloud Provider's Redis instance.\n"},"clusterMaxRedirections":{"type":"number","description":"Maximum retry attempts for redirection. Default: 5\n"},"clusterNodes":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginAceConfigRateLimitingRedisClusterNode:GatewayPluginAceConfigRateLimitingRedisClusterNode"},"description":"Cluster addresses to use for Redis connections when the \u003cspan pulumi-lang-nodejs=\"`redis`\" pulumi-lang-dotnet=\"`Redis`\" pulumi-lang-go=\"`redis`\" pulumi-lang-python=\"`redis`\" pulumi-lang-yaml=\"`redis`\" pulumi-lang-java=\"`redis`\"\u003e`redis`\u003c/span\u003e strategy is defined. Defining this field implies using a Redis Cluster. The minimum length of the array is 1 element.\n"},"connectTimeout":{"type":"number","description":"An integer representing a timeout in milliseconds. Must be between 0 and 2^31-2. Default: 2000\n"},"connectionIsProxied":{"type":"boolean","description":"If the connection to Redis is proxied (e.g. Envoy), set it \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e. Set the \u003cspan pulumi-lang-nodejs=\"`host`\" pulumi-lang-dotnet=\"`Host`\" pulumi-lang-go=\"`host`\" pulumi-lang-python=\"`host`\" pulumi-lang-yaml=\"`host`\" pulumi-lang-java=\"`host`\"\u003e`host`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`port`\" pulumi-lang-dotnet=\"`Port`\" pulumi-lang-go=\"`port`\" pulumi-lang-python=\"`port`\" pulumi-lang-yaml=\"`port`\" pulumi-lang-java=\"`port`\"\u003e`port`\u003c/span\u003e to point to the proxy address. Default: false\n"},"database":{"type":"number","description":"Database to use for the Redis connection when using the \u003cspan pulumi-lang-nodejs=\"`redis`\" pulumi-lang-dotnet=\"`Redis`\" pulumi-lang-go=\"`redis`\" pulumi-lang-python=\"`redis`\" pulumi-lang-yaml=\"`redis`\" pulumi-lang-java=\"`redis`\"\u003e`redis`\u003c/span\u003e strategy. Default: 0\n"},"host":{"type":"string","description":"A string representing a host name, such as example.com. Default: \"127.0.0.1\"\n"},"keepaliveBacklog":{"type":"number","description":"Limits the total number of opened connections for a pool. If the connection pool is full, connection queues above the limit go into the backlog queue. If the backlog queue is full, subsequent connect operations fail and return \u003cspan pulumi-lang-nodejs=\"`nil`\" pulumi-lang-dotnet=\"`Nil`\" pulumi-lang-go=\"`nil`\" pulumi-lang-python=\"`nil`\" pulumi-lang-yaml=\"`nil`\" pulumi-lang-java=\"`nil`\"\u003e`nil`\u003c/span\u003e. Queued operations (subject to set timeouts) resume once the number of connections in the pool is less than \u003cspan pulumi-lang-nodejs=\"`keepalivePoolSize`\" pulumi-lang-dotnet=\"`KeepalivePoolSize`\" pulumi-lang-go=\"`keepalivePoolSize`\" pulumi-lang-python=\"`keepalive_pool_size`\" pulumi-lang-yaml=\"`keepalivePoolSize`\" pulumi-lang-java=\"`keepalivePoolSize`\"\u003e`keepalive_pool_size`\u003c/span\u003e. If latency is high or throughput is low, try increasing this value. Empirically, this value is larger than \u003cspan pulumi-lang-nodejs=\"`keepalivePoolSize`\" pulumi-lang-dotnet=\"`KeepalivePoolSize`\" pulumi-lang-go=\"`keepalivePoolSize`\" pulumi-lang-python=\"`keepalive_pool_size`\" pulumi-lang-yaml=\"`keepalivePoolSize`\" pulumi-lang-java=\"`keepalivePoolSize`\"\u003e`keepalive_pool_size`\u003c/span\u003e.\n"},"keepalivePoolSize":{"type":"number","description":"The size limit for every cosocket connection pool associated with every remote server, per worker process. If neither \u003cspan pulumi-lang-nodejs=\"`keepalivePoolSize`\" pulumi-lang-dotnet=\"`KeepalivePoolSize`\" pulumi-lang-go=\"`keepalivePoolSize`\" pulumi-lang-python=\"`keepalive_pool_size`\" pulumi-lang-yaml=\"`keepalivePoolSize`\" pulumi-lang-java=\"`keepalivePoolSize`\"\u003e`keepalive_pool_size`\u003c/span\u003e nor \u003cspan pulumi-lang-nodejs=\"`keepaliveBacklog`\" pulumi-lang-dotnet=\"`KeepaliveBacklog`\" pulumi-lang-go=\"`keepaliveBacklog`\" pulumi-lang-python=\"`keepalive_backlog`\" pulumi-lang-yaml=\"`keepaliveBacklog`\" pulumi-lang-java=\"`keepaliveBacklog`\"\u003e`keepalive_backlog`\u003c/span\u003e is specified, no pool is created. If \u003cspan pulumi-lang-nodejs=\"`keepalivePoolSize`\" pulumi-lang-dotnet=\"`KeepalivePoolSize`\" pulumi-lang-go=\"`keepalivePoolSize`\" pulumi-lang-python=\"`keepalive_pool_size`\" pulumi-lang-yaml=\"`keepalivePoolSize`\" pulumi-lang-java=\"`keepalivePoolSize`\"\u003e`keepalive_pool_size`\u003c/span\u003e isn't specified but \u003cspan pulumi-lang-nodejs=\"`keepaliveBacklog`\" pulumi-lang-dotnet=\"`KeepaliveBacklog`\" pulumi-lang-go=\"`keepaliveBacklog`\" pulumi-lang-python=\"`keepalive_backlog`\" pulumi-lang-yaml=\"`keepaliveBacklog`\" pulumi-lang-java=\"`keepaliveBacklog`\"\u003e`keepalive_backlog`\u003c/span\u003e is specified, then the pool uses the default value. Try to increase (e.g. 512) this value if latency is high or throughput is low. Default: 256\n"},"password":{"type":"string","description":"Password to use for Redis connections. If undefined, no AUTH commands are sent to Redis.\n"},"port":{"type":"number","description":"An integer representing a port number between 0 and 65535, inclusive. Default: 6379\n"},"readTimeout":{"type":"number","description":"An integer representing a timeout in milliseconds. Must be between 0 and 2^31-2. Default: 2000\n"},"sendTimeout":{"type":"number","description":"An integer representing a timeout in milliseconds. Must be between 0 and 2^31-2. Default: 2000\n"},"sentinelMaster":{"type":"string","description":"Sentinel master to use for Redis connections. Defining this value implies using Redis Sentinel.\n"},"sentinelNodes":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginAceConfigRateLimitingRedisSentinelNode:GatewayPluginAceConfigRateLimitingRedisSentinelNode"},"description":"Sentinel node addresses to use for Redis connections when the \u003cspan pulumi-lang-nodejs=\"`redis`\" pulumi-lang-dotnet=\"`Redis`\" pulumi-lang-go=\"`redis`\" pulumi-lang-python=\"`redis`\" pulumi-lang-yaml=\"`redis`\" pulumi-lang-java=\"`redis`\"\u003e`redis`\u003c/span\u003e strategy is defined. Defining this field implies using a Redis Sentinel. The minimum length of the array is 1 element.\n"},"sentinelPassword":{"type":"string","description":"Sentinel password to authenticate with a Redis Sentinel instance. If undefined, no AUTH commands are sent to Redis Sentinels.\n"},"sentinelRole":{"type":"string","description":"Sentinel role to use for Redis connections when the \u003cspan pulumi-lang-nodejs=\"`redis`\" pulumi-lang-dotnet=\"`Redis`\" pulumi-lang-go=\"`redis`\" pulumi-lang-python=\"`redis`\" pulumi-lang-yaml=\"`redis`\" pulumi-lang-java=\"`redis`\"\u003e`redis`\u003c/span\u003e strategy is defined. Defining this value implies using Redis Sentinel. must be one of [\"any\", \"master\", \"slave\"]\n"},"sentinelUsername":{"type":"string","description":"Sentinel username to authenticate with a Redis Sentinel instance. If undefined, ACL authentication won't be performed. This requires Redis v6.2.0+.\n"},"serverName":{"type":"string","description":"A string representing an SNI (server name indication) value for TLS.\n"},"ssl":{"type":"boolean","description":"If set to true, uses SSL to connect to Redis. Default: false\n"},"sslVerify":{"type":"boolean","description":"If set to true, verifies the validity of the server SSL certificate. If setting this parameter, also configure \u003cspan pulumi-lang-nodejs=\"`luaSslTrustedCertificate`\" pulumi-lang-dotnet=\"`LuaSslTrustedCertificate`\" pulumi-lang-go=\"`luaSslTrustedCertificate`\" pulumi-lang-python=\"`lua_ssl_trusted_certificate`\" pulumi-lang-yaml=\"`luaSslTrustedCertificate`\" pulumi-lang-java=\"`luaSslTrustedCertificate`\"\u003e`lua_ssl_trusted_certificate`\u003c/span\u003e in `kong.conf` to specify the CA (or server) certificate used by your Redis server. You may also need to configure \u003cspan pulumi-lang-nodejs=\"`luaSslVerifyDepth`\" pulumi-lang-dotnet=\"`LuaSslVerifyDepth`\" pulumi-lang-go=\"`luaSslVerifyDepth`\" pulumi-lang-python=\"`lua_ssl_verify_depth`\" pulumi-lang-yaml=\"`luaSslVerifyDepth`\" pulumi-lang-java=\"`luaSslVerifyDepth`\"\u003e`lua_ssl_verify_depth`\u003c/span\u003e accordingly. Default: false\n"},"username":{"type":"string","description":"Username to use for Redis connections. If undefined, ACL authentication won't be performed. This requires Redis v6.0.0+. To be compatible with Redis v5.x.y, you can set it to \u003cspan pulumi-lang-nodejs=\"`default`\" pulumi-lang-dotnet=\"`Default`\" pulumi-lang-go=\"`default`\" pulumi-lang-python=\"`default`\" pulumi-lang-yaml=\"`default`\" pulumi-lang-java=\"`default`\"\u003e`default`\u003c/span\u003e.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["cloudAuthentication","clusterMaxRedirections","connectTimeout","connectionIsProxied","database","host","keepalivePoolSize","port","readTimeout","sendTimeout","sentinelRole","ssl","sslVerify"]}}},"konnect:index/GatewayPluginAceConfigRateLimitingRedisCloudAuthentication:GatewayPluginAceConfigRateLimitingRedisCloudAuthentication":{"properties":{"authProvider":{"type":"string","description":"Auth providers to be used to authenticate to a Cloud Provider's Redis instance. must be one of [\"aws\", \"azure\", \"gcp\"]\n"},"awsAccessKeyId":{"type":"string","description":"AWS Access Key ID to be used for authentication when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e.\n"},"awsAssumeRoleArn":{"type":"string","description":"The ARN of the IAM role to assume for generating ElastiCache IAM authentication tokens.\n"},"awsCacheName":{"type":"string","description":"The name of the AWS Elasticache cluster when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e.\n"},"awsIsServerless":{"type":"boolean","description":"This flag specifies whether the cluster is serverless when\u003cspan pulumi-lang-nodejs=\" authProvider \" pulumi-lang-dotnet=\" AuthProvider \" pulumi-lang-go=\" authProvider \" pulumi-lang-python=\" auth_provider \" pulumi-lang-yaml=\" authProvider \" pulumi-lang-java=\" authProvider \"\u003e auth_provider \u003c/span\u003eis set to \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e. Default: true\n"},"awsRegion":{"type":"string","description":"The region of the AWS ElastiCache cluster when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e.\n"},"awsRoleSessionName":{"type":"string","description":"The session name for the temporary credentials when assuming the IAM role.\n"},"awsSecretAccessKey":{"type":"string","description":"AWS Secret Access Key to be used for authentication when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e.\n"},"azureClientId":{"type":"string","description":"Azure Client ID to be used for authentication when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`azure`\" pulumi-lang-dotnet=\"`Azure`\" pulumi-lang-go=\"`azure`\" pulumi-lang-python=\"`azure`\" pulumi-lang-yaml=\"`azure`\" pulumi-lang-java=\"`azure`\"\u003e`azure`\u003c/span\u003e.\n"},"azureClientSecret":{"type":"string","description":"Azure Client Secret to be used for authentication when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`azure`\" pulumi-lang-dotnet=\"`Azure`\" pulumi-lang-go=\"`azure`\" pulumi-lang-python=\"`azure`\" pulumi-lang-yaml=\"`azure`\" pulumi-lang-java=\"`azure`\"\u003e`azure`\u003c/span\u003e.\n"},"azureTenantId":{"type":"string","description":"Azure Tenant ID to be used for authentication when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`azure`\" pulumi-lang-dotnet=\"`Azure`\" pulumi-lang-go=\"`azure`\" pulumi-lang-python=\"`azure`\" pulumi-lang-yaml=\"`azure`\" pulumi-lang-java=\"`azure`\"\u003e`azure`\u003c/span\u003e.\n"},"gcpServiceAccountJson":{"type":"string","description":"GCP Service Account JSON to be used for authentication when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`gcp`\" pulumi-lang-dotnet=\"`Gcp`\" pulumi-lang-go=\"`gcp`\" pulumi-lang-python=\"`gcp`\" pulumi-lang-yaml=\"`gcp`\" pulumi-lang-java=\"`gcp`\"\u003e`gcp`\u003c/span\u003e.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["authProvider","awsIsServerless"]}}},"konnect:index/GatewayPluginAceConfigRateLimitingRedisClusterNode:GatewayPluginAceConfigRateLimitingRedisClusterNode":{"properties":{"ip":{"type":"string","description":"A string representing a host name, such as example.com. Default: \"127.0.0.1\"\n"},"port":{"type":"number","description":"An integer representing a port number between 0 and 65535, inclusive. Default: 6379\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["ip","port"]}}},"konnect:index/GatewayPluginAceConfigRateLimitingRedisSentinelNode:GatewayPluginAceConfigRateLimitingRedisSentinelNode":{"properties":{"host":{"type":"string","description":"A string representing a host name, such as example.com. Default: \"127.0.0.1\"\n"},"port":{"type":"number","description":"An integer representing a port number between 0 and 65535, inclusive. Default: 6379\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["host","port"]}}},"konnect:index/GatewayPluginAceOrdering:GatewayPluginAceOrdering":{"properties":{"after":{"$ref":"#/types/konnect:index%2FGatewayPluginAceOrderingAfter:GatewayPluginAceOrderingAfter"},"before":{"$ref":"#/types/konnect:index%2FGatewayPluginAceOrderingBefore:GatewayPluginAceOrderingBefore"}},"type":"object","language":{"nodejs":{"requiredOutputs":["after","before"]}}},"konnect:index/GatewayPluginAceOrderingAfter:GatewayPluginAceOrderingAfter":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginAceOrderingBefore:GatewayPluginAceOrderingBefore":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginAcePartial:GatewayPluginAcePartial":{"properties":{"id":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"name":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"path":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id","name","path"]}}},"konnect:index/GatewayPluginAceRoute:GatewayPluginAceRoute":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginAceService:GatewayPluginAceService":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginAclConfig:GatewayPluginAclConfig":{"properties":{"allows":{"type":"array","items":{"type":"string"},"description":"Arbitrary group names that are allowed to consume the service or route. One of `config.allow` or `config.deny` must be specified.\n"},"alwaysUseAuthenticatedGroups":{"type":"boolean","description":"If enabled (\u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e), the authenticated groups will always be used even when an authenticated consumer already exists. If the authenticated groups don't exist, it will fallback to use the groups associated with the consumer. By default the authenticated groups will only be used when there is no consumer or the consumer is anonymous. Default: false\n"},"denies":{"type":"array","items":{"type":"string"},"description":"Arbitrary group names that are not allowed to consume the service or route. One of `config.allow` or `config.deny` must be specified.\n"},"hideGroupsHeader":{"type":"boolean","description":"If enabled (\u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e), prevents the `X-Consumer-Groups` header from being sent in the request to the upstream service. Default: false\n"},"includeConsumerGroups":{"type":"boolean","description":"If enabled (\u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e), allows the consumer-groups to be used in the `allow|deny` fields. Default: false\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["alwaysUseAuthenticatedGroups","hideGroupsHeader","includeConsumerGroups"]}}},"konnect:index/GatewayPluginAclOrdering:GatewayPluginAclOrdering":{"properties":{"after":{"$ref":"#/types/konnect:index%2FGatewayPluginAclOrderingAfter:GatewayPluginAclOrderingAfter"},"before":{"$ref":"#/types/konnect:index%2FGatewayPluginAclOrderingBefore:GatewayPluginAclOrderingBefore"}},"type":"object","language":{"nodejs":{"requiredOutputs":["after","before"]}}},"konnect:index/GatewayPluginAclOrderingAfter:GatewayPluginAclOrderingAfter":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginAclOrderingBefore:GatewayPluginAclOrderingBefore":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginAclPartial:GatewayPluginAclPartial":{"properties":{"id":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"name":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"path":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id","name","path"]}}},"konnect:index/GatewayPluginAclRoute:GatewayPluginAclRoute":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginAclService:GatewayPluginAclService":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginAcmeConfig:GatewayPluginAcmeConfig":{"properties":{"accountEmail":{"type":"string","description":"The account identifier. Can be reused in a different plugin instance.\n"},"accountKey":{"$ref":"#/types/konnect:index%2FGatewayPluginAcmeConfigAccountKey:GatewayPluginAcmeConfigAccountKey","description":"The private key associated with the account.\n"},"allowAnyDomain":{"type":"boolean","description":"If set to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, the plugin allows all domains and ignores any values in the \u003cspan pulumi-lang-nodejs=\"`domains`\" pulumi-lang-dotnet=\"`Domains`\" pulumi-lang-go=\"`domains`\" pulumi-lang-python=\"`domains`\" pulumi-lang-yaml=\"`domains`\" pulumi-lang-java=\"`domains`\"\u003e`domains`\u003c/span\u003e list. Default: false\n"},"apiUri":{"type":"string","description":"A string representing a URL, such as https://example.com/path/to/resource?q=search. Default: \"https://acme-v02.api.letsencrypt.org/directory\"\n"},"certType":{"type":"string","description":"The certificate type to create. The possible values are \u003cspan pulumi-lang-nodejs=\"`rsa`\" pulumi-lang-dotnet=\"`Rsa`\" pulumi-lang-go=\"`rsa`\" pulumi-lang-python=\"`rsa`\" pulumi-lang-yaml=\"`rsa`\" pulumi-lang-java=\"`rsa`\"\u003e`rsa`\u003c/span\u003e for RSA certificate or \u003cspan pulumi-lang-nodejs=\"`ecc`\" pulumi-lang-dotnet=\"`Ecc`\" pulumi-lang-go=\"`ecc`\" pulumi-lang-python=\"`ecc`\" pulumi-lang-yaml=\"`ecc`\" pulumi-lang-java=\"`ecc`\"\u003e`ecc`\u003c/span\u003e for EC certificate. Default: \"rsa\"; must be one of [\"ecc\", \"rsa\"]\n"},"domains":{"type":"array","items":{"type":"string"},"description":"An array of strings representing hosts. A valid host is a string containing one or more labels separated by periods, with at most one wildcard label ('*')\n"},"eabHmacKey":{"type":"string","description":"External account binding (EAB) base64-encoded URL string of the HMAC key. You usually don't need to set this unless it is explicitly required by the CA.\n"},"eabKid":{"type":"string","description":"External account binding (EAB) key id. You usually don't need to set this unless it is explicitly required by the CA.\n"},"enableIpv4CommonName":{"type":"boolean","description":"A boolean value that controls whether to include the IPv4 address in the common name field of generated certificates. Default: true\n"},"failBackoffMinutes":{"type":"number","description":"Minutes to wait for each domain that fails to create a certificate. This applies to both a\nnew certificate and a renewal certificate.\nDefault: 5\n"},"preferredChain":{"type":"string","description":"A string value that specifies the preferred certificate chain to use when generating certificates.\n"},"renewThresholdDays":{"type":"number","description":"Days remaining to renew the certificate before it expires. Default: 14\n"},"rsaKeySize":{"type":"number","description":"RSA private key size for the certificate. The possible values are 2048, 3072, or 4096. Default: 4096; must be one of [\"2048\", \"3072\", \"4096\"]\n"},"storage":{"type":"string","description":"The backend storage type to use. In DB-less mode and Konnect, \u003cspan pulumi-lang-nodejs=\"`kong`\" pulumi-lang-dotnet=\"`Kong`\" pulumi-lang-go=\"`kong`\" pulumi-lang-python=\"`kong`\" pulumi-lang-yaml=\"`kong`\" pulumi-lang-java=\"`kong`\"\u003e`kong`\u003c/span\u003e storage is unavailable. In hybrid mode and Konnect, \u003cspan pulumi-lang-nodejs=\"`shm`\" pulumi-lang-dotnet=\"`Shm`\" pulumi-lang-go=\"`shm`\" pulumi-lang-python=\"`shm`\" pulumi-lang-yaml=\"`shm`\" pulumi-lang-java=\"`shm`\"\u003e`shm`\u003c/span\u003e storage is unavailable. \u003cspan pulumi-lang-nodejs=\"`shm`\" pulumi-lang-dotnet=\"`Shm`\" pulumi-lang-go=\"`shm`\" pulumi-lang-python=\"`shm`\" pulumi-lang-yaml=\"`shm`\" pulumi-lang-java=\"`shm`\"\u003e`shm`\u003c/span\u003e storage does not persist during Kong restarts and does not work for Kong running on different machines, so consider using one of \u003cspan pulumi-lang-nodejs=\"`kong`\" pulumi-lang-dotnet=\"`Kong`\" pulumi-lang-go=\"`kong`\" pulumi-lang-python=\"`kong`\" pulumi-lang-yaml=\"`kong`\" pulumi-lang-java=\"`kong`\"\u003e`kong`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`redis`\" pulumi-lang-dotnet=\"`Redis`\" pulumi-lang-go=\"`redis`\" pulumi-lang-python=\"`redis`\" pulumi-lang-yaml=\"`redis`\" pulumi-lang-java=\"`redis`\"\u003e`redis`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`consul`\" pulumi-lang-dotnet=\"`Consul`\" pulumi-lang-go=\"`consul`\" pulumi-lang-python=\"`consul`\" pulumi-lang-yaml=\"`consul`\" pulumi-lang-java=\"`consul`\"\u003e`consul`\u003c/span\u003e, or \u003cspan pulumi-lang-nodejs=\"`vault`\" pulumi-lang-dotnet=\"`Vault`\" pulumi-lang-go=\"`vault`\" pulumi-lang-python=\"`vault`\" pulumi-lang-yaml=\"`vault`\" pulumi-lang-java=\"`vault`\"\u003e`vault`\u003c/span\u003e in production. Default: \"shm\"; must be one of [\"consul\", \"kong\", \"redis\", \"shm\", \"vault\"]\n"},"storageConfig":{"$ref":"#/types/konnect:index%2FGatewayPluginAcmeConfigStorageConfig:GatewayPluginAcmeConfigStorageConfig"},"tosAccepted":{"type":"boolean","description":"If you are using Let's Encrypt, you must set this to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e to agree the terms of service. Default: false\n"}},"type":"object","required":["accountEmail"],"language":{"nodejs":{"requiredOutputs":["accountEmail","accountKey","allowAnyDomain","apiUri","certType","enableIpv4CommonName","failBackoffMinutes","renewThresholdDays","rsaKeySize","storage","storageConfig","tosAccepted"]}}},"konnect:index/GatewayPluginAcmeConfigAccountKey:GatewayPluginAcmeConfigAccountKey":{"properties":{"keyId":{"type":"string","description":"The Key ID.\n"},"keySet":{"type":"string","description":"The name of the key set to associate the Key ID with.\n"}},"type":"object","required":["keyId"]},"konnect:index/GatewayPluginAcmeConfigStorageConfig:GatewayPluginAcmeConfigStorageConfig":{"properties":{"consul":{"$ref":"#/types/konnect:index%2FGatewayPluginAcmeConfigStorageConfigConsul:GatewayPluginAcmeConfigStorageConfigConsul"},"kong":{"type":"object","additionalProperties":{"type":"string"}},"redis":{"$ref":"#/types/konnect:index%2FGatewayPluginAcmeConfigStorageConfigRedis:GatewayPluginAcmeConfigStorageConfigRedis"},"shm":{"$ref":"#/types/konnect:index%2FGatewayPluginAcmeConfigStorageConfigShm:GatewayPluginAcmeConfigStorageConfigShm"},"vault":{"$ref":"#/types/konnect:index%2FGatewayPluginAcmeConfigStorageConfigVault:GatewayPluginAcmeConfigStorageConfigVault"}},"type":"object","language":{"nodejs":{"requiredOutputs":["consul","redis","shm","vault"]}}},"konnect:index/GatewayPluginAcmeConfigStorageConfigConsul:GatewayPluginAcmeConfigStorageConfigConsul":{"properties":{"host":{"type":"string","description":"A string representing a host name, such as example.com.\n"},"https":{"type":"boolean","description":"Boolean representation of https. Default: false\n"},"kvPath":{"type":"string","description":"KV prefix path.\n"},"port":{"type":"number","description":"An integer representing a port number between 0 and 65535, inclusive.\n"},"timeout":{"type":"number","description":"Timeout in milliseconds.\n"},"token":{"type":"string","description":"Consul ACL token.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["https"]}}},"konnect:index/GatewayPluginAcmeConfigStorageConfigRedis:GatewayPluginAcmeConfigStorageConfigRedis":{"properties":{"cloudAuthentication":{"$ref":"#/types/konnect:index%2FGatewayPluginAcmeConfigStorageConfigRedisCloudAuthentication:GatewayPluginAcmeConfigStorageConfigRedisCloudAuthentication","description":"Cloud auth related configs for connecting to a Cloud Provider's Redis instance.\n"},"database":{"type":"number","description":"Database to use for the Redis connection when using the \u003cspan pulumi-lang-nodejs=\"`redis`\" pulumi-lang-dotnet=\"`Redis`\" pulumi-lang-go=\"`redis`\" pulumi-lang-python=\"`redis`\" pulumi-lang-yaml=\"`redis`\" pulumi-lang-java=\"`redis`\"\u003e`redis`\u003c/span\u003e strategy. Default: 0\n"},"extraOptions":{"$ref":"#/types/konnect:index%2FGatewayPluginAcmeConfigStorageConfigRedisExtraOptions:GatewayPluginAcmeConfigStorageConfigRedisExtraOptions","description":"Custom ACME Redis options\n"},"host":{"type":"string","description":"A string representing a host name, such as example.com.\n"},"password":{"type":"string","description":"Password to use for Redis connections. If undefined, no AUTH commands are sent to Redis.\n"},"port":{"type":"number","description":"An integer representing a port number between 0 and 65535, inclusive. Default: 6379\n"},"serverName":{"type":"string","description":"A string representing an SNI (server name indication) value for TLS.\n"},"ssl":{"type":"boolean","description":"If set to true, uses SSL to connect to Redis. Default: false\n"},"sslVerify":{"type":"boolean","description":"If set to true, verifies the validity of the server SSL certificate. If setting this parameter, also configure \u003cspan pulumi-lang-nodejs=\"`luaSslTrustedCertificate`\" pulumi-lang-dotnet=\"`LuaSslTrustedCertificate`\" pulumi-lang-go=\"`luaSslTrustedCertificate`\" pulumi-lang-python=\"`lua_ssl_trusted_certificate`\" pulumi-lang-yaml=\"`luaSslTrustedCertificate`\" pulumi-lang-java=\"`luaSslTrustedCertificate`\"\u003e`lua_ssl_trusted_certificate`\u003c/span\u003e in `kong.conf` to specify the CA (or server) certificate used by your Redis server. You may also need to configure \u003cspan pulumi-lang-nodejs=\"`luaSslVerifyDepth`\" pulumi-lang-dotnet=\"`LuaSslVerifyDepth`\" pulumi-lang-go=\"`luaSslVerifyDepth`\" pulumi-lang-python=\"`lua_ssl_verify_depth`\" pulumi-lang-yaml=\"`luaSslVerifyDepth`\" pulumi-lang-java=\"`luaSslVerifyDepth`\"\u003e`lua_ssl_verify_depth`\u003c/span\u003e accordingly. Default: false\n"},"timeout":{"type":"number","description":"An integer representing a timeout in milliseconds. Must be between 0 and 2^31-2. Default: 2000\n"},"username":{"type":"string","description":"Username to use for Redis connections. If undefined, ACL authentication won't be performed. This requires Redis v6.0.0+. To be compatible with Redis v5.x.y, you can set it to \u003cspan pulumi-lang-nodejs=\"`default`\" pulumi-lang-dotnet=\"`Default`\" pulumi-lang-go=\"`default`\" pulumi-lang-python=\"`default`\" pulumi-lang-yaml=\"`default`\" pulumi-lang-java=\"`default`\"\u003e`default`\u003c/span\u003e.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["cloudAuthentication","database","extraOptions","port","ssl","sslVerify","timeout"]}}},"konnect:index/GatewayPluginAcmeConfigStorageConfigRedisCloudAuthentication:GatewayPluginAcmeConfigStorageConfigRedisCloudAuthentication":{"properties":{"authProvider":{"type":"string","description":"Auth providers to be used to authenticate to a Cloud Provider's Redis instance. must be one of [\"aws\", \"azure\", \"gcp\"]\n"},"awsAccessKeyId":{"type":"string","description":"AWS Access Key ID to be used for authentication when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e.\n"},"awsAssumeRoleArn":{"type":"string","description":"The ARN of the IAM role to assume for generating ElastiCache IAM authentication tokens.\n"},"awsCacheName":{"type":"string","description":"The name of the AWS Elasticache cluster when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e.\n"},"awsIsServerless":{"type":"boolean","description":"This flag specifies whether the cluster is serverless when\u003cspan pulumi-lang-nodejs=\" authProvider \" pulumi-lang-dotnet=\" AuthProvider \" pulumi-lang-go=\" authProvider \" pulumi-lang-python=\" auth_provider \" pulumi-lang-yaml=\" authProvider \" pulumi-lang-java=\" authProvider \"\u003e auth_provider \u003c/span\u003eis set to \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e. Default: true\n"},"awsRegion":{"type":"string","description":"The region of the AWS ElastiCache cluster when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e.\n"},"awsRoleSessionName":{"type":"string","description":"The session name for the temporary credentials when assuming the IAM role.\n"},"awsSecretAccessKey":{"type":"string","description":"AWS Secret Access Key to be used for authentication when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e.\n"},"azureClientId":{"type":"string","description":"Azure Client ID to be used for authentication when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`azure`\" pulumi-lang-dotnet=\"`Azure`\" pulumi-lang-go=\"`azure`\" pulumi-lang-python=\"`azure`\" pulumi-lang-yaml=\"`azure`\" pulumi-lang-java=\"`azure`\"\u003e`azure`\u003c/span\u003e.\n"},"azureClientSecret":{"type":"string","description":"Azure Client Secret to be used for authentication when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`azure`\" pulumi-lang-dotnet=\"`Azure`\" pulumi-lang-go=\"`azure`\" pulumi-lang-python=\"`azure`\" pulumi-lang-yaml=\"`azure`\" pulumi-lang-java=\"`azure`\"\u003e`azure`\u003c/span\u003e.\n"},"azureTenantId":{"type":"string","description":"Azure Tenant ID to be used for authentication when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`azure`\" pulumi-lang-dotnet=\"`Azure`\" pulumi-lang-go=\"`azure`\" pulumi-lang-python=\"`azure`\" pulumi-lang-yaml=\"`azure`\" pulumi-lang-java=\"`azure`\"\u003e`azure`\u003c/span\u003e.\n"},"gcpServiceAccountJson":{"type":"string","description":"GCP Service Account JSON to be used for authentication when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`gcp`\" pulumi-lang-dotnet=\"`Gcp`\" pulumi-lang-go=\"`gcp`\" pulumi-lang-python=\"`gcp`\" pulumi-lang-yaml=\"`gcp`\" pulumi-lang-java=\"`gcp`\"\u003e`gcp`\u003c/span\u003e.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["authProvider","awsIsServerless"]}}},"konnect:index/GatewayPluginAcmeConfigStorageConfigRedisExtraOptions:GatewayPluginAcmeConfigStorageConfigRedisExtraOptions":{"properties":{"namespace":{"type":"string","description":"A namespace to prepend to all keys stored in Redis. Default: \"\"\n"},"scanCount":{"type":"number","description":"The number of keys to return in Redis SCAN calls. Default: 10\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["namespace","scanCount"]}}},"konnect:index/GatewayPluginAcmeConfigStorageConfigShm:GatewayPluginAcmeConfigStorageConfigShm":{"properties":{"shmName":{"type":"string","description":"Name of shared memory zone used for Kong API gateway storage. Default: \"kong\"\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["shmName"]}}},"konnect:index/GatewayPluginAcmeConfigStorageConfigVault:GatewayPluginAcmeConfigStorageConfigVault":{"properties":{"authMethod":{"type":"string","description":"Auth Method, default to token, can be 'token' or 'kubernetes'. Default: \"token\"; must be one of [\"kubernetes\", \"token\"]\n"},"authPath":{"type":"string","description":"Vault's authentication path to use.\n"},"authRole":{"type":"string","description":"The role to try and assign.\n"},"host":{"type":"string","description":"A string representing a host name, such as example.com.\n"},"https":{"type":"boolean","description":"Boolean representation of https. Default: false\n"},"jwtPath":{"type":"string","description":"The path to the JWT.\n"},"kvPath":{"type":"string","description":"KV prefix path.\n"},"port":{"type":"number","description":"An integer representing a port number between 0 and 65535, inclusive.\n"},"timeout":{"type":"number","description":"Timeout in milliseconds.\n"},"tlsServerName":{"type":"string","description":"SNI used in request, default to host if omitted.\n"},"tlsVerify":{"type":"boolean","description":"Turn on TLS verification. Default: true\n"},"token":{"type":"string","description":"Consul ACL token.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["authMethod","https","tlsVerify"]}}},"konnect:index/GatewayPluginAcmeOrdering:GatewayPluginAcmeOrdering":{"properties":{"after":{"$ref":"#/types/konnect:index%2FGatewayPluginAcmeOrderingAfter:GatewayPluginAcmeOrderingAfter"},"before":{"$ref":"#/types/konnect:index%2FGatewayPluginAcmeOrderingBefore:GatewayPluginAcmeOrderingBefore"}},"type":"object","language":{"nodejs":{"requiredOutputs":["after","before"]}}},"konnect:index/GatewayPluginAcmeOrderingAfter:GatewayPluginAcmeOrderingAfter":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginAcmeOrderingBefore:GatewayPluginAcmeOrderingBefore":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginAcmePartial:GatewayPluginAcmePartial":{"properties":{"id":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"name":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"path":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id","name","path"]}}},"konnect:index/GatewayPluginAiAwsGuardrailsConfig:GatewayPluginAiAwsGuardrailsConfig":{"properties":{"allowMasking":{"type":"boolean","description":"Allow to masking the request/response instead of blocking it. Streaming will be disabled if this is enabled. Default: false\n"},"awsAccessKeyId":{"type":"string","description":"The AWS access key ID to use for authentication\n"},"awsAssumeRoleArn":{"type":"string","description":"The target AWS IAM role ARN used to access the guardrails service\n"},"awsRegion":{"type":"string","description":"The AWS region to use for the Bedrock API\n"},"awsRoleSessionName":{"type":"string","description":"The identifier of the assumed role session\n"},"awsSecretAccessKey":{"type":"string","description":"The AWS secret access key to use for authentication\n"},"awsStsEndpointUrl":{"type":"string","description":"Override the STS endpoint URL when assuming a different role\n"},"guardingMode":{"type":"string","description":"The guardrail mode to use for the request. Default: \"INPUT\"; must be one of [\"BOTH\", \"INPUT\", \"OUTPUT\"]\n"},"guardrailsId":{"type":"string","description":"The guardrail identifier used in the request to apply the guardrail.\n"},"guardrailsVersion":{"type":"string","description":"The guardrail version used in the request to apply the guardrail. Note that the value of this field must match the pattern `(([1-9][0-9]{0,7})|(DRAFT))` according to the AWS documentation https://docs.aws.amazon.com/bedrock/latest/APIReference/API*runtime*ApplyGuardrail.html#API*runtime*ApplyGuardrail_RequestSyntax.\n"},"responseBufferSize":{"type":"number","description":"The amount of bytes receiving from upstream to be buffered before sending to the guardrails service. This only applies to the response content guard. Default: 100\n"},"sslVerify":{"type":"boolean","description":"Verify TLS certificate when connecting to the bedrock service.\n"},"stopOnError":{"type":"boolean","description":"Stop processing if an error occurs. Default: true\n"},"textSource":{"type":"string","description":"Select where to pick the 'text' for the Content Guard Services request. Default: \"concatenate*all*content\"; must be one of [\"concatenate*all*content\", \"concatenate*user*content\"]\n"},"timeout":{"type":"number","description":"Connection timeout with the bedrock service. Default: 10000\n"}},"type":"object","required":["awsRegion","guardrailsId","guardrailsVersion"],"language":{"nodejs":{"requiredOutputs":["allowMasking","awsRegion","guardingMode","guardrailsId","guardrailsVersion","responseBufferSize","stopOnError","textSource","timeout"]}}},"konnect:index/GatewayPluginAiAwsGuardrailsConsumer:GatewayPluginAiAwsGuardrailsConsumer":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginAiAwsGuardrailsConsumerGroup:GatewayPluginAiAwsGuardrailsConsumerGroup":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginAiAwsGuardrailsOrdering:GatewayPluginAiAwsGuardrailsOrdering":{"properties":{"after":{"$ref":"#/types/konnect:index%2FGatewayPluginAiAwsGuardrailsOrderingAfter:GatewayPluginAiAwsGuardrailsOrderingAfter"},"before":{"$ref":"#/types/konnect:index%2FGatewayPluginAiAwsGuardrailsOrderingBefore:GatewayPluginAiAwsGuardrailsOrderingBefore"}},"type":"object","language":{"nodejs":{"requiredOutputs":["after","before"]}}},"konnect:index/GatewayPluginAiAwsGuardrailsOrderingAfter:GatewayPluginAiAwsGuardrailsOrderingAfter":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginAiAwsGuardrailsOrderingBefore:GatewayPluginAiAwsGuardrailsOrderingBefore":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginAiAwsGuardrailsPartial:GatewayPluginAiAwsGuardrailsPartial":{"properties":{"id":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"name":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"path":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id","name","path"]}}},"konnect:index/GatewayPluginAiAwsGuardrailsRoute:GatewayPluginAiAwsGuardrailsRoute":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginAiAwsGuardrailsService:GatewayPluginAiAwsGuardrailsService":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginAiAzureContentSafetyConfig:GatewayPluginAiAzureContentSafetyConfig":{"properties":{"azureApiVersion":{"type":"string","description":"Sets the ?api-version URL parameter, used for defining the Azure Content Services interchange format. Default: \"2023-10-01\"\n"},"azureClientId":{"type":"string","description":"If \u003cspan pulumi-lang-nodejs=\"`azureUseManagedIdentity`\" pulumi-lang-dotnet=\"`AzureUseManagedIdentity`\" pulumi-lang-go=\"`azureUseManagedIdentity`\" pulumi-lang-python=\"`azure_use_managed_identity`\" pulumi-lang-yaml=\"`azureUseManagedIdentity`\" pulumi-lang-java=\"`azureUseManagedIdentity`\"\u003e`azure_use_managed_identity`\u003c/span\u003e is true, set the client ID if required.\n"},"azureClientSecret":{"type":"string","description":"If \u003cspan pulumi-lang-nodejs=\"`azureUseManagedIdentity`\" pulumi-lang-dotnet=\"`AzureUseManagedIdentity`\" pulumi-lang-go=\"`azureUseManagedIdentity`\" pulumi-lang-python=\"`azure_use_managed_identity`\" pulumi-lang-yaml=\"`azureUseManagedIdentity`\" pulumi-lang-java=\"`azureUseManagedIdentity`\"\u003e`azure_use_managed_identity`\u003c/span\u003e is true, set the client secret if required.\n"},"azureTenantId":{"type":"string","description":"If \u003cspan pulumi-lang-nodejs=\"`azureUseManagedIdentity`\" pulumi-lang-dotnet=\"`AzureUseManagedIdentity`\" pulumi-lang-go=\"`azureUseManagedIdentity`\" pulumi-lang-python=\"`azure_use_managed_identity`\" pulumi-lang-yaml=\"`azureUseManagedIdentity`\" pulumi-lang-java=\"`azureUseManagedIdentity`\"\u003e`azure_use_managed_identity`\u003c/span\u003e is true, set the tenant ID if required.\n"},"azureUseManagedIdentity":{"type":"boolean","description":"If checked, uses (if set) \u003cspan pulumi-lang-nodejs=\"`azureClientId`\" pulumi-lang-dotnet=\"`AzureClientId`\" pulumi-lang-go=\"`azureClientId`\" pulumi-lang-python=\"`azure_client_id`\" pulumi-lang-yaml=\"`azureClientId`\" pulumi-lang-java=\"`azureClientId`\"\u003e`azure_client_id`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`azureClientSecret`\" pulumi-lang-dotnet=\"`AzureClientSecret`\" pulumi-lang-go=\"`azureClientSecret`\" pulumi-lang-python=\"`azure_client_secret`\" pulumi-lang-yaml=\"`azureClientSecret`\" pulumi-lang-java=\"`azureClientSecret`\"\u003e`azure_client_secret`\u003c/span\u003e, and/or \u003cspan pulumi-lang-nodejs=\"`azureTenantId`\" pulumi-lang-dotnet=\"`AzureTenantId`\" pulumi-lang-go=\"`azureTenantId`\" pulumi-lang-python=\"`azure_tenant_id`\" pulumi-lang-yaml=\"`azureTenantId`\" pulumi-lang-java=\"`azureTenantId`\"\u003e`azure_tenant_id`\u003c/span\u003e for Azure authentication, via Managed or User-assigned identity. Default: false\n"},"blocklistNames":{"type":"array","items":{"type":"string"},"description":"Use these configured blocklists (in Azure Content Services) when inspecting content.\n"},"categories":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginAiAzureContentSafetyConfigCategory:GatewayPluginAiAzureContentSafetyConfigCategory"},"description":"Array of categories, and their thresholds, to measure on.\n"},"contentSafetyKey":{"type":"string","description":"If \u003cspan pulumi-lang-nodejs=\"`azureUseManagedIdentity`\" pulumi-lang-dotnet=\"`AzureUseManagedIdentity`\" pulumi-lang-go=\"`azureUseManagedIdentity`\" pulumi-lang-python=\"`azure_use_managed_identity`\" pulumi-lang-yaml=\"`azureUseManagedIdentity`\" pulumi-lang-java=\"`azureUseManagedIdentity`\"\u003e`azure_use_managed_identity`\u003c/span\u003e is true, set the API key to call Content Safety.\n"},"contentSafetyUrl":{"type":"string","description":"Full URL, inc protocol, of the Azure Content Safety instance.\n"},"guardingMode":{"type":"string","description":"The guard mode to use for the request. Default: \"INPUT\"; must be one of [\"BOTH\", \"INPUT\", \"OUTPUT\"]\n"},"haltOnBlocklistHit":{"type":"boolean","description":"Tells Azure to reject the request if any blocklist filter is hit. Default: true\n"},"outputType":{"type":"string","description":"See https://learn.microsoft.com/en-us/azure/ai-services/openai/concepts/content-filter#content-filtering-categories. Default: \"FourSeverityLevels\"; must be one of [\"EightSeverityLevels\", \"FourSeverityLevels\"]\n"},"responseBufferSize":{"type":"number","description":"The amount of bytes receiving from upstream to be buffered before sending to the guardrails service. This only applies to the response content guard. Default: 100\n"},"revealFailureReason":{"type":"boolean","description":"Set true to tell the caller why their request was rejected, if so. Default: true\n"},"sslVerify":{"type":"boolean","description":"Whether to verify the certificate presented by the Azure Content Safety service when using HTTPS. Default: false\n"},"stopOnError":{"type":"boolean","description":"Stop processing if an error occurs. Default: true\n"},"textSource":{"type":"string","description":"Select where to pick the 'text' for the Azure Content Services request. Default: \"concatenate*all*content\"; must be one of [\"concatenate*all*content\", \"concatenate*user*content\"]\n"}},"type":"object","required":["contentSafetyUrl"],"language":{"nodejs":{"requiredOutputs":["azureApiVersion","azureUseManagedIdentity","contentSafetyUrl","guardingMode","haltOnBlocklistHit","outputType","responseBufferSize","revealFailureReason","sslVerify","stopOnError","textSource"]}}},"konnect:index/GatewayPluginAiAzureContentSafetyConfigCategory:GatewayPluginAiAzureContentSafetyConfigCategory":{"properties":{"name":{"type":"string","description":"Not Null\n"},"rejectionLevel":{"type":"number","description":"Not Null\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["name","rejectionLevel"]}}},"konnect:index/GatewayPluginAiAzureContentSafetyOrdering:GatewayPluginAiAzureContentSafetyOrdering":{"properties":{"after":{"$ref":"#/types/konnect:index%2FGatewayPluginAiAzureContentSafetyOrderingAfter:GatewayPluginAiAzureContentSafetyOrderingAfter"},"before":{"$ref":"#/types/konnect:index%2FGatewayPluginAiAzureContentSafetyOrderingBefore:GatewayPluginAiAzureContentSafetyOrderingBefore"}},"type":"object","language":{"nodejs":{"requiredOutputs":["after","before"]}}},"konnect:index/GatewayPluginAiAzureContentSafetyOrderingAfter:GatewayPluginAiAzureContentSafetyOrderingAfter":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginAiAzureContentSafetyOrderingBefore:GatewayPluginAiAzureContentSafetyOrderingBefore":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginAiAzureContentSafetyPartial:GatewayPluginAiAzureContentSafetyPartial":{"properties":{"id":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"name":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"path":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id","name","path"]}}},"konnect:index/GatewayPluginAiAzureContentSafetyRoute:GatewayPluginAiAzureContentSafetyRoute":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginAiAzureContentSafetyService:GatewayPluginAiAzureContentSafetyService":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginAiGcpModelArmorConfig:GatewayPluginAiGcpModelArmorConfig":{"properties":{"enableMultiLanguageDetection":{"type":"boolean","description":"Enables multi-language detection mode. Must be used with 'source_language'. Default: false\n"},"gcpServiceAccountJson":{"type":"string","description":"Set this field to the full JSON of the GCP service account to authenticate, if required. If null (and gcp*use*service_account is true), Kong will attempt to read from environment variable `GCP_SERVICE_ACCOUNT` or from the instance/container metadata service.\n"},"gcpUseServiceAccount":{"type":"boolean","description":"Use service account auth for GCP-based providers and models. Default: false\n"},"guardingMode":{"type":"string","description":"The guardrail mode to use for the request. Default: \"INPUT\"; must be one of [\"BOTH\", \"INPUT\", \"OUTPUT\"]\n"},"locationId":{"type":"string","description":"GCP Location ID for the GCP Model Armor subscription.\n"},"projectId":{"type":"string","description":"GCP Project ID for the GCP Model Armor subscription.\n"},"requestFailureMessage":{"type":"string","description":"The message to return when a failure occurs on the request phase. Default: \"Request was filtered by GCP Model Armor\"\n"},"responseBufferSize":{"type":"number","description":"The amount of bytes receiving from upstream to be buffered before sending to the model armor service. This only applies to the response content guard. Default: 100\n"},"responseFailureMessage":{"type":"string","description":"The message to return when a failure occurs on the response phase. Default: \"Response was filtered by GCP Model Armor\"\n"},"revealFailureCategories":{"type":"boolean","description":"Whether to reveal failure categories in the response to the caller. Default: false\n"},"sourceLanguage":{"type":"string","description":"Source language (ISO code) to use when 'enable*multi*language_detection' is enabled.\n"},"stopOnError":{"type":"boolean","description":"Stop processing if an error occurs. Default: true\n"},"templateId":{"type":"string","description":"GCP Model Armor Template ID to enforce.\n"},"textSource":{"type":"string","description":"Select where to pick the 'text' for the GCP Model Armor Services request. Default: \"last*message\"; must be one of [\"concatenate*all*content\", \"concatenate*user*content\", \"last*message\"]\n"},"timeout":{"type":"number","description":"Connection timeout with the GCP Model Armor service. Default: 10000\n"}},"type":"object","required":["locationId","projectId","templateId"],"language":{"nodejs":{"requiredOutputs":["enableMultiLanguageDetection","gcpUseServiceAccount","guardingMode","locationId","projectId","requestFailureMessage","responseBufferSize","responseFailureMessage","revealFailureCategories","stopOnError","templateId","textSource","timeout"]}}},"konnect:index/GatewayPluginAiGcpModelArmorConsumer:GatewayPluginAiGcpModelArmorConsumer":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginAiGcpModelArmorConsumerGroup:GatewayPluginAiGcpModelArmorConsumerGroup":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginAiGcpModelArmorOrdering:GatewayPluginAiGcpModelArmorOrdering":{"properties":{"after":{"$ref":"#/types/konnect:index%2FGatewayPluginAiGcpModelArmorOrderingAfter:GatewayPluginAiGcpModelArmorOrderingAfter"},"before":{"$ref":"#/types/konnect:index%2FGatewayPluginAiGcpModelArmorOrderingBefore:GatewayPluginAiGcpModelArmorOrderingBefore"}},"type":"object","language":{"nodejs":{"requiredOutputs":["after","before"]}}},"konnect:index/GatewayPluginAiGcpModelArmorOrderingAfter:GatewayPluginAiGcpModelArmorOrderingAfter":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginAiGcpModelArmorOrderingBefore:GatewayPluginAiGcpModelArmorOrderingBefore":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginAiGcpModelArmorPartial:GatewayPluginAiGcpModelArmorPartial":{"properties":{"id":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"name":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"path":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id","name","path"]}}},"konnect:index/GatewayPluginAiGcpModelArmorRoute:GatewayPluginAiGcpModelArmorRoute":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginAiGcpModelArmorService:GatewayPluginAiGcpModelArmorService":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginAiLakeraGuardConfig:GatewayPluginAiLakeraGuardConfig":{"properties":{"apiKey":{"type":"string","description":"API key for the Lakera Guard subscription.\n"},"guardingMode":{"type":"string","description":"The guardrail mode to use for the request. Default: \"INPUT\"; must be one of [\"BOTH\", \"INPUT\", \"OUTPUT\"]\n"},"lakeraServiceUrl":{"type":"string","description":"The guard-operation URL of the Lakera Guard service. Defaults to the SaaS /v2/guard endpoint. It can be set to a locally hosted instance of Lakera Guard. Default: \"https://api.lakera.ai/v2/guard\"\n"},"projectId":{"type":"string","description":"Project ID to apply filters from. If null, it will use the subscription's default project.\n"},"requestFailureMessage":{"type":"string","description":"The message to return when a failure occurs on the request phase. Default: \"Request was filtered by Lakera Guard\"\n"},"responseBufferSize":{"type":"number","description":"The amount of bytes receiving from upstream to be buffered before sending to the Lakera Guard service. This only applies to the response content guard. Default: 100\n"},"responseFailureMessage":{"type":"string","description":"The message to return when a failure occurs on the response phase. Default: \"Response was filtered by Lakera Guard\"\n"},"revealFailureCategories":{"type":"boolean","description":"Whether to reveal failure categories in the response to the caller. They will always be written to the gateway logs, even if set to false. Default: false\n"},"stopOnError":{"type":"boolean","description":"Stop processing if an error occurs. Default: true\n"},"textSource":{"type":"string","description":"Select where to pick the 'text' for the Lakera Guard request (when text/generation is selected). Default: \"concatenate*all*content\"; must be one of [\"concatenate*all*content\", \"concatenate*user*content\", \u003cspan pulumi-lang-nodejs=\"\"lastMessage\"\" pulumi-lang-dotnet=\"\"LastMessage\"\" pulumi-lang-go=\"\"lastMessage\"\" pulumi-lang-python=\"\"last_message\"\" pulumi-lang-yaml=\"\"lastMessage\"\" pulumi-lang-java=\"\"lastMessage\"\"\u003e\"last_message\"\u003c/span\u003e]\n"},"timeout":{"type":"number","description":"Connection timeout with the Lakera Guard service. Default: 10000\n"},"verifySsl":{"type":"boolean","description":"Whether to verify the SSL certificate of the configured Lakera Guard endpoint. Default: true\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["guardingMode","lakeraServiceUrl","requestFailureMessage","responseBufferSize","responseFailureMessage","revealFailureCategories","stopOnError","textSource","timeout","verifySsl"]}}},"konnect:index/GatewayPluginAiLakeraGuardConsumer:GatewayPluginAiLakeraGuardConsumer":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginAiLakeraGuardConsumerGroup:GatewayPluginAiLakeraGuardConsumerGroup":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginAiLakeraGuardOrdering:GatewayPluginAiLakeraGuardOrdering":{"properties":{"after":{"$ref":"#/types/konnect:index%2FGatewayPluginAiLakeraGuardOrderingAfter:GatewayPluginAiLakeraGuardOrderingAfter"},"before":{"$ref":"#/types/konnect:index%2FGatewayPluginAiLakeraGuardOrderingBefore:GatewayPluginAiLakeraGuardOrderingBefore"}},"type":"object","language":{"nodejs":{"requiredOutputs":["after","before"]}}},"konnect:index/GatewayPluginAiLakeraGuardOrderingAfter:GatewayPluginAiLakeraGuardOrderingAfter":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginAiLakeraGuardOrderingBefore:GatewayPluginAiLakeraGuardOrderingBefore":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginAiLakeraGuardPartial:GatewayPluginAiLakeraGuardPartial":{"properties":{"id":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"name":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"path":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id","name","path"]}}},"konnect:index/GatewayPluginAiLakeraGuardRoute:GatewayPluginAiLakeraGuardRoute":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginAiLakeraGuardService:GatewayPluginAiLakeraGuardService":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginAiLlmAsJudgeConfig:GatewayPluginAiLlmAsJudgeConfig":{"properties":{"httpProxyHost":{"type":"string","description":"A string representing a host name, such as example.com.\n"},"httpProxyPort":{"type":"number","description":"An integer representing a port number between 0 and 65535, inclusive.\n"},"httpTimeout":{"type":"number","description":"Timeout in milliseconds for the AI upstream service. Default: 60000\n"},"httpsProxyHost":{"type":"string","description":"A string representing a host name, such as example.com.\n"},"httpsProxyPort":{"type":"number","description":"An integer representing a port number between 0 and 65535, inclusive.\n"},"httpsVerify":{"type":"boolean","description":"Verify the TLS certificate of the AI upstream service. Default: true\n"},"ignoreAssistantPrompts":{"type":"boolean","description":"Ignore and discard any assistant prompts when evaluating the request. Default: true\n"},"ignoreSystemPrompts":{"type":"boolean","description":"Ignore and discard any system prompts when evaluating the request. Default: true\n"},"ignoreToolPrompts":{"type":"boolean","description":"Ignore and discard any tool prompts when evaluating the request. Default: true\n"},"llm":{"$ref":"#/types/konnect:index%2FGatewayPluginAiLlmAsJudgeConfigLlm:GatewayPluginAiLlmAsJudgeConfigLlm"},"messageCountback":{"type":"number","description":"Number of messages in the chat history to use for evaluating the request. Default: 1\n"},"prompt":{"type":"string","description":"Use this prompt to tune the LLM system/assistant message for the llm as a judge prompt. Default: \"You are a strict evaluator. You will be given a prompt and a response. Your task is to judge whether the response is correct or incorrect. You must assign a score between 1 and 100, where: 100 represents a completely correct and ideal response, 1 represents a completely incorrect or irrelevant response. Your score must be a single number only — no text, labels, or explanations. Use the full range of values (e.g., 13, 47, 86), not just round numbers like 10, 50, or 100. Be accurate and consistent, as this score will be used by another model for learning and evaluation.\"\n"},"samplingRate":{"type":"number","description":"Judging request sampling rate for configuring the probability-based sampler. Default: 1\n"}},"type":"object","required":["llm"],"language":{"nodejs":{"requiredOutputs":["httpTimeout","httpsVerify","ignoreAssistantPrompts","ignoreSystemPrompts","ignoreToolPrompts","llm","messageCountback","prompt","samplingRate"]}}},"konnect:index/GatewayPluginAiLlmAsJudgeConfigLlm:GatewayPluginAiLlmAsJudgeConfigLlm":{"properties":{"auth":{"$ref":"#/types/konnect:index%2FGatewayPluginAiLlmAsJudgeConfigLlmAuth:GatewayPluginAiLlmAsJudgeConfigLlmAuth"},"description":{"type":"string","description":"The semantic description of the target, required if using semantic load balancing. Specially, setting this to 'CATCHALL' will indicate such target to be used when no other targets match the semantic threshold. Only used by ai-proxy-advanced.\n"},"logging":{"$ref":"#/types/konnect:index%2FGatewayPluginAiLlmAsJudgeConfigLlmLogging:GatewayPluginAiLlmAsJudgeConfigLlmLogging"},"metadata":{"type":"object","additionalProperties":{"type":"string"},"description":"For internal use only.\n"},"model":{"$ref":"#/types/konnect:index%2FGatewayPluginAiLlmAsJudgeConfigLlmModel:GatewayPluginAiLlmAsJudgeConfigLlmModel"},"routeType":{"type":"string","description":"The model's operation implementation, for this provider. must be one of [\"audio/v1/audio/speech\", \"audio/v1/audio/transcriptions\", \"audio/v1/audio/translations\", \"image/v1/images/edits\", \"image/v1/images/generations\", \"llm/v1/assistants\", \"llm/v1/batches\", \"llm/v1/chat\", \"llm/v1/completions\", \"llm/v1/embeddings\", \"llm/v1/files\", \"llm/v1/responses\", \"preserve\", \"realtime/v1/realtime\", \"video/v1/videos/generations\"]\n"},"weight":{"type":"number","description":"The weight this target gets within the upstream loadbalancer (1-65535). Only used by ai-proxy-advanced. Default: 100\n"}},"type":"object","required":["model","routeType"],"language":{"nodejs":{"requiredOutputs":["auth","logging","model","routeType","weight"]}}},"konnect:index/GatewayPluginAiLlmAsJudgeConfigLlmAuth:GatewayPluginAiLlmAsJudgeConfigLlmAuth":{"properties":{"allowOverride":{"type":"boolean","description":"If enabled, the authorization header or parameter can be overridden in the request by the value configured in the plugin. Default: false\n"},"awsAccessKeyId":{"type":"string","description":"Set this if you are using an AWS provider (Bedrock) and you are authenticating using static IAM User credentials. Setting this will override the AWS*ACCESS*KEY_ID environment variable for this plugin instance.\n"},"awsSecretAccessKey":{"type":"string","description":"Set this if you are using an AWS provider (Bedrock) and you are authenticating using static IAM User credentials. Setting this will override the AWS*SECRET*ACCESS_KEY environment variable for this plugin instance.\n"},"azureClientId":{"type":"string","description":"If azure*use*managed_identity is set to true, and you need to use a different user-assigned identity for this LLM instance, set the client ID.\n"},"azureClientSecret":{"type":"string","description":"If azure*use*managed_identity is set to true, and you need to use a different user-assigned identity for this LLM instance, set the client secret.\n"},"azureTenantId":{"type":"string","description":"If azure*use*managed_identity is set to true, and you need to use a different user-assigned identity for this LLM instance, set the tenant ID.\n"},"azureUseManagedIdentity":{"type":"boolean","description":"Set true to use the Azure Cloud Managed Identity (or user-assigned identity) to authenticate with Azure-provider models. Default: false\n"},"gcpServiceAccountJson":{"type":"string","description":"Set this field to the full JSON of the GCP service account to authenticate, if required. If null (and gcp*use*service_account is true), Kong will attempt to read from environment variable `GCP_SERVICE_ACCOUNT`.\n"},"gcpUseServiceAccount":{"type":"boolean","description":"Use service account auth for GCP-based providers and models. Default: false\n"},"headerName":{"type":"string","description":"If AI model requires authentication via Authorization or API key header, specify its name here.\n"},"headerValue":{"type":"string","description":"Specify the full auth header value for 'header_name', for example 'Bearer key' or just 'key'.\n"},"paramLocation":{"type":"string","description":"Specify whether the 'param*name' and 'param*value' options go in a query string, or the POST form/JSON body. must be one of [\"body\", \"query\"]\n"},"paramName":{"type":"string","description":"If AI model requires authentication via query parameter, specify its name here.\n"},"paramValue":{"type":"string","description":"Specify the full parameter value for 'param_name'.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["allowOverride","azureUseManagedIdentity","gcpUseServiceAccount","paramLocation"]}}},"konnect:index/GatewayPluginAiLlmAsJudgeConfigLlmLogging:GatewayPluginAiLlmAsJudgeConfigLlmLogging":{"properties":{"logPayloads":{"type":"boolean","description":"If enabled, will log the request and response body into the Kong log plugin(s) output.Furthermore if Opentelemetry instrumentation is enabled the traces will contain this data as well. Default: false\n"},"logStatistics":{"type":"boolean","description":"If enabled and supported by the driver, will add model usage and token metrics into the Kong log plugin(s) output. Default: false\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["logPayloads","logStatistics"]}}},"konnect:index/GatewayPluginAiLlmAsJudgeConfigLlmModel:GatewayPluginAiLlmAsJudgeConfigLlmModel":{"properties":{"name":{"type":"string","description":"Model name to execute.\n"},"options":{"$ref":"#/types/konnect:index%2FGatewayPluginAiLlmAsJudgeConfigLlmModelOptions:GatewayPluginAiLlmAsJudgeConfigLlmModelOptions","description":"Key/value settings for the model\n"},"provider":{"type":"string","description":"AI provider request format - Kong translates requests to and from the specified backend compatible formats. must be one of [\"anthropic\", \"azure\", \"bedrock\", \"cerebras\", \"cohere\", \"dashscope\", \"gemini\", \"huggingface\", \"llama2\", \"mistral\", \"openai\", \"xai\"]\n"}},"type":"object","required":["provider"],"language":{"nodejs":{"requiredOutputs":["options","provider"]}}},"konnect:index/GatewayPluginAiLlmAsJudgeConfigLlmModelOptions:GatewayPluginAiLlmAsJudgeConfigLlmModelOptions":{"properties":{"anthropicVersion":{"type":"string","description":"Defines the schema/API version, if using Anthropic provider.\n"},"azureApiVersion":{"type":"string","description":"'api-version' for Azure OpenAI instances. Default: \"2023-05-15\"\n"},"azureDeploymentId":{"type":"string","description":"Deployment ID for Azure OpenAI instances.\n"},"azureInstance":{"type":"string","description":"Instance name for Azure OpenAI hosted models.\n"},"bedrock":{"$ref":"#/types/konnect:index%2FGatewayPluginAiLlmAsJudgeConfigLlmModelOptionsBedrock:GatewayPluginAiLlmAsJudgeConfigLlmModelOptionsBedrock"},"cohere":{"$ref":"#/types/konnect:index%2FGatewayPluginAiLlmAsJudgeConfigLlmModelOptionsCohere:GatewayPluginAiLlmAsJudgeConfigLlmModelOptionsCohere"},"dashscope":{"$ref":"#/types/konnect:index%2FGatewayPluginAiLlmAsJudgeConfigLlmModelOptionsDashscope:GatewayPluginAiLlmAsJudgeConfigLlmModelOptionsDashscope"},"embeddingsDimensions":{"type":"number","description":"If using embeddings models, set the number of dimensions to generate.\n"},"gemini":{"$ref":"#/types/konnect:index%2FGatewayPluginAiLlmAsJudgeConfigLlmModelOptionsGemini:GatewayPluginAiLlmAsJudgeConfigLlmModelOptionsGemini"},"huggingface":{"$ref":"#/types/konnect:index%2FGatewayPluginAiLlmAsJudgeConfigLlmModelOptionsHuggingface:GatewayPluginAiLlmAsJudgeConfigLlmModelOptionsHuggingface"},"inputCost":{"type":"number","description":"Defines the cost per 1M tokens in your prompt.\n"},"llama2Format":{"type":"string","description":"If using llama2 provider, select the upstream message format. must be one of [\"ollama\", \"openai\", \"raw\"]\n"},"maxTokens":{"type":"number","description":"Defines the max_tokens, if using chat or completion models.\n"},"mistralFormat":{"type":"string","description":"If using mistral provider, select the upstream message format. must be one of [\"ollama\", \"openai\"]\n"},"outputCost":{"type":"number","description":"Defines the cost per 1M tokens in the output of the AI.\n"},"temperature":{"type":"number","description":"Defines the matching temperature, if using chat or completion models.\n"},"topK":{"type":"number","description":"Defines the top-k most likely tokens, if supported.\n"},"topP":{"type":"number","description":"Defines the top-p probability mass, if supported.\n"},"upstreamPath":{"type":"string","description":"Manually specify or override the AI operation path, used when e.g. using the 'preserve' route_type.\n"},"upstreamUrl":{"type":"string","description":"Manually specify or override the full URL to the AI operation endpoints, when calling (self-)hosted models, or for running via a private endpoint.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["azureApiVersion","bedrock","cohere","dashscope","gemini","huggingface","llama2Format","mistralFormat"]}}},"konnect:index/GatewayPluginAiLlmAsJudgeConfigLlmModelOptionsBedrock:GatewayPluginAiLlmAsJudgeConfigLlmModelOptionsBedrock":{"properties":{"awsAssumeRoleArn":{"type":"string","description":"If using AWS providers (Bedrock) you can assume a different role after authentication with the current IAM context is successful.\n"},"awsRegion":{"type":"string","description":"If using AWS providers (Bedrock) you can override the `AWS_REGION` environment variable by setting this option.\n"},"awsRoleSessionName":{"type":"string","description":"If using AWS providers (Bedrock), set the identifier of the assumed role session.\n"},"awsStsEndpointUrl":{"type":"string","description":"If using AWS providers (Bedrock), override the STS endpoint URL when assuming a different role.\n"},"embeddingsNormalize":{"type":"boolean","description":"If using AWS providers (Bedrock), set to true to normalize the embeddings. Default: false\n"},"performanceConfigLatency":{"type":"string","description":"Force the client's performance configuration 'latency' for all requests. Leave empty to let the consumer select the performance configuration.\n"},"videoOutputS3Uri":{"type":"string","description":"S3 URI (s3://bucket/prefix) where Bedrock will store generated video files. Required for video generation.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["embeddingsNormalize"]}}},"konnect:index/GatewayPluginAiLlmAsJudgeConfigLlmModelOptionsCohere:GatewayPluginAiLlmAsJudgeConfigLlmModelOptionsCohere":{"properties":{"embeddingInputType":{"type":"string","description":"The purpose of the input text to calculate embedding vectors. Default: \"classification\"; must be one of [\"classification\", \"clustering\", \"image\", \"search*document\", \"search*query\"]\n"},"waitForModel":{"type":"boolean","description":"Wait for the model if it is not ready\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["embeddingInputType"]}}},"konnect:index/GatewayPluginAiLlmAsJudgeConfigLlmModelOptionsDashscope:GatewayPluginAiLlmAsJudgeConfigLlmModelOptionsDashscope":{"properties":{"international":{"type":"boolean","description":"Two Dashscope endpoints are available, and the international endpoint will be used when this is set to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e.\nIt is recommended to set this to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e when using international version of dashscope.\nDefault: true\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["international"]}}},"konnect:index/GatewayPluginAiLlmAsJudgeConfigLlmModelOptionsGemini:GatewayPluginAiLlmAsJudgeConfigLlmModelOptionsGemini":{"properties":{"apiEndpoint":{"type":"string","description":"If running Gemini on Vertex, specify the regional API endpoint (hostname only).\n"},"endpointId":{"type":"string","description":"If running Gemini on Vertex Model Garden, specify the endpoint ID.\n"},"locationId":{"type":"string","description":"If running Gemini on Vertex, specify the location ID.\n"},"projectId":{"type":"string","description":"If running Gemini on Vertex, specify the project ID.\n"}},"type":"object"},"konnect:index/GatewayPluginAiLlmAsJudgeConfigLlmModelOptionsHuggingface:GatewayPluginAiLlmAsJudgeConfigLlmModelOptionsHuggingface":{"properties":{"useCache":{"type":"boolean","description":"Use the cache layer on the inference API\n"},"waitForModel":{"type":"boolean","description":"Wait for the model if it is not ready\n"}},"type":"object"},"konnect:index/GatewayPluginAiLlmAsJudgeConsumer:GatewayPluginAiLlmAsJudgeConsumer":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginAiLlmAsJudgeConsumerGroup:GatewayPluginAiLlmAsJudgeConsumerGroup":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginAiLlmAsJudgeOrdering:GatewayPluginAiLlmAsJudgeOrdering":{"properties":{"after":{"$ref":"#/types/konnect:index%2FGatewayPluginAiLlmAsJudgeOrderingAfter:GatewayPluginAiLlmAsJudgeOrderingAfter"},"before":{"$ref":"#/types/konnect:index%2FGatewayPluginAiLlmAsJudgeOrderingBefore:GatewayPluginAiLlmAsJudgeOrderingBefore"}},"type":"object","language":{"nodejs":{"requiredOutputs":["after","before"]}}},"konnect:index/GatewayPluginAiLlmAsJudgeOrderingAfter:GatewayPluginAiLlmAsJudgeOrderingAfter":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginAiLlmAsJudgeOrderingBefore:GatewayPluginAiLlmAsJudgeOrderingBefore":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginAiLlmAsJudgePartial:GatewayPluginAiLlmAsJudgePartial":{"properties":{"id":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"name":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"path":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id","name","path"]}}},"konnect:index/GatewayPluginAiLlmAsJudgeRoute:GatewayPluginAiLlmAsJudgeRoute":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginAiLlmAsJudgeService:GatewayPluginAiLlmAsJudgeService":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginAiMcpOauth2Config:GatewayPluginAiMcpOauth2Config":{"properties":{"args":{"type":"object","additionalProperties":{"type":"string"},"description":"Additional arguments to send in the POST body.\n"},"authorizationServers":{"type":"array","items":{"type":"string"}},"cacheIntrospection":{"type":"boolean","description":"If enabled, the plugin will cache the introspection response for the access token. This can improve performance by reducing the number of introspection requests to the authorization server. Default: true\n"},"claimToHeaders":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginAiMcpOauth2ConfigClaimToHeader:GatewayPluginAiMcpOauth2ConfigClaimToHeader"}},"clientAlg":{"type":"string","description":"The client JWT signing algorithm. must be one of [\"ES256\", \"ES384\", \"ES512\", \"EdDSA\", \"HS256\", \"HS384\", \"HS512\", \"PS256\", \"PS384\", \"PS512\", \"RS256\", \"RS384\", \"RS512\"]\n"},"clientAuth":{"type":"string","description":"The client authentication method. must be one of [\"client*secret*basic\", \"client*secret*jwt\", \"client*secret*post\", \"none\", \"private*key*jwt\", \"self*signed*tls*client*auth\", \"tls*client*auth\"]\n"},"clientId":{"type":"string","description":"The client ID for authentication.\n"},"clientJwk":{"type":"string","description":"The client JWK for private*key*jwt authentication.\n"},"clientSecret":{"type":"string","description":"The client secret for authentication.\n"},"headers":{"type":"object","additionalProperties":{"type":"string"},"description":"Additional headers for the introspection request.\n"},"httpProxy":{"type":"string","description":"HTTP proxy to use.\n"},"httpProxyAuthorization":{"type":"string","description":"HTTP proxy authorization header.\n"},"httpVersion":{"type":"number","description":"The HTTP version used for requests.\n"},"httpsProxy":{"type":"string","description":"HTTPS proxy to use.\n"},"httpsProxyAuthorization":{"type":"string","description":"HTTPS proxy authorization header.\n"},"insecureRelaxedAudienceValidation":{"type":"boolean","description":"If enabled, the plugin will not validate the audience of the access token. Disable it if the authorization server does not correctly set the audience claim according to RFC 8707 and MCP specification. Default: false\n"},"introspectionEndpoint":{"type":"string","description":"The introspection endpoint URL.\n"},"introspectionFormat":{"type":"string","description":"Controls introspection response format. must be one of [\"base64\", \"base64url\", \"string\"]\n"},"keepalive":{"type":"boolean","description":"Enable HTTP keepalive for requests. Default: true\n"},"maxRequestBodySize":{"type":"number","description":"max allowed body size allowed to be handled as MCP request. 0 means unlimited, but the size of this body will still be limited by Nginx's client*max*body_size. Default: 1048576\n"},"metadataEndpoint":{"type":"string","description":"The path for OAuth 2.0 Protected Resource Metadata. Default to $resource/.well-known/oauth-protected-resource. For example, if the configured resource is https://api.example.com/mcp, the metadata endpoint is /mcp/.well-known/oauth-protected-resource.\n"},"mtlsIntrospectionEndpoint":{"type":"string","description":"The mTLS alias for the introspection endpoint.\n"},"noProxy":{"type":"string","description":"Comma-separated list of hosts to exclude from proxy.\n"},"resource":{"type":"string","description":"The resource identifier.\n"},"scopesSupporteds":{"type":"array","items":{"type":"string"}},"sslVerify":{"type":"boolean","description":"Verify the SSL certificate. Default: true\n"},"timeout":{"type":"number","description":"Network I/O timeout in milliseconds. Default: 10000\n"},"tlsClientAuthCert":{"type":"string","description":"PEM-encoded client certificate for mTLS.\n"},"tlsClientAuthKey":{"type":"string","description":"PEM-encoded private key for mTLS.\n"},"tlsClientAuthSslVerify":{"type":"boolean","description":"Verify server certificate in mTLS. Default: true\n"}},"type":"object","required":["authorizationServers","clientId","introspectionEndpoint","resource"],"language":{"nodejs":{"requiredOutputs":["authorizationServers","cacheIntrospection","clientAlg","clientAuth","clientId","httpVersion","insecureRelaxedAudienceValidation","introspectionEndpoint","introspectionFormat","keepalive","maxRequestBodySize","resource","sslVerify","timeout","tlsClientAuthSslVerify"]}}},"konnect:index/GatewayPluginAiMcpOauth2ConfigClaimToHeader:GatewayPluginAiMcpOauth2ConfigClaimToHeader":{"properties":{"claim":{"type":"string","description":"The claim name to be used in the access token. Not Null\n"},"header":{"type":"string","description":"The HTTP header name to be used for forwarding the claim value to the upstream. Not Null\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["claim","header"]}}},"konnect:index/GatewayPluginAiMcpOauth2Ordering:GatewayPluginAiMcpOauth2Ordering":{"properties":{"after":{"$ref":"#/types/konnect:index%2FGatewayPluginAiMcpOauth2OrderingAfter:GatewayPluginAiMcpOauth2OrderingAfter"},"before":{"$ref":"#/types/konnect:index%2FGatewayPluginAiMcpOauth2OrderingBefore:GatewayPluginAiMcpOauth2OrderingBefore"}},"type":"object","language":{"nodejs":{"requiredOutputs":["after","before"]}}},"konnect:index/GatewayPluginAiMcpOauth2OrderingAfter:GatewayPluginAiMcpOauth2OrderingAfter":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginAiMcpOauth2OrderingBefore:GatewayPluginAiMcpOauth2OrderingBefore":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginAiMcpOauth2Partial:GatewayPluginAiMcpOauth2Partial":{"properties":{"id":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"name":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"path":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id","name","path"]}}},"konnect:index/GatewayPluginAiMcpOauth2Route:GatewayPluginAiMcpOauth2Route":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginAiMcpOauth2Service:GatewayPluginAiMcpOauth2Service":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginAiMcpProxyConfig:GatewayPluginAiMcpProxyConfig":{"properties":{"consumerIdentifier":{"type":"string","description":"Which subject type entries in ACL lists refer to for per-consumer matching. Default: \"username\"; must be one of [\"consumer*id\", \"custom*id\", \"username\"]\n"},"defaultAcls":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginAiMcpProxyConfigDefaultAcl:GatewayPluginAiMcpProxyConfigDefaultAcl"},"description":"Optional list of default ACL rules keyed by scope (for example: tools).\n"},"includeConsumerGroups":{"type":"boolean","description":"If enabled (true), allows Consumer Group names to be used in default and per-primitive ACL. Default: false\n"},"logging":{"$ref":"#/types/konnect:index%2FGatewayPluginAiMcpProxyConfigLogging:GatewayPluginAiMcpProxyConfigLogging"},"maxRequestBodySize":{"type":"number","description":"max allowed body size allowed to be handled as MCP request. 0 means unlimited, but the size of this body will still be limited by Nginx's client*max*body_size. Default: 1048576\n"},"mode":{"type":"string","description":"The mode of the MCP proxy. Possible values are: 'passthrough-listener', 'conversion-listener', 'conversion-only', 'listener'. must be one of [\"conversion-listener\", \"conversion-only\", \"listener\", \"passthrough-listener\"]\n"},"server":{"$ref":"#/types/konnect:index%2FGatewayPluginAiMcpProxyConfigServer:GatewayPluginAiMcpProxyConfigServer"},"tools":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginAiMcpProxyConfigTool:GatewayPluginAiMcpProxyConfigTool"}}},"type":"object","required":["mode"],"language":{"nodejs":{"requiredOutputs":["consumerIdentifier","includeConsumerGroups","logging","maxRequestBodySize","mode","server"]}}},"konnect:index/GatewayPluginAiMcpProxyConfigDefaultAcl:GatewayPluginAiMcpProxyConfigDefaultAcl":{"properties":{"allows":{"type":"array","items":{"type":"string"},"description":"Subjects explicitly allowed to access this scope. If \u003cspan pulumi-lang-nodejs=\"`includeConsumerGroups`\" pulumi-lang-dotnet=\"`IncludeConsumerGroups`\" pulumi-lang-go=\"`includeConsumerGroups`\" pulumi-lang-python=\"`include_consumer_groups`\" pulumi-lang-yaml=\"`includeConsumerGroups`\" pulumi-lang-java=\"`includeConsumerGroups`\"\u003e`include_consumer_groups`\u003c/span\u003e is true, Consumer Group names are allowed here.\n"},"denies":{"type":"array","items":{"type":"string"},"description":"Subjects explicitly denied from this scope. \u003cspan pulumi-lang-nodejs=\"`deny`\" pulumi-lang-dotnet=\"`Deny`\" pulumi-lang-go=\"`deny`\" pulumi-lang-python=\"`deny`\" pulumi-lang-yaml=\"`deny`\" pulumi-lang-java=\"`deny`\"\u003e`deny`\u003c/span\u003e takes precedence over \u003cspan pulumi-lang-nodejs=\"`allow`\" pulumi-lang-dotnet=\"`Allow`\" pulumi-lang-go=\"`allow`\" pulumi-lang-python=\"`allow`\" pulumi-lang-yaml=\"`allow`\" pulumi-lang-java=\"`allow`\"\u003e`allow`\u003c/span\u003e. If \u003cspan pulumi-lang-nodejs=\"`includeConsumerGroups`\" pulumi-lang-dotnet=\"`IncludeConsumerGroups`\" pulumi-lang-go=\"`includeConsumerGroups`\" pulumi-lang-python=\"`include_consumer_groups`\" pulumi-lang-yaml=\"`includeConsumerGroups`\" pulumi-lang-java=\"`includeConsumerGroups`\"\u003e`include_consumer_groups`\u003c/span\u003e is true, Consumer Group names are allowed here.\n"},"scope":{"type":"string","description":"Scope for this default ACL entry (for example: 'tools'). Defaults to 'tools'. Default: \"tools\"\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["scope"]}}},"konnect:index/GatewayPluginAiMcpProxyConfigLogging:GatewayPluginAiMcpProxyConfigLogging":{"properties":{"logAudits":{"type":"boolean","description":"If true, emit audit logs for ACL evaluations. Default: false\n"},"logPayloads":{"type":"boolean","description":"If enabled, will log the request and response body into the Kong log plugin(s) output. Default: false\n"},"logStatistics":{"type":"boolean","description":"If enabled, will add mcp metrics into the Kong log plugin(s) output. Default: false\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["logAudits","logPayloads","logStatistics"]}}},"konnect:index/GatewayPluginAiMcpProxyConfigServer:GatewayPluginAiMcpProxyConfigServer":{"properties":{"forwardClientHeaders":{"type":"boolean","description":"Whether to forward the client request headers to the upstream server when calling the tools. Default: true\n"},"tag":{"type":"string","description":"The tag of the MCP server. This is used to filter the exported MCP tools. The field should contain exactly one tag.\n"},"timeout":{"type":"number","description":"The timeout for calling the tools in milliseconds. Default: 10000\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["forwardClientHeaders","timeout"]}}},"konnect:index/GatewayPluginAiMcpProxyConfigTool:GatewayPluginAiMcpProxyConfigTool":{"properties":{"acl":{"$ref":"#/types/konnect:index%2FGatewayPluginAiMcpProxyConfigToolAcl:GatewayPluginAiMcpProxyConfigToolAcl","description":"Optional per-primitive ACL. \u003cspan pulumi-lang-nodejs=\"`deny`\" pulumi-lang-dotnet=\"`Deny`\" pulumi-lang-go=\"`deny`\" pulumi-lang-python=\"`deny`\" pulumi-lang-yaml=\"`deny`\" pulumi-lang-java=\"`deny`\"\u003e`deny`\u003c/span\u003e has higher precedence than \u003cspan pulumi-lang-nodejs=\"`allow`\" pulumi-lang-dotnet=\"`Allow`\" pulumi-lang-go=\"`allow`\" pulumi-lang-python=\"`allow`\" pulumi-lang-yaml=\"`allow`\" pulumi-lang-java=\"`allow`\"\u003e`allow`\u003c/span\u003e.\n"},"annotations":{"$ref":"#/types/konnect:index%2FGatewayPluginAiMcpProxyConfigToolAnnotations:GatewayPluginAiMcpProxyConfigToolAnnotations"},"description":{"type":"string","description":"The description of the MCP tool. This is used to provide information about the tool's functionality and usage. Not Null\n"},"headers":{"type":"object","additionalProperties":{"type":"array","items":{"type":"string"}},"description":"The headers of the exported API. By default, Kong will extract the headers from API configuration. If the configured headers are not exactly matched, this field is required.\n"},"host":{"type":"string","description":"The host of the exported API. By default, Kong will extract the host from API configuration. If the configured host is wildcard, this field is required.\n"},"method":{"type":"string","description":"The method of the exported API. By default, Kong will extract the method from API configuration. If the configured method is not exactly matched, this field is required. must be one of [\"DELETE\", \"GET\", \"PATCH\", \"POST\", \"PUT\"]\n"},"name":{"type":"string","description":"Tool identifier. In passthrough-listener mode, used to match remote MCP Server tools for ACL enforcement. In other modes, it is also used as the tool name (overrides tools.annotations.title if present).\n"},"parameters":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginAiMcpProxyConfigToolParameter:GatewayPluginAiMcpProxyConfigToolParameter"},"description":"The API parameters specification defined in OpenAPI. For example, '[{\"name\": \"city\", \"in\": \"query\", \"description\": \"Name of the city to get the weather for\", \"required\": true, \"schema\": {\"type\": \"string\"}}]'.See https://swagger.io/docs/specification/v3_0/describing-parameters/ for more details.\n"},"path":{"type":"string","description":"The path of the exported API. By default, Kong will extract the path from API configuration. If the configured path is not exactly matched, this field is required. Paths not starting with '/' are treated as relative paths.\n"},"query":{"type":"object","additionalProperties":{"type":"array","items":{"type":"string"}},"description":"The query arguments of the exported API. If the generated query arguments are not exactly matched, this field is required.\n"},"requestBody":{"type":"object","additionalProperties":{"type":"string"},"description":"The API requestBody specification defined in OpenAPI. For example, '{\"content\":{\"application/x-www-form-urlencoded\":{\"schema\":{\"type\":\"object\",\"properties\":{\"color\":{\"type\":\"array\",\"items\":{\"type\":\"string\"}}}}}}'.See https://swagger.io/docs/specification/v3_0/describing-request-body/describing-request-body/ for more details.\n"},"responses":{"type":"object","additionalProperties":{"type":"string"},"description":"The API responses specification defined in OpenAPI. This specification will be used to validate the upstream response and map it back to the structuredOutput. For example, '{\"200\":{\"description\":\"Successful response\",\"content\":{\"application/json\":{\"schema\":{\"type\":\"object\",\"properties\":{\"result\":{\"type\":\"string\"}}}}}}}'.See https://swagger.io/docs/specification/v3_0/describing-responses/ for more details.Only one non-error (status code \u003c 400) responses are supported.\n"},"scheme":{"type":"string","description":"The scheme of the exported API. By default, Kong will extract the scheme from API configuration. If the configured scheme is not expected, this field can be used to override it. must be one of [\"http\", \"https\"]\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["acl","annotations","description","method","parameters","scheme"]}}},"konnect:index/GatewayPluginAiMcpProxyConfigToolAcl:GatewayPluginAiMcpProxyConfigToolAcl":{"properties":{"allows":{"type":"array","items":{"type":"string"},"description":"Subjects explicitly allowed to use this primitive. If \u003cspan pulumi-lang-nodejs=\"`includeConsumerGroups`\" pulumi-lang-dotnet=\"`IncludeConsumerGroups`\" pulumi-lang-go=\"`includeConsumerGroups`\" pulumi-lang-python=\"`include_consumer_groups`\" pulumi-lang-yaml=\"`includeConsumerGroups`\" pulumi-lang-java=\"`includeConsumerGroups`\"\u003e`include_consumer_groups`\u003c/span\u003e is true, Consumer Group names are allowed here.\n"},"denies":{"type":"array","items":{"type":"string"},"description":"Subjects explicitly denied from using this primitive. \u003cspan pulumi-lang-nodejs=\"`deny`\" pulumi-lang-dotnet=\"`Deny`\" pulumi-lang-go=\"`deny`\" pulumi-lang-python=\"`deny`\" pulumi-lang-yaml=\"`deny`\" pulumi-lang-java=\"`deny`\"\u003e`deny`\u003c/span\u003e takes precedence over \u003cspan pulumi-lang-nodejs=\"`allow`\" pulumi-lang-dotnet=\"`Allow`\" pulumi-lang-go=\"`allow`\" pulumi-lang-python=\"`allow`\" pulumi-lang-yaml=\"`allow`\" pulumi-lang-java=\"`allow`\"\u003e`allow`\u003c/span\u003e. If \u003cspan pulumi-lang-nodejs=\"`includeConsumerGroups`\" pulumi-lang-dotnet=\"`IncludeConsumerGroups`\" pulumi-lang-go=\"`includeConsumerGroups`\" pulumi-lang-python=\"`include_consumer_groups`\" pulumi-lang-yaml=\"`includeConsumerGroups`\" pulumi-lang-java=\"`includeConsumerGroups`\"\u003e`include_consumer_groups`\u003c/span\u003e is true, Consumer Group names are allowed here.\n"}},"type":"object"},"konnect:index/GatewayPluginAiMcpProxyConfigToolAnnotations:GatewayPluginAiMcpProxyConfigToolAnnotations":{"properties":{"destructiveHint":{"type":"boolean","description":"If true, the tool may perform destructive updates\n"},"idempotentHint":{"type":"boolean","description":"If true, repeated calls with same args have no additional effect\n"},"openWorldHint":{"type":"boolean","description":"If true, tool interacts with external entities\n"},"readOnlyHint":{"type":"boolean","description":"If true, the tool does not modify its environment\n"},"title":{"type":"string","description":"Human-readable title for the tool\n"}},"type":"object"},"konnect:index/GatewayPluginAiMcpProxyConfigToolParameter:GatewayPluginAiMcpProxyConfigToolParameter":{"properties":{"additionalProperties":{"type":"string","description":"Parsed as JSON.\n"},"description":{"type":"string"},"in":{"type":"string"},"name":{"type":"string"},"required":{"type":"boolean"},"schema":{"$ref":"#/types/konnect:index%2FGatewayPluginAiMcpProxyConfigToolParameterSchema:GatewayPluginAiMcpProxyConfigToolParameterSchema"}},"type":"object","language":{"nodejs":{"requiredOutputs":["additionalProperties","description","in","name","required","schema"]}}},"konnect:index/GatewayPluginAiMcpProxyConfigToolParameterSchema:GatewayPluginAiMcpProxyConfigToolParameterSchema":{"properties":{"type":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["type"]}}},"konnect:index/GatewayPluginAiMcpProxyOrdering:GatewayPluginAiMcpProxyOrdering":{"properties":{"after":{"$ref":"#/types/konnect:index%2FGatewayPluginAiMcpProxyOrderingAfter:GatewayPluginAiMcpProxyOrderingAfter"},"before":{"$ref":"#/types/konnect:index%2FGatewayPluginAiMcpProxyOrderingBefore:GatewayPluginAiMcpProxyOrderingBefore"}},"type":"object","language":{"nodejs":{"requiredOutputs":["after","before"]}}},"konnect:index/GatewayPluginAiMcpProxyOrderingAfter:GatewayPluginAiMcpProxyOrderingAfter":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginAiMcpProxyOrderingBefore:GatewayPluginAiMcpProxyOrderingBefore":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginAiMcpProxyPartial:GatewayPluginAiMcpProxyPartial":{"properties":{"id":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"name":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"path":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id","name","path"]}}},"konnect:index/GatewayPluginAiMcpProxyRoute:GatewayPluginAiMcpProxyRoute":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginAiMcpProxyService:GatewayPluginAiMcpProxyService":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginAiPromptCompressorConfig:GatewayPluginAiPromptCompressorConfig":{"properties":{"compressionRanges":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginAiPromptCompressorConfigCompressionRange:GatewayPluginAiPromptCompressorConfigCompressionRange"},"description":"What value to be used to compress with. The 'value' is interpreted as rate or target*token depending on compressor*type.\n"},"compressorType":{"type":"string","description":"What compression type to use to compress with. Default: \"rate\"; must be one of [\"rate\", \u003cspan pulumi-lang-nodejs=\"\"targetToken\"\" pulumi-lang-dotnet=\"\"TargetToken\"\" pulumi-lang-go=\"\"targetToken\"\" pulumi-lang-python=\"\"target_token\"\" pulumi-lang-yaml=\"\"targetToken\"\" pulumi-lang-java=\"\"targetToken\"\"\u003e\"target_token\"\u003c/span\u003e]\n"},"compressorUrl":{"type":"string","description":"The url of the compressor. Default: \"http://localhost:8080\"\n"},"keepaliveTimeout":{"type":"number","description":"The keepalive timeout for the established http connnection. Default: 60000\n"},"logTextData":{"type":"boolean","description":"Log the text data. Default: false\n"},"messageTypes":{"type":"array","items":{"type":"string"},"description":"Default: [\"user\"]\n"},"stopOnError":{"type":"boolean","description":"Stop processing if an error occurs. Default: true\n"},"timeout":{"type":"number","description":"Connection timeout with the compressor. Default: 10000\n"}},"type":"object","required":["compressionRanges"],"language":{"nodejs":{"requiredOutputs":["compressionRanges","compressorType","compressorUrl","keepaliveTimeout","logTextData","messageTypes","stopOnError","timeout"]}}},"konnect:index/GatewayPluginAiPromptCompressorConfigCompressionRange:GatewayPluginAiPromptCompressorConfigCompressionRange":{"properties":{"maxTokens":{"type":"number","description":"Not Null\n"},"minTokens":{"type":"number","description":"Not Null\n"},"value":{"type":"number","description":"Not Null\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["maxTokens","minTokens","value"]}}},"konnect:index/GatewayPluginAiPromptCompressorConsumer:GatewayPluginAiPromptCompressorConsumer":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginAiPromptCompressorConsumerGroup:GatewayPluginAiPromptCompressorConsumerGroup":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginAiPromptCompressorOrdering:GatewayPluginAiPromptCompressorOrdering":{"properties":{"after":{"$ref":"#/types/konnect:index%2FGatewayPluginAiPromptCompressorOrderingAfter:GatewayPluginAiPromptCompressorOrderingAfter"},"before":{"$ref":"#/types/konnect:index%2FGatewayPluginAiPromptCompressorOrderingBefore:GatewayPluginAiPromptCompressorOrderingBefore"}},"type":"object","language":{"nodejs":{"requiredOutputs":["after","before"]}}},"konnect:index/GatewayPluginAiPromptCompressorOrderingAfter:GatewayPluginAiPromptCompressorOrderingAfter":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginAiPromptCompressorOrderingBefore:GatewayPluginAiPromptCompressorOrderingBefore":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginAiPromptCompressorPartial:GatewayPluginAiPromptCompressorPartial":{"properties":{"id":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"name":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"path":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id","name","path"]}}},"konnect:index/GatewayPluginAiPromptCompressorRoute:GatewayPluginAiPromptCompressorRoute":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginAiPromptCompressorService:GatewayPluginAiPromptCompressorService":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginAiPromptDecoratorConfig:GatewayPluginAiPromptDecoratorConfig":{"properties":{"llmFormat":{"type":"string","description":"LLM input and output format and schema to use. Default: \"openai\"; must be one of [\"anthropic\", \"bedrock\", \"cohere\", \"gemini\", \"huggingface\", \"openai\"]\n"},"maxRequestBodySize":{"type":"number","description":"max allowed body size allowed to be introspected. 0 means unlimited, but the size of this body will still be limited by Nginx's client*max*body_size. Default: 1048576\n"},"prompts":{"$ref":"#/types/konnect:index%2FGatewayPluginAiPromptDecoratorConfigPrompts:GatewayPluginAiPromptDecoratorConfigPrompts"}},"type":"object","language":{"nodejs":{"requiredOutputs":["llmFormat","maxRequestBodySize","prompts"]}}},"konnect:index/GatewayPluginAiPromptDecoratorConfigPrompts:GatewayPluginAiPromptDecoratorConfigPrompts":{"properties":{"appends":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginAiPromptDecoratorConfigPromptsAppend:GatewayPluginAiPromptDecoratorConfigPromptsAppend"},"description":"Insert chat messages at the end of the chat message array. This array preserves exact order when adding messages.\n"},"prepends":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginAiPromptDecoratorConfigPromptsPrepend:GatewayPluginAiPromptDecoratorConfigPromptsPrepend"},"description":"Insert chat messages at the beginning of the chat message array. This array preserves exact order when adding messages.\n"}},"type":"object"},"konnect:index/GatewayPluginAiPromptDecoratorConfigPromptsAppend:GatewayPluginAiPromptDecoratorConfigPromptsAppend":{"properties":{"content":{"type":"string","description":"Not Null\n"},"role":{"type":"string","description":"Default: \"system\"; must be one of [\"assistant\", \"system\", \"user\"]\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["content","role"]}}},"konnect:index/GatewayPluginAiPromptDecoratorConfigPromptsPrepend:GatewayPluginAiPromptDecoratorConfigPromptsPrepend":{"properties":{"content":{"type":"string","description":"Not Null\n"},"role":{"type":"string","description":"Default: \"system\"; must be one of [\"assistant\", \"system\", \"user\"]\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["content","role"]}}},"konnect:index/GatewayPluginAiPromptDecoratorConsumer:GatewayPluginAiPromptDecoratorConsumer":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginAiPromptDecoratorConsumerGroup:GatewayPluginAiPromptDecoratorConsumerGroup":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginAiPromptDecoratorOrdering:GatewayPluginAiPromptDecoratorOrdering":{"properties":{"after":{"$ref":"#/types/konnect:index%2FGatewayPluginAiPromptDecoratorOrderingAfter:GatewayPluginAiPromptDecoratorOrderingAfter"},"before":{"$ref":"#/types/konnect:index%2FGatewayPluginAiPromptDecoratorOrderingBefore:GatewayPluginAiPromptDecoratorOrderingBefore"}},"type":"object","language":{"nodejs":{"requiredOutputs":["after","before"]}}},"konnect:index/GatewayPluginAiPromptDecoratorOrderingAfter:GatewayPluginAiPromptDecoratorOrderingAfter":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginAiPromptDecoratorOrderingBefore:GatewayPluginAiPromptDecoratorOrderingBefore":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginAiPromptDecoratorPartial:GatewayPluginAiPromptDecoratorPartial":{"properties":{"id":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"name":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"path":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id","name","path"]}}},"konnect:index/GatewayPluginAiPromptDecoratorRoute:GatewayPluginAiPromptDecoratorRoute":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginAiPromptDecoratorService:GatewayPluginAiPromptDecoratorService":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginAiPromptGuardConfig:GatewayPluginAiPromptGuardConfig":{"properties":{"allowAllConversationHistory":{"type":"boolean","description":"If true, will ignore all previous chat prompts from the conversation history. Default: false\n"},"allowPatterns":{"type":"array","items":{"type":"string"},"description":"Array of valid regex patterns, or valid questions from the 'user' role in chat.\n"},"denyPatterns":{"type":"array","items":{"type":"string"},"description":"Array of invalid regex patterns, or invalid questions from the 'user' role in chat.\n"},"genaiCategory":{"type":"string","description":"Generative AI category of the request. Default: \"text/generation\"; must be one of [\"audio/speech\", \"audio/transcription\", \"image/generation\", \"realtime/generation\", \"text/embeddings\", \"text/generation\", \"video/generation\"]\n"},"llmFormat":{"type":"string","description":"LLM input and output format and schema to use. Default: \"openai\"; must be one of [\"anthropic\", \"bedrock\", \"cohere\", \"gemini\", \"huggingface\", \"openai\"]\n"},"matchAllRoles":{"type":"boolean","description":"If true, will match all roles in addition to 'user' role in conversation history. Default: false\n"},"maxRequestBodySize":{"type":"number","description":"max allowed body size allowed to be introspected. 0 means unlimited, but the size of this body will still be limited by Nginx's client*max*body_size. Default: 1048576\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["allowAllConversationHistory","genaiCategory","llmFormat","matchAllRoles","maxRequestBodySize"]}}},"konnect:index/GatewayPluginAiPromptGuardConsumer:GatewayPluginAiPromptGuardConsumer":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginAiPromptGuardConsumerGroup:GatewayPluginAiPromptGuardConsumerGroup":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginAiPromptGuardOrdering:GatewayPluginAiPromptGuardOrdering":{"properties":{"after":{"$ref":"#/types/konnect:index%2FGatewayPluginAiPromptGuardOrderingAfter:GatewayPluginAiPromptGuardOrderingAfter"},"before":{"$ref":"#/types/konnect:index%2FGatewayPluginAiPromptGuardOrderingBefore:GatewayPluginAiPromptGuardOrderingBefore"}},"type":"object","language":{"nodejs":{"requiredOutputs":["after","before"]}}},"konnect:index/GatewayPluginAiPromptGuardOrderingAfter:GatewayPluginAiPromptGuardOrderingAfter":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginAiPromptGuardOrderingBefore:GatewayPluginAiPromptGuardOrderingBefore":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginAiPromptGuardPartial:GatewayPluginAiPromptGuardPartial":{"properties":{"id":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"name":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"path":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id","name","path"]}}},"konnect:index/GatewayPluginAiPromptGuardRoute:GatewayPluginAiPromptGuardRoute":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginAiPromptGuardService:GatewayPluginAiPromptGuardService":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginAiPromptTemplateConfig:GatewayPluginAiPromptTemplateConfig":{"properties":{"allowUntemplatedRequests":{"type":"boolean","description":"Set true to allow requests that don't call or match any template. Default: true\n"},"logOriginalRequest":{"type":"boolean","description":"Set true to add the original request to the Kong log plugin(s) output. Default: false\n"},"maxRequestBodySize":{"type":"number","description":"max allowed body size allowed to be introspected. 0 means unlimited, but the size of this body will still be limited by Nginx's client*max*body_size. Default: 1048576\n"},"templates":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginAiPromptTemplateConfigTemplate:GatewayPluginAiPromptTemplateConfigTemplate"},"description":"Array of templates available to the request context.\n"}},"type":"object","required":["templates"],"language":{"nodejs":{"requiredOutputs":["allowUntemplatedRequests","logOriginalRequest","maxRequestBodySize","templates"]}}},"konnect:index/GatewayPluginAiPromptTemplateConfigTemplate:GatewayPluginAiPromptTemplateConfigTemplate":{"properties":{"name":{"type":"string","description":"Unique name for the template, can be called with `{template://NAME}`. Not Null\n"},"template":{"type":"string","description":"Template string for this request, supports mustache-style `{{placeholders}}`. Not Null\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["name","template"]}}},"konnect:index/GatewayPluginAiPromptTemplateConsumer:GatewayPluginAiPromptTemplateConsumer":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginAiPromptTemplateConsumerGroup:GatewayPluginAiPromptTemplateConsumerGroup":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginAiPromptTemplateOrdering:GatewayPluginAiPromptTemplateOrdering":{"properties":{"after":{"$ref":"#/types/konnect:index%2FGatewayPluginAiPromptTemplateOrderingAfter:GatewayPluginAiPromptTemplateOrderingAfter"},"before":{"$ref":"#/types/konnect:index%2FGatewayPluginAiPromptTemplateOrderingBefore:GatewayPluginAiPromptTemplateOrderingBefore"}},"type":"object","language":{"nodejs":{"requiredOutputs":["after","before"]}}},"konnect:index/GatewayPluginAiPromptTemplateOrderingAfter:GatewayPluginAiPromptTemplateOrderingAfter":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginAiPromptTemplateOrderingBefore:GatewayPluginAiPromptTemplateOrderingBefore":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginAiPromptTemplatePartial:GatewayPluginAiPromptTemplatePartial":{"properties":{"id":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"name":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"path":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id","name","path"]}}},"konnect:index/GatewayPluginAiPromptTemplateRoute:GatewayPluginAiPromptTemplateRoute":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginAiPromptTemplateService:GatewayPluginAiPromptTemplateService":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginAiProxyAdvancedConfig:GatewayPluginAiProxyAdvancedConfig":{"properties":{"balancer":{"$ref":"#/types/konnect:index%2FGatewayPluginAiProxyAdvancedConfigBalancer:GatewayPluginAiProxyAdvancedConfigBalancer"},"embeddings":{"$ref":"#/types/konnect:index%2FGatewayPluginAiProxyAdvancedConfigEmbeddings:GatewayPluginAiProxyAdvancedConfigEmbeddings"},"genaiCategory":{"type":"string","description":"Generative AI category of the request. Default: \"text/generation\"; must be one of [\"audio/speech\", \"audio/transcription\", \"image/generation\", \"realtime/generation\", \"text/embeddings\", \"text/generation\", \"video/generation\"]\n"},"llmFormat":{"type":"string","description":"LLM input and output format and schema to use. Default: \"openai\"; must be one of [\"anthropic\", \"bedrock\", \"cohere\", \"gemini\", \"huggingface\", \"openai\"]\n"},"maxRequestBodySize":{"type":"number","description":"max allowed body size allowed to be introspected. 0 means unlimited, but the size of this body will still be limited by Nginx's client*max*body_size. Default: 1048576\n"},"modelNameHeader":{"type":"boolean","description":"Display the model name selected in the X-Kong-LLM-Model response header. Default: true\n"},"responseStreaming":{"type":"string","description":"Whether to 'optionally allow', 'deny', or 'always' (force) the streaming of answers via server sent events. Default: \"allow\"; must be one of [\"allow\", \"always\", \"deny\"]\n"},"targets":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginAiProxyAdvancedConfigTarget:GatewayPluginAiProxyAdvancedConfigTarget"}},"vectordb":{"$ref":"#/types/konnect:index%2FGatewayPluginAiProxyAdvancedConfigVectordb:GatewayPluginAiProxyAdvancedConfigVectordb"}},"type":"object","required":["targets"],"language":{"nodejs":{"requiredOutputs":["balancer","embeddings","genaiCategory","llmFormat","maxRequestBodySize","modelNameHeader","responseStreaming","targets","vectordb"]}}},"konnect:index/GatewayPluginAiProxyAdvancedConfigBalancer:GatewayPluginAiProxyAdvancedConfigBalancer":{"properties":{"algorithm":{"type":"string","description":"Which load balancing algorithm to use. Default: \"round-robin\"; must be one of [\"consistent-hashing\", \"least-connections\", \"lowest-latency\", \"lowest-usage\", \"priority\", \"round-robin\", \"semantic\"]\n"},"connectTimeout":{"type":"number","description":"Default: 60000\n"},"failTimeout":{"type":"number","description":"The period of time (in milliseconds) the target will be considered unavailable after the number of unsuccessful attempts reaches \u003cspan pulumi-lang-nodejs=\"`maxFails`\" pulumi-lang-dotnet=\"`MaxFails`\" pulumi-lang-go=\"`maxFails`\" pulumi-lang-python=\"`max_fails`\" pulumi-lang-yaml=\"`maxFails`\" pulumi-lang-java=\"`maxFails`\"\u003e`max_fails`\u003c/span\u003e. Default: 10000\n"},"failoverCriterias":{"type":"array","items":{"type":"string"},"description":"Specifies in which cases an upstream response should be failover to the next target. Each option in the array is equivalent to the function of http://nginx.org/en/docs/http/ngx*http*proxy*module.html#proxy*next_upstream. Default: [\"error\",\"timeout\"]\n"},"hashOnHeader":{"type":"string","description":"The header to use for consistent-hashing. Default: \"X-Kong-LLM-Request-ID\"\n"},"latencyStrategy":{"type":"string","description":"What metrics to use for latency. Available values are: \u003cspan pulumi-lang-nodejs=\"`tpot`\" pulumi-lang-dotnet=\"`Tpot`\" pulumi-lang-go=\"`tpot`\" pulumi-lang-python=\"`tpot`\" pulumi-lang-yaml=\"`tpot`\" pulumi-lang-java=\"`tpot`\"\u003e`tpot`\u003c/span\u003e (time-per-output-token) and \u003cspan pulumi-lang-nodejs=\"`e2e`\" pulumi-lang-dotnet=\"`E2e`\" pulumi-lang-go=\"`e2e`\" pulumi-lang-python=\"`e2e`\" pulumi-lang-yaml=\"`e2e`\" pulumi-lang-java=\"`e2e`\"\u003e`e2e`\u003c/span\u003e. Default: \"tpot\"; must be one of [\"e2e\", \"tpot\"]\n"},"maxFails":{"type":"number","description":"Number of unsuccessful attempts to communicate with a target that should occur in the duration defined by \u003cspan pulumi-lang-nodejs=\"`failTimeout`\" pulumi-lang-dotnet=\"`FailTimeout`\" pulumi-lang-go=\"`failTimeout`\" pulumi-lang-python=\"`fail_timeout`\" pulumi-lang-yaml=\"`failTimeout`\" pulumi-lang-java=\"`failTimeout`\"\u003e`fail_timeout`\u003c/span\u003e before the target is considered unavailable. The zero value disables the circuit breaker. What is considered an unsuccessful attempt is defined by \u003cspan pulumi-lang-nodejs=\"`failoverCriteria`\" pulumi-lang-dotnet=\"`FailoverCriteria`\" pulumi-lang-go=\"`failoverCriteria`\" pulumi-lang-python=\"`failover_criteria`\" pulumi-lang-yaml=\"`failoverCriteria`\" pulumi-lang-java=\"`failoverCriteria`\"\u003e`failover_criteria`\u003c/span\u003e. Note the cases of \u003cspan pulumi-lang-nodejs=\"`error`\" pulumi-lang-dotnet=\"`Error`\" pulumi-lang-go=\"`error`\" pulumi-lang-python=\"`error`\" pulumi-lang-yaml=\"`error`\" pulumi-lang-java=\"`error`\"\u003e`error`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`timeout`\" pulumi-lang-dotnet=\"`Timeout`\" pulumi-lang-go=\"`timeout`\" pulumi-lang-python=\"`timeout`\" pulumi-lang-yaml=\"`timeout`\" pulumi-lang-java=\"`timeout`\"\u003e`timeout`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`invalidHeader`\" pulumi-lang-dotnet=\"`InvalidHeader`\" pulumi-lang-go=\"`invalidHeader`\" pulumi-lang-python=\"`invalid_header`\" pulumi-lang-yaml=\"`invalidHeader`\" pulumi-lang-java=\"`invalidHeader`\"\u003e`invalid_header`\u003c/span\u003e are always considered unsuccessful attempts, while the cases of \u003cspan pulumi-lang-nodejs=\"`http403`\" pulumi-lang-dotnet=\"`Http403`\" pulumi-lang-go=\"`http403`\" pulumi-lang-python=\"`http_403`\" pulumi-lang-yaml=\"`http403`\" pulumi-lang-java=\"`http403`\"\u003e`http_403`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`http404`\" pulumi-lang-dotnet=\"`Http404`\" pulumi-lang-go=\"`http404`\" pulumi-lang-python=\"`http_404`\" pulumi-lang-yaml=\"`http404`\" pulumi-lang-java=\"`http404`\"\u003e`http_404`\u003c/span\u003e are never considered unsuccessful attempts. Default: 0\n"},"readTimeout":{"type":"number","description":"Default: 60000\n"},"retries":{"type":"number","description":"The number of retries to execute upon failure to proxy. Default: 5\n"},"slots":{"type":"number","description":"The number of slots in the load balancer algorithm. Default: 10000\n"},"tokensCountStrategy":{"type":"string","description":"What tokens to use for usage calculation. Available values are: \u003cspan pulumi-lang-nodejs=\"`totalTokens`\" pulumi-lang-dotnet=\"`TotalTokens`\" pulumi-lang-go=\"`totalTokens`\" pulumi-lang-python=\"`total_tokens`\" pulumi-lang-yaml=\"`totalTokens`\" pulumi-lang-java=\"`totalTokens`\"\u003e`total_tokens`\u003c/span\u003e \u003cspan pulumi-lang-nodejs=\"`promptTokens`\" pulumi-lang-dotnet=\"`PromptTokens`\" pulumi-lang-go=\"`promptTokens`\" pulumi-lang-python=\"`prompt_tokens`\" pulumi-lang-yaml=\"`promptTokens`\" pulumi-lang-java=\"`promptTokens`\"\u003e`prompt_tokens`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`completionTokens`\" pulumi-lang-dotnet=\"`CompletionTokens`\" pulumi-lang-go=\"`completionTokens`\" pulumi-lang-python=\"`completion_tokens`\" pulumi-lang-yaml=\"`completionTokens`\" pulumi-lang-java=\"`completionTokens`\"\u003e`completion_tokens`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`cost`\" pulumi-lang-dotnet=\"`Cost`\" pulumi-lang-go=\"`cost`\" pulumi-lang-python=\"`cost`\" pulumi-lang-yaml=\"`cost`\" pulumi-lang-java=\"`cost`\"\u003e`cost`\u003c/span\u003e. Default: \"total-tokens\"; must be one of [\"completion-tokens\", \"cost\", \"llm-accuracy\", \"prompt-tokens\", \"total-tokens\"]\n"},"writeTimeout":{"type":"number","description":"Default: 60000\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["algorithm","connectTimeout","failTimeout","failoverCriterias","hashOnHeader","latencyStrategy","maxFails","readTimeout","retries","slots","tokensCountStrategy","writeTimeout"]}}},"konnect:index/GatewayPluginAiProxyAdvancedConfigEmbeddings:GatewayPluginAiProxyAdvancedConfigEmbeddings":{"properties":{"auth":{"$ref":"#/types/konnect:index%2FGatewayPluginAiProxyAdvancedConfigEmbeddingsAuth:GatewayPluginAiProxyAdvancedConfigEmbeddingsAuth"},"model":{"$ref":"#/types/konnect:index%2FGatewayPluginAiProxyAdvancedConfigEmbeddingsModel:GatewayPluginAiProxyAdvancedConfigEmbeddingsModel"}},"type":"object","required":["model"],"language":{"nodejs":{"requiredOutputs":["auth","model"]}}},"konnect:index/GatewayPluginAiProxyAdvancedConfigEmbeddingsAuth:GatewayPluginAiProxyAdvancedConfigEmbeddingsAuth":{"properties":{"allowOverride":{"type":"boolean","description":"If enabled, the authorization header or parameter can be overridden in the request by the value configured in the plugin. Default: false\n"},"awsAccessKeyId":{"type":"string","description":"Set this if you are using an AWS provider (Bedrock) and you are authenticating using static IAM User credentials. Setting this will override the AWS*ACCESS*KEY_ID environment variable for this plugin instance.\n"},"awsSecretAccessKey":{"type":"string","description":"Set this if you are using an AWS provider (Bedrock) and you are authenticating using static IAM User credentials. Setting this will override the AWS*SECRET*ACCESS_KEY environment variable for this plugin instance.\n"},"azureClientId":{"type":"string","description":"If azure*use*managed_identity is set to true, and you need to use a different user-assigned identity for this LLM instance, set the client ID.\n"},"azureClientSecret":{"type":"string","description":"If azure*use*managed_identity is set to true, and you need to use a different user-assigned identity for this LLM instance, set the client secret.\n"},"azureTenantId":{"type":"string","description":"If azure*use*managed_identity is set to true, and you need to use a different user-assigned identity for this LLM instance, set the tenant ID.\n"},"azureUseManagedIdentity":{"type":"boolean","description":"Set true to use the Azure Cloud Managed Identity (or user-assigned identity) to authenticate with Azure-provider models. Default: false\n"},"gcpServiceAccountJson":{"type":"string","description":"Set this field to the full JSON of the GCP service account to authenticate, if required. If null (and gcp*use*service_account is true), Kong will attempt to read from environment variable `GCP_SERVICE_ACCOUNT`.\n"},"gcpUseServiceAccount":{"type":"boolean","description":"Use service account auth for GCP-based providers and models. Default: false\n"},"headerName":{"type":"string","description":"If AI model requires authentication via Authorization or API key header, specify its name here.\n"},"headerValue":{"type":"string","description":"Specify the full auth header value for 'header_name', for example 'Bearer key' or just 'key'.\n"},"paramLocation":{"type":"string","description":"Specify whether the 'param*name' and 'param*value' options go in a query string, or the POST form/JSON body. must be one of [\"body\", \"query\"]\n"},"paramName":{"type":"string","description":"If AI model requires authentication via query parameter, specify its name here.\n"},"paramValue":{"type":"string","description":"Specify the full parameter value for 'param_name'.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["allowOverride","azureUseManagedIdentity","gcpUseServiceAccount","paramLocation"]}}},"konnect:index/GatewayPluginAiProxyAdvancedConfigEmbeddingsModel:GatewayPluginAiProxyAdvancedConfigEmbeddingsModel":{"properties":{"name":{"type":"string","description":"Model name to execute.\n"},"options":{"$ref":"#/types/konnect:index%2FGatewayPluginAiProxyAdvancedConfigEmbeddingsModelOptions:GatewayPluginAiProxyAdvancedConfigEmbeddingsModelOptions","description":"Key/value settings for the model\n"},"provider":{"type":"string","description":"AI provider format to use for embeddings API. must be one of [\"azure\", \"bedrock\", \"gemini\", \"huggingface\", \"mistral\", \"openai\"]\n"}},"type":"object","required":["name","provider"],"language":{"nodejs":{"requiredOutputs":["name","options","provider"]}}},"konnect:index/GatewayPluginAiProxyAdvancedConfigEmbeddingsModelOptions:GatewayPluginAiProxyAdvancedConfigEmbeddingsModelOptions":{"properties":{"azure":{"$ref":"#/types/konnect:index%2FGatewayPluginAiProxyAdvancedConfigEmbeddingsModelOptionsAzure:GatewayPluginAiProxyAdvancedConfigEmbeddingsModelOptionsAzure"},"bedrock":{"$ref":"#/types/konnect:index%2FGatewayPluginAiProxyAdvancedConfigEmbeddingsModelOptionsBedrock:GatewayPluginAiProxyAdvancedConfigEmbeddingsModelOptionsBedrock"},"gemini":{"$ref":"#/types/konnect:index%2FGatewayPluginAiProxyAdvancedConfigEmbeddingsModelOptionsGemini:GatewayPluginAiProxyAdvancedConfigEmbeddingsModelOptionsGemini"},"huggingface":{"$ref":"#/types/konnect:index%2FGatewayPluginAiProxyAdvancedConfigEmbeddingsModelOptionsHuggingface:GatewayPluginAiProxyAdvancedConfigEmbeddingsModelOptionsHuggingface"},"upstreamUrl":{"type":"string","description":"upstream url for the embeddings\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["azure","bedrock","gemini","huggingface"]}}},"konnect:index/GatewayPluginAiProxyAdvancedConfigEmbeddingsModelOptionsAzure:GatewayPluginAiProxyAdvancedConfigEmbeddingsModelOptionsAzure":{"properties":{"apiVersion":{"type":"string","description":"'api-version' for Azure OpenAI instances. Default: \"2023-05-15\"\n"},"deploymentId":{"type":"string","description":"Deployment ID for Azure OpenAI instances.\n"},"instance":{"type":"string","description":"Instance name for Azure OpenAI hosted models.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["apiVersion"]}}},"konnect:index/GatewayPluginAiProxyAdvancedConfigEmbeddingsModelOptionsBedrock:GatewayPluginAiProxyAdvancedConfigEmbeddingsModelOptionsBedrock":{"properties":{"awsAssumeRoleArn":{"type":"string","description":"If using AWS providers (Bedrock) you can assume a different role after authentication with the current IAM context is successful.\n"},"awsRegion":{"type":"string","description":"If using AWS providers (Bedrock) you can override the `AWS_REGION` environment variable by setting this option.\n"},"awsRoleSessionName":{"type":"string","description":"If using AWS providers (Bedrock), set the identifier of the assumed role session.\n"},"awsStsEndpointUrl":{"type":"string","description":"If using AWS providers (Bedrock), override the STS endpoint URL when assuming a different role.\n"},"embeddingsNormalize":{"type":"boolean","description":"If using AWS providers (Bedrock), set to true to normalize the embeddings. Default: false\n"},"performanceConfigLatency":{"type":"string","description":"Force the client's performance configuration 'latency' for all requests. Leave empty to let the consumer select the performance configuration.\n"},"videoOutputS3Uri":{"type":"string","description":"S3 URI (s3://bucket/prefix) where Bedrock will store generated video files. Required for video generation.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["embeddingsNormalize"]}}},"konnect:index/GatewayPluginAiProxyAdvancedConfigEmbeddingsModelOptionsGemini:GatewayPluginAiProxyAdvancedConfigEmbeddingsModelOptionsGemini":{"properties":{"apiEndpoint":{"type":"string","description":"If running Gemini on Vertex, specify the regional API endpoint (hostname only).\n"},"locationId":{"type":"string","description":"If running Gemini on Vertex, specify the location ID.\n"},"projectId":{"type":"string","description":"If running Gemini on Vertex, specify the project ID.\n"}},"type":"object"},"konnect:index/GatewayPluginAiProxyAdvancedConfigEmbeddingsModelOptionsHuggingface:GatewayPluginAiProxyAdvancedConfigEmbeddingsModelOptionsHuggingface":{"properties":{"useCache":{"type":"boolean","description":"Use the cache layer on the inference API\n"},"waitForModel":{"type":"boolean","description":"Wait for the model if it is not ready\n"}},"type":"object"},"konnect:index/GatewayPluginAiProxyAdvancedConfigTarget:GatewayPluginAiProxyAdvancedConfigTarget":{"properties":{"auth":{"$ref":"#/types/konnect:index%2FGatewayPluginAiProxyAdvancedConfigTargetAuth:GatewayPluginAiProxyAdvancedConfigTargetAuth"},"description":{"type":"string","description":"The semantic description of the target, required if using semantic load balancing. Specially, setting this to 'CATCHALL' will indicate such target to be used when no other targets match the semantic threshold. Only used by ai-proxy-advanced.\n"},"logging":{"$ref":"#/types/konnect:index%2FGatewayPluginAiProxyAdvancedConfigTargetLogging:GatewayPluginAiProxyAdvancedConfigTargetLogging"},"metadata":{"type":"object","additionalProperties":{"type":"string"},"description":"For internal use only.\n"},"model":{"$ref":"#/types/konnect:index%2FGatewayPluginAiProxyAdvancedConfigTargetModel:GatewayPluginAiProxyAdvancedConfigTargetModel","description":"Not Null\n"},"routeType":{"type":"string","description":"The model's operation implementation, for this provider. Not Null; must be one of [\"audio/v1/audio/speech\", \"audio/v1/audio/transcriptions\", \"audio/v1/audio/translations\", \"image/v1/images/edits\", \"image/v1/images/generations\", \"llm/v1/assistants\", \"llm/v1/batches\", \"llm/v1/chat\", \"llm/v1/completions\", \"llm/v1/embeddings\", \"llm/v1/files\", \"llm/v1/responses\", \"preserve\", \"realtime/v1/realtime\", \"video/v1/videos/generations\"]\n"},"weight":{"type":"number","description":"The weight this target gets within the upstream loadbalancer (1-65535). Only used by ai-proxy-advanced. Default: 100\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["auth","logging","model","routeType","weight"]}}},"konnect:index/GatewayPluginAiProxyAdvancedConfigTargetAuth:GatewayPluginAiProxyAdvancedConfigTargetAuth":{"properties":{"allowOverride":{"type":"boolean","description":"If enabled, the authorization header or parameter can be overridden in the request by the value configured in the plugin. Default: false\n"},"awsAccessKeyId":{"type":"string","description":"Set this if you are using an AWS provider (Bedrock) and you are authenticating using static IAM User credentials. Setting this will override the AWS*ACCESS*KEY_ID environment variable for this plugin instance.\n"},"awsSecretAccessKey":{"type":"string","description":"Set this if you are using an AWS provider (Bedrock) and you are authenticating using static IAM User credentials. Setting this will override the AWS*SECRET*ACCESS_KEY environment variable for this plugin instance.\n"},"azureClientId":{"type":"string","description":"If azure*use*managed_identity is set to true, and you need to use a different user-assigned identity for this LLM instance, set the client ID.\n"},"azureClientSecret":{"type":"string","description":"If azure*use*managed_identity is set to true, and you need to use a different user-assigned identity for this LLM instance, set the client secret.\n"},"azureTenantId":{"type":"string","description":"If azure*use*managed_identity is set to true, and you need to use a different user-assigned identity for this LLM instance, set the tenant ID.\n"},"azureUseManagedIdentity":{"type":"boolean","description":"Set true to use the Azure Cloud Managed Identity (or user-assigned identity) to authenticate with Azure-provider models. Default: false\n"},"gcpServiceAccountJson":{"type":"string","description":"Set this field to the full JSON of the GCP service account to authenticate, if required. If null (and gcp*use*service_account is true), Kong will attempt to read from environment variable `GCP_SERVICE_ACCOUNT`.\n"},"gcpUseServiceAccount":{"type":"boolean","description":"Use service account auth for GCP-based providers and models. Default: false\n"},"headerName":{"type":"string","description":"If AI model requires authentication via Authorization or API key header, specify its name here.\n"},"headerValue":{"type":"string","description":"Specify the full auth header value for 'header_name', for example 'Bearer key' or just 'key'.\n"},"paramLocation":{"type":"string","description":"Specify whether the 'param*name' and 'param*value' options go in a query string, or the POST form/JSON body. must be one of [\"body\", \"query\"]\n"},"paramName":{"type":"string","description":"If AI model requires authentication via query parameter, specify its name here.\n"},"paramValue":{"type":"string","description":"Specify the full parameter value for 'param_name'.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["allowOverride","azureUseManagedIdentity","gcpUseServiceAccount","paramLocation"]}}},"konnect:index/GatewayPluginAiProxyAdvancedConfigTargetLogging:GatewayPluginAiProxyAdvancedConfigTargetLogging":{"properties":{"logPayloads":{"type":"boolean","description":"If enabled, will log the request and response body into the Kong log plugin(s) output.Furthermore if Opentelemetry instrumentation is enabled the traces will contain this data as well. Default: false\n"},"logStatistics":{"type":"boolean","description":"If enabled and supported by the driver, will add model usage and token metrics into the Kong log plugin(s) output. Default: false\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["logPayloads","logStatistics"]}}},"konnect:index/GatewayPluginAiProxyAdvancedConfigTargetModel:GatewayPluginAiProxyAdvancedConfigTargetModel":{"properties":{"name":{"type":"string","description":"Model name to execute.\n"},"options":{"$ref":"#/types/konnect:index%2FGatewayPluginAiProxyAdvancedConfigTargetModelOptions:GatewayPluginAiProxyAdvancedConfigTargetModelOptions","description":"Key/value settings for the model\n"},"provider":{"type":"string","description":"AI provider request format - Kong translates requests to and from the specified backend compatible formats. Not Null; must be one of [\"anthropic\", \"azure\", \"bedrock\", \"cerebras\", \"cohere\", \"dashscope\", \"gemini\", \"huggingface\", \"llama2\", \"mistral\", \"openai\", \"xai\"]\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["options","provider"]}}},"konnect:index/GatewayPluginAiProxyAdvancedConfigTargetModelOptions:GatewayPluginAiProxyAdvancedConfigTargetModelOptions":{"properties":{"anthropicVersion":{"type":"string","description":"Defines the schema/API version, if using Anthropic provider.\n"},"azureApiVersion":{"type":"string","description":"'api-version' for Azure OpenAI instances. Default: \"2023-05-15\"\n"},"azureDeploymentId":{"type":"string","description":"Deployment ID for Azure OpenAI instances.\n"},"azureInstance":{"type":"string","description":"Instance name for Azure OpenAI hosted models.\n"},"bedrock":{"$ref":"#/types/konnect:index%2FGatewayPluginAiProxyAdvancedConfigTargetModelOptionsBedrock:GatewayPluginAiProxyAdvancedConfigTargetModelOptionsBedrock"},"cohere":{"$ref":"#/types/konnect:index%2FGatewayPluginAiProxyAdvancedConfigTargetModelOptionsCohere:GatewayPluginAiProxyAdvancedConfigTargetModelOptionsCohere"},"dashscope":{"$ref":"#/types/konnect:index%2FGatewayPluginAiProxyAdvancedConfigTargetModelOptionsDashscope:GatewayPluginAiProxyAdvancedConfigTargetModelOptionsDashscope"},"embeddingsDimensions":{"type":"number","description":"If using embeddings models, set the number of dimensions to generate.\n"},"gemini":{"$ref":"#/types/konnect:index%2FGatewayPluginAiProxyAdvancedConfigTargetModelOptionsGemini:GatewayPluginAiProxyAdvancedConfigTargetModelOptionsGemini"},"huggingface":{"$ref":"#/types/konnect:index%2FGatewayPluginAiProxyAdvancedConfigTargetModelOptionsHuggingface:GatewayPluginAiProxyAdvancedConfigTargetModelOptionsHuggingface"},"inputCost":{"type":"number","description":"Defines the cost per 1M tokens in your prompt.\n"},"llama2Format":{"type":"string","description":"If using llama2 provider, select the upstream message format. must be one of [\"ollama\", \"openai\", \"raw\"]\n"},"maxTokens":{"type":"number","description":"Defines the max_tokens, if using chat or completion models.\n"},"mistralFormat":{"type":"string","description":"If using mistral provider, select the upstream message format. must be one of [\"ollama\", \"openai\"]\n"},"outputCost":{"type":"number","description":"Defines the cost per 1M tokens in the output of the AI.\n"},"temperature":{"type":"number","description":"Defines the matching temperature, if using chat or completion models.\n"},"topK":{"type":"number","description":"Defines the top-k most likely tokens, if supported.\n"},"topP":{"type":"number","description":"Defines the top-p probability mass, if supported.\n"},"upstreamPath":{"type":"string","description":"Manually specify or override the AI operation path, used when e.g. using the 'preserve' route_type.\n"},"upstreamUrl":{"type":"string","description":"Manually specify or override the full URL to the AI operation endpoints, when calling (self-)hosted models, or for running via a private endpoint.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["azureApiVersion","bedrock","cohere","dashscope","gemini","huggingface","llama2Format","mistralFormat"]}}},"konnect:index/GatewayPluginAiProxyAdvancedConfigTargetModelOptionsBedrock:GatewayPluginAiProxyAdvancedConfigTargetModelOptionsBedrock":{"properties":{"awsAssumeRoleArn":{"type":"string","description":"If using AWS providers (Bedrock) you can assume a different role after authentication with the current IAM context is successful.\n"},"awsRegion":{"type":"string","description":"If using AWS providers (Bedrock) you can override the `AWS_REGION` environment variable by setting this option.\n"},"awsRoleSessionName":{"type":"string","description":"If using AWS providers (Bedrock), set the identifier of the assumed role session.\n"},"awsStsEndpointUrl":{"type":"string","description":"If using AWS providers (Bedrock), override the STS endpoint URL when assuming a different role.\n"},"embeddingsNormalize":{"type":"boolean","description":"If using AWS providers (Bedrock), set to true to normalize the embeddings. Default: false\n"},"performanceConfigLatency":{"type":"string","description":"Force the client's performance configuration 'latency' for all requests. Leave empty to let the consumer select the performance configuration.\n"},"videoOutputS3Uri":{"type":"string","description":"S3 URI (s3://bucket/prefix) where Bedrock will store generated video files. Required for video generation.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["embeddingsNormalize"]}}},"konnect:index/GatewayPluginAiProxyAdvancedConfigTargetModelOptionsCohere:GatewayPluginAiProxyAdvancedConfigTargetModelOptionsCohere":{"properties":{"embeddingInputType":{"type":"string","description":"The purpose of the input text to calculate embedding vectors. Default: \"classification\"; must be one of [\"classification\", \"clustering\", \"image\", \"search*document\", \"search*query\"]\n"},"waitForModel":{"type":"boolean","description":"Wait for the model if it is not ready\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["embeddingInputType"]}}},"konnect:index/GatewayPluginAiProxyAdvancedConfigTargetModelOptionsDashscope:GatewayPluginAiProxyAdvancedConfigTargetModelOptionsDashscope":{"properties":{"international":{"type":"boolean","description":"Two Dashscope endpoints are available, and the international endpoint will be used when this is set to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e.\nIt is recommended to set this to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e when using international version of dashscope.\nDefault: true\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["international"]}}},"konnect:index/GatewayPluginAiProxyAdvancedConfigTargetModelOptionsGemini:GatewayPluginAiProxyAdvancedConfigTargetModelOptionsGemini":{"properties":{"apiEndpoint":{"type":"string","description":"If running Gemini on Vertex, specify the regional API endpoint (hostname only).\n"},"endpointId":{"type":"string","description":"If running Gemini on Vertex Model Garden, specify the endpoint ID.\n"},"locationId":{"type":"string","description":"If running Gemini on Vertex, specify the location ID.\n"},"projectId":{"type":"string","description":"If running Gemini on Vertex, specify the project ID.\n"}},"type":"object"},"konnect:index/GatewayPluginAiProxyAdvancedConfigTargetModelOptionsHuggingface:GatewayPluginAiProxyAdvancedConfigTargetModelOptionsHuggingface":{"properties":{"useCache":{"type":"boolean","description":"Use the cache layer on the inference API\n"},"waitForModel":{"type":"boolean","description":"Wait for the model if it is not ready\n"}},"type":"object"},"konnect:index/GatewayPluginAiProxyAdvancedConfigVectordb:GatewayPluginAiProxyAdvancedConfigVectordb":{"properties":{"dimensions":{"type":"number","description":"the desired dimensionality for the vectors\n"},"distanceMetric":{"type":"string","description":"the distance metric to use for vector searches. must be one of [\"cosine\", \"euclidean\"]\n"},"pgvector":{"$ref":"#/types/konnect:index%2FGatewayPluginAiProxyAdvancedConfigVectordbPgvector:GatewayPluginAiProxyAdvancedConfigVectordbPgvector"},"redis":{"$ref":"#/types/konnect:index%2FGatewayPluginAiProxyAdvancedConfigVectordbRedis:GatewayPluginAiProxyAdvancedConfigVectordbRedis"},"strategy":{"type":"string","description":"which vector database driver to use. must be one of [\"pgvector\", \"redis\"]\n"},"threshold":{"type":"number","description":"the default similarity threshold for accepting semantic search results (float)\n"}},"type":"object","required":["dimensions","distanceMetric","strategy"],"language":{"nodejs":{"requiredOutputs":["dimensions","distanceMetric","pgvector","redis","strategy"]}}},"konnect:index/GatewayPluginAiProxyAdvancedConfigVectordbPgvector:GatewayPluginAiProxyAdvancedConfigVectordbPgvector":{"properties":{"database":{"type":"string","description":"the database of the pgvector database. Default: \"kong-pgvector\"\n"},"host":{"type":"string","description":"the host of the pgvector database. Default: \"127.0.0.1\"\n"},"password":{"type":"string","description":"the password of the pgvector database\n"},"port":{"type":"number","description":"the port of the pgvector database. Default: 5432\n"},"ssl":{"type":"boolean","description":"whether to use ssl for the pgvector database. Default: false\n"},"sslCert":{"type":"string","description":"the path of ssl cert to use for the pgvector database\n"},"sslCertKey":{"type":"string","description":"the path of ssl cert key to use for the pgvector database\n"},"sslRequired":{"type":"boolean","description":"whether ssl is required for the pgvector database. Default: false\n"},"sslVerify":{"type":"boolean","description":"whether to verify ssl for the pgvector database. Default: false\n"},"sslVersion":{"type":"string","description":"the ssl version to use for the pgvector database. Default: \"tlsv1*2\"; must be one of [\"any\", \"tlsv1*2\", \u003cspan pulumi-lang-nodejs=\"\"tlsv13\"\" pulumi-lang-dotnet=\"\"Tlsv13\"\" pulumi-lang-go=\"\"tlsv13\"\" pulumi-lang-python=\"\"tlsv1_3\"\" pulumi-lang-yaml=\"\"tlsv13\"\" pulumi-lang-java=\"\"tlsv13\"\"\u003e\"tlsv1_3\"\u003c/span\u003e]\n"},"timeout":{"type":"number","description":"the timeout of the pgvector database. Default: 5000\n"},"user":{"type":"string","description":"the user of the pgvector database. Default: \"postgres\"\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["database","host","port","ssl","sslRequired","sslVerify","sslVersion","timeout","user"]}}},"konnect:index/GatewayPluginAiProxyAdvancedConfigVectordbRedis:GatewayPluginAiProxyAdvancedConfigVectordbRedis":{"properties":{"cloudAuthentication":{"$ref":"#/types/konnect:index%2FGatewayPluginAiProxyAdvancedConfigVectordbRedisCloudAuthentication:GatewayPluginAiProxyAdvancedConfigVectordbRedisCloudAuthentication","description":"Cloud auth related configs for connecting to a Cloud Provider's Redis instance.\n"},"clusterMaxRedirections":{"type":"number","description":"Maximum retry attempts for redirection. Default: 5\n"},"clusterNodes":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginAiProxyAdvancedConfigVectordbRedisClusterNode:GatewayPluginAiProxyAdvancedConfigVectordbRedisClusterNode"},"description":"Cluster addresses to use for Redis connections when the \u003cspan pulumi-lang-nodejs=\"`redis`\" pulumi-lang-dotnet=\"`Redis`\" pulumi-lang-go=\"`redis`\" pulumi-lang-python=\"`redis`\" pulumi-lang-yaml=\"`redis`\" pulumi-lang-java=\"`redis`\"\u003e`redis`\u003c/span\u003e strategy is defined. Defining this field implies using a Redis Cluster. The minimum length of the array is 1 element.\n"},"connectTimeout":{"type":"number","description":"An integer representing a timeout in milliseconds. Must be between 0 and 2^31-2. Default: 2000\n"},"connectionIsProxied":{"type":"boolean","description":"If the connection to Redis is proxied (e.g. Envoy), set it \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e. Set the \u003cspan pulumi-lang-nodejs=\"`host`\" pulumi-lang-dotnet=\"`Host`\" pulumi-lang-go=\"`host`\" pulumi-lang-python=\"`host`\" pulumi-lang-yaml=\"`host`\" pulumi-lang-java=\"`host`\"\u003e`host`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`port`\" pulumi-lang-dotnet=\"`Port`\" pulumi-lang-go=\"`port`\" pulumi-lang-python=\"`port`\" pulumi-lang-yaml=\"`port`\" pulumi-lang-java=\"`port`\"\u003e`port`\u003c/span\u003e to point to the proxy address. Default: false\n"},"database":{"type":"number","description":"Database to use for the Redis connection when using the \u003cspan pulumi-lang-nodejs=\"`redis`\" pulumi-lang-dotnet=\"`Redis`\" pulumi-lang-go=\"`redis`\" pulumi-lang-python=\"`redis`\" pulumi-lang-yaml=\"`redis`\" pulumi-lang-java=\"`redis`\"\u003e`redis`\u003c/span\u003e strategy. Default: 0\n"},"host":{"type":"string","description":"A string representing a host name, such as example.com. Default: \"127.0.0.1\"\n"},"keepaliveBacklog":{"type":"number","description":"Limits the total number of opened connections for a pool. If the connection pool is full, connection queues above the limit go into the backlog queue. If the backlog queue is full, subsequent connect operations fail and return \u003cspan pulumi-lang-nodejs=\"`nil`\" pulumi-lang-dotnet=\"`Nil`\" pulumi-lang-go=\"`nil`\" pulumi-lang-python=\"`nil`\" pulumi-lang-yaml=\"`nil`\" pulumi-lang-java=\"`nil`\"\u003e`nil`\u003c/span\u003e. Queued operations (subject to set timeouts) resume once the number of connections in the pool is less than \u003cspan pulumi-lang-nodejs=\"`keepalivePoolSize`\" pulumi-lang-dotnet=\"`KeepalivePoolSize`\" pulumi-lang-go=\"`keepalivePoolSize`\" pulumi-lang-python=\"`keepalive_pool_size`\" pulumi-lang-yaml=\"`keepalivePoolSize`\" pulumi-lang-java=\"`keepalivePoolSize`\"\u003e`keepalive_pool_size`\u003c/span\u003e. If latency is high or throughput is low, try increasing this value. Empirically, this value is larger than \u003cspan pulumi-lang-nodejs=\"`keepalivePoolSize`\" pulumi-lang-dotnet=\"`KeepalivePoolSize`\" pulumi-lang-go=\"`keepalivePoolSize`\" pulumi-lang-python=\"`keepalive_pool_size`\" pulumi-lang-yaml=\"`keepalivePoolSize`\" pulumi-lang-java=\"`keepalivePoolSize`\"\u003e`keepalive_pool_size`\u003c/span\u003e.\n"},"keepalivePoolSize":{"type":"number","description":"The size limit for every cosocket connection pool associated with every remote server, per worker process. If neither \u003cspan pulumi-lang-nodejs=\"`keepalivePoolSize`\" pulumi-lang-dotnet=\"`KeepalivePoolSize`\" pulumi-lang-go=\"`keepalivePoolSize`\" pulumi-lang-python=\"`keepalive_pool_size`\" pulumi-lang-yaml=\"`keepalivePoolSize`\" pulumi-lang-java=\"`keepalivePoolSize`\"\u003e`keepalive_pool_size`\u003c/span\u003e nor \u003cspan pulumi-lang-nodejs=\"`keepaliveBacklog`\" pulumi-lang-dotnet=\"`KeepaliveBacklog`\" pulumi-lang-go=\"`keepaliveBacklog`\" pulumi-lang-python=\"`keepalive_backlog`\" pulumi-lang-yaml=\"`keepaliveBacklog`\" pulumi-lang-java=\"`keepaliveBacklog`\"\u003e`keepalive_backlog`\u003c/span\u003e is specified, no pool is created. If \u003cspan pulumi-lang-nodejs=\"`keepalivePoolSize`\" pulumi-lang-dotnet=\"`KeepalivePoolSize`\" pulumi-lang-go=\"`keepalivePoolSize`\" pulumi-lang-python=\"`keepalive_pool_size`\" pulumi-lang-yaml=\"`keepalivePoolSize`\" pulumi-lang-java=\"`keepalivePoolSize`\"\u003e`keepalive_pool_size`\u003c/span\u003e isn't specified but \u003cspan pulumi-lang-nodejs=\"`keepaliveBacklog`\" pulumi-lang-dotnet=\"`KeepaliveBacklog`\" pulumi-lang-go=\"`keepaliveBacklog`\" pulumi-lang-python=\"`keepalive_backlog`\" pulumi-lang-yaml=\"`keepaliveBacklog`\" pulumi-lang-java=\"`keepaliveBacklog`\"\u003e`keepalive_backlog`\u003c/span\u003e is specified, then the pool uses the default value. Try to increase (e.g. 512) this value if latency is high or throughput is low. Default: 256\n"},"password":{"type":"string","description":"Password to use for Redis connections. If undefined, no AUTH commands are sent to Redis.\n"},"port":{"type":"number","description":"An integer representing a port number between 0 and 65535, inclusive. Default: 6379\n"},"readTimeout":{"type":"number","description":"An integer representing a timeout in milliseconds. Must be between 0 and 2^31-2. Default: 2000\n"},"sendTimeout":{"type":"number","description":"An integer representing a timeout in milliseconds. Must be between 0 and 2^31-2. Default: 2000\n"},"sentinelMaster":{"type":"string","description":"Sentinel master to use for Redis connections. Defining this value implies using Redis Sentinel.\n"},"sentinelNodes":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginAiProxyAdvancedConfigVectordbRedisSentinelNode:GatewayPluginAiProxyAdvancedConfigVectordbRedisSentinelNode"},"description":"Sentinel node addresses to use for Redis connections when the \u003cspan pulumi-lang-nodejs=\"`redis`\" pulumi-lang-dotnet=\"`Redis`\" pulumi-lang-go=\"`redis`\" pulumi-lang-python=\"`redis`\" pulumi-lang-yaml=\"`redis`\" pulumi-lang-java=\"`redis`\"\u003e`redis`\u003c/span\u003e strategy is defined. Defining this field implies using a Redis Sentinel. The minimum length of the array is 1 element.\n"},"sentinelPassword":{"type":"string","description":"Sentinel password to authenticate with a Redis Sentinel instance. If undefined, no AUTH commands are sent to Redis Sentinels.\n"},"sentinelRole":{"type":"string","description":"Sentinel role to use for Redis connections when the \u003cspan pulumi-lang-nodejs=\"`redis`\" pulumi-lang-dotnet=\"`Redis`\" pulumi-lang-go=\"`redis`\" pulumi-lang-python=\"`redis`\" pulumi-lang-yaml=\"`redis`\" pulumi-lang-java=\"`redis`\"\u003e`redis`\u003c/span\u003e strategy is defined. Defining this value implies using Redis Sentinel. must be one of [\"any\", \"master\", \"slave\"]\n"},"sentinelUsername":{"type":"string","description":"Sentinel username to authenticate with a Redis Sentinel instance. If undefined, ACL authentication won't be performed. This requires Redis v6.2.0+.\n"},"serverName":{"type":"string","description":"A string representing an SNI (server name indication) value for TLS.\n"},"ssl":{"type":"boolean","description":"If set to true, uses SSL to connect to Redis. Default: false\n"},"sslVerify":{"type":"boolean","description":"If set to true, verifies the validity of the server SSL certificate. If setting this parameter, also configure \u003cspan pulumi-lang-nodejs=\"`luaSslTrustedCertificate`\" pulumi-lang-dotnet=\"`LuaSslTrustedCertificate`\" pulumi-lang-go=\"`luaSslTrustedCertificate`\" pulumi-lang-python=\"`lua_ssl_trusted_certificate`\" pulumi-lang-yaml=\"`luaSslTrustedCertificate`\" pulumi-lang-java=\"`luaSslTrustedCertificate`\"\u003e`lua_ssl_trusted_certificate`\u003c/span\u003e in `kong.conf` to specify the CA (or server) certificate used by your Redis server. You may also need to configure \u003cspan pulumi-lang-nodejs=\"`luaSslVerifyDepth`\" pulumi-lang-dotnet=\"`LuaSslVerifyDepth`\" pulumi-lang-go=\"`luaSslVerifyDepth`\" pulumi-lang-python=\"`lua_ssl_verify_depth`\" pulumi-lang-yaml=\"`luaSslVerifyDepth`\" pulumi-lang-java=\"`luaSslVerifyDepth`\"\u003e`lua_ssl_verify_depth`\u003c/span\u003e accordingly. Default: false\n"},"username":{"type":"string","description":"Username to use for Redis connections. If undefined, ACL authentication won't be performed. This requires Redis v6.0.0+. To be compatible with Redis v5.x.y, you can set it to \u003cspan pulumi-lang-nodejs=\"`default`\" pulumi-lang-dotnet=\"`Default`\" pulumi-lang-go=\"`default`\" pulumi-lang-python=\"`default`\" pulumi-lang-yaml=\"`default`\" pulumi-lang-java=\"`default`\"\u003e`default`\u003c/span\u003e.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["cloudAuthentication","clusterMaxRedirections","connectTimeout","connectionIsProxied","database","host","keepalivePoolSize","port","readTimeout","sendTimeout","sentinelRole","ssl","sslVerify"]}}},"konnect:index/GatewayPluginAiProxyAdvancedConfigVectordbRedisCloudAuthentication:GatewayPluginAiProxyAdvancedConfigVectordbRedisCloudAuthentication":{"properties":{"authProvider":{"type":"string","description":"Auth providers to be used to authenticate to a Cloud Provider's Redis instance. must be one of [\"aws\", \"azure\", \"gcp\"]\n"},"awsAccessKeyId":{"type":"string","description":"AWS Access Key ID to be used for authentication when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e.\n"},"awsAssumeRoleArn":{"type":"string","description":"The ARN of the IAM role to assume for generating ElastiCache IAM authentication tokens.\n"},"awsCacheName":{"type":"string","description":"The name of the AWS Elasticache cluster when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e.\n"},"awsIsServerless":{"type":"boolean","description":"This flag specifies whether the cluster is serverless when\u003cspan pulumi-lang-nodejs=\" authProvider \" pulumi-lang-dotnet=\" AuthProvider \" pulumi-lang-go=\" authProvider \" pulumi-lang-python=\" auth_provider \" pulumi-lang-yaml=\" authProvider \" pulumi-lang-java=\" authProvider \"\u003e auth_provider \u003c/span\u003eis set to \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e. Default: true\n"},"awsRegion":{"type":"string","description":"The region of the AWS ElastiCache cluster when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e.\n"},"awsRoleSessionName":{"type":"string","description":"The session name for the temporary credentials when assuming the IAM role.\n"},"awsSecretAccessKey":{"type":"string","description":"AWS Secret Access Key to be used for authentication when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e.\n"},"azureClientId":{"type":"string","description":"Azure Client ID to be used for authentication when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`azure`\" pulumi-lang-dotnet=\"`Azure`\" pulumi-lang-go=\"`azure`\" pulumi-lang-python=\"`azure`\" pulumi-lang-yaml=\"`azure`\" pulumi-lang-java=\"`azure`\"\u003e`azure`\u003c/span\u003e.\n"},"azureClientSecret":{"type":"string","description":"Azure Client Secret to be used for authentication when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`azure`\" pulumi-lang-dotnet=\"`Azure`\" pulumi-lang-go=\"`azure`\" pulumi-lang-python=\"`azure`\" pulumi-lang-yaml=\"`azure`\" pulumi-lang-java=\"`azure`\"\u003e`azure`\u003c/span\u003e.\n"},"azureTenantId":{"type":"string","description":"Azure Tenant ID to be used for authentication when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`azure`\" pulumi-lang-dotnet=\"`Azure`\" pulumi-lang-go=\"`azure`\" pulumi-lang-python=\"`azure`\" pulumi-lang-yaml=\"`azure`\" pulumi-lang-java=\"`azure`\"\u003e`azure`\u003c/span\u003e.\n"},"gcpServiceAccountJson":{"type":"string","description":"GCP Service Account JSON to be used for authentication when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`gcp`\" pulumi-lang-dotnet=\"`Gcp`\" pulumi-lang-go=\"`gcp`\" pulumi-lang-python=\"`gcp`\" pulumi-lang-yaml=\"`gcp`\" pulumi-lang-java=\"`gcp`\"\u003e`gcp`\u003c/span\u003e.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["authProvider","awsIsServerless"]}}},"konnect:index/GatewayPluginAiProxyAdvancedConfigVectordbRedisClusterNode:GatewayPluginAiProxyAdvancedConfigVectordbRedisClusterNode":{"properties":{"ip":{"type":"string","description":"A string representing a host name, such as example.com. Default: \"127.0.0.1\"\n"},"port":{"type":"number","description":"An integer representing a port number between 0 and 65535, inclusive. Default: 6379\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["ip","port"]}}},"konnect:index/GatewayPluginAiProxyAdvancedConfigVectordbRedisSentinelNode:GatewayPluginAiProxyAdvancedConfigVectordbRedisSentinelNode":{"properties":{"host":{"type":"string","description":"A string representing a host name, such as example.com. Default: \"127.0.0.1\"\n"},"port":{"type":"number","description":"An integer representing a port number between 0 and 65535, inclusive. Default: 6379\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["host","port"]}}},"konnect:index/GatewayPluginAiProxyAdvancedConsumer:GatewayPluginAiProxyAdvancedConsumer":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginAiProxyAdvancedConsumerGroup:GatewayPluginAiProxyAdvancedConsumerGroup":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginAiProxyAdvancedOrdering:GatewayPluginAiProxyAdvancedOrdering":{"properties":{"after":{"$ref":"#/types/konnect:index%2FGatewayPluginAiProxyAdvancedOrderingAfter:GatewayPluginAiProxyAdvancedOrderingAfter"},"before":{"$ref":"#/types/konnect:index%2FGatewayPluginAiProxyAdvancedOrderingBefore:GatewayPluginAiProxyAdvancedOrderingBefore"}},"type":"object","language":{"nodejs":{"requiredOutputs":["after","before"]}}},"konnect:index/GatewayPluginAiProxyAdvancedOrderingAfter:GatewayPluginAiProxyAdvancedOrderingAfter":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginAiProxyAdvancedOrderingBefore:GatewayPluginAiProxyAdvancedOrderingBefore":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginAiProxyAdvancedPartial:GatewayPluginAiProxyAdvancedPartial":{"properties":{"id":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"name":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"path":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id","name","path"]}}},"konnect:index/GatewayPluginAiProxyAdvancedRoute:GatewayPluginAiProxyAdvancedRoute":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginAiProxyAdvancedService:GatewayPluginAiProxyAdvancedService":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginAiProxyConfig:GatewayPluginAiProxyConfig":{"properties":{"auth":{"$ref":"#/types/konnect:index%2FGatewayPluginAiProxyConfigAuth:GatewayPluginAiProxyConfigAuth"},"genaiCategory":{"type":"string","description":"Generative AI category of the request. Default: \"text/generation\"; must be one of [\"audio/speech\", \"audio/transcription\", \"image/generation\", \"text/embeddings\", \"text/generation\", \"video/generation\"]\n"},"llmFormat":{"type":"string","description":"LLM input and output format and schema to use. Default: \"openai\"; must be one of [\"anthropic\", \"bedrock\", \"cohere\", \"gemini\", \"huggingface\", \"openai\"]\n"},"logging":{"$ref":"#/types/konnect:index%2FGatewayPluginAiProxyConfigLogging:GatewayPluginAiProxyConfigLogging"},"maxRequestBodySize":{"type":"number","description":"max allowed body size allowed to be introspected. 0 means unlimited, but the size of this body will still be limited by Nginx's client*max*body_size. Default: 1048576\n"},"model":{"$ref":"#/types/konnect:index%2FGatewayPluginAiProxyConfigModel:GatewayPluginAiProxyConfigModel"},"modelNameHeader":{"type":"boolean","description":"Display the model name selected in the X-Kong-LLM-Model response header. Default: true\n"},"responseStreaming":{"type":"string","description":"Whether to 'optionally allow', 'deny', or 'always' (force) the streaming of answers via server sent events. Default: \"allow\"; must be one of [\"allow\", \"always\", \"deny\"]\n"},"routeType":{"type":"string","description":"The model's operation implementation, for this provider. must be one of [\"audio/v1/audio/speech\", \"audio/v1/audio/transcriptions\", \"audio/v1/audio/translations\", \"image/v1/images/edits\", \"image/v1/images/generations\", \"llm/v1/assistants\", \"llm/v1/batches\", \"llm/v1/chat\", \"llm/v1/completions\", \"llm/v1/embeddings\", \"llm/v1/files\", \"llm/v1/responses\", \"preserve\", \"realtime/v1/realtime\", \"video/v1/videos/generations\"]\n"}},"type":"object","required":["model","routeType"],"language":{"nodejs":{"requiredOutputs":["auth","genaiCategory","llmFormat","logging","maxRequestBodySize","model","modelNameHeader","responseStreaming","routeType"]}}},"konnect:index/GatewayPluginAiProxyConfigAuth:GatewayPluginAiProxyConfigAuth":{"properties":{"allowOverride":{"type":"boolean","description":"If enabled, the authorization header or parameter can be overridden in the request by the value configured in the plugin. Default: false\n"},"awsAccessKeyId":{"type":"string","description":"Set this if you are using an AWS provider (Bedrock) and you are authenticating using static IAM User credentials. Setting this will override the AWS*ACCESS*KEY_ID environment variable for this plugin instance.\n"},"awsSecretAccessKey":{"type":"string","description":"Set this if you are using an AWS provider (Bedrock) and you are authenticating using static IAM User credentials. Setting this will override the AWS*SECRET*ACCESS_KEY environment variable for this plugin instance.\n"},"azureClientId":{"type":"string","description":"If azure*use*managed_identity is set to true, and you need to use a different user-assigned identity for this LLM instance, set the client ID.\n"},"azureClientSecret":{"type":"string","description":"If azure*use*managed_identity is set to true, and you need to use a different user-assigned identity for this LLM instance, set the client secret.\n"},"azureTenantId":{"type":"string","description":"If azure*use*managed_identity is set to true, and you need to use a different user-assigned identity for this LLM instance, set the tenant ID.\n"},"azureUseManagedIdentity":{"type":"boolean","description":"Set true to use the Azure Cloud Managed Identity (or user-assigned identity) to authenticate with Azure-provider models. Default: false\n"},"gcpServiceAccountJson":{"type":"string","description":"Set this field to the full JSON of the GCP service account to authenticate, if required. If null (and gcp*use*service_account is true), Kong will attempt to read from environment variable `GCP_SERVICE_ACCOUNT`.\n"},"gcpUseServiceAccount":{"type":"boolean","description":"Use service account auth for GCP-based providers and models. Default: false\n"},"headerName":{"type":"string","description":"If AI model requires authentication via Authorization or API key header, specify its name here.\n"},"headerValue":{"type":"string","description":"Specify the full auth header value for 'header_name', for example 'Bearer key' or just 'key'.\n"},"paramLocation":{"type":"string","description":"Specify whether the 'param*name' and 'param*value' options go in a query string, or the POST form/JSON body. must be one of [\"body\", \"query\"]\n"},"paramName":{"type":"string","description":"If AI model requires authentication via query parameter, specify its name here.\n"},"paramValue":{"type":"string","description":"Specify the full parameter value for 'param_name'.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["allowOverride","azureUseManagedIdentity","gcpUseServiceAccount","paramLocation"]}}},"konnect:index/GatewayPluginAiProxyConfigLogging:GatewayPluginAiProxyConfigLogging":{"properties":{"logPayloads":{"type":"boolean","description":"If enabled, will log the request and response body into the Kong log plugin(s) output.Furthermore if Opentelemetry instrumentation is enabled the traces will contain this data as well. Default: false\n"},"logStatistics":{"type":"boolean","description":"If enabled and supported by the driver, will add model usage and token metrics into the Kong log plugin(s) output. Default: false\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["logPayloads","logStatistics"]}}},"konnect:index/GatewayPluginAiProxyConfigModel:GatewayPluginAiProxyConfigModel":{"properties":{"name":{"type":"string","description":"Model name to execute.\n"},"options":{"$ref":"#/types/konnect:index%2FGatewayPluginAiProxyConfigModelOptions:GatewayPluginAiProxyConfigModelOptions","description":"Key/value settings for the model\n"},"provider":{"type":"string","description":"AI provider request format - Kong translates requests to and from the specified backend compatible formats. must be one of [\"anthropic\", \"azure\", \"bedrock\", \"cerebras\", \"cohere\", \"dashscope\", \"gemini\", \"huggingface\", \"llama2\", \"mistral\", \"openai\", \"xai\"]\n"}},"type":"object","required":["provider"],"language":{"nodejs":{"requiredOutputs":["options","provider"]}}},"konnect:index/GatewayPluginAiProxyConfigModelOptions:GatewayPluginAiProxyConfigModelOptions":{"properties":{"anthropicVersion":{"type":"string","description":"Defines the schema/API version, if using Anthropic provider.\n"},"azureApiVersion":{"type":"string","description":"'api-version' for Azure OpenAI instances. Default: \"2023-05-15\"\n"},"azureDeploymentId":{"type":"string","description":"Deployment ID for Azure OpenAI instances.\n"},"azureInstance":{"type":"string","description":"Instance name for Azure OpenAI hosted models.\n"},"bedrock":{"$ref":"#/types/konnect:index%2FGatewayPluginAiProxyConfigModelOptionsBedrock:GatewayPluginAiProxyConfigModelOptionsBedrock"},"cohere":{"$ref":"#/types/konnect:index%2FGatewayPluginAiProxyConfigModelOptionsCohere:GatewayPluginAiProxyConfigModelOptionsCohere"},"dashscope":{"$ref":"#/types/konnect:index%2FGatewayPluginAiProxyConfigModelOptionsDashscope:GatewayPluginAiProxyConfigModelOptionsDashscope"},"embeddingsDimensions":{"type":"number","description":"If using embeddings models, set the number of dimensions to generate.\n"},"gemini":{"$ref":"#/types/konnect:index%2FGatewayPluginAiProxyConfigModelOptionsGemini:GatewayPluginAiProxyConfigModelOptionsGemini"},"huggingface":{"$ref":"#/types/konnect:index%2FGatewayPluginAiProxyConfigModelOptionsHuggingface:GatewayPluginAiProxyConfigModelOptionsHuggingface"},"inputCost":{"type":"number","description":"Defines the cost per 1M tokens in your prompt.\n"},"llama2Format":{"type":"string","description":"If using llama2 provider, select the upstream message format. must be one of [\"ollama\", \"openai\", \"raw\"]\n"},"maxTokens":{"type":"number","description":"Defines the max_tokens, if using chat or completion models.\n"},"mistralFormat":{"type":"string","description":"If using mistral provider, select the upstream message format. must be one of [\"ollama\", \"openai\"]\n"},"outputCost":{"type":"number","description":"Defines the cost per 1M tokens in the output of the AI.\n"},"temperature":{"type":"number","description":"Defines the matching temperature, if using chat or completion models.\n"},"topK":{"type":"number","description":"Defines the top-k most likely tokens, if supported.\n"},"topP":{"type":"number","description":"Defines the top-p probability mass, if supported.\n"},"upstreamPath":{"type":"string","description":"Manually specify or override the AI operation path, used when e.g. using the 'preserve' route_type.\n"},"upstreamUrl":{"type":"string","description":"Manually specify or override the full URL to the AI operation endpoints, when calling (self-)hosted models, or for running via a private endpoint.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["azureApiVersion","bedrock","cohere","dashscope","gemini","huggingface","llama2Format","mistralFormat"]}}},"konnect:index/GatewayPluginAiProxyConfigModelOptionsBedrock:GatewayPluginAiProxyConfigModelOptionsBedrock":{"properties":{"awsAssumeRoleArn":{"type":"string","description":"If using AWS providers (Bedrock) you can assume a different role after authentication with the current IAM context is successful.\n"},"awsRegion":{"type":"string","description":"If using AWS providers (Bedrock) you can override the `AWS_REGION` environment variable by setting this option.\n"},"awsRoleSessionName":{"type":"string","description":"If using AWS providers (Bedrock), set the identifier of the assumed role session.\n"},"awsStsEndpointUrl":{"type":"string","description":"If using AWS providers (Bedrock), override the STS endpoint URL when assuming a different role.\n"},"embeddingsNormalize":{"type":"boolean","description":"If using AWS providers (Bedrock), set to true to normalize the embeddings. Default: false\n"},"performanceConfigLatency":{"type":"string","description":"Force the client's performance configuration 'latency' for all requests. Leave empty to let the consumer select the performance configuration.\n"},"videoOutputS3Uri":{"type":"string","description":"S3 URI (s3://bucket/prefix) where Bedrock will store generated video files. Required for video generation.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["embeddingsNormalize"]}}},"konnect:index/GatewayPluginAiProxyConfigModelOptionsCohere:GatewayPluginAiProxyConfigModelOptionsCohere":{"properties":{"embeddingInputType":{"type":"string","description":"The purpose of the input text to calculate embedding vectors. Default: \"classification\"; must be one of [\"classification\", \"clustering\", \"image\", \"search*document\", \"search*query\"]\n"},"waitForModel":{"type":"boolean","description":"Wait for the model if it is not ready\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["embeddingInputType"]}}},"konnect:index/GatewayPluginAiProxyConfigModelOptionsDashscope:GatewayPluginAiProxyConfigModelOptionsDashscope":{"properties":{"international":{"type":"boolean","description":"Two Dashscope endpoints are available, and the international endpoint will be used when this is set to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e.\nIt is recommended to set this to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e when using international version of dashscope.\nDefault: true\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["international"]}}},"konnect:index/GatewayPluginAiProxyConfigModelOptionsGemini:GatewayPluginAiProxyConfigModelOptionsGemini":{"properties":{"apiEndpoint":{"type":"string","description":"If running Gemini on Vertex, specify the regional API endpoint (hostname only).\n"},"endpointId":{"type":"string","description":"If running Gemini on Vertex Model Garden, specify the endpoint ID.\n"},"locationId":{"type":"string","description":"If running Gemini on Vertex, specify the location ID.\n"},"projectId":{"type":"string","description":"If running Gemini on Vertex, specify the project ID.\n"}},"type":"object"},"konnect:index/GatewayPluginAiProxyConfigModelOptionsHuggingface:GatewayPluginAiProxyConfigModelOptionsHuggingface":{"properties":{"useCache":{"type":"boolean","description":"Use the cache layer on the inference API\n"},"waitForModel":{"type":"boolean","description":"Wait for the model if it is not ready\n"}},"type":"object"},"konnect:index/GatewayPluginAiProxyConsumer:GatewayPluginAiProxyConsumer":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginAiProxyConsumerGroup:GatewayPluginAiProxyConsumerGroup":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginAiProxyOrdering:GatewayPluginAiProxyOrdering":{"properties":{"after":{"$ref":"#/types/konnect:index%2FGatewayPluginAiProxyOrderingAfter:GatewayPluginAiProxyOrderingAfter"},"before":{"$ref":"#/types/konnect:index%2FGatewayPluginAiProxyOrderingBefore:GatewayPluginAiProxyOrderingBefore"}},"type":"object","language":{"nodejs":{"requiredOutputs":["after","before"]}}},"konnect:index/GatewayPluginAiProxyOrderingAfter:GatewayPluginAiProxyOrderingAfter":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginAiProxyOrderingBefore:GatewayPluginAiProxyOrderingBefore":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginAiProxyPartial:GatewayPluginAiProxyPartial":{"properties":{"id":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"name":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"path":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id","name","path"]}}},"konnect:index/GatewayPluginAiProxyRoute:GatewayPluginAiProxyRoute":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginAiProxyService:GatewayPluginAiProxyService":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginAiRagInjectorConfig:GatewayPluginAiRagInjectorConfig":{"properties":{"collectionAclConfig":{"type":"object","additionalProperties":{"$ref":"#/types/konnect:index%2FGatewayPluginAiRagInjectorConfigCollectionAclConfig:GatewayPluginAiRagInjectorConfigCollectionAclConfig"},"description":"Per-collection ACL overrides\n"},"consumerIdentifier":{"type":"string","description":"The type of consumer identifier used for ACL checks. Default: \"consumer*group\"; must be one of [\"consumer*group\", \"consumer*id\", \"custom*id\", \"username\"]\n"},"embeddings":{"$ref":"#/types/konnect:index%2FGatewayPluginAiRagInjectorConfigEmbeddings:GatewayPluginAiRagInjectorConfigEmbeddings"},"fetchChunksCount":{"type":"number","description":"The maximum number of chunks to fetch from vectordb. Default: 5\n"},"filterMode":{"type":"string","description":"Defines how the plugin behaves when a filter is invalid. Set to \u003cspan pulumi-lang-nodejs=\"`compatible`\" pulumi-lang-dotnet=\"`Compatible`\" pulumi-lang-go=\"`compatible`\" pulumi-lang-python=\"`compatible`\" pulumi-lang-yaml=\"`compatible`\" pulumi-lang-java=\"`compatible`\"\u003e`compatible`\u003c/span\u003e to ignore invalid filters, or \u003cspan pulumi-lang-nodejs=\"`strict`\" pulumi-lang-dotnet=\"`Strict`\" pulumi-lang-go=\"`strict`\" pulumi-lang-python=\"`strict`\" pulumi-lang-yaml=\"`strict`\" pulumi-lang-java=\"`strict`\"\u003e`strict`\u003c/span\u003e to raise an error. This can be overridden per request. Default: \"compatible\"; must be one of [\"compatible\", \"strict\"]\n"},"globalAclConfig":{"$ref":"#/types/konnect:index%2FGatewayPluginAiRagInjectorConfigGlobalAclConfig:GatewayPluginAiRagInjectorConfigGlobalAclConfig","description":"Global ACL configuration for all RAG operations\n"},"injectAsRole":{"type":"string","description":"Default: \"user\"; must be one of [\"assistant\", \"system\", \"user\"]\n"},"injectTemplate":{"type":"string","description":"Default: \"\\n\\n\\n\\n\\n\"\n"},"maxFilterClauses":{"type":"number","description":"Maximum number of filter clauses allowed. Default: 100\n"},"stopOnFailure":{"type":"boolean","description":"Halt the LLM request process in case of a vectordb or embeddings service failure. Default: false\n"},"stopOnFilterError":{"type":"boolean","description":"Default behavior when filter parsing fails (can be overridden per-request). Default: false\n"},"vectordb":{"$ref":"#/types/konnect:index%2FGatewayPluginAiRagInjectorConfigVectordb:GatewayPluginAiRagInjectorConfigVectordb"},"vectordbNamespace":{"type":"string","description":"The namespace of the vectordb to use for embeddings lookup. Default: \"kong*rag*injector\"\n"}},"type":"object","required":["embeddings","vectordb"],"language":{"nodejs":{"requiredOutputs":["consumerIdentifier","embeddings","fetchChunksCount","filterMode","globalAclConfig","injectAsRole","injectTemplate","maxFilterClauses","stopOnFailure","stopOnFilterError","vectordb","vectordbNamespace"]}}},"konnect:index/GatewayPluginAiRagInjectorConfigCollectionAclConfig:GatewayPluginAiRagInjectorConfigCollectionAclConfig":{"properties":{"allows":{"type":"array","items":{"type":"string"},"description":"Consumer identifiers allowed access to this collection. Default: []\n"},"denies":{"type":"array","items":{"type":"string"},"description":"Consumer identifiers denied access to this collection. Default: []\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["allows","denies"]}}},"konnect:index/GatewayPluginAiRagInjectorConfigEmbeddings:GatewayPluginAiRagInjectorConfigEmbeddings":{"properties":{"auth":{"$ref":"#/types/konnect:index%2FGatewayPluginAiRagInjectorConfigEmbeddingsAuth:GatewayPluginAiRagInjectorConfigEmbeddingsAuth"},"model":{"$ref":"#/types/konnect:index%2FGatewayPluginAiRagInjectorConfigEmbeddingsModel:GatewayPluginAiRagInjectorConfigEmbeddingsModel"}},"type":"object","required":["model"],"language":{"nodejs":{"requiredOutputs":["auth","model"]}}},"konnect:index/GatewayPluginAiRagInjectorConfigEmbeddingsAuth:GatewayPluginAiRagInjectorConfigEmbeddingsAuth":{"properties":{"allowOverride":{"type":"boolean","description":"If enabled, the authorization header or parameter can be overridden in the request by the value configured in the plugin. Default: false\n"},"awsAccessKeyId":{"type":"string","description":"Set this if you are using an AWS provider (Bedrock) and you are authenticating using static IAM User credentials. Setting this will override the AWS*ACCESS*KEY_ID environment variable for this plugin instance.\n"},"awsSecretAccessKey":{"type":"string","description":"Set this if you are using an AWS provider (Bedrock) and you are authenticating using static IAM User credentials. Setting this will override the AWS*SECRET*ACCESS_KEY environment variable for this plugin instance.\n"},"azureClientId":{"type":"string","description":"If azure*use*managed_identity is set to true, and you need to use a different user-assigned identity for this LLM instance, set the client ID.\n"},"azureClientSecret":{"type":"string","description":"If azure*use*managed_identity is set to true, and you need to use a different user-assigned identity for this LLM instance, set the client secret.\n"},"azureTenantId":{"type":"string","description":"If azure*use*managed_identity is set to true, and you need to use a different user-assigned identity for this LLM instance, set the tenant ID.\n"},"azureUseManagedIdentity":{"type":"boolean","description":"Set true to use the Azure Cloud Managed Identity (or user-assigned identity) to authenticate with Azure-provider models. Default: false\n"},"gcpServiceAccountJson":{"type":"string","description":"Set this field to the full JSON of the GCP service account to authenticate, if required. If null (and gcp*use*service_account is true), Kong will attempt to read from environment variable `GCP_SERVICE_ACCOUNT`.\n"},"gcpUseServiceAccount":{"type":"boolean","description":"Use service account auth for GCP-based providers and models. Default: false\n"},"headerName":{"type":"string","description":"If AI model requires authentication via Authorization or API key header, specify its name here.\n"},"headerValue":{"type":"string","description":"Specify the full auth header value for 'header_name', for example 'Bearer key' or just 'key'.\n"},"paramLocation":{"type":"string","description":"Specify whether the 'param*name' and 'param*value' options go in a query string, or the POST form/JSON body. must be one of [\"body\", \"query\"]\n"},"paramName":{"type":"string","description":"If AI model requires authentication via query parameter, specify its name here.\n"},"paramValue":{"type":"string","description":"Specify the full parameter value for 'param_name'.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["allowOverride","azureUseManagedIdentity","gcpUseServiceAccount","paramLocation"]}}},"konnect:index/GatewayPluginAiRagInjectorConfigEmbeddingsModel:GatewayPluginAiRagInjectorConfigEmbeddingsModel":{"properties":{"name":{"type":"string","description":"Model name to execute.\n"},"options":{"$ref":"#/types/konnect:index%2FGatewayPluginAiRagInjectorConfigEmbeddingsModelOptions:GatewayPluginAiRagInjectorConfigEmbeddingsModelOptions","description":"Key/value settings for the model\n"},"provider":{"type":"string","description":"AI provider format to use for embeddings API. must be one of [\"azure\", \"bedrock\", \"gemini\", \"huggingface\", \"mistral\", \"openai\"]\n"}},"type":"object","required":["name","provider"],"language":{"nodejs":{"requiredOutputs":["name","options","provider"]}}},"konnect:index/GatewayPluginAiRagInjectorConfigEmbeddingsModelOptions:GatewayPluginAiRagInjectorConfigEmbeddingsModelOptions":{"properties":{"azure":{"$ref":"#/types/konnect:index%2FGatewayPluginAiRagInjectorConfigEmbeddingsModelOptionsAzure:GatewayPluginAiRagInjectorConfigEmbeddingsModelOptionsAzure"},"bedrock":{"$ref":"#/types/konnect:index%2FGatewayPluginAiRagInjectorConfigEmbeddingsModelOptionsBedrock:GatewayPluginAiRagInjectorConfigEmbeddingsModelOptionsBedrock"},"gemini":{"$ref":"#/types/konnect:index%2FGatewayPluginAiRagInjectorConfigEmbeddingsModelOptionsGemini:GatewayPluginAiRagInjectorConfigEmbeddingsModelOptionsGemini"},"huggingface":{"$ref":"#/types/konnect:index%2FGatewayPluginAiRagInjectorConfigEmbeddingsModelOptionsHuggingface:GatewayPluginAiRagInjectorConfigEmbeddingsModelOptionsHuggingface"},"upstreamUrl":{"type":"string","description":"upstream url for the embeddings\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["azure","bedrock","gemini","huggingface"]}}},"konnect:index/GatewayPluginAiRagInjectorConfigEmbeddingsModelOptionsAzure:GatewayPluginAiRagInjectorConfigEmbeddingsModelOptionsAzure":{"properties":{"apiVersion":{"type":"string","description":"'api-version' for Azure OpenAI instances. Default: \"2023-05-15\"\n"},"deploymentId":{"type":"string","description":"Deployment ID for Azure OpenAI instances.\n"},"instance":{"type":"string","description":"Instance name for Azure OpenAI hosted models.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["apiVersion"]}}},"konnect:index/GatewayPluginAiRagInjectorConfigEmbeddingsModelOptionsBedrock:GatewayPluginAiRagInjectorConfigEmbeddingsModelOptionsBedrock":{"properties":{"awsAssumeRoleArn":{"type":"string","description":"If using AWS providers (Bedrock) you can assume a different role after authentication with the current IAM context is successful.\n"},"awsRegion":{"type":"string","description":"If using AWS providers (Bedrock) you can override the `AWS_REGION` environment variable by setting this option.\n"},"awsRoleSessionName":{"type":"string","description":"If using AWS providers (Bedrock), set the identifier of the assumed role session.\n"},"awsStsEndpointUrl":{"type":"string","description":"If using AWS providers (Bedrock), override the STS endpoint URL when assuming a different role.\n"},"embeddingsNormalize":{"type":"boolean","description":"If using AWS providers (Bedrock), set to true to normalize the embeddings. Default: false\n"},"performanceConfigLatency":{"type":"string","description":"Force the client's performance configuration 'latency' for all requests. Leave empty to let the consumer select the performance configuration.\n"},"videoOutputS3Uri":{"type":"string","description":"S3 URI (s3://bucket/prefix) where Bedrock will store generated video files. Required for video generation.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["embeddingsNormalize"]}}},"konnect:index/GatewayPluginAiRagInjectorConfigEmbeddingsModelOptionsGemini:GatewayPluginAiRagInjectorConfigEmbeddingsModelOptionsGemini":{"properties":{"apiEndpoint":{"type":"string","description":"If running Gemini on Vertex, specify the regional API endpoint (hostname only).\n"},"locationId":{"type":"string","description":"If running Gemini on Vertex, specify the location ID.\n"},"projectId":{"type":"string","description":"If running Gemini on Vertex, specify the project ID.\n"}},"type":"object"},"konnect:index/GatewayPluginAiRagInjectorConfigEmbeddingsModelOptionsHuggingface:GatewayPluginAiRagInjectorConfigEmbeddingsModelOptionsHuggingface":{"properties":{"useCache":{"type":"boolean","description":"Use the cache layer on the inference API\n"},"waitForModel":{"type":"boolean","description":"Wait for the model if it is not ready\n"}},"type":"object"},"konnect:index/GatewayPluginAiRagInjectorConfigGlobalAclConfig:GatewayPluginAiRagInjectorConfigGlobalAclConfig":{"properties":{"allows":{"type":"array","items":{"type":"string"},"description":"Consumer identifiers allowed access (groups, IDs, usernames, or custom IDs based on\u003cspan pulumi-lang-nodejs=\" consumerIdentifier \" pulumi-lang-dotnet=\" ConsumerIdentifier \" pulumi-lang-go=\" consumerIdentifier \" pulumi-lang-python=\" consumer_identifier \" pulumi-lang-yaml=\" consumerIdentifier \" pulumi-lang-java=\" consumerIdentifier \"\u003e consumer_identifier \u003c/span\u003esetting). Default: []\n"},"denies":{"type":"array","items":{"type":"string"},"description":"Consumer identifiers denied access (groups, IDs, usernames, or custom IDs based on\u003cspan pulumi-lang-nodejs=\" consumerIdentifier \" pulumi-lang-dotnet=\" ConsumerIdentifier \" pulumi-lang-go=\" consumerIdentifier \" pulumi-lang-python=\" consumer_identifier \" pulumi-lang-yaml=\" consumerIdentifier \" pulumi-lang-java=\" consumerIdentifier \"\u003e consumer_identifier \u003c/span\u003esetting). Default: []\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["allows","denies"]}}},"konnect:index/GatewayPluginAiRagInjectorConfigVectordb:GatewayPluginAiRagInjectorConfigVectordb":{"properties":{"dimensions":{"type":"number","description":"the desired dimensionality for the vectors\n"},"distanceMetric":{"type":"string","description":"the distance metric to use for vector searches. must be one of [\"cosine\", \"euclidean\"]\n"},"pgvector":{"$ref":"#/types/konnect:index%2FGatewayPluginAiRagInjectorConfigVectordbPgvector:GatewayPluginAiRagInjectorConfigVectordbPgvector"},"redis":{"$ref":"#/types/konnect:index%2FGatewayPluginAiRagInjectorConfigVectordbRedis:GatewayPluginAiRagInjectorConfigVectordbRedis"},"strategy":{"type":"string","description":"which vector database driver to use. must be one of [\"pgvector\", \"redis\"]\n"},"threshold":{"type":"number","description":"the default similarity threshold for accepting semantic search results (float)\n"}},"type":"object","required":["dimensions","distanceMetric","strategy"],"language":{"nodejs":{"requiredOutputs":["dimensions","distanceMetric","pgvector","redis","strategy"]}}},"konnect:index/GatewayPluginAiRagInjectorConfigVectordbPgvector:GatewayPluginAiRagInjectorConfigVectordbPgvector":{"properties":{"database":{"type":"string","description":"the database of the pgvector database. Default: \"kong-pgvector\"\n"},"host":{"type":"string","description":"the host of the pgvector database. Default: \"127.0.0.1\"\n"},"password":{"type":"string","description":"the password of the pgvector database\n"},"port":{"type":"number","description":"the port of the pgvector database. Default: 5432\n"},"ssl":{"type":"boolean","description":"whether to use ssl for the pgvector database. Default: false\n"},"sslCert":{"type":"string","description":"the path of ssl cert to use for the pgvector database\n"},"sslCertKey":{"type":"string","description":"the path of ssl cert key to use for the pgvector database\n"},"sslRequired":{"type":"boolean","description":"whether ssl is required for the pgvector database. Default: false\n"},"sslVerify":{"type":"boolean","description":"whether to verify ssl for the pgvector database. Default: false\n"},"sslVersion":{"type":"string","description":"the ssl version to use for the pgvector database. Default: \"tlsv1*2\"; must be one of [\"any\", \"tlsv1*2\", \u003cspan pulumi-lang-nodejs=\"\"tlsv13\"\" pulumi-lang-dotnet=\"\"Tlsv13\"\" pulumi-lang-go=\"\"tlsv13\"\" pulumi-lang-python=\"\"tlsv1_3\"\" pulumi-lang-yaml=\"\"tlsv13\"\" pulumi-lang-java=\"\"tlsv13\"\"\u003e\"tlsv1_3\"\u003c/span\u003e]\n"},"timeout":{"type":"number","description":"the timeout of the pgvector database. Default: 5000\n"},"user":{"type":"string","description":"the user of the pgvector database. Default: \"postgres\"\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["database","host","port","ssl","sslRequired","sslVerify","sslVersion","timeout","user"]}}},"konnect:index/GatewayPluginAiRagInjectorConfigVectordbRedis:GatewayPluginAiRagInjectorConfigVectordbRedis":{"properties":{"cloudAuthentication":{"$ref":"#/types/konnect:index%2FGatewayPluginAiRagInjectorConfigVectordbRedisCloudAuthentication:GatewayPluginAiRagInjectorConfigVectordbRedisCloudAuthentication","description":"Cloud auth related configs for connecting to a Cloud Provider's Redis instance.\n"},"clusterMaxRedirections":{"type":"number","description":"Maximum retry attempts for redirection. Default: 5\n"},"clusterNodes":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginAiRagInjectorConfigVectordbRedisClusterNode:GatewayPluginAiRagInjectorConfigVectordbRedisClusterNode"},"description":"Cluster addresses to use for Redis connections when the \u003cspan pulumi-lang-nodejs=\"`redis`\" pulumi-lang-dotnet=\"`Redis`\" pulumi-lang-go=\"`redis`\" pulumi-lang-python=\"`redis`\" pulumi-lang-yaml=\"`redis`\" pulumi-lang-java=\"`redis`\"\u003e`redis`\u003c/span\u003e strategy is defined. Defining this field implies using a Redis Cluster. The minimum length of the array is 1 element.\n"},"connectTimeout":{"type":"number","description":"An integer representing a timeout in milliseconds. Must be between 0 and 2^31-2. Default: 2000\n"},"connectionIsProxied":{"type":"boolean","description":"If the connection to Redis is proxied (e.g. Envoy), set it \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e. Set the \u003cspan pulumi-lang-nodejs=\"`host`\" pulumi-lang-dotnet=\"`Host`\" pulumi-lang-go=\"`host`\" pulumi-lang-python=\"`host`\" pulumi-lang-yaml=\"`host`\" pulumi-lang-java=\"`host`\"\u003e`host`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`port`\" pulumi-lang-dotnet=\"`Port`\" pulumi-lang-go=\"`port`\" pulumi-lang-python=\"`port`\" pulumi-lang-yaml=\"`port`\" pulumi-lang-java=\"`port`\"\u003e`port`\u003c/span\u003e to point to the proxy address. Default: false\n"},"database":{"type":"number","description":"Database to use for the Redis connection when using the \u003cspan pulumi-lang-nodejs=\"`redis`\" pulumi-lang-dotnet=\"`Redis`\" pulumi-lang-go=\"`redis`\" pulumi-lang-python=\"`redis`\" pulumi-lang-yaml=\"`redis`\" pulumi-lang-java=\"`redis`\"\u003e`redis`\u003c/span\u003e strategy. Default: 0\n"},"host":{"type":"string","description":"A string representing a host name, such as example.com. Default: \"127.0.0.1\"\n"},"keepaliveBacklog":{"type":"number","description":"Limits the total number of opened connections for a pool. If the connection pool is full, connection queues above the limit go into the backlog queue. If the backlog queue is full, subsequent connect operations fail and return \u003cspan pulumi-lang-nodejs=\"`nil`\" pulumi-lang-dotnet=\"`Nil`\" pulumi-lang-go=\"`nil`\" pulumi-lang-python=\"`nil`\" pulumi-lang-yaml=\"`nil`\" pulumi-lang-java=\"`nil`\"\u003e`nil`\u003c/span\u003e. Queued operations (subject to set timeouts) resume once the number of connections in the pool is less than \u003cspan pulumi-lang-nodejs=\"`keepalivePoolSize`\" pulumi-lang-dotnet=\"`KeepalivePoolSize`\" pulumi-lang-go=\"`keepalivePoolSize`\" pulumi-lang-python=\"`keepalive_pool_size`\" pulumi-lang-yaml=\"`keepalivePoolSize`\" pulumi-lang-java=\"`keepalivePoolSize`\"\u003e`keepalive_pool_size`\u003c/span\u003e. If latency is high or throughput is low, try increasing this value. Empirically, this value is larger than \u003cspan pulumi-lang-nodejs=\"`keepalivePoolSize`\" pulumi-lang-dotnet=\"`KeepalivePoolSize`\" pulumi-lang-go=\"`keepalivePoolSize`\" pulumi-lang-python=\"`keepalive_pool_size`\" pulumi-lang-yaml=\"`keepalivePoolSize`\" pulumi-lang-java=\"`keepalivePoolSize`\"\u003e`keepalive_pool_size`\u003c/span\u003e.\n"},"keepalivePoolSize":{"type":"number","description":"The size limit for every cosocket connection pool associated with every remote server, per worker process. If neither \u003cspan pulumi-lang-nodejs=\"`keepalivePoolSize`\" pulumi-lang-dotnet=\"`KeepalivePoolSize`\" pulumi-lang-go=\"`keepalivePoolSize`\" pulumi-lang-python=\"`keepalive_pool_size`\" pulumi-lang-yaml=\"`keepalivePoolSize`\" pulumi-lang-java=\"`keepalivePoolSize`\"\u003e`keepalive_pool_size`\u003c/span\u003e nor \u003cspan pulumi-lang-nodejs=\"`keepaliveBacklog`\" pulumi-lang-dotnet=\"`KeepaliveBacklog`\" pulumi-lang-go=\"`keepaliveBacklog`\" pulumi-lang-python=\"`keepalive_backlog`\" pulumi-lang-yaml=\"`keepaliveBacklog`\" pulumi-lang-java=\"`keepaliveBacklog`\"\u003e`keepalive_backlog`\u003c/span\u003e is specified, no pool is created. If \u003cspan pulumi-lang-nodejs=\"`keepalivePoolSize`\" pulumi-lang-dotnet=\"`KeepalivePoolSize`\" pulumi-lang-go=\"`keepalivePoolSize`\" pulumi-lang-python=\"`keepalive_pool_size`\" pulumi-lang-yaml=\"`keepalivePoolSize`\" pulumi-lang-java=\"`keepalivePoolSize`\"\u003e`keepalive_pool_size`\u003c/span\u003e isn't specified but \u003cspan pulumi-lang-nodejs=\"`keepaliveBacklog`\" pulumi-lang-dotnet=\"`KeepaliveBacklog`\" pulumi-lang-go=\"`keepaliveBacklog`\" pulumi-lang-python=\"`keepalive_backlog`\" pulumi-lang-yaml=\"`keepaliveBacklog`\" pulumi-lang-java=\"`keepaliveBacklog`\"\u003e`keepalive_backlog`\u003c/span\u003e is specified, then the pool uses the default value. Try to increase (e.g. 512) this value if latency is high or throughput is low. Default: 256\n"},"password":{"type":"string","description":"Password to use for Redis connections. If undefined, no AUTH commands are sent to Redis.\n"},"port":{"type":"number","description":"An integer representing a port number between 0 and 65535, inclusive. Default: 6379\n"},"readTimeout":{"type":"number","description":"An integer representing a timeout in milliseconds. Must be between 0 and 2^31-2. Default: 2000\n"},"sendTimeout":{"type":"number","description":"An integer representing a timeout in milliseconds. Must be between 0 and 2^31-2. Default: 2000\n"},"sentinelMaster":{"type":"string","description":"Sentinel master to use for Redis connections. Defining this value implies using Redis Sentinel.\n"},"sentinelNodes":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginAiRagInjectorConfigVectordbRedisSentinelNode:GatewayPluginAiRagInjectorConfigVectordbRedisSentinelNode"},"description":"Sentinel node addresses to use for Redis connections when the \u003cspan pulumi-lang-nodejs=\"`redis`\" pulumi-lang-dotnet=\"`Redis`\" pulumi-lang-go=\"`redis`\" pulumi-lang-python=\"`redis`\" pulumi-lang-yaml=\"`redis`\" pulumi-lang-java=\"`redis`\"\u003e`redis`\u003c/span\u003e strategy is defined. Defining this field implies using a Redis Sentinel. The minimum length of the array is 1 element.\n"},"sentinelPassword":{"type":"string","description":"Sentinel password to authenticate with a Redis Sentinel instance. If undefined, no AUTH commands are sent to Redis Sentinels.\n"},"sentinelRole":{"type":"string","description":"Sentinel role to use for Redis connections when the \u003cspan pulumi-lang-nodejs=\"`redis`\" pulumi-lang-dotnet=\"`Redis`\" pulumi-lang-go=\"`redis`\" pulumi-lang-python=\"`redis`\" pulumi-lang-yaml=\"`redis`\" pulumi-lang-java=\"`redis`\"\u003e`redis`\u003c/span\u003e strategy is defined. Defining this value implies using Redis Sentinel. must be one of [\"any\", \"master\", \"slave\"]\n"},"sentinelUsername":{"type":"string","description":"Sentinel username to authenticate with a Redis Sentinel instance. If undefined, ACL authentication won't be performed. This requires Redis v6.2.0+.\n"},"serverName":{"type":"string","description":"A string representing an SNI (server name indication) value for TLS.\n"},"ssl":{"type":"boolean","description":"If set to true, uses SSL to connect to Redis. Default: false\n"},"sslVerify":{"type":"boolean","description":"If set to true, verifies the validity of the server SSL certificate. If setting this parameter, also configure \u003cspan pulumi-lang-nodejs=\"`luaSslTrustedCertificate`\" pulumi-lang-dotnet=\"`LuaSslTrustedCertificate`\" pulumi-lang-go=\"`luaSslTrustedCertificate`\" pulumi-lang-python=\"`lua_ssl_trusted_certificate`\" pulumi-lang-yaml=\"`luaSslTrustedCertificate`\" pulumi-lang-java=\"`luaSslTrustedCertificate`\"\u003e`lua_ssl_trusted_certificate`\u003c/span\u003e in `kong.conf` to specify the CA (or server) certificate used by your Redis server. You may also need to configure \u003cspan pulumi-lang-nodejs=\"`luaSslVerifyDepth`\" pulumi-lang-dotnet=\"`LuaSslVerifyDepth`\" pulumi-lang-go=\"`luaSslVerifyDepth`\" pulumi-lang-python=\"`lua_ssl_verify_depth`\" pulumi-lang-yaml=\"`luaSslVerifyDepth`\" pulumi-lang-java=\"`luaSslVerifyDepth`\"\u003e`lua_ssl_verify_depth`\u003c/span\u003e accordingly. Default: false\n"},"username":{"type":"string","description":"Username to use for Redis connections. If undefined, ACL authentication won't be performed. This requires Redis v6.0.0+. To be compatible with Redis v5.x.y, you can set it to \u003cspan pulumi-lang-nodejs=\"`default`\" pulumi-lang-dotnet=\"`Default`\" pulumi-lang-go=\"`default`\" pulumi-lang-python=\"`default`\" pulumi-lang-yaml=\"`default`\" pulumi-lang-java=\"`default`\"\u003e`default`\u003c/span\u003e.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["cloudAuthentication","clusterMaxRedirections","connectTimeout","connectionIsProxied","database","host","keepalivePoolSize","port","readTimeout","sendTimeout","sentinelRole","ssl","sslVerify"]}}},"konnect:index/GatewayPluginAiRagInjectorConfigVectordbRedisCloudAuthentication:GatewayPluginAiRagInjectorConfigVectordbRedisCloudAuthentication":{"properties":{"authProvider":{"type":"string","description":"Auth providers to be used to authenticate to a Cloud Provider's Redis instance. must be one of [\"aws\", \"azure\", \"gcp\"]\n"},"awsAccessKeyId":{"type":"string","description":"AWS Access Key ID to be used for authentication when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e.\n"},"awsAssumeRoleArn":{"type":"string","description":"The ARN of the IAM role to assume for generating ElastiCache IAM authentication tokens.\n"},"awsCacheName":{"type":"string","description":"The name of the AWS Elasticache cluster when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e.\n"},"awsIsServerless":{"type":"boolean","description":"This flag specifies whether the cluster is serverless when\u003cspan pulumi-lang-nodejs=\" authProvider \" pulumi-lang-dotnet=\" AuthProvider \" pulumi-lang-go=\" authProvider \" pulumi-lang-python=\" auth_provider \" pulumi-lang-yaml=\" authProvider \" pulumi-lang-java=\" authProvider \"\u003e auth_provider \u003c/span\u003eis set to \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e. Default: true\n"},"awsRegion":{"type":"string","description":"The region of the AWS ElastiCache cluster when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e.\n"},"awsRoleSessionName":{"type":"string","description":"The session name for the temporary credentials when assuming the IAM role.\n"},"awsSecretAccessKey":{"type":"string","description":"AWS Secret Access Key to be used for authentication when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e.\n"},"azureClientId":{"type":"string","description":"Azure Client ID to be used for authentication when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`azure`\" pulumi-lang-dotnet=\"`Azure`\" pulumi-lang-go=\"`azure`\" pulumi-lang-python=\"`azure`\" pulumi-lang-yaml=\"`azure`\" pulumi-lang-java=\"`azure`\"\u003e`azure`\u003c/span\u003e.\n"},"azureClientSecret":{"type":"string","description":"Azure Client Secret to be used for authentication when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`azure`\" pulumi-lang-dotnet=\"`Azure`\" pulumi-lang-go=\"`azure`\" pulumi-lang-python=\"`azure`\" pulumi-lang-yaml=\"`azure`\" pulumi-lang-java=\"`azure`\"\u003e`azure`\u003c/span\u003e.\n"},"azureTenantId":{"type":"string","description":"Azure Tenant ID to be used for authentication when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`azure`\" pulumi-lang-dotnet=\"`Azure`\" pulumi-lang-go=\"`azure`\" pulumi-lang-python=\"`azure`\" pulumi-lang-yaml=\"`azure`\" pulumi-lang-java=\"`azure`\"\u003e`azure`\u003c/span\u003e.\n"},"gcpServiceAccountJson":{"type":"string","description":"GCP Service Account JSON to be used for authentication when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`gcp`\" pulumi-lang-dotnet=\"`Gcp`\" pulumi-lang-go=\"`gcp`\" pulumi-lang-python=\"`gcp`\" pulumi-lang-yaml=\"`gcp`\" pulumi-lang-java=\"`gcp`\"\u003e`gcp`\u003c/span\u003e.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["authProvider","awsIsServerless"]}}},"konnect:index/GatewayPluginAiRagInjectorConfigVectordbRedisClusterNode:GatewayPluginAiRagInjectorConfigVectordbRedisClusterNode":{"properties":{"ip":{"type":"string","description":"A string representing a host name, such as example.com. Default: \"127.0.0.1\"\n"},"port":{"type":"number","description":"An integer representing a port number between 0 and 65535, inclusive. Default: 6379\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["ip","port"]}}},"konnect:index/GatewayPluginAiRagInjectorConfigVectordbRedisSentinelNode:GatewayPluginAiRagInjectorConfigVectordbRedisSentinelNode":{"properties":{"host":{"type":"string","description":"A string representing a host name, such as example.com. Default: \"127.0.0.1\"\n"},"port":{"type":"number","description":"An integer representing a port number between 0 and 65535, inclusive. Default: 6379\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["host","port"]}}},"konnect:index/GatewayPluginAiRagInjectorConsumer:GatewayPluginAiRagInjectorConsumer":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginAiRagInjectorConsumerGroup:GatewayPluginAiRagInjectorConsumerGroup":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginAiRagInjectorOrdering:GatewayPluginAiRagInjectorOrdering":{"properties":{"after":{"$ref":"#/types/konnect:index%2FGatewayPluginAiRagInjectorOrderingAfter:GatewayPluginAiRagInjectorOrderingAfter"},"before":{"$ref":"#/types/konnect:index%2FGatewayPluginAiRagInjectorOrderingBefore:GatewayPluginAiRagInjectorOrderingBefore"}},"type":"object","language":{"nodejs":{"requiredOutputs":["after","before"]}}},"konnect:index/GatewayPluginAiRagInjectorOrderingAfter:GatewayPluginAiRagInjectorOrderingAfter":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginAiRagInjectorOrderingBefore:GatewayPluginAiRagInjectorOrderingBefore":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginAiRagInjectorPartial:GatewayPluginAiRagInjectorPartial":{"properties":{"id":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"name":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"path":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id","name","path"]}}},"konnect:index/GatewayPluginAiRagInjectorRoute:GatewayPluginAiRagInjectorRoute":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginAiRagInjectorService:GatewayPluginAiRagInjectorService":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginAiRateLimitingAdvancedConfig:GatewayPluginAiRateLimitingAdvancedConfig":{"properties":{"customCostCountFunction":{"type":"string","description":"If defined, it uses custom function to generate cost for the inference request\n"},"decreaseByFractionsInRedis":{"type":"boolean","description":"By default, Kong decreates the AI rate limiting counters by whole number in Redis. This setting allows to decrease the counters by float number. Default: false\n"},"dictionaryName":{"type":"string","description":"The shared dictionary where counters are stored. When the plugin is configured to synchronize counter data externally (that is `config.strategy` is \u003cspan pulumi-lang-nodejs=\"`cluster`\" pulumi-lang-dotnet=\"`Cluster`\" pulumi-lang-go=\"`cluster`\" pulumi-lang-python=\"`cluster`\" pulumi-lang-yaml=\"`cluster`\" pulumi-lang-java=\"`cluster`\"\u003e`cluster`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`redis`\" pulumi-lang-dotnet=\"`Redis`\" pulumi-lang-go=\"`redis`\" pulumi-lang-python=\"`redis`\" pulumi-lang-yaml=\"`redis`\" pulumi-lang-java=\"`redis`\"\u003e`redis`\u003c/span\u003e and `config.sync_rate` isn't `-1`), this dictionary serves as a buffer to populate counters in the data store on each synchronization cycle. Default: \"kong*rate*limiting_counters\"\n"},"disablePenalty":{"type":"boolean","description":"If set to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, this doesn't count denied requests (status = \u003cspan pulumi-lang-nodejs=\"`429`\" pulumi-lang-dotnet=\"`429`\" pulumi-lang-go=\"`429`\" pulumi-lang-python=\"`429`\" pulumi-lang-yaml=\"`429`\" pulumi-lang-java=\"`429`\"\u003e`429`\u003c/span\u003e). If set to \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e, all requests, including denied ones, are counted. This parameter only affects the \u003cspan pulumi-lang-nodejs=\"`sliding`\" pulumi-lang-dotnet=\"`Sliding`\" pulumi-lang-go=\"`sliding`\" pulumi-lang-python=\"`sliding`\" pulumi-lang-yaml=\"`sliding`\" pulumi-lang-java=\"`sliding`\"\u003e`sliding`\u003c/span\u003e\u003cspan pulumi-lang-nodejs=\" windowType \" pulumi-lang-dotnet=\" WindowType \" pulumi-lang-go=\" windowType \" pulumi-lang-python=\" window_type \" pulumi-lang-yaml=\" windowType \" pulumi-lang-java=\" windowType \"\u003e window_type \u003c/span\u003eand the request prompt provider. Default: false\n"},"errorCode":{"type":"number","description":"Set a custom error code to return when the rate limit is exceeded. Default: 429\n"},"errorHideProviders":{"type":"boolean","description":"Optionally hide informative response that would otherwise provide information about the provider in the error message. Default: false\n"},"errorMessage":{"type":"string","description":"Set a custom error message to return when the rate limit is exceeded. Default: \"AI token rate limit exceeded for provider(s): \"\n"},"headerName":{"type":"string","description":"A string representing an HTTP header name.\n"},"hideClientHeaders":{"type":"boolean","description":"Optionally hide informative response headers that would otherwise provide information about the current status of limits and counters. Default: false\n"},"identifier":{"type":"string","description":"The type of identifier used to generate the rate limit key. Defines the scope used to increment the rate limiting counters. Can be \u003cspan pulumi-lang-nodejs=\"`ip`\" pulumi-lang-dotnet=\"`Ip`\" pulumi-lang-go=\"`ip`\" pulumi-lang-python=\"`ip`\" pulumi-lang-yaml=\"`ip`\" pulumi-lang-java=\"`ip`\"\u003e`ip`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`credential`\" pulumi-lang-dotnet=\"`Credential`\" pulumi-lang-go=\"`credential`\" pulumi-lang-python=\"`credential`\" pulumi-lang-yaml=\"`credential`\" pulumi-lang-java=\"`credential`\"\u003e`credential`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`consumer`\" pulumi-lang-dotnet=\"`Consumer`\" pulumi-lang-go=\"`consumer`\" pulumi-lang-python=\"`consumer`\" pulumi-lang-yaml=\"`consumer`\" pulumi-lang-java=\"`consumer`\"\u003e`consumer`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`service`\" pulumi-lang-dotnet=\"`Service`\" pulumi-lang-go=\"`service`\" pulumi-lang-python=\"`service`\" pulumi-lang-yaml=\"`service`\" pulumi-lang-java=\"`service`\"\u003e`service`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`header`\" pulumi-lang-dotnet=\"`Header`\" pulumi-lang-go=\"`header`\" pulumi-lang-python=\"`header`\" pulumi-lang-yaml=\"`header`\" pulumi-lang-java=\"`header`\"\u003e`header`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`path`\" pulumi-lang-dotnet=\"`Path`\" pulumi-lang-go=\"`path`\" pulumi-lang-python=\"`path`\" pulumi-lang-yaml=\"`path`\" pulumi-lang-java=\"`path`\"\u003e`path`\u003c/span\u003e or `consumer-group`. Note if \u003cspan pulumi-lang-nodejs=\"`identifier`\" pulumi-lang-dotnet=\"`Identifier`\" pulumi-lang-go=\"`identifier`\" pulumi-lang-python=\"`identifier`\" pulumi-lang-yaml=\"`identifier`\" pulumi-lang-java=\"`identifier`\"\u003e`identifier`\u003c/span\u003e is `consumer-group`, the plugin must be applied on a consumer group entity. Because a consumer may belong to multiple consumer groups, the plugin needs to know explicitly which consumer group to limit the rate. Default: \"consumer\"; must be one of [\"consumer\", \"consumer-group\", \"credential\", \"header\", \"ip\", \"path\", \"service\"]\n"},"llmFormat":{"type":"string","description":"LLM input and output format and schema to use. Default: \"openai\"; must be one of [\"anthropic\", \"bedrock\", \"cohere\", \"gemini\", \"huggingface\", \"openai\"]\n"},"llmProviders":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginAiRateLimitingAdvancedConfigLlmProvider:GatewayPluginAiRateLimitingAdvancedConfigLlmProvider"},"description":"The provider config. Takes an array of \u003cspan pulumi-lang-nodejs=\"`name`\" pulumi-lang-dotnet=\"`Name`\" pulumi-lang-go=\"`name`\" pulumi-lang-python=\"`name`\" pulumi-lang-yaml=\"`name`\" pulumi-lang-java=\"`name`\"\u003e`name`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`limit`\" pulumi-lang-dotnet=\"`Limit`\" pulumi-lang-go=\"`limit`\" pulumi-lang-python=\"`limit`\" pulumi-lang-yaml=\"`limit`\" pulumi-lang-java=\"`limit`\"\u003e`limit`\u003c/span\u003e and `window size` values.\n"},"namespace":{"type":"string","description":"The rate limiting library namespace to use for this plugin instance. Counter data and sync configuration is isolated in each namespace. NOTE: For the plugin instances sharing the same namespace, all the configurations that are required for synchronizing counters, e.g. \u003cspan pulumi-lang-nodejs=\"`strategy`\" pulumi-lang-dotnet=\"`Strategy`\" pulumi-lang-go=\"`strategy`\" pulumi-lang-python=\"`strategy`\" pulumi-lang-yaml=\"`strategy`\" pulumi-lang-java=\"`strategy`\"\u003e`strategy`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`redis`\" pulumi-lang-dotnet=\"`Redis`\" pulumi-lang-go=\"`redis`\" pulumi-lang-python=\"`redis`\" pulumi-lang-yaml=\"`redis`\" pulumi-lang-java=\"`redis`\"\u003e`redis`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`syncRate`\" pulumi-lang-dotnet=\"`SyncRate`\" pulumi-lang-go=\"`syncRate`\" pulumi-lang-python=\"`sync_rate`\" pulumi-lang-yaml=\"`syncRate`\" pulumi-lang-java=\"`syncRate`\"\u003e`sync_rate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`dictionaryName`\" pulumi-lang-dotnet=\"`DictionaryName`\" pulumi-lang-go=\"`dictionaryName`\" pulumi-lang-python=\"`dictionary_name`\" pulumi-lang-yaml=\"`dictionaryName`\" pulumi-lang-java=\"`dictionaryName`\"\u003e`dictionary_name`\u003c/span\u003e, need to be the same.\n"},"path":{"type":"string","description":"A string representing a URL path, such as /path/to/resource. Must start with a forward slash (/) and must not contain empty segments (i.e., two consecutive forward slashes).\n"},"redis":{"$ref":"#/types/konnect:index%2FGatewayPluginAiRateLimitingAdvancedConfigRedis:GatewayPluginAiRateLimitingAdvancedConfigRedis"},"requestPromptCountFunction":{"type":"string","description":"If defined, it use custom function to count requests for the request prompt provider\n"},"retryAfterJitterMax":{"type":"number","description":"The upper bound of a jitter (random delay) in seconds to be added to the `Retry-After` header of denied requests (status = \u003cspan pulumi-lang-nodejs=\"`429`\" pulumi-lang-dotnet=\"`429`\" pulumi-lang-go=\"`429`\" pulumi-lang-python=\"`429`\" pulumi-lang-yaml=\"`429`\" pulumi-lang-java=\"`429`\"\u003e`429`\u003c/span\u003e) in order to prevent all the clients from coming back at the same time. The lower bound of the jitter is \u003cspan pulumi-lang-nodejs=\"`0`\" pulumi-lang-dotnet=\"`0`\" pulumi-lang-go=\"`0`\" pulumi-lang-python=\"`0`\" pulumi-lang-yaml=\"`0`\" pulumi-lang-java=\"`0`\"\u003e`0`\u003c/span\u003e; in this case, the `Retry-After` header is equal to the `RateLimit-Reset` header. Default: 0\n"},"strategy":{"type":"string","description":"The rate-limiting strategy to use for retrieving and incrementing the limits. Available values are: \u003cspan pulumi-lang-nodejs=\"`local`\" pulumi-lang-dotnet=\"`Local`\" pulumi-lang-go=\"`local`\" pulumi-lang-python=\"`local`\" pulumi-lang-yaml=\"`local`\" pulumi-lang-java=\"`local`\"\u003e`local`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`redis`\" pulumi-lang-dotnet=\"`Redis`\" pulumi-lang-go=\"`redis`\" pulumi-lang-python=\"`redis`\" pulumi-lang-yaml=\"`redis`\" pulumi-lang-java=\"`redis`\"\u003e`redis`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`cluster`\" pulumi-lang-dotnet=\"`Cluster`\" pulumi-lang-go=\"`cluster`\" pulumi-lang-python=\"`cluster`\" pulumi-lang-yaml=\"`cluster`\" pulumi-lang-java=\"`cluster`\"\u003e`cluster`\u003c/span\u003e. Default: \"local\"; must be one of [\"cluster\", \"local\", \"redis\"]\n"},"syncRate":{"type":"number","description":"How often to sync counter data to the central data store. A value of 0 results in synchronous behavior; a value of -1 ignores sync behavior entirely and only stores counters in node memory. A value greater than 0 will sync the counters in the specified number of seconds. The minimum allowed interval is 0.02 seconds (20ms).\n"},"tokensCountStrategy":{"type":"string","description":"What tokens to use for cost calculation. Available values are: \u003cspan pulumi-lang-nodejs=\"`totalTokens`\" pulumi-lang-dotnet=\"`TotalTokens`\" pulumi-lang-go=\"`totalTokens`\" pulumi-lang-python=\"`total_tokens`\" pulumi-lang-yaml=\"`totalTokens`\" pulumi-lang-java=\"`totalTokens`\"\u003e`total_tokens`\u003c/span\u003e \u003cspan pulumi-lang-nodejs=\"`promptTokens`\" pulumi-lang-dotnet=\"`PromptTokens`\" pulumi-lang-go=\"`promptTokens`\" pulumi-lang-python=\"`prompt_tokens`\" pulumi-lang-yaml=\"`promptTokens`\" pulumi-lang-java=\"`promptTokens`\"\u003e`prompt_tokens`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`completionTokens`\" pulumi-lang-dotnet=\"`CompletionTokens`\" pulumi-lang-go=\"`completionTokens`\" pulumi-lang-python=\"`completion_tokens`\" pulumi-lang-yaml=\"`completionTokens`\" pulumi-lang-java=\"`completionTokens`\"\u003e`completion_tokens`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`cost`\" pulumi-lang-dotnet=\"`Cost`\" pulumi-lang-go=\"`cost`\" pulumi-lang-python=\"`cost`\" pulumi-lang-yaml=\"`cost`\" pulumi-lang-java=\"`cost`\"\u003e`cost`\u003c/span\u003e. Default: \"total*tokens\"; must be one of [\"completion*tokens\", \"cost\", \"prompt*tokens\", \"total*tokens\"]\n"},"windowType":{"type":"string","description":"Sets the time window type to either \u003cspan pulumi-lang-nodejs=\"`sliding`\" pulumi-lang-dotnet=\"`Sliding`\" pulumi-lang-go=\"`sliding`\" pulumi-lang-python=\"`sliding`\" pulumi-lang-yaml=\"`sliding`\" pulumi-lang-java=\"`sliding`\"\u003e`sliding`\u003c/span\u003e (default) or \u003cspan pulumi-lang-nodejs=\"`fixed`\" pulumi-lang-dotnet=\"`Fixed`\" pulumi-lang-go=\"`fixed`\" pulumi-lang-python=\"`fixed`\" pulumi-lang-yaml=\"`fixed`\" pulumi-lang-java=\"`fixed`\"\u003e`fixed`\u003c/span\u003e. Sliding windows apply the rate limiting logic while taking into account previous hit rates (from the window that immediately precedes the current) using a dynamic weight. Fixed windows consist of buckets that are statically assigned to a definitive time range, each request is mapped to only one fixed window based on its timestamp and will affect only that window's counters. Default: \"sliding\"; must be one of [\"fixed\", \"sliding\"]\n"}},"type":"object","required":["llmProviders"],"language":{"nodejs":{"requiredOutputs":["decreaseByFractionsInRedis","dictionaryName","disablePenalty","errorCode","errorHideProviders","errorMessage","hideClientHeaders","identifier","llmFormat","llmProviders","redis","retryAfterJitterMax","strategy","tokensCountStrategy","windowType"]}}},"konnect:index/GatewayPluginAiRateLimitingAdvancedConfigLlmProvider:GatewayPluginAiRateLimitingAdvancedConfigLlmProvider":{"properties":{"limits":{"type":"array","items":{"type":"number"},"description":"One or more requests-per-window limits to apply. There must be a matching number of window limits and sizes specified. Not Null\n"},"name":{"type":"string","description":"The LLM provider to which the rate limit applies. Not Null; must be one of [\"anthropic\", \"azure\", \"bedrock\", \"cohere\", \"customCost\", \"gemini\", \"huggingface\", \"llama2\", \"mistral\", \"openai\", \"requestPrompt\"]\n"},"windowSizes":{"type":"array","items":{"type":"number"},"description":"One or more window sizes to apply a limit to (defined in seconds). There must be a matching number of window limits and sizes specified. Not Null\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["limits","name","windowSizes"]}}},"konnect:index/GatewayPluginAiRateLimitingAdvancedConfigRedis:GatewayPluginAiRateLimitingAdvancedConfigRedis":{"properties":{"cloudAuthentication":{"$ref":"#/types/konnect:index%2FGatewayPluginAiRateLimitingAdvancedConfigRedisCloudAuthentication:GatewayPluginAiRateLimitingAdvancedConfigRedisCloudAuthentication","description":"Cloud auth related configs for connecting to a Cloud Provider's Redis instance.\n"},"clusterMaxRedirections":{"type":"number","description":"Maximum retry attempts for redirection. Default: 5\n"},"clusterNodes":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginAiRateLimitingAdvancedConfigRedisClusterNode:GatewayPluginAiRateLimitingAdvancedConfigRedisClusterNode"},"description":"Cluster addresses to use for Redis connections when the \u003cspan pulumi-lang-nodejs=\"`redis`\" pulumi-lang-dotnet=\"`Redis`\" pulumi-lang-go=\"`redis`\" pulumi-lang-python=\"`redis`\" pulumi-lang-yaml=\"`redis`\" pulumi-lang-java=\"`redis`\"\u003e`redis`\u003c/span\u003e strategy is defined. Defining this field implies using a Redis Cluster. The minimum length of the array is 1 element.\n"},"connectTimeout":{"type":"number","description":"An integer representing a timeout in milliseconds. Must be between 0 and 2^31-2. Default: 2000\n"},"connectionIsProxied":{"type":"boolean","description":"If the connection to Redis is proxied (e.g. Envoy), set it \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e. Set the \u003cspan pulumi-lang-nodejs=\"`host`\" pulumi-lang-dotnet=\"`Host`\" pulumi-lang-go=\"`host`\" pulumi-lang-python=\"`host`\" pulumi-lang-yaml=\"`host`\" pulumi-lang-java=\"`host`\"\u003e`host`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`port`\" pulumi-lang-dotnet=\"`Port`\" pulumi-lang-go=\"`port`\" pulumi-lang-python=\"`port`\" pulumi-lang-yaml=\"`port`\" pulumi-lang-java=\"`port`\"\u003e`port`\u003c/span\u003e to point to the proxy address. Default: false\n"},"database":{"type":"number","description":"Database to use for the Redis connection when using the \u003cspan pulumi-lang-nodejs=\"`redis`\" pulumi-lang-dotnet=\"`Redis`\" pulumi-lang-go=\"`redis`\" pulumi-lang-python=\"`redis`\" pulumi-lang-yaml=\"`redis`\" pulumi-lang-java=\"`redis`\"\u003e`redis`\u003c/span\u003e strategy. Default: 0\n"},"host":{"type":"string","description":"A string representing a host name, such as example.com. Default: \"127.0.0.1\"\n"},"keepaliveBacklog":{"type":"number","description":"Limits the total number of opened connections for a pool. If the connection pool is full, connection queues above the limit go into the backlog queue. If the backlog queue is full, subsequent connect operations fail and return \u003cspan pulumi-lang-nodejs=\"`nil`\" pulumi-lang-dotnet=\"`Nil`\" pulumi-lang-go=\"`nil`\" pulumi-lang-python=\"`nil`\" pulumi-lang-yaml=\"`nil`\" pulumi-lang-java=\"`nil`\"\u003e`nil`\u003c/span\u003e. Queued operations (subject to set timeouts) resume once the number of connections in the pool is less than \u003cspan pulumi-lang-nodejs=\"`keepalivePoolSize`\" pulumi-lang-dotnet=\"`KeepalivePoolSize`\" pulumi-lang-go=\"`keepalivePoolSize`\" pulumi-lang-python=\"`keepalive_pool_size`\" pulumi-lang-yaml=\"`keepalivePoolSize`\" pulumi-lang-java=\"`keepalivePoolSize`\"\u003e`keepalive_pool_size`\u003c/span\u003e. If latency is high or throughput is low, try increasing this value. Empirically, this value is larger than \u003cspan pulumi-lang-nodejs=\"`keepalivePoolSize`\" pulumi-lang-dotnet=\"`KeepalivePoolSize`\" pulumi-lang-go=\"`keepalivePoolSize`\" pulumi-lang-python=\"`keepalive_pool_size`\" pulumi-lang-yaml=\"`keepalivePoolSize`\" pulumi-lang-java=\"`keepalivePoolSize`\"\u003e`keepalive_pool_size`\u003c/span\u003e.\n"},"keepalivePoolSize":{"type":"number","description":"The size limit for every cosocket connection pool associated with every remote server, per worker process. If neither \u003cspan pulumi-lang-nodejs=\"`keepalivePoolSize`\" pulumi-lang-dotnet=\"`KeepalivePoolSize`\" pulumi-lang-go=\"`keepalivePoolSize`\" pulumi-lang-python=\"`keepalive_pool_size`\" pulumi-lang-yaml=\"`keepalivePoolSize`\" pulumi-lang-java=\"`keepalivePoolSize`\"\u003e`keepalive_pool_size`\u003c/span\u003e nor \u003cspan pulumi-lang-nodejs=\"`keepaliveBacklog`\" pulumi-lang-dotnet=\"`KeepaliveBacklog`\" pulumi-lang-go=\"`keepaliveBacklog`\" pulumi-lang-python=\"`keepalive_backlog`\" pulumi-lang-yaml=\"`keepaliveBacklog`\" pulumi-lang-java=\"`keepaliveBacklog`\"\u003e`keepalive_backlog`\u003c/span\u003e is specified, no pool is created. If \u003cspan pulumi-lang-nodejs=\"`keepalivePoolSize`\" pulumi-lang-dotnet=\"`KeepalivePoolSize`\" pulumi-lang-go=\"`keepalivePoolSize`\" pulumi-lang-python=\"`keepalive_pool_size`\" pulumi-lang-yaml=\"`keepalivePoolSize`\" pulumi-lang-java=\"`keepalivePoolSize`\"\u003e`keepalive_pool_size`\u003c/span\u003e isn't specified but \u003cspan pulumi-lang-nodejs=\"`keepaliveBacklog`\" pulumi-lang-dotnet=\"`KeepaliveBacklog`\" pulumi-lang-go=\"`keepaliveBacklog`\" pulumi-lang-python=\"`keepalive_backlog`\" pulumi-lang-yaml=\"`keepaliveBacklog`\" pulumi-lang-java=\"`keepaliveBacklog`\"\u003e`keepalive_backlog`\u003c/span\u003e is specified, then the pool uses the default value. Try to increase (e.g. 512) this value if latency is high or throughput is low. Default: 256\n"},"password":{"type":"string","description":"Password to use for Redis connections. If undefined, no AUTH commands are sent to Redis.\n"},"port":{"type":"number","description":"An integer representing a port number between 0 and 65535, inclusive. Default: 6379\n"},"readTimeout":{"type":"number","description":"An integer representing a timeout in milliseconds. Must be between 0 and 2^31-2. Default: 2000\n"},"sendTimeout":{"type":"number","description":"An integer representing a timeout in milliseconds. Must be between 0 and 2^31-2. Default: 2000\n"},"sentinelMaster":{"type":"string","description":"Sentinel master to use for Redis connections. Defining this value implies using Redis Sentinel.\n"},"sentinelNodes":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginAiRateLimitingAdvancedConfigRedisSentinelNode:GatewayPluginAiRateLimitingAdvancedConfigRedisSentinelNode"},"description":"Sentinel node addresses to use for Redis connections when the \u003cspan pulumi-lang-nodejs=\"`redis`\" pulumi-lang-dotnet=\"`Redis`\" pulumi-lang-go=\"`redis`\" pulumi-lang-python=\"`redis`\" pulumi-lang-yaml=\"`redis`\" pulumi-lang-java=\"`redis`\"\u003e`redis`\u003c/span\u003e strategy is defined. Defining this field implies using a Redis Sentinel. The minimum length of the array is 1 element.\n"},"sentinelPassword":{"type":"string","description":"Sentinel password to authenticate with a Redis Sentinel instance. If undefined, no AUTH commands are sent to Redis Sentinels.\n"},"sentinelRole":{"type":"string","description":"Sentinel role to use for Redis connections when the \u003cspan pulumi-lang-nodejs=\"`redis`\" pulumi-lang-dotnet=\"`Redis`\" pulumi-lang-go=\"`redis`\" pulumi-lang-python=\"`redis`\" pulumi-lang-yaml=\"`redis`\" pulumi-lang-java=\"`redis`\"\u003e`redis`\u003c/span\u003e strategy is defined. Defining this value implies using Redis Sentinel. must be one of [\"any\", \"master\", \"slave\"]\n"},"sentinelUsername":{"type":"string","description":"Sentinel username to authenticate with a Redis Sentinel instance. If undefined, ACL authentication won't be performed. This requires Redis v6.2.0+.\n"},"serverName":{"type":"string","description":"A string representing an SNI (server name indication) value for TLS.\n"},"ssl":{"type":"boolean","description":"If set to true, uses SSL to connect to Redis. Default: false\n"},"sslVerify":{"type":"boolean","description":"If set to true, verifies the validity of the server SSL certificate. If setting this parameter, also configure \u003cspan pulumi-lang-nodejs=\"`luaSslTrustedCertificate`\" pulumi-lang-dotnet=\"`LuaSslTrustedCertificate`\" pulumi-lang-go=\"`luaSslTrustedCertificate`\" pulumi-lang-python=\"`lua_ssl_trusted_certificate`\" pulumi-lang-yaml=\"`luaSslTrustedCertificate`\" pulumi-lang-java=\"`luaSslTrustedCertificate`\"\u003e`lua_ssl_trusted_certificate`\u003c/span\u003e in `kong.conf` to specify the CA (or server) certificate used by your Redis server. You may also need to configure \u003cspan pulumi-lang-nodejs=\"`luaSslVerifyDepth`\" pulumi-lang-dotnet=\"`LuaSslVerifyDepth`\" pulumi-lang-go=\"`luaSslVerifyDepth`\" pulumi-lang-python=\"`lua_ssl_verify_depth`\" pulumi-lang-yaml=\"`luaSslVerifyDepth`\" pulumi-lang-java=\"`luaSslVerifyDepth`\"\u003e`lua_ssl_verify_depth`\u003c/span\u003e accordingly. Default: false\n"},"username":{"type":"string","description":"Username to use for Redis connections. If undefined, ACL authentication won't be performed. This requires Redis v6.0.0+. To be compatible with Redis v5.x.y, you can set it to \u003cspan pulumi-lang-nodejs=\"`default`\" pulumi-lang-dotnet=\"`Default`\" pulumi-lang-go=\"`default`\" pulumi-lang-python=\"`default`\" pulumi-lang-yaml=\"`default`\" pulumi-lang-java=\"`default`\"\u003e`default`\u003c/span\u003e.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["cloudAuthentication","clusterMaxRedirections","connectTimeout","connectionIsProxied","database","host","keepalivePoolSize","port","readTimeout","sendTimeout","sentinelRole","ssl","sslVerify"]}}},"konnect:index/GatewayPluginAiRateLimitingAdvancedConfigRedisCloudAuthentication:GatewayPluginAiRateLimitingAdvancedConfigRedisCloudAuthentication":{"properties":{"authProvider":{"type":"string","description":"Auth providers to be used to authenticate to a Cloud Provider's Redis instance. must be one of [\"aws\", \"azure\", \"gcp\"]\n"},"awsAccessKeyId":{"type":"string","description":"AWS Access Key ID to be used for authentication when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e.\n"},"awsAssumeRoleArn":{"type":"string","description":"The ARN of the IAM role to assume for generating ElastiCache IAM authentication tokens.\n"},"awsCacheName":{"type":"string","description":"The name of the AWS Elasticache cluster when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e.\n"},"awsIsServerless":{"type":"boolean","description":"This flag specifies whether the cluster is serverless when\u003cspan pulumi-lang-nodejs=\" authProvider \" pulumi-lang-dotnet=\" AuthProvider \" pulumi-lang-go=\" authProvider \" pulumi-lang-python=\" auth_provider \" pulumi-lang-yaml=\" authProvider \" pulumi-lang-java=\" authProvider \"\u003e auth_provider \u003c/span\u003eis set to \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e. Default: true\n"},"awsRegion":{"type":"string","description":"The region of the AWS ElastiCache cluster when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e.\n"},"awsRoleSessionName":{"type":"string","description":"The session name for the temporary credentials when assuming the IAM role.\n"},"awsSecretAccessKey":{"type":"string","description":"AWS Secret Access Key to be used for authentication when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e.\n"},"azureClientId":{"type":"string","description":"Azure Client ID to be used for authentication when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`azure`\" pulumi-lang-dotnet=\"`Azure`\" pulumi-lang-go=\"`azure`\" pulumi-lang-python=\"`azure`\" pulumi-lang-yaml=\"`azure`\" pulumi-lang-java=\"`azure`\"\u003e`azure`\u003c/span\u003e.\n"},"azureClientSecret":{"type":"string","description":"Azure Client Secret to be used for authentication when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`azure`\" pulumi-lang-dotnet=\"`Azure`\" pulumi-lang-go=\"`azure`\" pulumi-lang-python=\"`azure`\" pulumi-lang-yaml=\"`azure`\" pulumi-lang-java=\"`azure`\"\u003e`azure`\u003c/span\u003e.\n"},"azureTenantId":{"type":"string","description":"Azure Tenant ID to be used for authentication when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`azure`\" pulumi-lang-dotnet=\"`Azure`\" pulumi-lang-go=\"`azure`\" pulumi-lang-python=\"`azure`\" pulumi-lang-yaml=\"`azure`\" pulumi-lang-java=\"`azure`\"\u003e`azure`\u003c/span\u003e.\n"},"gcpServiceAccountJson":{"type":"string","description":"GCP Service Account JSON to be used for authentication when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`gcp`\" pulumi-lang-dotnet=\"`Gcp`\" pulumi-lang-go=\"`gcp`\" pulumi-lang-python=\"`gcp`\" pulumi-lang-yaml=\"`gcp`\" pulumi-lang-java=\"`gcp`\"\u003e`gcp`\u003c/span\u003e.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["authProvider","awsIsServerless"]}}},"konnect:index/GatewayPluginAiRateLimitingAdvancedConfigRedisClusterNode:GatewayPluginAiRateLimitingAdvancedConfigRedisClusterNode":{"properties":{"ip":{"type":"string","description":"A string representing a host name, such as example.com. Default: \"127.0.0.1\"\n"},"port":{"type":"number","description":"An integer representing a port number between 0 and 65535, inclusive. Default: 6379\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["ip","port"]}}},"konnect:index/GatewayPluginAiRateLimitingAdvancedConfigRedisSentinelNode:GatewayPluginAiRateLimitingAdvancedConfigRedisSentinelNode":{"properties":{"host":{"type":"string","description":"A string representing a host name, such as example.com. Default: \"127.0.0.1\"\n"},"port":{"type":"number","description":"An integer representing a port number between 0 and 65535, inclusive. Default: 6379\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["host","port"]}}},"konnect:index/GatewayPluginAiRateLimitingAdvancedConsumer:GatewayPluginAiRateLimitingAdvancedConsumer":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginAiRateLimitingAdvancedConsumerGroup:GatewayPluginAiRateLimitingAdvancedConsumerGroup":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginAiRateLimitingAdvancedOrdering:GatewayPluginAiRateLimitingAdvancedOrdering":{"properties":{"after":{"$ref":"#/types/konnect:index%2FGatewayPluginAiRateLimitingAdvancedOrderingAfter:GatewayPluginAiRateLimitingAdvancedOrderingAfter"},"before":{"$ref":"#/types/konnect:index%2FGatewayPluginAiRateLimitingAdvancedOrderingBefore:GatewayPluginAiRateLimitingAdvancedOrderingBefore"}},"type":"object","language":{"nodejs":{"requiredOutputs":["after","before"]}}},"konnect:index/GatewayPluginAiRateLimitingAdvancedOrderingAfter:GatewayPluginAiRateLimitingAdvancedOrderingAfter":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginAiRateLimitingAdvancedOrderingBefore:GatewayPluginAiRateLimitingAdvancedOrderingBefore":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginAiRateLimitingAdvancedPartial:GatewayPluginAiRateLimitingAdvancedPartial":{"properties":{"id":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"name":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"path":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id","name","path"]}}},"konnect:index/GatewayPluginAiRateLimitingAdvancedRoute:GatewayPluginAiRateLimitingAdvancedRoute":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginAiRateLimitingAdvancedService:GatewayPluginAiRateLimitingAdvancedService":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginAiRequestTransformerConfig:GatewayPluginAiRequestTransformerConfig":{"properties":{"httpProxyHost":{"type":"string","description":"A string representing a host name, such as example.com.\n"},"httpProxyPort":{"type":"number","description":"An integer representing a port number between 0 and 65535, inclusive.\n"},"httpTimeout":{"type":"number","description":"Timeout in milliseconds for the AI upstream service. Default: 60000\n"},"httpsProxyHost":{"type":"string","description":"A string representing a host name, such as example.com.\n"},"httpsProxyPort":{"type":"number","description":"An integer representing a port number between 0 and 65535, inclusive.\n"},"httpsVerify":{"type":"boolean","description":"Verify the TLS certificate of the AI upstream service. Default: true\n"},"llm":{"$ref":"#/types/konnect:index%2FGatewayPluginAiRequestTransformerConfigLlm:GatewayPluginAiRequestTransformerConfigLlm"},"maxRequestBodySize":{"type":"number","description":"max allowed body size allowed to be introspected. 0 means unlimited, but the size of this body will still be limited by Nginx's client*max*body_size. Default: 1048576\n"},"prompt":{"type":"string","description":"Use this prompt to tune the LLM system/assistant message for the incoming proxy request (from the client), and what you are expecting in return.\n"},"transformationExtractPattern":{"type":"string","description":"Defines the regular expression that must match to indicate a successful AI transformation at the request phase. The first match will be set as the outgoing body. If the AI service's response doesn't match this pattern, it is marked as a failure.\n"}},"type":"object","required":["llm","prompt"],"language":{"nodejs":{"requiredOutputs":["httpTimeout","httpsVerify","llm","maxRequestBodySize","prompt"]}}},"konnect:index/GatewayPluginAiRequestTransformerConfigLlm:GatewayPluginAiRequestTransformerConfigLlm":{"properties":{"auth":{"$ref":"#/types/konnect:index%2FGatewayPluginAiRequestTransformerConfigLlmAuth:GatewayPluginAiRequestTransformerConfigLlmAuth"},"description":{"type":"string","description":"The semantic description of the target, required if using semantic load balancing. Specially, setting this to 'CATCHALL' will indicate such target to be used when no other targets match the semantic threshold. Only used by ai-proxy-advanced.\n"},"logging":{"$ref":"#/types/konnect:index%2FGatewayPluginAiRequestTransformerConfigLlmLogging:GatewayPluginAiRequestTransformerConfigLlmLogging"},"metadata":{"type":"object","additionalProperties":{"type":"string"},"description":"For internal use only.\n"},"model":{"$ref":"#/types/konnect:index%2FGatewayPluginAiRequestTransformerConfigLlmModel:GatewayPluginAiRequestTransformerConfigLlmModel"},"routeType":{"type":"string","description":"The model's operation implementation, for this provider. must be one of [\"audio/v1/audio/speech\", \"audio/v1/audio/transcriptions\", \"audio/v1/audio/translations\", \"image/v1/images/edits\", \"image/v1/images/generations\", \"llm/v1/assistants\", \"llm/v1/batches\", \"llm/v1/chat\", \"llm/v1/completions\", \"llm/v1/embeddings\", \"llm/v1/files\", \"llm/v1/responses\", \"preserve\", \"realtime/v1/realtime\", \"video/v1/videos/generations\"]\n"},"weight":{"type":"number","description":"The weight this target gets within the upstream loadbalancer (1-65535). Only used by ai-proxy-advanced. Default: 100\n"}},"type":"object","required":["model","routeType"],"language":{"nodejs":{"requiredOutputs":["auth","logging","model","routeType","weight"]}}},"konnect:index/GatewayPluginAiRequestTransformerConfigLlmAuth:GatewayPluginAiRequestTransformerConfigLlmAuth":{"properties":{"allowOverride":{"type":"boolean","description":"If enabled, the authorization header or parameter can be overridden in the request by the value configured in the plugin. Default: false\n"},"awsAccessKeyId":{"type":"string","description":"Set this if you are using an AWS provider (Bedrock) and you are authenticating using static IAM User credentials. Setting this will override the AWS*ACCESS*KEY_ID environment variable for this plugin instance.\n"},"awsSecretAccessKey":{"type":"string","description":"Set this if you are using an AWS provider (Bedrock) and you are authenticating using static IAM User credentials. Setting this will override the AWS*SECRET*ACCESS_KEY environment variable for this plugin instance.\n"},"azureClientId":{"type":"string","description":"If azure*use*managed_identity is set to true, and you need to use a different user-assigned identity for this LLM instance, set the client ID.\n"},"azureClientSecret":{"type":"string","description":"If azure*use*managed_identity is set to true, and you need to use a different user-assigned identity for this LLM instance, set the client secret.\n"},"azureTenantId":{"type":"string","description":"If azure*use*managed_identity is set to true, and you need to use a different user-assigned identity for this LLM instance, set the tenant ID.\n"},"azureUseManagedIdentity":{"type":"boolean","description":"Set true to use the Azure Cloud Managed Identity (or user-assigned identity) to authenticate with Azure-provider models. Default: false\n"},"gcpServiceAccountJson":{"type":"string","description":"Set this field to the full JSON of the GCP service account to authenticate, if required. If null (and gcp*use*service_account is true), Kong will attempt to read from environment variable `GCP_SERVICE_ACCOUNT`.\n"},"gcpUseServiceAccount":{"type":"boolean","description":"Use service account auth for GCP-based providers and models. Default: false\n"},"headerName":{"type":"string","description":"If AI model requires authentication via Authorization or API key header, specify its name here.\n"},"headerValue":{"type":"string","description":"Specify the full auth header value for 'header_name', for example 'Bearer key' or just 'key'.\n"},"paramLocation":{"type":"string","description":"Specify whether the 'param*name' and 'param*value' options go in a query string, or the POST form/JSON body. must be one of [\"body\", \"query\"]\n"},"paramName":{"type":"string","description":"If AI model requires authentication via query parameter, specify its name here.\n"},"paramValue":{"type":"string","description":"Specify the full parameter value for 'param_name'.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["allowOverride","azureUseManagedIdentity","gcpUseServiceAccount","paramLocation"]}}},"konnect:index/GatewayPluginAiRequestTransformerConfigLlmLogging:GatewayPluginAiRequestTransformerConfigLlmLogging":{"properties":{"logPayloads":{"type":"boolean","description":"If enabled, will log the request and response body into the Kong log plugin(s) output.Furthermore if Opentelemetry instrumentation is enabled the traces will contain this data as well. Default: false\n"},"logStatistics":{"type":"boolean","description":"If enabled and supported by the driver, will add model usage and token metrics into the Kong log plugin(s) output. Default: false\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["logPayloads","logStatistics"]}}},"konnect:index/GatewayPluginAiRequestTransformerConfigLlmModel:GatewayPluginAiRequestTransformerConfigLlmModel":{"properties":{"name":{"type":"string","description":"Model name to execute.\n"},"options":{"$ref":"#/types/konnect:index%2FGatewayPluginAiRequestTransformerConfigLlmModelOptions:GatewayPluginAiRequestTransformerConfigLlmModelOptions","description":"Key/value settings for the model\n"},"provider":{"type":"string","description":"AI provider request format - Kong translates requests to and from the specified backend compatible formats. must be one of [\"anthropic\", \"azure\", \"bedrock\", \"cerebras\", \"cohere\", \"dashscope\", \"gemini\", \"huggingface\", \"llama2\", \"mistral\", \"openai\", \"xai\"]\n"}},"type":"object","required":["provider"],"language":{"nodejs":{"requiredOutputs":["options","provider"]}}},"konnect:index/GatewayPluginAiRequestTransformerConfigLlmModelOptions:GatewayPluginAiRequestTransformerConfigLlmModelOptions":{"properties":{"anthropicVersion":{"type":"string","description":"Defines the schema/API version, if using Anthropic provider.\n"},"azureApiVersion":{"type":"string","description":"'api-version' for Azure OpenAI instances. Default: \"2023-05-15\"\n"},"azureDeploymentId":{"type":"string","description":"Deployment ID for Azure OpenAI instances.\n"},"azureInstance":{"type":"string","description":"Instance name for Azure OpenAI hosted models.\n"},"bedrock":{"$ref":"#/types/konnect:index%2FGatewayPluginAiRequestTransformerConfigLlmModelOptionsBedrock:GatewayPluginAiRequestTransformerConfigLlmModelOptionsBedrock"},"cohere":{"$ref":"#/types/konnect:index%2FGatewayPluginAiRequestTransformerConfigLlmModelOptionsCohere:GatewayPluginAiRequestTransformerConfigLlmModelOptionsCohere"},"dashscope":{"$ref":"#/types/konnect:index%2FGatewayPluginAiRequestTransformerConfigLlmModelOptionsDashscope:GatewayPluginAiRequestTransformerConfigLlmModelOptionsDashscope"},"embeddingsDimensions":{"type":"number","description":"If using embeddings models, set the number of dimensions to generate.\n"},"gemini":{"$ref":"#/types/konnect:index%2FGatewayPluginAiRequestTransformerConfigLlmModelOptionsGemini:GatewayPluginAiRequestTransformerConfigLlmModelOptionsGemini"},"huggingface":{"$ref":"#/types/konnect:index%2FGatewayPluginAiRequestTransformerConfigLlmModelOptionsHuggingface:GatewayPluginAiRequestTransformerConfigLlmModelOptionsHuggingface"},"inputCost":{"type":"number","description":"Defines the cost per 1M tokens in your prompt.\n"},"llama2Format":{"type":"string","description":"If using llama2 provider, select the upstream message format. must be one of [\"ollama\", \"openai\", \"raw\"]\n"},"maxTokens":{"type":"number","description":"Defines the max_tokens, if using chat or completion models.\n"},"mistralFormat":{"type":"string","description":"If using mistral provider, select the upstream message format. must be one of [\"ollama\", \"openai\"]\n"},"outputCost":{"type":"number","description":"Defines the cost per 1M tokens in the output of the AI.\n"},"temperature":{"type":"number","description":"Defines the matching temperature, if using chat or completion models.\n"},"topK":{"type":"number","description":"Defines the top-k most likely tokens, if supported.\n"},"topP":{"type":"number","description":"Defines the top-p probability mass, if supported.\n"},"upstreamPath":{"type":"string","description":"Manually specify or override the AI operation path, used when e.g. using the 'preserve' route_type.\n"},"upstreamUrl":{"type":"string","description":"Manually specify or override the full URL to the AI operation endpoints, when calling (self-)hosted models, or for running via a private endpoint.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["azureApiVersion","bedrock","cohere","dashscope","gemini","huggingface","llama2Format","mistralFormat"]}}},"konnect:index/GatewayPluginAiRequestTransformerConfigLlmModelOptionsBedrock:GatewayPluginAiRequestTransformerConfigLlmModelOptionsBedrock":{"properties":{"awsAssumeRoleArn":{"type":"string","description":"If using AWS providers (Bedrock) you can assume a different role after authentication with the current IAM context is successful.\n"},"awsRegion":{"type":"string","description":"If using AWS providers (Bedrock) you can override the `AWS_REGION` environment variable by setting this option.\n"},"awsRoleSessionName":{"type":"string","description":"If using AWS providers (Bedrock), set the identifier of the assumed role session.\n"},"awsStsEndpointUrl":{"type":"string","description":"If using AWS providers (Bedrock), override the STS endpoint URL when assuming a different role.\n"},"embeddingsNormalize":{"type":"boolean","description":"If using AWS providers (Bedrock), set to true to normalize the embeddings. Default: false\n"},"performanceConfigLatency":{"type":"string","description":"Force the client's performance configuration 'latency' for all requests. Leave empty to let the consumer select the performance configuration.\n"},"videoOutputS3Uri":{"type":"string","description":"S3 URI (s3://bucket/prefix) where Bedrock will store generated video files. Required for video generation.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["embeddingsNormalize"]}}},"konnect:index/GatewayPluginAiRequestTransformerConfigLlmModelOptionsCohere:GatewayPluginAiRequestTransformerConfigLlmModelOptionsCohere":{"properties":{"embeddingInputType":{"type":"string","description":"The purpose of the input text to calculate embedding vectors. Default: \"classification\"; must be one of [\"classification\", \"clustering\", \"image\", \"search*document\", \"search*query\"]\n"},"waitForModel":{"type":"boolean","description":"Wait for the model if it is not ready\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["embeddingInputType"]}}},"konnect:index/GatewayPluginAiRequestTransformerConfigLlmModelOptionsDashscope:GatewayPluginAiRequestTransformerConfigLlmModelOptionsDashscope":{"properties":{"international":{"type":"boolean","description":"Two Dashscope endpoints are available, and the international endpoint will be used when this is set to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e.\nIt is recommended to set this to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e when using international version of dashscope.\nDefault: true\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["international"]}}},"konnect:index/GatewayPluginAiRequestTransformerConfigLlmModelOptionsGemini:GatewayPluginAiRequestTransformerConfigLlmModelOptionsGemini":{"properties":{"apiEndpoint":{"type":"string","description":"If running Gemini on Vertex, specify the regional API endpoint (hostname only).\n"},"endpointId":{"type":"string","description":"If running Gemini on Vertex Model Garden, specify the endpoint ID.\n"},"locationId":{"type":"string","description":"If running Gemini on Vertex, specify the location ID.\n"},"projectId":{"type":"string","description":"If running Gemini on Vertex, specify the project ID.\n"}},"type":"object"},"konnect:index/GatewayPluginAiRequestTransformerConfigLlmModelOptionsHuggingface:GatewayPluginAiRequestTransformerConfigLlmModelOptionsHuggingface":{"properties":{"useCache":{"type":"boolean","description":"Use the cache layer on the inference API\n"},"waitForModel":{"type":"boolean","description":"Wait for the model if it is not ready\n"}},"type":"object"},"konnect:index/GatewayPluginAiRequestTransformerConsumerGroup:GatewayPluginAiRequestTransformerConsumerGroup":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginAiRequestTransformerOrdering:GatewayPluginAiRequestTransformerOrdering":{"properties":{"after":{"$ref":"#/types/konnect:index%2FGatewayPluginAiRequestTransformerOrderingAfter:GatewayPluginAiRequestTransformerOrderingAfter"},"before":{"$ref":"#/types/konnect:index%2FGatewayPluginAiRequestTransformerOrderingBefore:GatewayPluginAiRequestTransformerOrderingBefore"}},"type":"object","language":{"nodejs":{"requiredOutputs":["after","before"]}}},"konnect:index/GatewayPluginAiRequestTransformerOrderingAfter:GatewayPluginAiRequestTransformerOrderingAfter":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginAiRequestTransformerOrderingBefore:GatewayPluginAiRequestTransformerOrderingBefore":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginAiRequestTransformerPartial:GatewayPluginAiRequestTransformerPartial":{"properties":{"id":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"name":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"path":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id","name","path"]}}},"konnect:index/GatewayPluginAiRequestTransformerRoute:GatewayPluginAiRequestTransformerRoute":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginAiRequestTransformerService:GatewayPluginAiRequestTransformerService":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginAiResponseTransformerConfig:GatewayPluginAiResponseTransformerConfig":{"properties":{"httpProxyHost":{"type":"string","description":"A string representing a host name, such as example.com.\n"},"httpProxyPort":{"type":"number","description":"An integer representing a port number between 0 and 65535, inclusive.\n"},"httpTimeout":{"type":"number","description":"Timeout in milliseconds for the AI upstream service. Default: 60000\n"},"httpsProxyHost":{"type":"string","description":"A string representing a host name, such as example.com.\n"},"httpsProxyPort":{"type":"number","description":"An integer representing a port number between 0 and 65535, inclusive.\n"},"httpsVerify":{"type":"boolean","description":"Verify the TLS certificate of the AI upstream service. Default: true\n"},"llm":{"$ref":"#/types/konnect:index%2FGatewayPluginAiResponseTransformerConfigLlm:GatewayPluginAiResponseTransformerConfigLlm"},"maxRequestBodySize":{"type":"number","description":"max allowed body size allowed to be introspected. 0 means unlimited, but the size of this body will still be limited by Nginx's client*max*body_size. Default: 1048576\n"},"parseLlmResponseJsonInstructions":{"type":"boolean","description":"Set true to read specific response format from the LLM, and accordingly set the status code / body / headers that proxy back to the client. You need to engineer your LLM prompt to return the correct format, see plugin docs 'Overview' page for usage instructions. Default: false\n"},"prompt":{"type":"string","description":"Use this prompt to tune the LLM system/assistant message for the returning proxy response (from the upstream), adn what response format you are expecting.\n"},"transformationExtractPattern":{"type":"string","description":"Defines the regular expression that must match to indicate a successful AI transformation at the response phase. The first match will be set as the returning body. If the AI service's response doesn't match this pattern, a failure is returned to the client.\n"}},"type":"object","required":["llm","prompt"],"language":{"nodejs":{"requiredOutputs":["httpTimeout","httpsVerify","llm","maxRequestBodySize","parseLlmResponseJsonInstructions","prompt"]}}},"konnect:index/GatewayPluginAiResponseTransformerConfigLlm:GatewayPluginAiResponseTransformerConfigLlm":{"properties":{"auth":{"$ref":"#/types/konnect:index%2FGatewayPluginAiResponseTransformerConfigLlmAuth:GatewayPluginAiResponseTransformerConfigLlmAuth"},"description":{"type":"string","description":"The semantic description of the target, required if using semantic load balancing. Specially, setting this to 'CATCHALL' will indicate such target to be used when no other targets match the semantic threshold. Only used by ai-proxy-advanced.\n"},"logging":{"$ref":"#/types/konnect:index%2FGatewayPluginAiResponseTransformerConfigLlmLogging:GatewayPluginAiResponseTransformerConfigLlmLogging"},"metadata":{"type":"object","additionalProperties":{"type":"string"},"description":"For internal use only.\n"},"model":{"$ref":"#/types/konnect:index%2FGatewayPluginAiResponseTransformerConfigLlmModel:GatewayPluginAiResponseTransformerConfigLlmModel"},"routeType":{"type":"string","description":"The model's operation implementation, for this provider. must be one of [\"audio/v1/audio/speech\", \"audio/v1/audio/transcriptions\", \"audio/v1/audio/translations\", \"image/v1/images/edits\", \"image/v1/images/generations\", \"llm/v1/assistants\", \"llm/v1/batches\", \"llm/v1/chat\", \"llm/v1/completions\", \"llm/v1/embeddings\", \"llm/v1/files\", \"llm/v1/responses\", \"preserve\", \"realtime/v1/realtime\", \"video/v1/videos/generations\"]\n"},"weight":{"type":"number","description":"The weight this target gets within the upstream loadbalancer (1-65535). Only used by ai-proxy-advanced. Default: 100\n"}},"type":"object","required":["model","routeType"],"language":{"nodejs":{"requiredOutputs":["auth","logging","model","routeType","weight"]}}},"konnect:index/GatewayPluginAiResponseTransformerConfigLlmAuth:GatewayPluginAiResponseTransformerConfigLlmAuth":{"properties":{"allowOverride":{"type":"boolean","description":"If enabled, the authorization header or parameter can be overridden in the request by the value configured in the plugin. Default: false\n"},"awsAccessKeyId":{"type":"string","description":"Set this if you are using an AWS provider (Bedrock) and you are authenticating using static IAM User credentials. Setting this will override the AWS*ACCESS*KEY_ID environment variable for this plugin instance.\n"},"awsSecretAccessKey":{"type":"string","description":"Set this if you are using an AWS provider (Bedrock) and you are authenticating using static IAM User credentials. Setting this will override the AWS*SECRET*ACCESS_KEY environment variable for this plugin instance.\n"},"azureClientId":{"type":"string","description":"If azure*use*managed_identity is set to true, and you need to use a different user-assigned identity for this LLM instance, set the client ID.\n"},"azureClientSecret":{"type":"string","description":"If azure*use*managed_identity is set to true, and you need to use a different user-assigned identity for this LLM instance, set the client secret.\n"},"azureTenantId":{"type":"string","description":"If azure*use*managed_identity is set to true, and you need to use a different user-assigned identity for this LLM instance, set the tenant ID.\n"},"azureUseManagedIdentity":{"type":"boolean","description":"Set true to use the Azure Cloud Managed Identity (or user-assigned identity) to authenticate with Azure-provider models. Default: false\n"},"gcpServiceAccountJson":{"type":"string","description":"Set this field to the full JSON of the GCP service account to authenticate, if required. If null (and gcp*use*service_account is true), Kong will attempt to read from environment variable `GCP_SERVICE_ACCOUNT`.\n"},"gcpUseServiceAccount":{"type":"boolean","description":"Use service account auth for GCP-based providers and models. Default: false\n"},"headerName":{"type":"string","description":"If AI model requires authentication via Authorization or API key header, specify its name here.\n"},"headerValue":{"type":"string","description":"Specify the full auth header value for 'header_name', for example 'Bearer key' or just 'key'.\n"},"paramLocation":{"type":"string","description":"Specify whether the 'param*name' and 'param*value' options go in a query string, or the POST form/JSON body. must be one of [\"body\", \"query\"]\n"},"paramName":{"type":"string","description":"If AI model requires authentication via query parameter, specify its name here.\n"},"paramValue":{"type":"string","description":"Specify the full parameter value for 'param_name'.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["allowOverride","azureUseManagedIdentity","gcpUseServiceAccount","paramLocation"]}}},"konnect:index/GatewayPluginAiResponseTransformerConfigLlmLogging:GatewayPluginAiResponseTransformerConfigLlmLogging":{"properties":{"logPayloads":{"type":"boolean","description":"If enabled, will log the request and response body into the Kong log plugin(s) output.Furthermore if Opentelemetry instrumentation is enabled the traces will contain this data as well. Default: false\n"},"logStatistics":{"type":"boolean","description":"If enabled and supported by the driver, will add model usage and token metrics into the Kong log plugin(s) output. Default: false\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["logPayloads","logStatistics"]}}},"konnect:index/GatewayPluginAiResponseTransformerConfigLlmModel:GatewayPluginAiResponseTransformerConfigLlmModel":{"properties":{"name":{"type":"string","description":"Model name to execute.\n"},"options":{"$ref":"#/types/konnect:index%2FGatewayPluginAiResponseTransformerConfigLlmModelOptions:GatewayPluginAiResponseTransformerConfigLlmModelOptions","description":"Key/value settings for the model\n"},"provider":{"type":"string","description":"AI provider request format - Kong translates requests to and from the specified backend compatible formats. must be one of [\"anthropic\", \"azure\", \"bedrock\", \"cerebras\", \"cohere\", \"dashscope\", \"gemini\", \"huggingface\", \"llama2\", \"mistral\", \"openai\", \"xai\"]\n"}},"type":"object","required":["provider"],"language":{"nodejs":{"requiredOutputs":["options","provider"]}}},"konnect:index/GatewayPluginAiResponseTransformerConfigLlmModelOptions:GatewayPluginAiResponseTransformerConfigLlmModelOptions":{"properties":{"anthropicVersion":{"type":"string","description":"Defines the schema/API version, if using Anthropic provider.\n"},"azureApiVersion":{"type":"string","description":"'api-version' for Azure OpenAI instances. Default: \"2023-05-15\"\n"},"azureDeploymentId":{"type":"string","description":"Deployment ID for Azure OpenAI instances.\n"},"azureInstance":{"type":"string","description":"Instance name for Azure OpenAI hosted models.\n"},"bedrock":{"$ref":"#/types/konnect:index%2FGatewayPluginAiResponseTransformerConfigLlmModelOptionsBedrock:GatewayPluginAiResponseTransformerConfigLlmModelOptionsBedrock"},"cohere":{"$ref":"#/types/konnect:index%2FGatewayPluginAiResponseTransformerConfigLlmModelOptionsCohere:GatewayPluginAiResponseTransformerConfigLlmModelOptionsCohere"},"dashscope":{"$ref":"#/types/konnect:index%2FGatewayPluginAiResponseTransformerConfigLlmModelOptionsDashscope:GatewayPluginAiResponseTransformerConfigLlmModelOptionsDashscope"},"embeddingsDimensions":{"type":"number","description":"If using embeddings models, set the number of dimensions to generate.\n"},"gemini":{"$ref":"#/types/konnect:index%2FGatewayPluginAiResponseTransformerConfigLlmModelOptionsGemini:GatewayPluginAiResponseTransformerConfigLlmModelOptionsGemini"},"huggingface":{"$ref":"#/types/konnect:index%2FGatewayPluginAiResponseTransformerConfigLlmModelOptionsHuggingface:GatewayPluginAiResponseTransformerConfigLlmModelOptionsHuggingface"},"inputCost":{"type":"number","description":"Defines the cost per 1M tokens in your prompt.\n"},"llama2Format":{"type":"string","description":"If using llama2 provider, select the upstream message format. must be one of [\"ollama\", \"openai\", \"raw\"]\n"},"maxTokens":{"type":"number","description":"Defines the max_tokens, if using chat or completion models.\n"},"mistralFormat":{"type":"string","description":"If using mistral provider, select the upstream message format. must be one of [\"ollama\", \"openai\"]\n"},"outputCost":{"type":"number","description":"Defines the cost per 1M tokens in the output of the AI.\n"},"temperature":{"type":"number","description":"Defines the matching temperature, if using chat or completion models.\n"},"topK":{"type":"number","description":"Defines the top-k most likely tokens, if supported.\n"},"topP":{"type":"number","description":"Defines the top-p probability mass, if supported.\n"},"upstreamPath":{"type":"string","description":"Manually specify or override the AI operation path, used when e.g. using the 'preserve' route_type.\n"},"upstreamUrl":{"type":"string","description":"Manually specify or override the full URL to the AI operation endpoints, when calling (self-)hosted models, or for running via a private endpoint.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["azureApiVersion","bedrock","cohere","dashscope","gemini","huggingface","llama2Format","mistralFormat"]}}},"konnect:index/GatewayPluginAiResponseTransformerConfigLlmModelOptionsBedrock:GatewayPluginAiResponseTransformerConfigLlmModelOptionsBedrock":{"properties":{"awsAssumeRoleArn":{"type":"string","description":"If using AWS providers (Bedrock) you can assume a different role after authentication with the current IAM context is successful.\n"},"awsRegion":{"type":"string","description":"If using AWS providers (Bedrock) you can override the `AWS_REGION` environment variable by setting this option.\n"},"awsRoleSessionName":{"type":"string","description":"If using AWS providers (Bedrock), set the identifier of the assumed role session.\n"},"awsStsEndpointUrl":{"type":"string","description":"If using AWS providers (Bedrock), override the STS endpoint URL when assuming a different role.\n"},"embeddingsNormalize":{"type":"boolean","description":"If using AWS providers (Bedrock), set to true to normalize the embeddings. Default: false\n"},"performanceConfigLatency":{"type":"string","description":"Force the client's performance configuration 'latency' for all requests. Leave empty to let the consumer select the performance configuration.\n"},"videoOutputS3Uri":{"type":"string","description":"S3 URI (s3://bucket/prefix) where Bedrock will store generated video files. Required for video generation.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["embeddingsNormalize"]}}},"konnect:index/GatewayPluginAiResponseTransformerConfigLlmModelOptionsCohere:GatewayPluginAiResponseTransformerConfigLlmModelOptionsCohere":{"properties":{"embeddingInputType":{"type":"string","description":"The purpose of the input text to calculate embedding vectors. Default: \"classification\"; must be one of [\"classification\", \"clustering\", \"image\", \"search*document\", \"search*query\"]\n"},"waitForModel":{"type":"boolean","description":"Wait for the model if it is not ready\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["embeddingInputType"]}}},"konnect:index/GatewayPluginAiResponseTransformerConfigLlmModelOptionsDashscope:GatewayPluginAiResponseTransformerConfigLlmModelOptionsDashscope":{"properties":{"international":{"type":"boolean","description":"Two Dashscope endpoints are available, and the international endpoint will be used when this is set to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e.\nIt is recommended to set this to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e when using international version of dashscope.\nDefault: true\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["international"]}}},"konnect:index/GatewayPluginAiResponseTransformerConfigLlmModelOptionsGemini:GatewayPluginAiResponseTransformerConfigLlmModelOptionsGemini":{"properties":{"apiEndpoint":{"type":"string","description":"If running Gemini on Vertex, specify the regional API endpoint (hostname only).\n"},"endpointId":{"type":"string","description":"If running Gemini on Vertex Model Garden, specify the endpoint ID.\n"},"locationId":{"type":"string","description":"If running Gemini on Vertex, specify the location ID.\n"},"projectId":{"type":"string","description":"If running Gemini on Vertex, specify the project ID.\n"}},"type":"object"},"konnect:index/GatewayPluginAiResponseTransformerConfigLlmModelOptionsHuggingface:GatewayPluginAiResponseTransformerConfigLlmModelOptionsHuggingface":{"properties":{"useCache":{"type":"boolean","description":"Use the cache layer on the inference API\n"},"waitForModel":{"type":"boolean","description":"Wait for the model if it is not ready\n"}},"type":"object"},"konnect:index/GatewayPluginAiResponseTransformerConsumer:GatewayPluginAiResponseTransformerConsumer":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginAiResponseTransformerConsumerGroup:GatewayPluginAiResponseTransformerConsumerGroup":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginAiResponseTransformerOrdering:GatewayPluginAiResponseTransformerOrdering":{"properties":{"after":{"$ref":"#/types/konnect:index%2FGatewayPluginAiResponseTransformerOrderingAfter:GatewayPluginAiResponseTransformerOrderingAfter"},"before":{"$ref":"#/types/konnect:index%2FGatewayPluginAiResponseTransformerOrderingBefore:GatewayPluginAiResponseTransformerOrderingBefore"}},"type":"object","language":{"nodejs":{"requiredOutputs":["after","before"]}}},"konnect:index/GatewayPluginAiResponseTransformerOrderingAfter:GatewayPluginAiResponseTransformerOrderingAfter":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginAiResponseTransformerOrderingBefore:GatewayPluginAiResponseTransformerOrderingBefore":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginAiResponseTransformerPartial:GatewayPluginAiResponseTransformerPartial":{"properties":{"id":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"name":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"path":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id","name","path"]}}},"konnect:index/GatewayPluginAiResponseTransformerRoute:GatewayPluginAiResponseTransformerRoute":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginAiResponseTransformerService:GatewayPluginAiResponseTransformerService":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginAiSanitizerConfig:GatewayPluginAiSanitizerConfig":{"properties":{"anonymizes":{"type":"array","items":{"type":"string"},"description":"List of types to be anonymized. Default: [\"all*and*credentials\"]\n"},"blockIfDetected":{"type":"boolean","description":"Whether to block requests containing PII data. Default: false\n"},"customPatterns":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginAiSanitizerConfigCustomPattern:GatewayPluginAiSanitizerConfigCustomPattern"},"description":"List of custom patterns to be used for anonymization\n"},"host":{"type":"string","description":"The host of the sanitizer. Default: \"localhost\"\n"},"keepaliveTimeout":{"type":"number","description":"The keepalive timeout for the established http connnection. Default: 60000\n"},"port":{"type":"number","description":"The port of the sanitizer. Default: 8080\n"},"recoverRedacted":{"type":"boolean","description":"Whether to recover redacted data. This doesn't apply to the redacted output. Default: true\n"},"redactType":{"type":"string","description":"What value to be used to redacted to. Default: \"placeholder\"; must be one of [\"placeholder\", \"synthetic\"]\n"},"sanitizationMode":{"type":"string","description":"The sanitization mode to use for the request. Default: \"INPUT\"; must be one of [\"BOTH\", \"INPUT\", \"OUTPUT\"]\n"},"scheme":{"type":"string","description":"The protocol can be http and https. Default: \"http\"\n"},"skipLoggingSanitizedItems":{"type":"boolean","description":"Whether to log sanitized items in the Kong log plugins. Turn it on if you want to hide sensitive data from logs. Default: false\n"},"stopOnError":{"type":"boolean","description":"Stop processing if an error occurs. Default: true\n"},"timeout":{"type":"number","description":"Connection timeout with the sanitizer. Default: 10000\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["anonymizes","blockIfDetected","host","keepaliveTimeout","port","recoverRedacted","redactType","sanitizationMode","scheme","skipLoggingSanitizedItems","stopOnError","timeout"]}}},"konnect:index/GatewayPluginAiSanitizerConfigCustomPattern:GatewayPluginAiSanitizerConfigCustomPattern":{"properties":{"name":{"type":"string","description":"Not Null\n"},"regex":{"type":"string","description":"Not Null\n"},"score":{"type":"number"}},"type":"object","language":{"nodejs":{"requiredOutputs":["name","regex","score"]}}},"konnect:index/GatewayPluginAiSanitizerConsumer:GatewayPluginAiSanitizerConsumer":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginAiSanitizerConsumerGroup:GatewayPluginAiSanitizerConsumerGroup":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginAiSanitizerOrdering:GatewayPluginAiSanitizerOrdering":{"properties":{"after":{"$ref":"#/types/konnect:index%2FGatewayPluginAiSanitizerOrderingAfter:GatewayPluginAiSanitizerOrderingAfter"},"before":{"$ref":"#/types/konnect:index%2FGatewayPluginAiSanitizerOrderingBefore:GatewayPluginAiSanitizerOrderingBefore"}},"type":"object","language":{"nodejs":{"requiredOutputs":["after","before"]}}},"konnect:index/GatewayPluginAiSanitizerOrderingAfter:GatewayPluginAiSanitizerOrderingAfter":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginAiSanitizerOrderingBefore:GatewayPluginAiSanitizerOrderingBefore":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginAiSanitizerPartial:GatewayPluginAiSanitizerPartial":{"properties":{"id":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"name":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"path":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id","name","path"]}}},"konnect:index/GatewayPluginAiSanitizerRoute:GatewayPluginAiSanitizerRoute":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginAiSanitizerService:GatewayPluginAiSanitizerService":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginAiSemanticCacheConfig:GatewayPluginAiSemanticCacheConfig":{"properties":{"cacheControl":{"type":"boolean","description":"When enabled, respect the Cache-Control behaviors defined in RFC7234. Default: false\n"},"cacheTtl":{"type":"number","description":"TTL in seconds of cache entities. Must be a value greater than 0. Default: 300\n"},"embeddings":{"$ref":"#/types/konnect:index%2FGatewayPluginAiSemanticCacheConfigEmbeddings:GatewayPluginAiSemanticCacheConfigEmbeddings"},"exactCaching":{"type":"boolean","description":"When enabled, a first check for exact query will be done. It will impact DB size. Default: false\n"},"ignoreAssistantPrompts":{"type":"boolean","description":"Ignore and discard any assistant prompts when Vectorizing the request. Default: false\n"},"ignoreSystemPrompts":{"type":"boolean","description":"Ignore and discard any system prompts when Vectorizing the request. Default: false\n"},"ignoreToolPrompts":{"type":"boolean","description":"Ignore and discard any tool prompts when Vectorizing the request. Default: false\n"},"llmFormat":{"type":"string","description":"LLM input and output format and schema to use. Default: \"openai\"; must be one of [\"anthropic\", \"bedrock\", \"cohere\", \"gemini\", \"huggingface\", \"openai\"]\n"},"messageCountback":{"type":"number","description":"Number of messages in the chat history to Vectorize/Cache. Default: 1\n"},"stopOnFailure":{"type":"boolean","description":"Halt the LLM request process in case of a caching system failure. Default: false\n"},"vectordb":{"$ref":"#/types/konnect:index%2FGatewayPluginAiSemanticCacheConfigVectordb:GatewayPluginAiSemanticCacheConfigVectordb"}},"type":"object","required":["embeddings","vectordb"],"language":{"nodejs":{"requiredOutputs":["cacheControl","cacheTtl","embeddings","exactCaching","ignoreAssistantPrompts","ignoreSystemPrompts","ignoreToolPrompts","llmFormat","messageCountback","stopOnFailure","vectordb"]}}},"konnect:index/GatewayPluginAiSemanticCacheConfigEmbeddings:GatewayPluginAiSemanticCacheConfigEmbeddings":{"properties":{"auth":{"$ref":"#/types/konnect:index%2FGatewayPluginAiSemanticCacheConfigEmbeddingsAuth:GatewayPluginAiSemanticCacheConfigEmbeddingsAuth"},"model":{"$ref":"#/types/konnect:index%2FGatewayPluginAiSemanticCacheConfigEmbeddingsModel:GatewayPluginAiSemanticCacheConfigEmbeddingsModel"}},"type":"object","required":["model"],"language":{"nodejs":{"requiredOutputs":["auth","model"]}}},"konnect:index/GatewayPluginAiSemanticCacheConfigEmbeddingsAuth:GatewayPluginAiSemanticCacheConfigEmbeddingsAuth":{"properties":{"allowOverride":{"type":"boolean","description":"If enabled, the authorization header or parameter can be overridden in the request by the value configured in the plugin. Default: false\n"},"awsAccessKeyId":{"type":"string","description":"Set this if you are using an AWS provider (Bedrock) and you are authenticating using static IAM User credentials. Setting this will override the AWS*ACCESS*KEY_ID environment variable for this plugin instance.\n"},"awsSecretAccessKey":{"type":"string","description":"Set this if you are using an AWS provider (Bedrock) and you are authenticating using static IAM User credentials. Setting this will override the AWS*SECRET*ACCESS_KEY environment variable for this plugin instance.\n"},"azureClientId":{"type":"string","description":"If azure*use*managed_identity is set to true, and you need to use a different user-assigned identity for this LLM instance, set the client ID.\n"},"azureClientSecret":{"type":"string","description":"If azure*use*managed_identity is set to true, and you need to use a different user-assigned identity for this LLM instance, set the client secret.\n"},"azureTenantId":{"type":"string","description":"If azure*use*managed_identity is set to true, and you need to use a different user-assigned identity for this LLM instance, set the tenant ID.\n"},"azureUseManagedIdentity":{"type":"boolean","description":"Set true to use the Azure Cloud Managed Identity (or user-assigned identity) to authenticate with Azure-provider models. Default: false\n"},"gcpServiceAccountJson":{"type":"string","description":"Set this field to the full JSON of the GCP service account to authenticate, if required. If null (and gcp*use*service_account is true), Kong will attempt to read from environment variable `GCP_SERVICE_ACCOUNT`.\n"},"gcpUseServiceAccount":{"type":"boolean","description":"Use service account auth for GCP-based providers and models. Default: false\n"},"headerName":{"type":"string","description":"If AI model requires authentication via Authorization or API key header, specify its name here.\n"},"headerValue":{"type":"string","description":"Specify the full auth header value for 'header_name', for example 'Bearer key' or just 'key'.\n"},"paramLocation":{"type":"string","description":"Specify whether the 'param*name' and 'param*value' options go in a query string, or the POST form/JSON body. must be one of [\"body\", \"query\"]\n"},"paramName":{"type":"string","description":"If AI model requires authentication via query parameter, specify its name here.\n"},"paramValue":{"type":"string","description":"Specify the full parameter value for 'param_name'.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["allowOverride","azureUseManagedIdentity","gcpUseServiceAccount","paramLocation"]}}},"konnect:index/GatewayPluginAiSemanticCacheConfigEmbeddingsModel:GatewayPluginAiSemanticCacheConfigEmbeddingsModel":{"properties":{"name":{"type":"string","description":"Model name to execute.\n"},"options":{"$ref":"#/types/konnect:index%2FGatewayPluginAiSemanticCacheConfigEmbeddingsModelOptions:GatewayPluginAiSemanticCacheConfigEmbeddingsModelOptions","description":"Key/value settings for the model\n"},"provider":{"type":"string","description":"AI provider format to use for embeddings API. must be one of [\"azure\", \"bedrock\", \"gemini\", \"huggingface\", \"mistral\", \"openai\"]\n"}},"type":"object","required":["name","provider"],"language":{"nodejs":{"requiredOutputs":["name","options","provider"]}}},"konnect:index/GatewayPluginAiSemanticCacheConfigEmbeddingsModelOptions:GatewayPluginAiSemanticCacheConfigEmbeddingsModelOptions":{"properties":{"azure":{"$ref":"#/types/konnect:index%2FGatewayPluginAiSemanticCacheConfigEmbeddingsModelOptionsAzure:GatewayPluginAiSemanticCacheConfigEmbeddingsModelOptionsAzure"},"bedrock":{"$ref":"#/types/konnect:index%2FGatewayPluginAiSemanticCacheConfigEmbeddingsModelOptionsBedrock:GatewayPluginAiSemanticCacheConfigEmbeddingsModelOptionsBedrock"},"gemini":{"$ref":"#/types/konnect:index%2FGatewayPluginAiSemanticCacheConfigEmbeddingsModelOptionsGemini:GatewayPluginAiSemanticCacheConfigEmbeddingsModelOptionsGemini"},"huggingface":{"$ref":"#/types/konnect:index%2FGatewayPluginAiSemanticCacheConfigEmbeddingsModelOptionsHuggingface:GatewayPluginAiSemanticCacheConfigEmbeddingsModelOptionsHuggingface"},"upstreamUrl":{"type":"string","description":"upstream url for the embeddings\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["azure","bedrock","gemini","huggingface"]}}},"konnect:index/GatewayPluginAiSemanticCacheConfigEmbeddingsModelOptionsAzure:GatewayPluginAiSemanticCacheConfigEmbeddingsModelOptionsAzure":{"properties":{"apiVersion":{"type":"string","description":"'api-version' for Azure OpenAI instances. Default: \"2023-05-15\"\n"},"deploymentId":{"type":"string","description":"Deployment ID for Azure OpenAI instances.\n"},"instance":{"type":"string","description":"Instance name for Azure OpenAI hosted models.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["apiVersion"]}}},"konnect:index/GatewayPluginAiSemanticCacheConfigEmbeddingsModelOptionsBedrock:GatewayPluginAiSemanticCacheConfigEmbeddingsModelOptionsBedrock":{"properties":{"awsAssumeRoleArn":{"type":"string","description":"If using AWS providers (Bedrock) you can assume a different role after authentication with the current IAM context is successful.\n"},"awsRegion":{"type":"string","description":"If using AWS providers (Bedrock) you can override the `AWS_REGION` environment variable by setting this option.\n"},"awsRoleSessionName":{"type":"string","description":"If using AWS providers (Bedrock), set the identifier of the assumed role session.\n"},"awsStsEndpointUrl":{"type":"string","description":"If using AWS providers (Bedrock), override the STS endpoint URL when assuming a different role.\n"},"embeddingsNormalize":{"type":"boolean","description":"If using AWS providers (Bedrock), set to true to normalize the embeddings. Default: false\n"},"performanceConfigLatency":{"type":"string","description":"Force the client's performance configuration 'latency' for all requests. Leave empty to let the consumer select the performance configuration.\n"},"videoOutputS3Uri":{"type":"string","description":"S3 URI (s3://bucket/prefix) where Bedrock will store generated video files. Required for video generation.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["embeddingsNormalize"]}}},"konnect:index/GatewayPluginAiSemanticCacheConfigEmbeddingsModelOptionsGemini:GatewayPluginAiSemanticCacheConfigEmbeddingsModelOptionsGemini":{"properties":{"apiEndpoint":{"type":"string","description":"If running Gemini on Vertex, specify the regional API endpoint (hostname only).\n"},"locationId":{"type":"string","description":"If running Gemini on Vertex, specify the location ID.\n"},"projectId":{"type":"string","description":"If running Gemini on Vertex, specify the project ID.\n"}},"type":"object"},"konnect:index/GatewayPluginAiSemanticCacheConfigEmbeddingsModelOptionsHuggingface:GatewayPluginAiSemanticCacheConfigEmbeddingsModelOptionsHuggingface":{"properties":{"useCache":{"type":"boolean","description":"Use the cache layer on the inference API\n"},"waitForModel":{"type":"boolean","description":"Wait for the model if it is not ready\n"}},"type":"object"},"konnect:index/GatewayPluginAiSemanticCacheConfigVectordb:GatewayPluginAiSemanticCacheConfigVectordb":{"properties":{"dimensions":{"type":"number","description":"the desired dimensionality for the vectors\n"},"distanceMetric":{"type":"string","description":"the distance metric to use for vector searches. must be one of [\"cosine\", \"euclidean\"]\n"},"pgvector":{"$ref":"#/types/konnect:index%2FGatewayPluginAiSemanticCacheConfigVectordbPgvector:GatewayPluginAiSemanticCacheConfigVectordbPgvector"},"redis":{"$ref":"#/types/konnect:index%2FGatewayPluginAiSemanticCacheConfigVectordbRedis:GatewayPluginAiSemanticCacheConfigVectordbRedis"},"strategy":{"type":"string","description":"which vector database driver to use. must be one of [\"pgvector\", \"redis\"]\n"},"threshold":{"type":"number","description":"the default similarity threshold for accepting semantic search results (float)\n"}},"type":"object","required":["dimensions","distanceMetric","strategy"],"language":{"nodejs":{"requiredOutputs":["dimensions","distanceMetric","pgvector","redis","strategy"]}}},"konnect:index/GatewayPluginAiSemanticCacheConfigVectordbPgvector:GatewayPluginAiSemanticCacheConfigVectordbPgvector":{"properties":{"database":{"type":"string","description":"the database of the pgvector database. Default: \"kong-pgvector\"\n"},"host":{"type":"string","description":"the host of the pgvector database. Default: \"127.0.0.1\"\n"},"password":{"type":"string","description":"the password of the pgvector database\n"},"port":{"type":"number","description":"the port of the pgvector database. Default: 5432\n"},"ssl":{"type":"boolean","description":"whether to use ssl for the pgvector database. Default: false\n"},"sslCert":{"type":"string","description":"the path of ssl cert to use for the pgvector database\n"},"sslCertKey":{"type":"string","description":"the path of ssl cert key to use for the pgvector database\n"},"sslRequired":{"type":"boolean","description":"whether ssl is required for the pgvector database. Default: false\n"},"sslVerify":{"type":"boolean","description":"whether to verify ssl for the pgvector database. Default: false\n"},"sslVersion":{"type":"string","description":"the ssl version to use for the pgvector database. Default: \"tlsv1*2\"; must be one of [\"any\", \"tlsv1*2\", \u003cspan pulumi-lang-nodejs=\"\"tlsv13\"\" pulumi-lang-dotnet=\"\"Tlsv13\"\" pulumi-lang-go=\"\"tlsv13\"\" pulumi-lang-python=\"\"tlsv1_3\"\" pulumi-lang-yaml=\"\"tlsv13\"\" pulumi-lang-java=\"\"tlsv13\"\"\u003e\"tlsv1_3\"\u003c/span\u003e]\n"},"timeout":{"type":"number","description":"the timeout of the pgvector database. Default: 5000\n"},"user":{"type":"string","description":"the user of the pgvector database. Default: \"postgres\"\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["database","host","port","ssl","sslRequired","sslVerify","sslVersion","timeout","user"]}}},"konnect:index/GatewayPluginAiSemanticCacheConfigVectordbRedis:GatewayPluginAiSemanticCacheConfigVectordbRedis":{"properties":{"cloudAuthentication":{"$ref":"#/types/konnect:index%2FGatewayPluginAiSemanticCacheConfigVectordbRedisCloudAuthentication:GatewayPluginAiSemanticCacheConfigVectordbRedisCloudAuthentication","description":"Cloud auth related configs for connecting to a Cloud Provider's Redis instance.\n"},"clusterMaxRedirections":{"type":"number","description":"Maximum retry attempts for redirection. Default: 5\n"},"clusterNodes":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginAiSemanticCacheConfigVectordbRedisClusterNode:GatewayPluginAiSemanticCacheConfigVectordbRedisClusterNode"},"description":"Cluster addresses to use for Redis connections when the \u003cspan pulumi-lang-nodejs=\"`redis`\" pulumi-lang-dotnet=\"`Redis`\" pulumi-lang-go=\"`redis`\" pulumi-lang-python=\"`redis`\" pulumi-lang-yaml=\"`redis`\" pulumi-lang-java=\"`redis`\"\u003e`redis`\u003c/span\u003e strategy is defined. Defining this field implies using a Redis Cluster. The minimum length of the array is 1 element.\n"},"connectTimeout":{"type":"number","description":"An integer representing a timeout in milliseconds. Must be between 0 and 2^31-2. Default: 2000\n"},"connectionIsProxied":{"type":"boolean","description":"If the connection to Redis is proxied (e.g. Envoy), set it \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e. Set the \u003cspan pulumi-lang-nodejs=\"`host`\" pulumi-lang-dotnet=\"`Host`\" pulumi-lang-go=\"`host`\" pulumi-lang-python=\"`host`\" pulumi-lang-yaml=\"`host`\" pulumi-lang-java=\"`host`\"\u003e`host`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`port`\" pulumi-lang-dotnet=\"`Port`\" pulumi-lang-go=\"`port`\" pulumi-lang-python=\"`port`\" pulumi-lang-yaml=\"`port`\" pulumi-lang-java=\"`port`\"\u003e`port`\u003c/span\u003e to point to the proxy address. Default: false\n"},"database":{"type":"number","description":"Database to use for the Redis connection when using the \u003cspan pulumi-lang-nodejs=\"`redis`\" pulumi-lang-dotnet=\"`Redis`\" pulumi-lang-go=\"`redis`\" pulumi-lang-python=\"`redis`\" pulumi-lang-yaml=\"`redis`\" pulumi-lang-java=\"`redis`\"\u003e`redis`\u003c/span\u003e strategy. Default: 0\n"},"host":{"type":"string","description":"A string representing a host name, such as example.com. Default: \"127.0.0.1\"\n"},"keepaliveBacklog":{"type":"number","description":"Limits the total number of opened connections for a pool. If the connection pool is full, connection queues above the limit go into the backlog queue. If the backlog queue is full, subsequent connect operations fail and return \u003cspan pulumi-lang-nodejs=\"`nil`\" pulumi-lang-dotnet=\"`Nil`\" pulumi-lang-go=\"`nil`\" pulumi-lang-python=\"`nil`\" pulumi-lang-yaml=\"`nil`\" pulumi-lang-java=\"`nil`\"\u003e`nil`\u003c/span\u003e. Queued operations (subject to set timeouts) resume once the number of connections in the pool is less than \u003cspan pulumi-lang-nodejs=\"`keepalivePoolSize`\" pulumi-lang-dotnet=\"`KeepalivePoolSize`\" pulumi-lang-go=\"`keepalivePoolSize`\" pulumi-lang-python=\"`keepalive_pool_size`\" pulumi-lang-yaml=\"`keepalivePoolSize`\" pulumi-lang-java=\"`keepalivePoolSize`\"\u003e`keepalive_pool_size`\u003c/span\u003e. If latency is high or throughput is low, try increasing this value. Empirically, this value is larger than \u003cspan pulumi-lang-nodejs=\"`keepalivePoolSize`\" pulumi-lang-dotnet=\"`KeepalivePoolSize`\" pulumi-lang-go=\"`keepalivePoolSize`\" pulumi-lang-python=\"`keepalive_pool_size`\" pulumi-lang-yaml=\"`keepalivePoolSize`\" pulumi-lang-java=\"`keepalivePoolSize`\"\u003e`keepalive_pool_size`\u003c/span\u003e.\n"},"keepalivePoolSize":{"type":"number","description":"The size limit for every cosocket connection pool associated with every remote server, per worker process. If neither \u003cspan pulumi-lang-nodejs=\"`keepalivePoolSize`\" pulumi-lang-dotnet=\"`KeepalivePoolSize`\" pulumi-lang-go=\"`keepalivePoolSize`\" pulumi-lang-python=\"`keepalive_pool_size`\" pulumi-lang-yaml=\"`keepalivePoolSize`\" pulumi-lang-java=\"`keepalivePoolSize`\"\u003e`keepalive_pool_size`\u003c/span\u003e nor \u003cspan pulumi-lang-nodejs=\"`keepaliveBacklog`\" pulumi-lang-dotnet=\"`KeepaliveBacklog`\" pulumi-lang-go=\"`keepaliveBacklog`\" pulumi-lang-python=\"`keepalive_backlog`\" pulumi-lang-yaml=\"`keepaliveBacklog`\" pulumi-lang-java=\"`keepaliveBacklog`\"\u003e`keepalive_backlog`\u003c/span\u003e is specified, no pool is created. If \u003cspan pulumi-lang-nodejs=\"`keepalivePoolSize`\" pulumi-lang-dotnet=\"`KeepalivePoolSize`\" pulumi-lang-go=\"`keepalivePoolSize`\" pulumi-lang-python=\"`keepalive_pool_size`\" pulumi-lang-yaml=\"`keepalivePoolSize`\" pulumi-lang-java=\"`keepalivePoolSize`\"\u003e`keepalive_pool_size`\u003c/span\u003e isn't specified but \u003cspan pulumi-lang-nodejs=\"`keepaliveBacklog`\" pulumi-lang-dotnet=\"`KeepaliveBacklog`\" pulumi-lang-go=\"`keepaliveBacklog`\" pulumi-lang-python=\"`keepalive_backlog`\" pulumi-lang-yaml=\"`keepaliveBacklog`\" pulumi-lang-java=\"`keepaliveBacklog`\"\u003e`keepalive_backlog`\u003c/span\u003e is specified, then the pool uses the default value. Try to increase (e.g. 512) this value if latency is high or throughput is low. Default: 256\n"},"password":{"type":"string","description":"Password to use for Redis connections. If undefined, no AUTH commands are sent to Redis.\n"},"port":{"type":"number","description":"An integer representing a port number between 0 and 65535, inclusive. Default: 6379\n"},"readTimeout":{"type":"number","description":"An integer representing a timeout in milliseconds. Must be between 0 and 2^31-2. Default: 2000\n"},"sendTimeout":{"type":"number","description":"An integer representing a timeout in milliseconds. Must be between 0 and 2^31-2. Default: 2000\n"},"sentinelMaster":{"type":"string","description":"Sentinel master to use for Redis connections. Defining this value implies using Redis Sentinel.\n"},"sentinelNodes":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginAiSemanticCacheConfigVectordbRedisSentinelNode:GatewayPluginAiSemanticCacheConfigVectordbRedisSentinelNode"},"description":"Sentinel node addresses to use for Redis connections when the \u003cspan pulumi-lang-nodejs=\"`redis`\" pulumi-lang-dotnet=\"`Redis`\" pulumi-lang-go=\"`redis`\" pulumi-lang-python=\"`redis`\" pulumi-lang-yaml=\"`redis`\" pulumi-lang-java=\"`redis`\"\u003e`redis`\u003c/span\u003e strategy is defined. Defining this field implies using a Redis Sentinel. The minimum length of the array is 1 element.\n"},"sentinelPassword":{"type":"string","description":"Sentinel password to authenticate with a Redis Sentinel instance. If undefined, no AUTH commands are sent to Redis Sentinels.\n"},"sentinelRole":{"type":"string","description":"Sentinel role to use for Redis connections when the \u003cspan pulumi-lang-nodejs=\"`redis`\" pulumi-lang-dotnet=\"`Redis`\" pulumi-lang-go=\"`redis`\" pulumi-lang-python=\"`redis`\" pulumi-lang-yaml=\"`redis`\" pulumi-lang-java=\"`redis`\"\u003e`redis`\u003c/span\u003e strategy is defined. Defining this value implies using Redis Sentinel. must be one of [\"any\", \"master\", \"slave\"]\n"},"sentinelUsername":{"type":"string","description":"Sentinel username to authenticate with a Redis Sentinel instance. If undefined, ACL authentication won't be performed. This requires Redis v6.2.0+.\n"},"serverName":{"type":"string","description":"A string representing an SNI (server name indication) value for TLS.\n"},"ssl":{"type":"boolean","description":"If set to true, uses SSL to connect to Redis. Default: false\n"},"sslVerify":{"type":"boolean","description":"If set to true, verifies the validity of the server SSL certificate. If setting this parameter, also configure \u003cspan pulumi-lang-nodejs=\"`luaSslTrustedCertificate`\" pulumi-lang-dotnet=\"`LuaSslTrustedCertificate`\" pulumi-lang-go=\"`luaSslTrustedCertificate`\" pulumi-lang-python=\"`lua_ssl_trusted_certificate`\" pulumi-lang-yaml=\"`luaSslTrustedCertificate`\" pulumi-lang-java=\"`luaSslTrustedCertificate`\"\u003e`lua_ssl_trusted_certificate`\u003c/span\u003e in `kong.conf` to specify the CA (or server) certificate used by your Redis server. You may also need to configure \u003cspan pulumi-lang-nodejs=\"`luaSslVerifyDepth`\" pulumi-lang-dotnet=\"`LuaSslVerifyDepth`\" pulumi-lang-go=\"`luaSslVerifyDepth`\" pulumi-lang-python=\"`lua_ssl_verify_depth`\" pulumi-lang-yaml=\"`luaSslVerifyDepth`\" pulumi-lang-java=\"`luaSslVerifyDepth`\"\u003e`lua_ssl_verify_depth`\u003c/span\u003e accordingly. Default: false\n"},"username":{"type":"string","description":"Username to use for Redis connections. If undefined, ACL authentication won't be performed. This requires Redis v6.0.0+. To be compatible with Redis v5.x.y, you can set it to \u003cspan pulumi-lang-nodejs=\"`default`\" pulumi-lang-dotnet=\"`Default`\" pulumi-lang-go=\"`default`\" pulumi-lang-python=\"`default`\" pulumi-lang-yaml=\"`default`\" pulumi-lang-java=\"`default`\"\u003e`default`\u003c/span\u003e.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["cloudAuthentication","clusterMaxRedirections","connectTimeout","connectionIsProxied","database","host","keepalivePoolSize","port","readTimeout","sendTimeout","sentinelRole","ssl","sslVerify"]}}},"konnect:index/GatewayPluginAiSemanticCacheConfigVectordbRedisCloudAuthentication:GatewayPluginAiSemanticCacheConfigVectordbRedisCloudAuthentication":{"properties":{"authProvider":{"type":"string","description":"Auth providers to be used to authenticate to a Cloud Provider's Redis instance. must be one of [\"aws\", \"azure\", \"gcp\"]\n"},"awsAccessKeyId":{"type":"string","description":"AWS Access Key ID to be used for authentication when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e.\n"},"awsAssumeRoleArn":{"type":"string","description":"The ARN of the IAM role to assume for generating ElastiCache IAM authentication tokens.\n"},"awsCacheName":{"type":"string","description":"The name of the AWS Elasticache cluster when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e.\n"},"awsIsServerless":{"type":"boolean","description":"This flag specifies whether the cluster is serverless when\u003cspan pulumi-lang-nodejs=\" authProvider \" pulumi-lang-dotnet=\" AuthProvider \" pulumi-lang-go=\" authProvider \" pulumi-lang-python=\" auth_provider \" pulumi-lang-yaml=\" authProvider \" pulumi-lang-java=\" authProvider \"\u003e auth_provider \u003c/span\u003eis set to \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e. Default: true\n"},"awsRegion":{"type":"string","description":"The region of the AWS ElastiCache cluster when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e.\n"},"awsRoleSessionName":{"type":"string","description":"The session name for the temporary credentials when assuming the IAM role.\n"},"awsSecretAccessKey":{"type":"string","description":"AWS Secret Access Key to be used for authentication when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e.\n"},"azureClientId":{"type":"string","description":"Azure Client ID to be used for authentication when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`azure`\" pulumi-lang-dotnet=\"`Azure`\" pulumi-lang-go=\"`azure`\" pulumi-lang-python=\"`azure`\" pulumi-lang-yaml=\"`azure`\" pulumi-lang-java=\"`azure`\"\u003e`azure`\u003c/span\u003e.\n"},"azureClientSecret":{"type":"string","description":"Azure Client Secret to be used for authentication when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`azure`\" pulumi-lang-dotnet=\"`Azure`\" pulumi-lang-go=\"`azure`\" pulumi-lang-python=\"`azure`\" pulumi-lang-yaml=\"`azure`\" pulumi-lang-java=\"`azure`\"\u003e`azure`\u003c/span\u003e.\n"},"azureTenantId":{"type":"string","description":"Azure Tenant ID to be used for authentication when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`azure`\" pulumi-lang-dotnet=\"`Azure`\" pulumi-lang-go=\"`azure`\" pulumi-lang-python=\"`azure`\" pulumi-lang-yaml=\"`azure`\" pulumi-lang-java=\"`azure`\"\u003e`azure`\u003c/span\u003e.\n"},"gcpServiceAccountJson":{"type":"string","description":"GCP Service Account JSON to be used for authentication when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`gcp`\" pulumi-lang-dotnet=\"`Gcp`\" pulumi-lang-go=\"`gcp`\" pulumi-lang-python=\"`gcp`\" pulumi-lang-yaml=\"`gcp`\" pulumi-lang-java=\"`gcp`\"\u003e`gcp`\u003c/span\u003e.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["authProvider","awsIsServerless"]}}},"konnect:index/GatewayPluginAiSemanticCacheConfigVectordbRedisClusterNode:GatewayPluginAiSemanticCacheConfigVectordbRedisClusterNode":{"properties":{"ip":{"type":"string","description":"A string representing a host name, such as example.com. Default: \"127.0.0.1\"\n"},"port":{"type":"number","description":"An integer representing a port number between 0 and 65535, inclusive. Default: 6379\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["ip","port"]}}},"konnect:index/GatewayPluginAiSemanticCacheConfigVectordbRedisSentinelNode:GatewayPluginAiSemanticCacheConfigVectordbRedisSentinelNode":{"properties":{"host":{"type":"string","description":"A string representing a host name, such as example.com. Default: \"127.0.0.1\"\n"},"port":{"type":"number","description":"An integer representing a port number between 0 and 65535, inclusive. Default: 6379\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["host","port"]}}},"konnect:index/GatewayPluginAiSemanticCacheConsumer:GatewayPluginAiSemanticCacheConsumer":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginAiSemanticCacheConsumerGroup:GatewayPluginAiSemanticCacheConsumerGroup":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginAiSemanticCacheOrdering:GatewayPluginAiSemanticCacheOrdering":{"properties":{"after":{"$ref":"#/types/konnect:index%2FGatewayPluginAiSemanticCacheOrderingAfter:GatewayPluginAiSemanticCacheOrderingAfter"},"before":{"$ref":"#/types/konnect:index%2FGatewayPluginAiSemanticCacheOrderingBefore:GatewayPluginAiSemanticCacheOrderingBefore"}},"type":"object","language":{"nodejs":{"requiredOutputs":["after","before"]}}},"konnect:index/GatewayPluginAiSemanticCacheOrderingAfter:GatewayPluginAiSemanticCacheOrderingAfter":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginAiSemanticCacheOrderingBefore:GatewayPluginAiSemanticCacheOrderingBefore":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginAiSemanticCachePartial:GatewayPluginAiSemanticCachePartial":{"properties":{"id":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"name":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"path":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id","name","path"]}}},"konnect:index/GatewayPluginAiSemanticCacheRoute:GatewayPluginAiSemanticCacheRoute":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginAiSemanticCacheService:GatewayPluginAiSemanticCacheService":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginAiSemanticPromptGuardConfig:GatewayPluginAiSemanticPromptGuardConfig":{"properties":{"embeddings":{"$ref":"#/types/konnect:index%2FGatewayPluginAiSemanticPromptGuardConfigEmbeddings:GatewayPluginAiSemanticPromptGuardConfigEmbeddings"},"genaiCategory":{"type":"string","description":"Generative AI category of the request. Default: \"text/generation\"; must be one of [\"audio/speech\", \"audio/transcription\", \"image/generation\", \"realtime/generation\", \"text/embeddings\", \"text/generation\", \"video/generation\"]\n"},"llmFormat":{"type":"string","description":"LLM input and output format and schema to use. Default: \"openai\"; must be one of [\"anthropic\", \"bedrock\", \"cohere\", \"gemini\", \"huggingface\", \"openai\"]\n"},"maxRequestBodySize":{"type":"number","description":"max allowed body size allowed to be introspected. 0 means unlimited, but the size of this body will still be limited by Nginx's client*max*body_size. Default: 1048576\n"},"rules":{"$ref":"#/types/konnect:index%2FGatewayPluginAiSemanticPromptGuardConfigRules:GatewayPluginAiSemanticPromptGuardConfigRules"},"search":{"$ref":"#/types/konnect:index%2FGatewayPluginAiSemanticPromptGuardConfigSearch:GatewayPluginAiSemanticPromptGuardConfigSearch"},"vectordb":{"$ref":"#/types/konnect:index%2FGatewayPluginAiSemanticPromptGuardConfigVectordb:GatewayPluginAiSemanticPromptGuardConfigVectordb"}},"type":"object","required":["embeddings","vectordb"],"language":{"nodejs":{"requiredOutputs":["embeddings","genaiCategory","llmFormat","maxRequestBodySize","rules","search","vectordb"]}}},"konnect:index/GatewayPluginAiSemanticPromptGuardConfigEmbeddings:GatewayPluginAiSemanticPromptGuardConfigEmbeddings":{"properties":{"auth":{"$ref":"#/types/konnect:index%2FGatewayPluginAiSemanticPromptGuardConfigEmbeddingsAuth:GatewayPluginAiSemanticPromptGuardConfigEmbeddingsAuth"},"model":{"$ref":"#/types/konnect:index%2FGatewayPluginAiSemanticPromptGuardConfigEmbeddingsModel:GatewayPluginAiSemanticPromptGuardConfigEmbeddingsModel"}},"type":"object","required":["model"],"language":{"nodejs":{"requiredOutputs":["auth","model"]}}},"konnect:index/GatewayPluginAiSemanticPromptGuardConfigEmbeddingsAuth:GatewayPluginAiSemanticPromptGuardConfigEmbeddingsAuth":{"properties":{"allowOverride":{"type":"boolean","description":"If enabled, the authorization header or parameter can be overridden in the request by the value configured in the plugin. Default: false\n"},"awsAccessKeyId":{"type":"string","description":"Set this if you are using an AWS provider (Bedrock) and you are authenticating using static IAM User credentials. Setting this will override the AWS*ACCESS*KEY_ID environment variable for this plugin instance.\n"},"awsSecretAccessKey":{"type":"string","description":"Set this if you are using an AWS provider (Bedrock) and you are authenticating using static IAM User credentials. Setting this will override the AWS*SECRET*ACCESS_KEY environment variable for this plugin instance.\n"},"azureClientId":{"type":"string","description":"If azure*use*managed_identity is set to true, and you need to use a different user-assigned identity for this LLM instance, set the client ID.\n"},"azureClientSecret":{"type":"string","description":"If azure*use*managed_identity is set to true, and you need to use a different user-assigned identity for this LLM instance, set the client secret.\n"},"azureTenantId":{"type":"string","description":"If azure*use*managed_identity is set to true, and you need to use a different user-assigned identity for this LLM instance, set the tenant ID.\n"},"azureUseManagedIdentity":{"type":"boolean","description":"Set true to use the Azure Cloud Managed Identity (or user-assigned identity) to authenticate with Azure-provider models. Default: false\n"},"gcpServiceAccountJson":{"type":"string","description":"Set this field to the full JSON of the GCP service account to authenticate, if required. If null (and gcp*use*service_account is true), Kong will attempt to read from environment variable `GCP_SERVICE_ACCOUNT`.\n"},"gcpUseServiceAccount":{"type":"boolean","description":"Use service account auth for GCP-based providers and models. Default: false\n"},"headerName":{"type":"string","description":"If AI model requires authentication via Authorization or API key header, specify its name here.\n"},"headerValue":{"type":"string","description":"Specify the full auth header value for 'header_name', for example 'Bearer key' or just 'key'.\n"},"paramLocation":{"type":"string","description":"Specify whether the 'param*name' and 'param*value' options go in a query string, or the POST form/JSON body. must be one of [\"body\", \"query\"]\n"},"paramName":{"type":"string","description":"If AI model requires authentication via query parameter, specify its name here.\n"},"paramValue":{"type":"string","description":"Specify the full parameter value for 'param_name'.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["allowOverride","azureUseManagedIdentity","gcpUseServiceAccount","paramLocation"]}}},"konnect:index/GatewayPluginAiSemanticPromptGuardConfigEmbeddingsModel:GatewayPluginAiSemanticPromptGuardConfigEmbeddingsModel":{"properties":{"name":{"type":"string","description":"Model name to execute.\n"},"options":{"$ref":"#/types/konnect:index%2FGatewayPluginAiSemanticPromptGuardConfigEmbeddingsModelOptions:GatewayPluginAiSemanticPromptGuardConfigEmbeddingsModelOptions","description":"Key/value settings for the model\n"},"provider":{"type":"string","description":"AI provider format to use for embeddings API. must be one of [\"azure\", \"bedrock\", \"gemini\", \"huggingface\", \"mistral\", \"openai\"]\n"}},"type":"object","required":["name","provider"],"language":{"nodejs":{"requiredOutputs":["name","options","provider"]}}},"konnect:index/GatewayPluginAiSemanticPromptGuardConfigEmbeddingsModelOptions:GatewayPluginAiSemanticPromptGuardConfigEmbeddingsModelOptions":{"properties":{"azure":{"$ref":"#/types/konnect:index%2FGatewayPluginAiSemanticPromptGuardConfigEmbeddingsModelOptionsAzure:GatewayPluginAiSemanticPromptGuardConfigEmbeddingsModelOptionsAzure"},"bedrock":{"$ref":"#/types/konnect:index%2FGatewayPluginAiSemanticPromptGuardConfigEmbeddingsModelOptionsBedrock:GatewayPluginAiSemanticPromptGuardConfigEmbeddingsModelOptionsBedrock"},"gemini":{"$ref":"#/types/konnect:index%2FGatewayPluginAiSemanticPromptGuardConfigEmbeddingsModelOptionsGemini:GatewayPluginAiSemanticPromptGuardConfigEmbeddingsModelOptionsGemini"},"huggingface":{"$ref":"#/types/konnect:index%2FGatewayPluginAiSemanticPromptGuardConfigEmbeddingsModelOptionsHuggingface:GatewayPluginAiSemanticPromptGuardConfigEmbeddingsModelOptionsHuggingface"},"upstreamUrl":{"type":"string","description":"upstream url for the embeddings\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["azure","bedrock","gemini","huggingface"]}}},"konnect:index/GatewayPluginAiSemanticPromptGuardConfigEmbeddingsModelOptionsAzure:GatewayPluginAiSemanticPromptGuardConfigEmbeddingsModelOptionsAzure":{"properties":{"apiVersion":{"type":"string","description":"'api-version' for Azure OpenAI instances. Default: \"2023-05-15\"\n"},"deploymentId":{"type":"string","description":"Deployment ID for Azure OpenAI instances.\n"},"instance":{"type":"string","description":"Instance name for Azure OpenAI hosted models.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["apiVersion"]}}},"konnect:index/GatewayPluginAiSemanticPromptGuardConfigEmbeddingsModelOptionsBedrock:GatewayPluginAiSemanticPromptGuardConfigEmbeddingsModelOptionsBedrock":{"properties":{"awsAssumeRoleArn":{"type":"string","description":"If using AWS providers (Bedrock) you can assume a different role after authentication with the current IAM context is successful.\n"},"awsRegion":{"type":"string","description":"If using AWS providers (Bedrock) you can override the `AWS_REGION` environment variable by setting this option.\n"},"awsRoleSessionName":{"type":"string","description":"If using AWS providers (Bedrock), set the identifier of the assumed role session.\n"},"awsStsEndpointUrl":{"type":"string","description":"If using AWS providers (Bedrock), override the STS endpoint URL when assuming a different role.\n"},"embeddingsNormalize":{"type":"boolean","description":"If using AWS providers (Bedrock), set to true to normalize the embeddings. Default: false\n"},"performanceConfigLatency":{"type":"string","description":"Force the client's performance configuration 'latency' for all requests. Leave empty to let the consumer select the performance configuration.\n"},"videoOutputS3Uri":{"type":"string","description":"S3 URI (s3://bucket/prefix) where Bedrock will store generated video files. Required for video generation.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["embeddingsNormalize"]}}},"konnect:index/GatewayPluginAiSemanticPromptGuardConfigEmbeddingsModelOptionsGemini:GatewayPluginAiSemanticPromptGuardConfigEmbeddingsModelOptionsGemini":{"properties":{"apiEndpoint":{"type":"string","description":"If running Gemini on Vertex, specify the regional API endpoint (hostname only).\n"},"locationId":{"type":"string","description":"If running Gemini on Vertex, specify the location ID.\n"},"projectId":{"type":"string","description":"If running Gemini on Vertex, specify the project ID.\n"}},"type":"object"},"konnect:index/GatewayPluginAiSemanticPromptGuardConfigEmbeddingsModelOptionsHuggingface:GatewayPluginAiSemanticPromptGuardConfigEmbeddingsModelOptionsHuggingface":{"properties":{"useCache":{"type":"boolean","description":"Use the cache layer on the inference API\n"},"waitForModel":{"type":"boolean","description":"Wait for the model if it is not ready\n"}},"type":"object"},"konnect:index/GatewayPluginAiSemanticPromptGuardConfigRules:GatewayPluginAiSemanticPromptGuardConfigRules":{"properties":{"allowPrompts":{"type":"array","items":{"type":"string"},"description":"List of prompts to allow.\n"},"denyPrompts":{"type":"array","items":{"type":"string"},"description":"List of prompts to deny.\n"},"matchAllConversationHistory":{"type":"boolean","description":"If false, will ignore all previous chat prompts from the conversation history. Default: false\n"},"matchAllRoles":{"type":"boolean","description":"If true, will match all roles in addition to 'user' role in conversation history. Default: false\n"},"maxRequestBodySize":{"type":"number","description":"max allowed body size allowed to be introspected. 0 means unlimited, but the size of this body will still be limited by Nginx's client*max*body_size.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["matchAllConversationHistory","matchAllRoles"]}}},"konnect:index/GatewayPluginAiSemanticPromptGuardConfigSearch:GatewayPluginAiSemanticPromptGuardConfigSearch":{"properties":{"threshold":{"type":"number","description":"Threshold for the similarity score to be considered a match.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["threshold"]}}},"konnect:index/GatewayPluginAiSemanticPromptGuardConfigVectordb:GatewayPluginAiSemanticPromptGuardConfigVectordb":{"properties":{"dimensions":{"type":"number","description":"the desired dimensionality for the vectors\n"},"distanceMetric":{"type":"string","description":"the distance metric to use for vector searches. must be one of [\"cosine\", \"euclidean\"]\n"},"pgvector":{"$ref":"#/types/konnect:index%2FGatewayPluginAiSemanticPromptGuardConfigVectordbPgvector:GatewayPluginAiSemanticPromptGuardConfigVectordbPgvector"},"redis":{"$ref":"#/types/konnect:index%2FGatewayPluginAiSemanticPromptGuardConfigVectordbRedis:GatewayPluginAiSemanticPromptGuardConfigVectordbRedis"},"strategy":{"type":"string","description":"which vector database driver to use. must be one of [\"pgvector\", \"redis\"]\n"},"threshold":{"type":"number","description":"the default similarity threshold for accepting semantic search results (float)\n"}},"type":"object","required":["dimensions","distanceMetric","strategy"],"language":{"nodejs":{"requiredOutputs":["dimensions","distanceMetric","pgvector","redis","strategy"]}}},"konnect:index/GatewayPluginAiSemanticPromptGuardConfigVectordbPgvector:GatewayPluginAiSemanticPromptGuardConfigVectordbPgvector":{"properties":{"database":{"type":"string","description":"the database of the pgvector database. Default: \"kong-pgvector\"\n"},"host":{"type":"string","description":"the host of the pgvector database. Default: \"127.0.0.1\"\n"},"password":{"type":"string","description":"the password of the pgvector database\n"},"port":{"type":"number","description":"the port of the pgvector database. Default: 5432\n"},"ssl":{"type":"boolean","description":"whether to use ssl for the pgvector database. Default: false\n"},"sslCert":{"type":"string","description":"the path of ssl cert to use for the pgvector database\n"},"sslCertKey":{"type":"string","description":"the path of ssl cert key to use for the pgvector database\n"},"sslRequired":{"type":"boolean","description":"whether ssl is required for the pgvector database. Default: false\n"},"sslVerify":{"type":"boolean","description":"whether to verify ssl for the pgvector database. Default: false\n"},"sslVersion":{"type":"string","description":"the ssl version to use for the pgvector database. Default: \"tlsv1*2\"; must be one of [\"any\", \"tlsv1*2\", \u003cspan pulumi-lang-nodejs=\"\"tlsv13\"\" pulumi-lang-dotnet=\"\"Tlsv13\"\" pulumi-lang-go=\"\"tlsv13\"\" pulumi-lang-python=\"\"tlsv1_3\"\" pulumi-lang-yaml=\"\"tlsv13\"\" pulumi-lang-java=\"\"tlsv13\"\"\u003e\"tlsv1_3\"\u003c/span\u003e]\n"},"timeout":{"type":"number","description":"the timeout of the pgvector database. Default: 5000\n"},"user":{"type":"string","description":"the user of the pgvector database. Default: \"postgres\"\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["database","host","port","ssl","sslRequired","sslVerify","sslVersion","timeout","user"]}}},"konnect:index/GatewayPluginAiSemanticPromptGuardConfigVectordbRedis:GatewayPluginAiSemanticPromptGuardConfigVectordbRedis":{"properties":{"cloudAuthentication":{"$ref":"#/types/konnect:index%2FGatewayPluginAiSemanticPromptGuardConfigVectordbRedisCloudAuthentication:GatewayPluginAiSemanticPromptGuardConfigVectordbRedisCloudAuthentication","description":"Cloud auth related configs for connecting to a Cloud Provider's Redis instance.\n"},"clusterMaxRedirections":{"type":"number","description":"Maximum retry attempts for redirection. Default: 5\n"},"clusterNodes":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginAiSemanticPromptGuardConfigVectordbRedisClusterNode:GatewayPluginAiSemanticPromptGuardConfigVectordbRedisClusterNode"},"description":"Cluster addresses to use for Redis connections when the \u003cspan pulumi-lang-nodejs=\"`redis`\" pulumi-lang-dotnet=\"`Redis`\" pulumi-lang-go=\"`redis`\" pulumi-lang-python=\"`redis`\" pulumi-lang-yaml=\"`redis`\" pulumi-lang-java=\"`redis`\"\u003e`redis`\u003c/span\u003e strategy is defined. Defining this field implies using a Redis Cluster. The minimum length of the array is 1 element.\n"},"connectTimeout":{"type":"number","description":"An integer representing a timeout in milliseconds. Must be between 0 and 2^31-2. Default: 2000\n"},"connectionIsProxied":{"type":"boolean","description":"If the connection to Redis is proxied (e.g. Envoy), set it \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e. Set the \u003cspan pulumi-lang-nodejs=\"`host`\" pulumi-lang-dotnet=\"`Host`\" pulumi-lang-go=\"`host`\" pulumi-lang-python=\"`host`\" pulumi-lang-yaml=\"`host`\" pulumi-lang-java=\"`host`\"\u003e`host`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`port`\" pulumi-lang-dotnet=\"`Port`\" pulumi-lang-go=\"`port`\" pulumi-lang-python=\"`port`\" pulumi-lang-yaml=\"`port`\" pulumi-lang-java=\"`port`\"\u003e`port`\u003c/span\u003e to point to the proxy address. Default: false\n"},"database":{"type":"number","description":"Database to use for the Redis connection when using the \u003cspan pulumi-lang-nodejs=\"`redis`\" pulumi-lang-dotnet=\"`Redis`\" pulumi-lang-go=\"`redis`\" pulumi-lang-python=\"`redis`\" pulumi-lang-yaml=\"`redis`\" pulumi-lang-java=\"`redis`\"\u003e`redis`\u003c/span\u003e strategy. Default: 0\n"},"host":{"type":"string","description":"A string representing a host name, such as example.com. Default: \"127.0.0.1\"\n"},"keepaliveBacklog":{"type":"number","description":"Limits the total number of opened connections for a pool. If the connection pool is full, connection queues above the limit go into the backlog queue. If the backlog queue is full, subsequent connect operations fail and return \u003cspan pulumi-lang-nodejs=\"`nil`\" pulumi-lang-dotnet=\"`Nil`\" pulumi-lang-go=\"`nil`\" pulumi-lang-python=\"`nil`\" pulumi-lang-yaml=\"`nil`\" pulumi-lang-java=\"`nil`\"\u003e`nil`\u003c/span\u003e. Queued operations (subject to set timeouts) resume once the number of connections in the pool is less than \u003cspan pulumi-lang-nodejs=\"`keepalivePoolSize`\" pulumi-lang-dotnet=\"`KeepalivePoolSize`\" pulumi-lang-go=\"`keepalivePoolSize`\" pulumi-lang-python=\"`keepalive_pool_size`\" pulumi-lang-yaml=\"`keepalivePoolSize`\" pulumi-lang-java=\"`keepalivePoolSize`\"\u003e`keepalive_pool_size`\u003c/span\u003e. If latency is high or throughput is low, try increasing this value. Empirically, this value is larger than \u003cspan pulumi-lang-nodejs=\"`keepalivePoolSize`\" pulumi-lang-dotnet=\"`KeepalivePoolSize`\" pulumi-lang-go=\"`keepalivePoolSize`\" pulumi-lang-python=\"`keepalive_pool_size`\" pulumi-lang-yaml=\"`keepalivePoolSize`\" pulumi-lang-java=\"`keepalivePoolSize`\"\u003e`keepalive_pool_size`\u003c/span\u003e.\n"},"keepalivePoolSize":{"type":"number","description":"The size limit for every cosocket connection pool associated with every remote server, per worker process. If neither \u003cspan pulumi-lang-nodejs=\"`keepalivePoolSize`\" pulumi-lang-dotnet=\"`KeepalivePoolSize`\" pulumi-lang-go=\"`keepalivePoolSize`\" pulumi-lang-python=\"`keepalive_pool_size`\" pulumi-lang-yaml=\"`keepalivePoolSize`\" pulumi-lang-java=\"`keepalivePoolSize`\"\u003e`keepalive_pool_size`\u003c/span\u003e nor \u003cspan pulumi-lang-nodejs=\"`keepaliveBacklog`\" pulumi-lang-dotnet=\"`KeepaliveBacklog`\" pulumi-lang-go=\"`keepaliveBacklog`\" pulumi-lang-python=\"`keepalive_backlog`\" pulumi-lang-yaml=\"`keepaliveBacklog`\" pulumi-lang-java=\"`keepaliveBacklog`\"\u003e`keepalive_backlog`\u003c/span\u003e is specified, no pool is created. If \u003cspan pulumi-lang-nodejs=\"`keepalivePoolSize`\" pulumi-lang-dotnet=\"`KeepalivePoolSize`\" pulumi-lang-go=\"`keepalivePoolSize`\" pulumi-lang-python=\"`keepalive_pool_size`\" pulumi-lang-yaml=\"`keepalivePoolSize`\" pulumi-lang-java=\"`keepalivePoolSize`\"\u003e`keepalive_pool_size`\u003c/span\u003e isn't specified but \u003cspan pulumi-lang-nodejs=\"`keepaliveBacklog`\" pulumi-lang-dotnet=\"`KeepaliveBacklog`\" pulumi-lang-go=\"`keepaliveBacklog`\" pulumi-lang-python=\"`keepalive_backlog`\" pulumi-lang-yaml=\"`keepaliveBacklog`\" pulumi-lang-java=\"`keepaliveBacklog`\"\u003e`keepalive_backlog`\u003c/span\u003e is specified, then the pool uses the default value. Try to increase (e.g. 512) this value if latency is high or throughput is low. Default: 256\n"},"password":{"type":"string","description":"Password to use for Redis connections. If undefined, no AUTH commands are sent to Redis.\n"},"port":{"type":"number","description":"An integer representing a port number between 0 and 65535, inclusive. Default: 6379\n"},"readTimeout":{"type":"number","description":"An integer representing a timeout in milliseconds. Must be between 0 and 2^31-2. Default: 2000\n"},"sendTimeout":{"type":"number","description":"An integer representing a timeout in milliseconds. Must be between 0 and 2^31-2. Default: 2000\n"},"sentinelMaster":{"type":"string","description":"Sentinel master to use for Redis connections. Defining this value implies using Redis Sentinel.\n"},"sentinelNodes":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginAiSemanticPromptGuardConfigVectordbRedisSentinelNode:GatewayPluginAiSemanticPromptGuardConfigVectordbRedisSentinelNode"},"description":"Sentinel node addresses to use for Redis connections when the \u003cspan pulumi-lang-nodejs=\"`redis`\" pulumi-lang-dotnet=\"`Redis`\" pulumi-lang-go=\"`redis`\" pulumi-lang-python=\"`redis`\" pulumi-lang-yaml=\"`redis`\" pulumi-lang-java=\"`redis`\"\u003e`redis`\u003c/span\u003e strategy is defined. Defining this field implies using a Redis Sentinel. The minimum length of the array is 1 element.\n"},"sentinelPassword":{"type":"string","description":"Sentinel password to authenticate with a Redis Sentinel instance. If undefined, no AUTH commands are sent to Redis Sentinels.\n"},"sentinelRole":{"type":"string","description":"Sentinel role to use for Redis connections when the \u003cspan pulumi-lang-nodejs=\"`redis`\" pulumi-lang-dotnet=\"`Redis`\" pulumi-lang-go=\"`redis`\" pulumi-lang-python=\"`redis`\" pulumi-lang-yaml=\"`redis`\" pulumi-lang-java=\"`redis`\"\u003e`redis`\u003c/span\u003e strategy is defined. Defining this value implies using Redis Sentinel. must be one of [\"any\", \"master\", \"slave\"]\n"},"sentinelUsername":{"type":"string","description":"Sentinel username to authenticate with a Redis Sentinel instance. If undefined, ACL authentication won't be performed. This requires Redis v6.2.0+.\n"},"serverName":{"type":"string","description":"A string representing an SNI (server name indication) value for TLS.\n"},"ssl":{"type":"boolean","description":"If set to true, uses SSL to connect to Redis. Default: false\n"},"sslVerify":{"type":"boolean","description":"If set to true, verifies the validity of the server SSL certificate. If setting this parameter, also configure \u003cspan pulumi-lang-nodejs=\"`luaSslTrustedCertificate`\" pulumi-lang-dotnet=\"`LuaSslTrustedCertificate`\" pulumi-lang-go=\"`luaSslTrustedCertificate`\" pulumi-lang-python=\"`lua_ssl_trusted_certificate`\" pulumi-lang-yaml=\"`luaSslTrustedCertificate`\" pulumi-lang-java=\"`luaSslTrustedCertificate`\"\u003e`lua_ssl_trusted_certificate`\u003c/span\u003e in `kong.conf` to specify the CA (or server) certificate used by your Redis server. You may also need to configure \u003cspan pulumi-lang-nodejs=\"`luaSslVerifyDepth`\" pulumi-lang-dotnet=\"`LuaSslVerifyDepth`\" pulumi-lang-go=\"`luaSslVerifyDepth`\" pulumi-lang-python=\"`lua_ssl_verify_depth`\" pulumi-lang-yaml=\"`luaSslVerifyDepth`\" pulumi-lang-java=\"`luaSslVerifyDepth`\"\u003e`lua_ssl_verify_depth`\u003c/span\u003e accordingly. Default: false\n"},"username":{"type":"string","description":"Username to use for Redis connections. If undefined, ACL authentication won't be performed. This requires Redis v6.0.0+. To be compatible with Redis v5.x.y, you can set it to \u003cspan pulumi-lang-nodejs=\"`default`\" pulumi-lang-dotnet=\"`Default`\" pulumi-lang-go=\"`default`\" pulumi-lang-python=\"`default`\" pulumi-lang-yaml=\"`default`\" pulumi-lang-java=\"`default`\"\u003e`default`\u003c/span\u003e.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["cloudAuthentication","clusterMaxRedirections","connectTimeout","connectionIsProxied","database","host","keepalivePoolSize","port","readTimeout","sendTimeout","sentinelRole","ssl","sslVerify"]}}},"konnect:index/GatewayPluginAiSemanticPromptGuardConfigVectordbRedisCloudAuthentication:GatewayPluginAiSemanticPromptGuardConfigVectordbRedisCloudAuthentication":{"properties":{"authProvider":{"type":"string","description":"Auth providers to be used to authenticate to a Cloud Provider's Redis instance. must be one of [\"aws\", \"azure\", \"gcp\"]\n"},"awsAccessKeyId":{"type":"string","description":"AWS Access Key ID to be used for authentication when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e.\n"},"awsAssumeRoleArn":{"type":"string","description":"The ARN of the IAM role to assume for generating ElastiCache IAM authentication tokens.\n"},"awsCacheName":{"type":"string","description":"The name of the AWS Elasticache cluster when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e.\n"},"awsIsServerless":{"type":"boolean","description":"This flag specifies whether the cluster is serverless when\u003cspan pulumi-lang-nodejs=\" authProvider \" pulumi-lang-dotnet=\" AuthProvider \" pulumi-lang-go=\" authProvider \" pulumi-lang-python=\" auth_provider \" pulumi-lang-yaml=\" authProvider \" pulumi-lang-java=\" authProvider \"\u003e auth_provider \u003c/span\u003eis set to \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e. Default: true\n"},"awsRegion":{"type":"string","description":"The region of the AWS ElastiCache cluster when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e.\n"},"awsRoleSessionName":{"type":"string","description":"The session name for the temporary credentials when assuming the IAM role.\n"},"awsSecretAccessKey":{"type":"string","description":"AWS Secret Access Key to be used for authentication when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e.\n"},"azureClientId":{"type":"string","description":"Azure Client ID to be used for authentication when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`azure`\" pulumi-lang-dotnet=\"`Azure`\" pulumi-lang-go=\"`azure`\" pulumi-lang-python=\"`azure`\" pulumi-lang-yaml=\"`azure`\" pulumi-lang-java=\"`azure`\"\u003e`azure`\u003c/span\u003e.\n"},"azureClientSecret":{"type":"string","description":"Azure Client Secret to be used for authentication when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`azure`\" pulumi-lang-dotnet=\"`Azure`\" pulumi-lang-go=\"`azure`\" pulumi-lang-python=\"`azure`\" pulumi-lang-yaml=\"`azure`\" pulumi-lang-java=\"`azure`\"\u003e`azure`\u003c/span\u003e.\n"},"azureTenantId":{"type":"string","description":"Azure Tenant ID to be used for authentication when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`azure`\" pulumi-lang-dotnet=\"`Azure`\" pulumi-lang-go=\"`azure`\" pulumi-lang-python=\"`azure`\" pulumi-lang-yaml=\"`azure`\" pulumi-lang-java=\"`azure`\"\u003e`azure`\u003c/span\u003e.\n"},"gcpServiceAccountJson":{"type":"string","description":"GCP Service Account JSON to be used for authentication when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`gcp`\" pulumi-lang-dotnet=\"`Gcp`\" pulumi-lang-go=\"`gcp`\" pulumi-lang-python=\"`gcp`\" pulumi-lang-yaml=\"`gcp`\" pulumi-lang-java=\"`gcp`\"\u003e`gcp`\u003c/span\u003e.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["authProvider","awsIsServerless"]}}},"konnect:index/GatewayPluginAiSemanticPromptGuardConfigVectordbRedisClusterNode:GatewayPluginAiSemanticPromptGuardConfigVectordbRedisClusterNode":{"properties":{"ip":{"type":"string","description":"A string representing a host name, such as example.com. Default: \"127.0.0.1\"\n"},"port":{"type":"number","description":"An integer representing a port number between 0 and 65535, inclusive. Default: 6379\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["ip","port"]}}},"konnect:index/GatewayPluginAiSemanticPromptGuardConfigVectordbRedisSentinelNode:GatewayPluginAiSemanticPromptGuardConfigVectordbRedisSentinelNode":{"properties":{"host":{"type":"string","description":"A string representing a host name, such as example.com. Default: \"127.0.0.1\"\n"},"port":{"type":"number","description":"An integer representing a port number between 0 and 65535, inclusive. Default: 6379\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["host","port"]}}},"konnect:index/GatewayPluginAiSemanticPromptGuardConsumer:GatewayPluginAiSemanticPromptGuardConsumer":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginAiSemanticPromptGuardConsumerGroup:GatewayPluginAiSemanticPromptGuardConsumerGroup":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginAiSemanticPromptGuardOrdering:GatewayPluginAiSemanticPromptGuardOrdering":{"properties":{"after":{"$ref":"#/types/konnect:index%2FGatewayPluginAiSemanticPromptGuardOrderingAfter:GatewayPluginAiSemanticPromptGuardOrderingAfter"},"before":{"$ref":"#/types/konnect:index%2FGatewayPluginAiSemanticPromptGuardOrderingBefore:GatewayPluginAiSemanticPromptGuardOrderingBefore"}},"type":"object","language":{"nodejs":{"requiredOutputs":["after","before"]}}},"konnect:index/GatewayPluginAiSemanticPromptGuardOrderingAfter:GatewayPluginAiSemanticPromptGuardOrderingAfter":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginAiSemanticPromptGuardOrderingBefore:GatewayPluginAiSemanticPromptGuardOrderingBefore":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginAiSemanticPromptGuardPartial:GatewayPluginAiSemanticPromptGuardPartial":{"properties":{"id":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"name":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"path":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id","name","path"]}}},"konnect:index/GatewayPluginAiSemanticPromptGuardRoute:GatewayPluginAiSemanticPromptGuardRoute":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginAiSemanticPromptGuardService:GatewayPluginAiSemanticPromptGuardService":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginAiSemanticResponseGuardConfig:GatewayPluginAiSemanticResponseGuardConfig":{"properties":{"embeddings":{"$ref":"#/types/konnect:index%2FGatewayPluginAiSemanticResponseGuardConfigEmbeddings:GatewayPluginAiSemanticResponseGuardConfigEmbeddings"},"genaiCategory":{"type":"string","description":"Generative AI category of the request. Default: \"text/generation\"; must be one of [\"audio/speech\", \"audio/transcription\", \"image/generation\", \"realtime/generation\", \"text/embeddings\", \"text/generation\", \"video/generation\"]\n"},"llmFormat":{"type":"string","description":"LLM input and output format and schema to use. Default: \"openai\"; must be one of [\"anthropic\", \"bedrock\", \"cohere\", \"gemini\", \"huggingface\", \"openai\"]\n"},"rules":{"$ref":"#/types/konnect:index%2FGatewayPluginAiSemanticResponseGuardConfigRules:GatewayPluginAiSemanticResponseGuardConfigRules"},"search":{"$ref":"#/types/konnect:index%2FGatewayPluginAiSemanticResponseGuardConfigSearch:GatewayPluginAiSemanticResponseGuardConfigSearch"},"vectordb":{"$ref":"#/types/konnect:index%2FGatewayPluginAiSemanticResponseGuardConfigVectordb:GatewayPluginAiSemanticResponseGuardConfigVectordb"}},"type":"object","required":["embeddings","vectordb"],"language":{"nodejs":{"requiredOutputs":["embeddings","genaiCategory","llmFormat","rules","search","vectordb"]}}},"konnect:index/GatewayPluginAiSemanticResponseGuardConfigEmbeddings:GatewayPluginAiSemanticResponseGuardConfigEmbeddings":{"properties":{"auth":{"$ref":"#/types/konnect:index%2FGatewayPluginAiSemanticResponseGuardConfigEmbeddingsAuth:GatewayPluginAiSemanticResponseGuardConfigEmbeddingsAuth"},"model":{"$ref":"#/types/konnect:index%2FGatewayPluginAiSemanticResponseGuardConfigEmbeddingsModel:GatewayPluginAiSemanticResponseGuardConfigEmbeddingsModel"}},"type":"object","required":["model"],"language":{"nodejs":{"requiredOutputs":["auth","model"]}}},"konnect:index/GatewayPluginAiSemanticResponseGuardConfigEmbeddingsAuth:GatewayPluginAiSemanticResponseGuardConfigEmbeddingsAuth":{"properties":{"allowOverride":{"type":"boolean","description":"If enabled, the authorization header or parameter can be overridden in the request by the value configured in the plugin. Default: false\n"},"awsAccessKeyId":{"type":"string","description":"Set this if you are using an AWS provider (Bedrock) and you are authenticating using static IAM User credentials. Setting this will override the AWS*ACCESS*KEY_ID environment variable for this plugin instance.\n"},"awsSecretAccessKey":{"type":"string","description":"Set this if you are using an AWS provider (Bedrock) and you are authenticating using static IAM User credentials. Setting this will override the AWS*SECRET*ACCESS_KEY environment variable for this plugin instance.\n"},"azureClientId":{"type":"string","description":"If azure*use*managed_identity is set to true, and you need to use a different user-assigned identity for this LLM instance, set the client ID.\n"},"azureClientSecret":{"type":"string","description":"If azure*use*managed_identity is set to true, and you need to use a different user-assigned identity for this LLM instance, set the client secret.\n"},"azureTenantId":{"type":"string","description":"If azure*use*managed_identity is set to true, and you need to use a different user-assigned identity for this LLM instance, set the tenant ID.\n"},"azureUseManagedIdentity":{"type":"boolean","description":"Set true to use the Azure Cloud Managed Identity (or user-assigned identity) to authenticate with Azure-provider models. Default: false\n"},"gcpServiceAccountJson":{"type":"string","description":"Set this field to the full JSON of the GCP service account to authenticate, if required. If null (and gcp*use*service_account is true), Kong will attempt to read from environment variable `GCP_SERVICE_ACCOUNT`.\n"},"gcpUseServiceAccount":{"type":"boolean","description":"Use service account auth for GCP-based providers and models. Default: false\n"},"headerName":{"type":"string","description":"If AI model requires authentication via Authorization or API key header, specify its name here.\n"},"headerValue":{"type":"string","description":"Specify the full auth header value for 'header_name', for example 'Bearer key' or just 'key'.\n"},"paramLocation":{"type":"string","description":"Specify whether the 'param*name' and 'param*value' options go in a query string, or the POST form/JSON body. must be one of [\"body\", \"query\"]\n"},"paramName":{"type":"string","description":"If AI model requires authentication via query parameter, specify its name here.\n"},"paramValue":{"type":"string","description":"Specify the full parameter value for 'param_name'.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["allowOverride","azureUseManagedIdentity","gcpUseServiceAccount","paramLocation"]}}},"konnect:index/GatewayPluginAiSemanticResponseGuardConfigEmbeddingsModel:GatewayPluginAiSemanticResponseGuardConfigEmbeddingsModel":{"properties":{"name":{"type":"string","description":"Model name to execute.\n"},"options":{"$ref":"#/types/konnect:index%2FGatewayPluginAiSemanticResponseGuardConfigEmbeddingsModelOptions:GatewayPluginAiSemanticResponseGuardConfigEmbeddingsModelOptions","description":"Key/value settings for the model\n"},"provider":{"type":"string","description":"AI provider format to use for embeddings API. must be one of [\"azure\", \"bedrock\", \"gemini\", \"huggingface\", \"mistral\", \"openai\"]\n"}},"type":"object","required":["name","provider"],"language":{"nodejs":{"requiredOutputs":["name","options","provider"]}}},"konnect:index/GatewayPluginAiSemanticResponseGuardConfigEmbeddingsModelOptions:GatewayPluginAiSemanticResponseGuardConfigEmbeddingsModelOptions":{"properties":{"azure":{"$ref":"#/types/konnect:index%2FGatewayPluginAiSemanticResponseGuardConfigEmbeddingsModelOptionsAzure:GatewayPluginAiSemanticResponseGuardConfigEmbeddingsModelOptionsAzure"},"bedrock":{"$ref":"#/types/konnect:index%2FGatewayPluginAiSemanticResponseGuardConfigEmbeddingsModelOptionsBedrock:GatewayPluginAiSemanticResponseGuardConfigEmbeddingsModelOptionsBedrock"},"gemini":{"$ref":"#/types/konnect:index%2FGatewayPluginAiSemanticResponseGuardConfigEmbeddingsModelOptionsGemini:GatewayPluginAiSemanticResponseGuardConfigEmbeddingsModelOptionsGemini"},"huggingface":{"$ref":"#/types/konnect:index%2FGatewayPluginAiSemanticResponseGuardConfigEmbeddingsModelOptionsHuggingface:GatewayPluginAiSemanticResponseGuardConfigEmbeddingsModelOptionsHuggingface"},"upstreamUrl":{"type":"string","description":"upstream url for the embeddings\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["azure","bedrock","gemini","huggingface"]}}},"konnect:index/GatewayPluginAiSemanticResponseGuardConfigEmbeddingsModelOptionsAzure:GatewayPluginAiSemanticResponseGuardConfigEmbeddingsModelOptionsAzure":{"properties":{"apiVersion":{"type":"string","description":"'api-version' for Azure OpenAI instances. Default: \"2023-05-15\"\n"},"deploymentId":{"type":"string","description":"Deployment ID for Azure OpenAI instances.\n"},"instance":{"type":"string","description":"Instance name for Azure OpenAI hosted models.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["apiVersion"]}}},"konnect:index/GatewayPluginAiSemanticResponseGuardConfigEmbeddingsModelOptionsBedrock:GatewayPluginAiSemanticResponseGuardConfigEmbeddingsModelOptionsBedrock":{"properties":{"awsAssumeRoleArn":{"type":"string","description":"If using AWS providers (Bedrock) you can assume a different role after authentication with the current IAM context is successful.\n"},"awsRegion":{"type":"string","description":"If using AWS providers (Bedrock) you can override the `AWS_REGION` environment variable by setting this option.\n"},"awsRoleSessionName":{"type":"string","description":"If using AWS providers (Bedrock), set the identifier of the assumed role session.\n"},"awsStsEndpointUrl":{"type":"string","description":"If using AWS providers (Bedrock), override the STS endpoint URL when assuming a different role.\n"},"embeddingsNormalize":{"type":"boolean","description":"If using AWS providers (Bedrock), set to true to normalize the embeddings. Default: false\n"},"performanceConfigLatency":{"type":"string","description":"Force the client's performance configuration 'latency' for all requests. Leave empty to let the consumer select the performance configuration.\n"},"videoOutputS3Uri":{"type":"string","description":"S3 URI (s3://bucket/prefix) where Bedrock will store generated video files. Required for video generation.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["embeddingsNormalize"]}}},"konnect:index/GatewayPluginAiSemanticResponseGuardConfigEmbeddingsModelOptionsGemini:GatewayPluginAiSemanticResponseGuardConfigEmbeddingsModelOptionsGemini":{"properties":{"apiEndpoint":{"type":"string","description":"If running Gemini on Vertex, specify the regional API endpoint (hostname only).\n"},"locationId":{"type":"string","description":"If running Gemini on Vertex, specify the location ID.\n"},"projectId":{"type":"string","description":"If running Gemini on Vertex, specify the project ID.\n"}},"type":"object"},"konnect:index/GatewayPluginAiSemanticResponseGuardConfigEmbeddingsModelOptionsHuggingface:GatewayPluginAiSemanticResponseGuardConfigEmbeddingsModelOptionsHuggingface":{"properties":{"useCache":{"type":"boolean","description":"Use the cache layer on the inference API\n"},"waitForModel":{"type":"boolean","description":"Wait for the model if it is not ready\n"}},"type":"object"},"konnect:index/GatewayPluginAiSemanticResponseGuardConfigRules:GatewayPluginAiSemanticResponseGuardConfigRules":{"properties":{"allowResponses":{"type":"array","items":{"type":"string"},"description":"List of responses to allow.\n"},"denyResponses":{"type":"array","items":{"type":"string"},"description":"List of responses to deny.\n"},"maxResponseBodySize":{"type":"number","description":"Max allowed body size allowed to be introspected. 0 means unlimited, but the size of this body will still be limited by Nginx's client*max*body_size. Default: 8192\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["maxResponseBodySize"]}}},"konnect:index/GatewayPluginAiSemanticResponseGuardConfigSearch:GatewayPluginAiSemanticResponseGuardConfigSearch":{"properties":{"threshold":{"type":"number","description":"Threshold for the similarity score to be considered a match.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["threshold"]}}},"konnect:index/GatewayPluginAiSemanticResponseGuardConfigVectordb:GatewayPluginAiSemanticResponseGuardConfigVectordb":{"properties":{"dimensions":{"type":"number","description":"the desired dimensionality for the vectors\n"},"distanceMetric":{"type":"string","description":"the distance metric to use for vector searches. must be one of [\"cosine\", \"euclidean\"]\n"},"pgvector":{"$ref":"#/types/konnect:index%2FGatewayPluginAiSemanticResponseGuardConfigVectordbPgvector:GatewayPluginAiSemanticResponseGuardConfigVectordbPgvector"},"redis":{"$ref":"#/types/konnect:index%2FGatewayPluginAiSemanticResponseGuardConfigVectordbRedis:GatewayPluginAiSemanticResponseGuardConfigVectordbRedis"},"strategy":{"type":"string","description":"which vector database driver to use. must be one of [\"pgvector\", \"redis\"]\n"},"threshold":{"type":"number","description":"the default similarity threshold for accepting semantic search results (float)\n"}},"type":"object","required":["dimensions","distanceMetric","strategy"],"language":{"nodejs":{"requiredOutputs":["dimensions","distanceMetric","pgvector","redis","strategy"]}}},"konnect:index/GatewayPluginAiSemanticResponseGuardConfigVectordbPgvector:GatewayPluginAiSemanticResponseGuardConfigVectordbPgvector":{"properties":{"database":{"type":"string","description":"the database of the pgvector database. Default: \"kong-pgvector\"\n"},"host":{"type":"string","description":"the host of the pgvector database. Default: \"127.0.0.1\"\n"},"password":{"type":"string","description":"the password of the pgvector database\n"},"port":{"type":"number","description":"the port of the pgvector database. Default: 5432\n"},"ssl":{"type":"boolean","description":"whether to use ssl for the pgvector database. Default: false\n"},"sslCert":{"type":"string","description":"the path of ssl cert to use for the pgvector database\n"},"sslCertKey":{"type":"string","description":"the path of ssl cert key to use for the pgvector database\n"},"sslRequired":{"type":"boolean","description":"whether ssl is required for the pgvector database. Default: false\n"},"sslVerify":{"type":"boolean","description":"whether to verify ssl for the pgvector database. Default: false\n"},"sslVersion":{"type":"string","description":"the ssl version to use for the pgvector database. Default: \"tlsv1*2\"; must be one of [\"any\", \"tlsv1*2\", \u003cspan pulumi-lang-nodejs=\"\"tlsv13\"\" pulumi-lang-dotnet=\"\"Tlsv13\"\" pulumi-lang-go=\"\"tlsv13\"\" pulumi-lang-python=\"\"tlsv1_3\"\" pulumi-lang-yaml=\"\"tlsv13\"\" pulumi-lang-java=\"\"tlsv13\"\"\u003e\"tlsv1_3\"\u003c/span\u003e]\n"},"timeout":{"type":"number","description":"the timeout of the pgvector database. Default: 5000\n"},"user":{"type":"string","description":"the user of the pgvector database. Default: \"postgres\"\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["database","host","port","ssl","sslRequired","sslVerify","sslVersion","timeout","user"]}}},"konnect:index/GatewayPluginAiSemanticResponseGuardConfigVectordbRedis:GatewayPluginAiSemanticResponseGuardConfigVectordbRedis":{"properties":{"cloudAuthentication":{"$ref":"#/types/konnect:index%2FGatewayPluginAiSemanticResponseGuardConfigVectordbRedisCloudAuthentication:GatewayPluginAiSemanticResponseGuardConfigVectordbRedisCloudAuthentication","description":"Cloud auth related configs for connecting to a Cloud Provider's Redis instance.\n"},"clusterMaxRedirections":{"type":"number","description":"Maximum retry attempts for redirection. Default: 5\n"},"clusterNodes":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginAiSemanticResponseGuardConfigVectordbRedisClusterNode:GatewayPluginAiSemanticResponseGuardConfigVectordbRedisClusterNode"},"description":"Cluster addresses to use for Redis connections when the \u003cspan pulumi-lang-nodejs=\"`redis`\" pulumi-lang-dotnet=\"`Redis`\" pulumi-lang-go=\"`redis`\" pulumi-lang-python=\"`redis`\" pulumi-lang-yaml=\"`redis`\" pulumi-lang-java=\"`redis`\"\u003e`redis`\u003c/span\u003e strategy is defined. Defining this field implies using a Redis Cluster. The minimum length of the array is 1 element.\n"},"connectTimeout":{"type":"number","description":"An integer representing a timeout in milliseconds. Must be between 0 and 2^31-2. Default: 2000\n"},"connectionIsProxied":{"type":"boolean","description":"If the connection to Redis is proxied (e.g. Envoy), set it \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e. Set the \u003cspan pulumi-lang-nodejs=\"`host`\" pulumi-lang-dotnet=\"`Host`\" pulumi-lang-go=\"`host`\" pulumi-lang-python=\"`host`\" pulumi-lang-yaml=\"`host`\" pulumi-lang-java=\"`host`\"\u003e`host`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`port`\" pulumi-lang-dotnet=\"`Port`\" pulumi-lang-go=\"`port`\" pulumi-lang-python=\"`port`\" pulumi-lang-yaml=\"`port`\" pulumi-lang-java=\"`port`\"\u003e`port`\u003c/span\u003e to point to the proxy address. Default: false\n"},"database":{"type":"number","description":"Database to use for the Redis connection when using the \u003cspan pulumi-lang-nodejs=\"`redis`\" pulumi-lang-dotnet=\"`Redis`\" pulumi-lang-go=\"`redis`\" pulumi-lang-python=\"`redis`\" pulumi-lang-yaml=\"`redis`\" pulumi-lang-java=\"`redis`\"\u003e`redis`\u003c/span\u003e strategy. Default: 0\n"},"host":{"type":"string","description":"A string representing a host name, such as example.com. Default: \"127.0.0.1\"\n"},"keepaliveBacklog":{"type":"number","description":"Limits the total number of opened connections for a pool. If the connection pool is full, connection queues above the limit go into the backlog queue. If the backlog queue is full, subsequent connect operations fail and return \u003cspan pulumi-lang-nodejs=\"`nil`\" pulumi-lang-dotnet=\"`Nil`\" pulumi-lang-go=\"`nil`\" pulumi-lang-python=\"`nil`\" pulumi-lang-yaml=\"`nil`\" pulumi-lang-java=\"`nil`\"\u003e`nil`\u003c/span\u003e. Queued operations (subject to set timeouts) resume once the number of connections in the pool is less than \u003cspan pulumi-lang-nodejs=\"`keepalivePoolSize`\" pulumi-lang-dotnet=\"`KeepalivePoolSize`\" pulumi-lang-go=\"`keepalivePoolSize`\" pulumi-lang-python=\"`keepalive_pool_size`\" pulumi-lang-yaml=\"`keepalivePoolSize`\" pulumi-lang-java=\"`keepalivePoolSize`\"\u003e`keepalive_pool_size`\u003c/span\u003e. If latency is high or throughput is low, try increasing this value. Empirically, this value is larger than \u003cspan pulumi-lang-nodejs=\"`keepalivePoolSize`\" pulumi-lang-dotnet=\"`KeepalivePoolSize`\" pulumi-lang-go=\"`keepalivePoolSize`\" pulumi-lang-python=\"`keepalive_pool_size`\" pulumi-lang-yaml=\"`keepalivePoolSize`\" pulumi-lang-java=\"`keepalivePoolSize`\"\u003e`keepalive_pool_size`\u003c/span\u003e.\n"},"keepalivePoolSize":{"type":"number","description":"The size limit for every cosocket connection pool associated with every remote server, per worker process. If neither \u003cspan pulumi-lang-nodejs=\"`keepalivePoolSize`\" pulumi-lang-dotnet=\"`KeepalivePoolSize`\" pulumi-lang-go=\"`keepalivePoolSize`\" pulumi-lang-python=\"`keepalive_pool_size`\" pulumi-lang-yaml=\"`keepalivePoolSize`\" pulumi-lang-java=\"`keepalivePoolSize`\"\u003e`keepalive_pool_size`\u003c/span\u003e nor \u003cspan pulumi-lang-nodejs=\"`keepaliveBacklog`\" pulumi-lang-dotnet=\"`KeepaliveBacklog`\" pulumi-lang-go=\"`keepaliveBacklog`\" pulumi-lang-python=\"`keepalive_backlog`\" pulumi-lang-yaml=\"`keepaliveBacklog`\" pulumi-lang-java=\"`keepaliveBacklog`\"\u003e`keepalive_backlog`\u003c/span\u003e is specified, no pool is created. If \u003cspan pulumi-lang-nodejs=\"`keepalivePoolSize`\" pulumi-lang-dotnet=\"`KeepalivePoolSize`\" pulumi-lang-go=\"`keepalivePoolSize`\" pulumi-lang-python=\"`keepalive_pool_size`\" pulumi-lang-yaml=\"`keepalivePoolSize`\" pulumi-lang-java=\"`keepalivePoolSize`\"\u003e`keepalive_pool_size`\u003c/span\u003e isn't specified but \u003cspan pulumi-lang-nodejs=\"`keepaliveBacklog`\" pulumi-lang-dotnet=\"`KeepaliveBacklog`\" pulumi-lang-go=\"`keepaliveBacklog`\" pulumi-lang-python=\"`keepalive_backlog`\" pulumi-lang-yaml=\"`keepaliveBacklog`\" pulumi-lang-java=\"`keepaliveBacklog`\"\u003e`keepalive_backlog`\u003c/span\u003e is specified, then the pool uses the default value. Try to increase (e.g. 512) this value if latency is high or throughput is low. Default: 256\n"},"password":{"type":"string","description":"Password to use for Redis connections. If undefined, no AUTH commands are sent to Redis.\n"},"port":{"type":"number","description":"An integer representing a port number between 0 and 65535, inclusive. Default: 6379\n"},"readTimeout":{"type":"number","description":"An integer representing a timeout in milliseconds. Must be between 0 and 2^31-2. Default: 2000\n"},"sendTimeout":{"type":"number","description":"An integer representing a timeout in milliseconds. Must be between 0 and 2^31-2. Default: 2000\n"},"sentinelMaster":{"type":"string","description":"Sentinel master to use for Redis connections. Defining this value implies using Redis Sentinel.\n"},"sentinelNodes":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginAiSemanticResponseGuardConfigVectordbRedisSentinelNode:GatewayPluginAiSemanticResponseGuardConfigVectordbRedisSentinelNode"},"description":"Sentinel node addresses to use for Redis connections when the \u003cspan pulumi-lang-nodejs=\"`redis`\" pulumi-lang-dotnet=\"`Redis`\" pulumi-lang-go=\"`redis`\" pulumi-lang-python=\"`redis`\" pulumi-lang-yaml=\"`redis`\" pulumi-lang-java=\"`redis`\"\u003e`redis`\u003c/span\u003e strategy is defined. Defining this field implies using a Redis Sentinel. The minimum length of the array is 1 element.\n"},"sentinelPassword":{"type":"string","description":"Sentinel password to authenticate with a Redis Sentinel instance. If undefined, no AUTH commands are sent to Redis Sentinels.\n"},"sentinelRole":{"type":"string","description":"Sentinel role to use for Redis connections when the \u003cspan pulumi-lang-nodejs=\"`redis`\" pulumi-lang-dotnet=\"`Redis`\" pulumi-lang-go=\"`redis`\" pulumi-lang-python=\"`redis`\" pulumi-lang-yaml=\"`redis`\" pulumi-lang-java=\"`redis`\"\u003e`redis`\u003c/span\u003e strategy is defined. Defining this value implies using Redis Sentinel. must be one of [\"any\", \"master\", \"slave\"]\n"},"sentinelUsername":{"type":"string","description":"Sentinel username to authenticate with a Redis Sentinel instance. If undefined, ACL authentication won't be performed. This requires Redis v6.2.0+.\n"},"serverName":{"type":"string","description":"A string representing an SNI (server name indication) value for TLS.\n"},"ssl":{"type":"boolean","description":"If set to true, uses SSL to connect to Redis. Default: false\n"},"sslVerify":{"type":"boolean","description":"If set to true, verifies the validity of the server SSL certificate. If setting this parameter, also configure \u003cspan pulumi-lang-nodejs=\"`luaSslTrustedCertificate`\" pulumi-lang-dotnet=\"`LuaSslTrustedCertificate`\" pulumi-lang-go=\"`luaSslTrustedCertificate`\" pulumi-lang-python=\"`lua_ssl_trusted_certificate`\" pulumi-lang-yaml=\"`luaSslTrustedCertificate`\" pulumi-lang-java=\"`luaSslTrustedCertificate`\"\u003e`lua_ssl_trusted_certificate`\u003c/span\u003e in `kong.conf` to specify the CA (or server) certificate used by your Redis server. You may also need to configure \u003cspan pulumi-lang-nodejs=\"`luaSslVerifyDepth`\" pulumi-lang-dotnet=\"`LuaSslVerifyDepth`\" pulumi-lang-go=\"`luaSslVerifyDepth`\" pulumi-lang-python=\"`lua_ssl_verify_depth`\" pulumi-lang-yaml=\"`luaSslVerifyDepth`\" pulumi-lang-java=\"`luaSslVerifyDepth`\"\u003e`lua_ssl_verify_depth`\u003c/span\u003e accordingly. Default: false\n"},"username":{"type":"string","description":"Username to use for Redis connections. If undefined, ACL authentication won't be performed. This requires Redis v6.0.0+. To be compatible with Redis v5.x.y, you can set it to \u003cspan pulumi-lang-nodejs=\"`default`\" pulumi-lang-dotnet=\"`Default`\" pulumi-lang-go=\"`default`\" pulumi-lang-python=\"`default`\" pulumi-lang-yaml=\"`default`\" pulumi-lang-java=\"`default`\"\u003e`default`\u003c/span\u003e.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["cloudAuthentication","clusterMaxRedirections","connectTimeout","connectionIsProxied","database","host","keepalivePoolSize","port","readTimeout","sendTimeout","sentinelRole","ssl","sslVerify"]}}},"konnect:index/GatewayPluginAiSemanticResponseGuardConfigVectordbRedisCloudAuthentication:GatewayPluginAiSemanticResponseGuardConfigVectordbRedisCloudAuthentication":{"properties":{"authProvider":{"type":"string","description":"Auth providers to be used to authenticate to a Cloud Provider's Redis instance. must be one of [\"aws\", \"azure\", \"gcp\"]\n"},"awsAccessKeyId":{"type":"string","description":"AWS Access Key ID to be used for authentication when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e.\n"},"awsAssumeRoleArn":{"type":"string","description":"The ARN of the IAM role to assume for generating ElastiCache IAM authentication tokens.\n"},"awsCacheName":{"type":"string","description":"The name of the AWS Elasticache cluster when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e.\n"},"awsIsServerless":{"type":"boolean","description":"This flag specifies whether the cluster is serverless when\u003cspan pulumi-lang-nodejs=\" authProvider \" pulumi-lang-dotnet=\" AuthProvider \" pulumi-lang-go=\" authProvider \" pulumi-lang-python=\" auth_provider \" pulumi-lang-yaml=\" authProvider \" pulumi-lang-java=\" authProvider \"\u003e auth_provider \u003c/span\u003eis set to \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e. Default: true\n"},"awsRegion":{"type":"string","description":"The region of the AWS ElastiCache cluster when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e.\n"},"awsRoleSessionName":{"type":"string","description":"The session name for the temporary credentials when assuming the IAM role.\n"},"awsSecretAccessKey":{"type":"string","description":"AWS Secret Access Key to be used for authentication when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e.\n"},"azureClientId":{"type":"string","description":"Azure Client ID to be used for authentication when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`azure`\" pulumi-lang-dotnet=\"`Azure`\" pulumi-lang-go=\"`azure`\" pulumi-lang-python=\"`azure`\" pulumi-lang-yaml=\"`azure`\" pulumi-lang-java=\"`azure`\"\u003e`azure`\u003c/span\u003e.\n"},"azureClientSecret":{"type":"string","description":"Azure Client Secret to be used for authentication when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`azure`\" pulumi-lang-dotnet=\"`Azure`\" pulumi-lang-go=\"`azure`\" pulumi-lang-python=\"`azure`\" pulumi-lang-yaml=\"`azure`\" pulumi-lang-java=\"`azure`\"\u003e`azure`\u003c/span\u003e.\n"},"azureTenantId":{"type":"string","description":"Azure Tenant ID to be used for authentication when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`azure`\" pulumi-lang-dotnet=\"`Azure`\" pulumi-lang-go=\"`azure`\" pulumi-lang-python=\"`azure`\" pulumi-lang-yaml=\"`azure`\" pulumi-lang-java=\"`azure`\"\u003e`azure`\u003c/span\u003e.\n"},"gcpServiceAccountJson":{"type":"string","description":"GCP Service Account JSON to be used for authentication when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`gcp`\" pulumi-lang-dotnet=\"`Gcp`\" pulumi-lang-go=\"`gcp`\" pulumi-lang-python=\"`gcp`\" pulumi-lang-yaml=\"`gcp`\" pulumi-lang-java=\"`gcp`\"\u003e`gcp`\u003c/span\u003e.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["authProvider","awsIsServerless"]}}},"konnect:index/GatewayPluginAiSemanticResponseGuardConfigVectordbRedisClusterNode:GatewayPluginAiSemanticResponseGuardConfigVectordbRedisClusterNode":{"properties":{"ip":{"type":"string","description":"A string representing a host name, such as example.com. Default: \"127.0.0.1\"\n"},"port":{"type":"number","description":"An integer representing a port number between 0 and 65535, inclusive. Default: 6379\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["ip","port"]}}},"konnect:index/GatewayPluginAiSemanticResponseGuardConfigVectordbRedisSentinelNode:GatewayPluginAiSemanticResponseGuardConfigVectordbRedisSentinelNode":{"properties":{"host":{"type":"string","description":"A string representing a host name, such as example.com. Default: \"127.0.0.1\"\n"},"port":{"type":"number","description":"An integer representing a port number between 0 and 65535, inclusive. Default: 6379\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["host","port"]}}},"konnect:index/GatewayPluginAiSemanticResponseGuardConsumer:GatewayPluginAiSemanticResponseGuardConsumer":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginAiSemanticResponseGuardConsumerGroup:GatewayPluginAiSemanticResponseGuardConsumerGroup":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginAiSemanticResponseGuardOrdering:GatewayPluginAiSemanticResponseGuardOrdering":{"properties":{"after":{"$ref":"#/types/konnect:index%2FGatewayPluginAiSemanticResponseGuardOrderingAfter:GatewayPluginAiSemanticResponseGuardOrderingAfter"},"before":{"$ref":"#/types/konnect:index%2FGatewayPluginAiSemanticResponseGuardOrderingBefore:GatewayPluginAiSemanticResponseGuardOrderingBefore"}},"type":"object","language":{"nodejs":{"requiredOutputs":["after","before"]}}},"konnect:index/GatewayPluginAiSemanticResponseGuardOrderingAfter:GatewayPluginAiSemanticResponseGuardOrderingAfter":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginAiSemanticResponseGuardOrderingBefore:GatewayPluginAiSemanticResponseGuardOrderingBefore":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginAiSemanticResponseGuardPartial:GatewayPluginAiSemanticResponseGuardPartial":{"properties":{"id":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"name":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"path":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id","name","path"]}}},"konnect:index/GatewayPluginAiSemanticResponseGuardRoute:GatewayPluginAiSemanticResponseGuardRoute":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginAiSemanticResponseGuardService:GatewayPluginAiSemanticResponseGuardService":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginAppDynamicsConsumer:GatewayPluginAppDynamicsConsumer":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginAppDynamicsOrdering:GatewayPluginAppDynamicsOrdering":{"properties":{"after":{"$ref":"#/types/konnect:index%2FGatewayPluginAppDynamicsOrderingAfter:GatewayPluginAppDynamicsOrderingAfter"},"before":{"$ref":"#/types/konnect:index%2FGatewayPluginAppDynamicsOrderingBefore:GatewayPluginAppDynamicsOrderingBefore"}},"type":"object","language":{"nodejs":{"requiredOutputs":["after","before"]}}},"konnect:index/GatewayPluginAppDynamicsOrderingAfter:GatewayPluginAppDynamicsOrderingAfter":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginAppDynamicsOrderingBefore:GatewayPluginAppDynamicsOrderingBefore":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginAppDynamicsPartial:GatewayPluginAppDynamicsPartial":{"properties":{"id":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"name":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"path":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id","name","path"]}}},"konnect:index/GatewayPluginAppDynamicsRoute:GatewayPluginAppDynamicsRoute":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginAppDynamicsService:GatewayPluginAppDynamicsService":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginAwsLambdaConfig:GatewayPluginAwsLambdaConfig":{"properties":{"awsAssumeRoleArn":{"type":"string","description":"The target AWS IAM role ARN used to invoke the Lambda function.\n"},"awsImdsProtocolVersion":{"type":"string","description":"Identifier to select the IMDS protocol version to use: \u003cspan pulumi-lang-nodejs=\"`v1`\" pulumi-lang-dotnet=\"`V1`\" pulumi-lang-go=\"`v1`\" pulumi-lang-python=\"`v1`\" pulumi-lang-yaml=\"`v1`\" pulumi-lang-java=\"`v1`\"\u003e`v1`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`v2`\" pulumi-lang-dotnet=\"`V2`\" pulumi-lang-go=\"`v2`\" pulumi-lang-python=\"`v2`\" pulumi-lang-yaml=\"`v2`\" pulumi-lang-java=\"`v2`\"\u003e`v2`\u003c/span\u003e. Default: \"v1\"; must be one of [\"v1\", \"v2\"]\n"},"awsKey":{"type":"string","description":"The AWS key credential to be used when invoking the function.\n"},"awsRegion":{"type":"string","description":"A string representing a host name, such as example.com.\n"},"awsRoleSessionName":{"type":"string","description":"The identifier of the assumed role session. Default: \"kong\"\n"},"awsSecret":{"type":"string","description":"The AWS secret credential to be used when invoking the function.\n"},"awsStsEndpointUrl":{"type":"string","description":"A string representing a URL, such as https://example.com/path/to/resource?q=search.\n"},"awsgatewayCompatible":{"type":"boolean","description":"An optional value that defines whether the plugin should wrap requests into the Amazon API gateway. Default: false\n"},"awsgatewayCompatiblePayloadVersion":{"type":"string","description":"An optional value that defines which version will be used to generate the AWS API Gateway compatible payload. The default will be `1.0`. Default: \"1.0\"; must be one of [\"1.0\", \"2.0\"]\n"},"base64EncodeBody":{"type":"boolean","description":"An optional value that Base64-encodes the request body. Default: true\n"},"disableHttps":{"type":"boolean","description":"Default: false\n"},"emptyArraysMode":{"type":"string","description":"An optional value that defines whether Kong should send empty arrays (returned by Lambda function) as `[]` arrays or `{}` objects in JSON responses. The value \u003cspan pulumi-lang-nodejs=\"`legacy`\" pulumi-lang-dotnet=\"`Legacy`\" pulumi-lang-go=\"`legacy`\" pulumi-lang-python=\"`legacy`\" pulumi-lang-yaml=\"`legacy`\" pulumi-lang-java=\"`legacy`\"\u003e`legacy`\u003c/span\u003e means Kong will send empty arrays as `{}` objects in response. Default: \"legacy\"; must be one of [\"correct\", \"legacy\"]\n"},"forwardRequestBody":{"type":"boolean","description":"An optional value that defines whether the request body is sent in the request*body field of the JSON-encoded request. If the body arguments can be parsed, they are sent in the separate request*body_args field of the request. Default: false\n"},"forwardRequestHeaders":{"type":"boolean","description":"An optional value that defines whether the original HTTP request headers are sent as a map in the\u003cspan pulumi-lang-nodejs=\" requestHeaders \" pulumi-lang-dotnet=\" RequestHeaders \" pulumi-lang-go=\" requestHeaders \" pulumi-lang-python=\" request_headers \" pulumi-lang-yaml=\" requestHeaders \" pulumi-lang-java=\" requestHeaders \"\u003e request_headers \u003c/span\u003efield of the JSON-encoded request. Default: false\n"},"forwardRequestMethod":{"type":"boolean","description":"An optional value that defines whether the original HTTP request method verb is sent in the\u003cspan pulumi-lang-nodejs=\" requestMethod \" pulumi-lang-dotnet=\" RequestMethod \" pulumi-lang-go=\" requestMethod \" pulumi-lang-python=\" request_method \" pulumi-lang-yaml=\" requestMethod \" pulumi-lang-java=\" requestMethod \"\u003e request_method \u003c/span\u003efield of the JSON-encoded request. Default: false\n"},"forwardRequestUri":{"type":"boolean","description":"An optional value that defines whether the original HTTP request URI is sent in the\u003cspan pulumi-lang-nodejs=\" requestUri \" pulumi-lang-dotnet=\" RequestUri \" pulumi-lang-go=\" requestUri \" pulumi-lang-python=\" request_uri \" pulumi-lang-yaml=\" requestUri \" pulumi-lang-java=\" requestUri \"\u003e request_uri \u003c/span\u003efield of the JSON-encoded request. Default: false\n"},"functionName":{"type":"string","description":"The AWS Lambda function to invoke. Both function name and function ARN (including partial) are supported.\n"},"host":{"type":"string","description":"A string representing a host name, such as example.com.\n"},"invocationType":{"type":"string","description":"The InvocationType to use when invoking the function. Available types are RequestResponse, Event, DryRun. Default: \"RequestResponse\"; must be one of [\"DryRun\", \"Event\", \"RequestResponse\"]\n"},"isProxyIntegration":{"type":"boolean","description":"An optional value that defines whether the response format to receive from the Lambda to this format. Default: false\n"},"keepalive":{"type":"number","description":"An optional value in milliseconds that defines how long an idle connection lives before being closed. Default: 60000\n"},"logType":{"type":"string","description":"The LogType to use when invoking the function. By default, None and Tail are supported. Default: \"Tail\"; must be one of [\"None\", \"Tail\"]\n"},"port":{"type":"number","description":"An integer representing a port number between 0 and 65535, inclusive. Default: 443\n"},"proxyUrl":{"type":"string","description":"A string representing a URL, such as https://example.com/path/to/resource?q=search.\n"},"qualifier":{"type":"string","description":"The qualifier to use when invoking the function.\n"},"skipLargeBodies":{"type":"boolean","description":"An optional value that defines whether Kong should send large bodies that are buffered to disk. Default: true\n"},"timeout":{"type":"number","description":"An optional timeout in milliseconds when invoking the function. Default: 60000\n"},"unhandledStatus":{"type":"number","description":"The response status code to use (instead of the default 200, 202, or 204) in the case of an Unhandled Function Error.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["awsImdsProtocolVersion","awsRoleSessionName","awsgatewayCompatible","awsgatewayCompatiblePayloadVersion","base64EncodeBody","disableHttps","emptyArraysMode","forwardRequestBody","forwardRequestHeaders","forwardRequestMethod","forwardRequestUri","invocationType","isProxyIntegration","keepalive","logType","port","skipLargeBodies","timeout"]}}},"konnect:index/GatewayPluginAwsLambdaConsumer:GatewayPluginAwsLambdaConsumer":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginAwsLambdaOrdering:GatewayPluginAwsLambdaOrdering":{"properties":{"after":{"$ref":"#/types/konnect:index%2FGatewayPluginAwsLambdaOrderingAfter:GatewayPluginAwsLambdaOrderingAfter"},"before":{"$ref":"#/types/konnect:index%2FGatewayPluginAwsLambdaOrderingBefore:GatewayPluginAwsLambdaOrderingBefore"}},"type":"object","language":{"nodejs":{"requiredOutputs":["after","before"]}}},"konnect:index/GatewayPluginAwsLambdaOrderingAfter:GatewayPluginAwsLambdaOrderingAfter":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginAwsLambdaOrderingBefore:GatewayPluginAwsLambdaOrderingBefore":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginAwsLambdaPartial:GatewayPluginAwsLambdaPartial":{"properties":{"id":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"name":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"path":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id","name","path"]}}},"konnect:index/GatewayPluginAwsLambdaRoute:GatewayPluginAwsLambdaRoute":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginAwsLambdaService:GatewayPluginAwsLambdaService":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginAzureFunctionsConfig:GatewayPluginAzureFunctionsConfig":{"properties":{"apikey":{"type":"string","description":"The apikey to access the Azure resources. If provided, it is injected as the `x-functions-key` header.\n"},"appname":{"type":"string","description":"The Azure app name.\n"},"clientid":{"type":"string","description":"The \u003cspan pulumi-lang-nodejs=\"`clientid`\" pulumi-lang-dotnet=\"`Clientid`\" pulumi-lang-go=\"`clientid`\" pulumi-lang-python=\"`clientid`\" pulumi-lang-yaml=\"`clientid`\" pulumi-lang-java=\"`clientid`\"\u003e`clientid`\u003c/span\u003e to access the Azure resources. If provided, it is injected as the `x-functions-clientid` header.\n"},"functionname":{"type":"string","description":"Name of the Azure function to invoke.\n"},"hostdomain":{"type":"string","description":"The domain where the function resides. Default: \"azurewebsites.net\"\n"},"https":{"type":"boolean","description":"Use of HTTPS to connect with the Azure Functions server. Default: true\n"},"httpsVerify":{"type":"boolean","description":"Set to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e to authenticate the Azure Functions server. Default: false\n"},"keepalive":{"type":"number","description":"Time in milliseconds during which an idle connection to the Azure Functions server lives before being closed. Default: 60000\n"},"routeprefix":{"type":"string","description":"Route prefix to use. Default: \"api\"\n"},"timeout":{"type":"number","description":"Timeout in milliseconds before closing a connection to the Azure Functions server. Default: 600000\n"}},"type":"object","required":["appname","functionname"],"language":{"nodejs":{"requiredOutputs":["appname","functionname","hostdomain","https","httpsVerify","keepalive","routeprefix","timeout"]}}},"konnect:index/GatewayPluginAzureFunctionsConsumer:GatewayPluginAzureFunctionsConsumer":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginAzureFunctionsOrdering:GatewayPluginAzureFunctionsOrdering":{"properties":{"after":{"$ref":"#/types/konnect:index%2FGatewayPluginAzureFunctionsOrderingAfter:GatewayPluginAzureFunctionsOrderingAfter"},"before":{"$ref":"#/types/konnect:index%2FGatewayPluginAzureFunctionsOrderingBefore:GatewayPluginAzureFunctionsOrderingBefore"}},"type":"object","language":{"nodejs":{"requiredOutputs":["after","before"]}}},"konnect:index/GatewayPluginAzureFunctionsOrderingAfter:GatewayPluginAzureFunctionsOrderingAfter":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginAzureFunctionsOrderingBefore:GatewayPluginAzureFunctionsOrderingBefore":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginAzureFunctionsPartial:GatewayPluginAzureFunctionsPartial":{"properties":{"id":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"name":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"path":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id","name","path"]}}},"konnect:index/GatewayPluginAzureFunctionsRoute:GatewayPluginAzureFunctionsRoute":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginAzureFunctionsService:GatewayPluginAzureFunctionsService":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginBasicAuthConfig:GatewayPluginBasicAuthConfig":{"properties":{"anonymous":{"type":"string","description":"An optional string (Consumer UUID or username) value to use as an “anonymous” consumer if authentication fails. If empty (default null), the request will fail with an authentication failure \u003cspan pulumi-lang-nodejs=\"`4xx`\" pulumi-lang-dotnet=\"`4xx`\" pulumi-lang-go=\"`4xx`\" pulumi-lang-python=\"`4xx`\" pulumi-lang-yaml=\"`4xx`\" pulumi-lang-java=\"`4xx`\"\u003e`4xx`\u003c/span\u003e. Please note that this value must refer to the Consumer \u003cspan pulumi-lang-nodejs=\"`id`\" pulumi-lang-dotnet=\"`Id`\" pulumi-lang-go=\"`id`\" pulumi-lang-python=\"`id`\" pulumi-lang-yaml=\"`id`\" pulumi-lang-java=\"`id`\"\u003e`id`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`username`\" pulumi-lang-dotnet=\"`Username`\" pulumi-lang-go=\"`username`\" pulumi-lang-python=\"`username`\" pulumi-lang-yaml=\"`username`\" pulumi-lang-java=\"`username`\"\u003e`username`\u003c/span\u003e attribute, and **not** its \u003cspan pulumi-lang-nodejs=\"`customId`\" pulumi-lang-dotnet=\"`CustomId`\" pulumi-lang-go=\"`customId`\" pulumi-lang-python=\"`custom_id`\" pulumi-lang-yaml=\"`customId`\" pulumi-lang-java=\"`customId`\"\u003e`custom_id`\u003c/span\u003e.\n"},"bruteForceProtection":{"$ref":"#/types/konnect:index%2FGatewayPluginBasicAuthConfigBruteForceProtection:GatewayPluginBasicAuthConfigBruteForceProtection"},"hideCredentials":{"type":"boolean","description":"An optional boolean value telling the plugin to show or hide the credential from the upstream service. If \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, the plugin will strip the credential from the request (i.e. the `Authorization` header) before proxying it. Default: false\n"},"realm":{"type":"string","description":"When authentication fails the plugin sends `WWW-Authenticate` header with \u003cspan pulumi-lang-nodejs=\"`realm`\" pulumi-lang-dotnet=\"`Realm`\" pulumi-lang-go=\"`realm`\" pulumi-lang-python=\"`realm`\" pulumi-lang-yaml=\"`realm`\" pulumi-lang-java=\"`realm`\"\u003e`realm`\u003c/span\u003e attribute value. Default: \"service\"\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["bruteForceProtection","hideCredentials","realm"]}}},"konnect:index/GatewayPluginBasicAuthConfigBruteForceProtection:GatewayPluginBasicAuthConfigBruteForceProtection":{"properties":{"redis":{"$ref":"#/types/konnect:index%2FGatewayPluginBasicAuthConfigBruteForceProtectionRedis:GatewayPluginBasicAuthConfigBruteForceProtectionRedis","description":"Redis configuration\n"},"strategy":{"type":"string","description":"The brute force protection strategy to use for retrieving and incrementing the limits. Available values are: \u003cspan pulumi-lang-nodejs=\"`cluster`\" pulumi-lang-dotnet=\"`Cluster`\" pulumi-lang-go=\"`cluster`\" pulumi-lang-python=\"`cluster`\" pulumi-lang-yaml=\"`cluster`\" pulumi-lang-java=\"`cluster`\"\u003e`cluster`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`redis`\" pulumi-lang-dotnet=\"`Redis`\" pulumi-lang-go=\"`redis`\" pulumi-lang-python=\"`redis`\" pulumi-lang-yaml=\"`redis`\" pulumi-lang-java=\"`redis`\"\u003e`redis`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`memory`\" pulumi-lang-dotnet=\"`Memory`\" pulumi-lang-go=\"`memory`\" pulumi-lang-python=\"`memory`\" pulumi-lang-yaml=\"`memory`\" pulumi-lang-java=\"`memory`\"\u003e`memory`\u003c/span\u003e, and \u003cspan pulumi-lang-nodejs=\"`off`\" pulumi-lang-dotnet=\"`Off`\" pulumi-lang-go=\"`off`\" pulumi-lang-python=\"`off`\" pulumi-lang-yaml=\"`off`\" pulumi-lang-java=\"`off`\"\u003e`off`\u003c/span\u003e. Default: \"off\"; must be one of [\"cluster\", \"memory\", \"off\", \"redis\"]\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["redis","strategy"]}}},"konnect:index/GatewayPluginBasicAuthConfigBruteForceProtectionRedis:GatewayPluginBasicAuthConfigBruteForceProtectionRedis":{"properties":{"cloudAuthentication":{"$ref":"#/types/konnect:index%2FGatewayPluginBasicAuthConfigBruteForceProtectionRedisCloudAuthentication:GatewayPluginBasicAuthConfigBruteForceProtectionRedisCloudAuthentication","description":"Cloud auth related configs for connecting to a Cloud Provider's Redis instance.\n"},"database":{"type":"number","description":"Database to use for the Redis connection when using the \u003cspan pulumi-lang-nodejs=\"`redis`\" pulumi-lang-dotnet=\"`Redis`\" pulumi-lang-go=\"`redis`\" pulumi-lang-python=\"`redis`\" pulumi-lang-yaml=\"`redis`\" pulumi-lang-java=\"`redis`\"\u003e`redis`\u003c/span\u003e strategy. Default: 0\n"},"host":{"type":"string","description":"A string representing a host name, such as example.com.\n"},"password":{"type":"string","description":"Password to use for Redis connections. If undefined, no AUTH commands are sent to Redis.\n"},"port":{"type":"number","description":"An integer representing a port number between 0 and 65535, inclusive. Default: 6379\n"},"serverName":{"type":"string","description":"A string representing an SNI (server name indication) value for TLS.\n"},"ssl":{"type":"boolean","description":"If set to true, uses SSL to connect to Redis. Default: false\n"},"sslVerify":{"type":"boolean","description":"If set to true, verifies the validity of the server SSL certificate. If setting this parameter, also configure \u003cspan pulumi-lang-nodejs=\"`luaSslTrustedCertificate`\" pulumi-lang-dotnet=\"`LuaSslTrustedCertificate`\" pulumi-lang-go=\"`luaSslTrustedCertificate`\" pulumi-lang-python=\"`lua_ssl_trusted_certificate`\" pulumi-lang-yaml=\"`luaSslTrustedCertificate`\" pulumi-lang-java=\"`luaSslTrustedCertificate`\"\u003e`lua_ssl_trusted_certificate`\u003c/span\u003e in `kong.conf` to specify the CA (or server) certificate used by your Redis server. You may also need to configure \u003cspan pulumi-lang-nodejs=\"`luaSslVerifyDepth`\" pulumi-lang-dotnet=\"`LuaSslVerifyDepth`\" pulumi-lang-go=\"`luaSslVerifyDepth`\" pulumi-lang-python=\"`lua_ssl_verify_depth`\" pulumi-lang-yaml=\"`luaSslVerifyDepth`\" pulumi-lang-java=\"`luaSslVerifyDepth`\"\u003e`lua_ssl_verify_depth`\u003c/span\u003e accordingly. Default: false\n"},"timeout":{"type":"number","description":"An integer representing a timeout in milliseconds. Must be between 0 and 2^31-2. Default: 2000\n"},"username":{"type":"string","description":"Username to use for Redis connections. If undefined, ACL authentication won't be performed. This requires Redis v6.0.0+. To be compatible with Redis v5.x.y, you can set it to \u003cspan pulumi-lang-nodejs=\"`default`\" pulumi-lang-dotnet=\"`Default`\" pulumi-lang-go=\"`default`\" pulumi-lang-python=\"`default`\" pulumi-lang-yaml=\"`default`\" pulumi-lang-java=\"`default`\"\u003e`default`\u003c/span\u003e.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["cloudAuthentication","database","port","ssl","sslVerify","timeout"]}}},"konnect:index/GatewayPluginBasicAuthConfigBruteForceProtectionRedisCloudAuthentication:GatewayPluginBasicAuthConfigBruteForceProtectionRedisCloudAuthentication":{"properties":{"authProvider":{"type":"string","description":"Auth providers to be used to authenticate to a Cloud Provider's Redis instance. must be one of [\"aws\", \"azure\", \"gcp\"]\n"},"awsAccessKeyId":{"type":"string","description":"AWS Access Key ID to be used for authentication when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e.\n"},"awsAssumeRoleArn":{"type":"string","description":"The ARN of the IAM role to assume for generating ElastiCache IAM authentication tokens.\n"},"awsCacheName":{"type":"string","description":"The name of the AWS Elasticache cluster when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e.\n"},"awsIsServerless":{"type":"boolean","description":"This flag specifies whether the cluster is serverless when\u003cspan pulumi-lang-nodejs=\" authProvider \" pulumi-lang-dotnet=\" AuthProvider \" pulumi-lang-go=\" authProvider \" pulumi-lang-python=\" auth_provider \" pulumi-lang-yaml=\" authProvider \" pulumi-lang-java=\" authProvider \"\u003e auth_provider \u003c/span\u003eis set to \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e. Default: true\n"},"awsRegion":{"type":"string","description":"The region of the AWS ElastiCache cluster when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e.\n"},"awsRoleSessionName":{"type":"string","description":"The session name for the temporary credentials when assuming the IAM role.\n"},"awsSecretAccessKey":{"type":"string","description":"AWS Secret Access Key to be used for authentication when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e.\n"},"azureClientId":{"type":"string","description":"Azure Client ID to be used for authentication when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`azure`\" pulumi-lang-dotnet=\"`Azure`\" pulumi-lang-go=\"`azure`\" pulumi-lang-python=\"`azure`\" pulumi-lang-yaml=\"`azure`\" pulumi-lang-java=\"`azure`\"\u003e`azure`\u003c/span\u003e.\n"},"azureClientSecret":{"type":"string","description":"Azure Client Secret to be used for authentication when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`azure`\" pulumi-lang-dotnet=\"`Azure`\" pulumi-lang-go=\"`azure`\" pulumi-lang-python=\"`azure`\" pulumi-lang-yaml=\"`azure`\" pulumi-lang-java=\"`azure`\"\u003e`azure`\u003c/span\u003e.\n"},"azureTenantId":{"type":"string","description":"Azure Tenant ID to be used for authentication when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`azure`\" pulumi-lang-dotnet=\"`Azure`\" pulumi-lang-go=\"`azure`\" pulumi-lang-python=\"`azure`\" pulumi-lang-yaml=\"`azure`\" pulumi-lang-java=\"`azure`\"\u003e`azure`\u003c/span\u003e.\n"},"gcpServiceAccountJson":{"type":"string","description":"GCP Service Account JSON to be used for authentication when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`gcp`\" pulumi-lang-dotnet=\"`Gcp`\" pulumi-lang-go=\"`gcp`\" pulumi-lang-python=\"`gcp`\" pulumi-lang-yaml=\"`gcp`\" pulumi-lang-java=\"`gcp`\"\u003e`gcp`\u003c/span\u003e.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["authProvider","awsIsServerless"]}}},"konnect:index/GatewayPluginBasicAuthOrdering:GatewayPluginBasicAuthOrdering":{"properties":{"after":{"$ref":"#/types/konnect:index%2FGatewayPluginBasicAuthOrderingAfter:GatewayPluginBasicAuthOrderingAfter"},"before":{"$ref":"#/types/konnect:index%2FGatewayPluginBasicAuthOrderingBefore:GatewayPluginBasicAuthOrderingBefore"}},"type":"object","language":{"nodejs":{"requiredOutputs":["after","before"]}}},"konnect:index/GatewayPluginBasicAuthOrderingAfter:GatewayPluginBasicAuthOrderingAfter":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginBasicAuthOrderingBefore:GatewayPluginBasicAuthOrderingBefore":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginBasicAuthPartial:GatewayPluginBasicAuthPartial":{"properties":{"id":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"name":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"path":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id","name","path"]}}},"konnect:index/GatewayPluginBasicAuthRoute:GatewayPluginBasicAuthRoute":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginBasicAuthService:GatewayPluginBasicAuthService":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginBotDetectionConfig:GatewayPluginBotDetectionConfig":{"properties":{"allows":{"type":"array","items":{"type":"string"},"description":"An array of regular expressions that should be allowed. The regular expressions will be checked against the `User-Agent` header. Default: []\n"},"denies":{"type":"array","items":{"type":"string"},"description":"An array of regular expressions that should be denied. The regular expressions will be checked against the `User-Agent` header. Default: []\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["allows","denies"]}}},"konnect:index/GatewayPluginBotDetectionOrdering:GatewayPluginBotDetectionOrdering":{"properties":{"after":{"$ref":"#/types/konnect:index%2FGatewayPluginBotDetectionOrderingAfter:GatewayPluginBotDetectionOrderingAfter"},"before":{"$ref":"#/types/konnect:index%2FGatewayPluginBotDetectionOrderingBefore:GatewayPluginBotDetectionOrderingBefore"}},"type":"object","language":{"nodejs":{"requiredOutputs":["after","before"]}}},"konnect:index/GatewayPluginBotDetectionOrderingAfter:GatewayPluginBotDetectionOrderingAfter":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginBotDetectionOrderingBefore:GatewayPluginBotDetectionOrderingBefore":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginBotDetectionPartial:GatewayPluginBotDetectionPartial":{"properties":{"id":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"name":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"path":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id","name","path"]}}},"konnect:index/GatewayPluginBotDetectionRoute:GatewayPluginBotDetectionRoute":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginBotDetectionService:GatewayPluginBotDetectionService":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginCanaryConfig:GatewayPluginCanaryConfig":{"properties":{"canaryByHeaderName":{"type":"string","description":"A string representing an HTTP header name.\n"},"duration":{"type":"number","description":"The duration of the canary release in seconds. Default: 3600\n"},"groups":{"type":"array","items":{"type":"string"},"description":"The groups allowed to access the canary release.\n"},"hash":{"type":"string","description":"Hash algorithm to be used for canary release.\n"},"hashHeader":{"type":"string","description":"A string representing an HTTP header name.\n"},"percentage":{"type":"number","description":"The percentage of traffic to be routed to the canary release.\n"},"start":{"type":"number","description":"Future time in seconds since epoch, when the canary release will start. Ignored when \u003cspan pulumi-lang-nodejs=\"`percentage`\" pulumi-lang-dotnet=\"`Percentage`\" pulumi-lang-go=\"`percentage`\" pulumi-lang-python=\"`percentage`\" pulumi-lang-yaml=\"`percentage`\" pulumi-lang-java=\"`percentage`\"\u003e`percentage`\u003c/span\u003e is set, or when using \u003cspan pulumi-lang-nodejs=\"`allow`\" pulumi-lang-dotnet=\"`Allow`\" pulumi-lang-go=\"`allow`\" pulumi-lang-python=\"`allow`\" pulumi-lang-yaml=\"`allow`\" pulumi-lang-java=\"`allow`\"\u003e`allow`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`deny`\" pulumi-lang-dotnet=\"`Deny`\" pulumi-lang-go=\"`deny`\" pulumi-lang-python=\"`deny`\" pulumi-lang-yaml=\"`deny`\" pulumi-lang-java=\"`deny`\"\u003e`deny`\u003c/span\u003e in \u003cspan pulumi-lang-nodejs=\"`hash`\" pulumi-lang-dotnet=\"`Hash`\" pulumi-lang-go=\"`hash`\" pulumi-lang-python=\"`hash`\" pulumi-lang-yaml=\"`hash`\" pulumi-lang-java=\"`hash`\"\u003e`hash`\u003c/span\u003e.\n"},"steps":{"type":"number","description":"The number of steps for the canary release. Default: 1000\n"},"upstreamFallback":{"type":"boolean","description":"Specifies whether to fallback to the upstream server if the canary release fails. Default: false\n"},"upstreamHost":{"type":"string","description":"A string representing a host name, such as example.com.\n"},"upstreamPort":{"type":"number","description":"An integer representing a port number between 0 and 65535, inclusive.\n"},"upstreamUri":{"type":"string","description":"The URI of the upstream server to be used for the canary release.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["duration","hash","steps","upstreamFallback"]}}},"konnect:index/GatewayPluginCanaryOrdering:GatewayPluginCanaryOrdering":{"properties":{"after":{"$ref":"#/types/konnect:index%2FGatewayPluginCanaryOrderingAfter:GatewayPluginCanaryOrderingAfter"},"before":{"$ref":"#/types/konnect:index%2FGatewayPluginCanaryOrderingBefore:GatewayPluginCanaryOrderingBefore"}},"type":"object","language":{"nodejs":{"requiredOutputs":["after","before"]}}},"konnect:index/GatewayPluginCanaryOrderingAfter:GatewayPluginCanaryOrderingAfter":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginCanaryOrderingBefore:GatewayPluginCanaryOrderingBefore":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginCanaryPartial:GatewayPluginCanaryPartial":{"properties":{"id":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"name":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"path":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id","name","path"]}}},"konnect:index/GatewayPluginCanaryRoute:GatewayPluginCanaryRoute":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginCanaryService:GatewayPluginCanaryService":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginConfluentConfig:GatewayPluginConfluentConfig":{"properties":{"allowedTopics":{"type":"array","items":{"type":"string"},"description":"The list of allowed topic names to which messages can be sent. The default topic configured in the \u003cspan pulumi-lang-nodejs=\"`topic`\" pulumi-lang-dotnet=\"`Topic`\" pulumi-lang-go=\"`topic`\" pulumi-lang-python=\"`topic`\" pulumi-lang-yaml=\"`topic`\" pulumi-lang-java=\"`topic`\"\u003e`topic`\u003c/span\u003e field is always allowed, regardless of its inclusion in \u003cspan pulumi-lang-nodejs=\"`allowedTopics`\" pulumi-lang-dotnet=\"`AllowedTopics`\" pulumi-lang-go=\"`allowedTopics`\" pulumi-lang-python=\"`allowed_topics`\" pulumi-lang-yaml=\"`allowedTopics`\" pulumi-lang-java=\"`allowedTopics`\"\u003e`allowed_topics`\u003c/span\u003e.\n"},"bootstrapServers":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginConfluentConfigBootstrapServer:GatewayPluginConfluentConfigBootstrapServer"},"description":"Set of bootstrap brokers in a `{host: host, port: port}` list format.\n"},"clusterApiKey":{"type":"string","description":"Username/Apikey for SASL authentication.\n"},"clusterApiSecret":{"type":"string","description":"Password/ApiSecret for SASL authentication.\n"},"clusterName":{"type":"string","description":"An identifier for the Kafka cluster. By default, this field generates a random string. You can also set your own custom cluster identifier.  If more than one Kafka plugin is configured without a \u003cspan pulumi-lang-nodejs=\"`clusterName`\" pulumi-lang-dotnet=\"`ClusterName`\" pulumi-lang-go=\"`clusterName`\" pulumi-lang-python=\"`cluster_name`\" pulumi-lang-yaml=\"`clusterName`\" pulumi-lang-java=\"`clusterName`\"\u003e`cluster_name`\u003c/span\u003e (that is, if the default autogenerated value is removed), these plugins will use the same producer, and by extension, the same cluster. Logs will be sent to the leader of the cluster.\n"},"confluentCloudApiKey":{"type":"string","description":"Apikey for authentication with Confluent Cloud. This allows for management tasks such as creating topics, ACLs, etc.\n"},"confluentCloudApiSecret":{"type":"string","description":"The corresponding secret for the Confluent Cloud API key.\n"},"forwardBody":{"type":"boolean","description":"Include the request body in the message. At least one of these must be true: \u003cspan pulumi-lang-nodejs=\"`forwardMethod`\" pulumi-lang-dotnet=\"`ForwardMethod`\" pulumi-lang-go=\"`forwardMethod`\" pulumi-lang-python=\"`forward_method`\" pulumi-lang-yaml=\"`forwardMethod`\" pulumi-lang-java=\"`forwardMethod`\"\u003e`forward_method`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`forwardUri`\" pulumi-lang-dotnet=\"`ForwardUri`\" pulumi-lang-go=\"`forwardUri`\" pulumi-lang-python=\"`forward_uri`\" pulumi-lang-yaml=\"`forwardUri`\" pulumi-lang-java=\"`forwardUri`\"\u003e`forward_uri`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`forwardHeaders`\" pulumi-lang-dotnet=\"`ForwardHeaders`\" pulumi-lang-go=\"`forwardHeaders`\" pulumi-lang-python=\"`forward_headers`\" pulumi-lang-yaml=\"`forwardHeaders`\" pulumi-lang-java=\"`forwardHeaders`\"\u003e`forward_headers`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`forwardBody`\" pulumi-lang-dotnet=\"`ForwardBody`\" pulumi-lang-go=\"`forwardBody`\" pulumi-lang-python=\"`forward_body`\" pulumi-lang-yaml=\"`forwardBody`\" pulumi-lang-java=\"`forwardBody`\"\u003e`forward_body`\u003c/span\u003e. Default: true\n"},"forwardHeaders":{"type":"boolean","description":"Include the request headers in the message. At least one of these must be true: \u003cspan pulumi-lang-nodejs=\"`forwardMethod`\" pulumi-lang-dotnet=\"`ForwardMethod`\" pulumi-lang-go=\"`forwardMethod`\" pulumi-lang-python=\"`forward_method`\" pulumi-lang-yaml=\"`forwardMethod`\" pulumi-lang-java=\"`forwardMethod`\"\u003e`forward_method`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`forwardUri`\" pulumi-lang-dotnet=\"`ForwardUri`\" pulumi-lang-go=\"`forwardUri`\" pulumi-lang-python=\"`forward_uri`\" pulumi-lang-yaml=\"`forwardUri`\" pulumi-lang-java=\"`forwardUri`\"\u003e`forward_uri`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`forwardHeaders`\" pulumi-lang-dotnet=\"`ForwardHeaders`\" pulumi-lang-go=\"`forwardHeaders`\" pulumi-lang-python=\"`forward_headers`\" pulumi-lang-yaml=\"`forwardHeaders`\" pulumi-lang-java=\"`forwardHeaders`\"\u003e`forward_headers`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`forwardBody`\" pulumi-lang-dotnet=\"`ForwardBody`\" pulumi-lang-go=\"`forwardBody`\" pulumi-lang-python=\"`forward_body`\" pulumi-lang-yaml=\"`forwardBody`\" pulumi-lang-java=\"`forwardBody`\"\u003e`forward_body`\u003c/span\u003e. Default: false\n"},"forwardMethod":{"type":"boolean","description":"Include the request method in the message. At least one of these must be true: \u003cspan pulumi-lang-nodejs=\"`forwardMethod`\" pulumi-lang-dotnet=\"`ForwardMethod`\" pulumi-lang-go=\"`forwardMethod`\" pulumi-lang-python=\"`forward_method`\" pulumi-lang-yaml=\"`forwardMethod`\" pulumi-lang-java=\"`forwardMethod`\"\u003e`forward_method`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`forwardUri`\" pulumi-lang-dotnet=\"`ForwardUri`\" pulumi-lang-go=\"`forwardUri`\" pulumi-lang-python=\"`forward_uri`\" pulumi-lang-yaml=\"`forwardUri`\" pulumi-lang-java=\"`forwardUri`\"\u003e`forward_uri`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`forwardHeaders`\" pulumi-lang-dotnet=\"`ForwardHeaders`\" pulumi-lang-go=\"`forwardHeaders`\" pulumi-lang-python=\"`forward_headers`\" pulumi-lang-yaml=\"`forwardHeaders`\" pulumi-lang-java=\"`forwardHeaders`\"\u003e`forward_headers`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`forwardBody`\" pulumi-lang-dotnet=\"`ForwardBody`\" pulumi-lang-go=\"`forwardBody`\" pulumi-lang-python=\"`forward_body`\" pulumi-lang-yaml=\"`forwardBody`\" pulumi-lang-java=\"`forwardBody`\"\u003e`forward_body`\u003c/span\u003e. Default: false\n"},"forwardUri":{"type":"boolean","description":"Include the request URI and URI arguments (as in, query arguments) in the message. At least one of these must be true: \u003cspan pulumi-lang-nodejs=\"`forwardMethod`\" pulumi-lang-dotnet=\"`ForwardMethod`\" pulumi-lang-go=\"`forwardMethod`\" pulumi-lang-python=\"`forward_method`\" pulumi-lang-yaml=\"`forwardMethod`\" pulumi-lang-java=\"`forwardMethod`\"\u003e`forward_method`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`forwardUri`\" pulumi-lang-dotnet=\"`ForwardUri`\" pulumi-lang-go=\"`forwardUri`\" pulumi-lang-python=\"`forward_uri`\" pulumi-lang-yaml=\"`forwardUri`\" pulumi-lang-java=\"`forwardUri`\"\u003e`forward_uri`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`forwardHeaders`\" pulumi-lang-dotnet=\"`ForwardHeaders`\" pulumi-lang-go=\"`forwardHeaders`\" pulumi-lang-python=\"`forward_headers`\" pulumi-lang-yaml=\"`forwardHeaders`\" pulumi-lang-java=\"`forwardHeaders`\"\u003e`forward_headers`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`forwardBody`\" pulumi-lang-dotnet=\"`ForwardBody`\" pulumi-lang-go=\"`forwardBody`\" pulumi-lang-python=\"`forward_body`\" pulumi-lang-yaml=\"`forwardBody`\" pulumi-lang-java=\"`forwardBody`\"\u003e`forward_body`\u003c/span\u003e. Default: false\n"},"keepalive":{"type":"number","description":"Keepalive timeout in milliseconds. Default: 60000\n"},"keepaliveEnabled":{"type":"boolean","description":"Default: false\n"},"keyQueryArg":{"type":"string","description":"The request query parameter name that contains the Kafka message key. If specified, messages with the same key will be sent to the same Kafka partition, ensuring consistent ordering.\n"},"messageByLuaFunctions":{"type":"array","items":{"type":"string"},"description":"The Lua functions that manipulates the message being sent to the Kafka topic.\n"},"producerAsync":{"type":"boolean","description":"Flag to enable asynchronous mode. Default: true\n"},"producerAsyncBufferingLimitsMessagesInMemory":{"type":"number","description":"Maximum number of messages that can be buffered in memory in asynchronous mode. Default: 50000\n"},"producerAsyncFlushTimeout":{"type":"number","description":"Maximum time interval in milliseconds between buffer flushes in asynchronous mode. Default: 1000\n"},"producerRequestAcks":{"type":"number","description":"The number of acknowledgments the producer requires the leader to have received before considering a request complete. Allowed values: 0 for no acknowledgments; 1 for only the leader; and -1 for the full ISR (In-Sync Replica set). Default: 1; must be one of [\"-1\", \"0\", \"1\"]\n"},"producerRequestLimitsBytesPerRequest":{"type":"number","description":"Maximum size of a Produce request in bytes. Default: 1048576\n"},"producerRequestLimitsMessagesPerRequest":{"type":"number","description":"Maximum number of messages to include into a single producer request. Default: 200\n"},"producerRequestRetriesBackoffTimeout":{"type":"number","description":"Backoff interval between retry attempts in milliseconds. Default: 100\n"},"producerRequestRetriesMaxAttempts":{"type":"number","description":"Maximum number of retry attempts per single Produce request. Default: 10\n"},"producerRequestTimeout":{"type":"number","description":"Time to wait for a Produce response in milliseconds. Default: 2000\n"},"schemaRegistry":{"$ref":"#/types/konnect:index%2FGatewayPluginConfluentConfigSchemaRegistry:GatewayPluginConfluentConfigSchemaRegistry","description":"The plugin-global schema registry configuration. This can be overwritten by the topic configuration.\n"},"security":{"$ref":"#/types/konnect:index%2FGatewayPluginConfluentConfigSecurity:GatewayPluginConfluentConfigSecurity"},"timeout":{"type":"number","description":"Socket timeout in milliseconds. Default: 10000\n"},"topic":{"type":"string","description":"The default Kafka topic to publish to if the query parameter defined in the \u003cspan pulumi-lang-nodejs=\"`topicsQueryArg`\" pulumi-lang-dotnet=\"`TopicsQueryArg`\" pulumi-lang-go=\"`topicsQueryArg`\" pulumi-lang-python=\"`topics_query_arg`\" pulumi-lang-yaml=\"`topicsQueryArg`\" pulumi-lang-java=\"`topicsQueryArg`\"\u003e`topics_query_arg`\u003c/span\u003e does not exist in the request\n"},"topicsQueryArg":{"type":"string","description":"The request query parameter name that contains the topics to publish to\n"}},"type":"object","required":["clusterApiKey","clusterApiSecret","topic"],"language":{"nodejs":{"requiredOutputs":["clusterApiKey","clusterApiSecret","clusterName","forwardBody","forwardHeaders","forwardMethod","forwardUri","keepalive","keepaliveEnabled","producerAsync","producerAsyncBufferingLimitsMessagesInMemory","producerAsyncFlushTimeout","producerRequestAcks","producerRequestLimitsBytesPerRequest","producerRequestLimitsMessagesPerRequest","producerRequestRetriesBackoffTimeout","producerRequestRetriesMaxAttempts","producerRequestTimeout","schemaRegistry","security","timeout","topic"]}}},"konnect:index/GatewayPluginConfluentConfigBootstrapServer:GatewayPluginConfluentConfigBootstrapServer":{"properties":{"host":{"type":"string","description":"A string representing a host name, such as example.com. Not Null\n"},"port":{"type":"number","description":"An integer representing a port number between 0 and 65535, inclusive. Not Null\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["host","port"]}}},"konnect:index/GatewayPluginConfluentConfigSchemaRegistry:GatewayPluginConfluentConfigSchemaRegistry":{"properties":{"confluent":{"$ref":"#/types/konnect:index%2FGatewayPluginConfluentConfigSchemaRegistryConfluent:GatewayPluginConfluentConfigSchemaRegistryConfluent"}},"type":"object","language":{"nodejs":{"requiredOutputs":["confluent"]}}},"konnect:index/GatewayPluginConfluentConfigSchemaRegistryConfluent:GatewayPluginConfluentConfigSchemaRegistryConfluent":{"properties":{"authentication":{"$ref":"#/types/konnect:index%2FGatewayPluginConfluentConfigSchemaRegistryConfluentAuthentication:GatewayPluginConfluentConfigSchemaRegistryConfluentAuthentication"},"keySchema":{"$ref":"#/types/konnect:index%2FGatewayPluginConfluentConfigSchemaRegistryConfluentKeySchema:GatewayPluginConfluentConfigSchemaRegistryConfluentKeySchema"},"sslVerify":{"type":"boolean","description":"Set to false to disable SSL certificate verification when connecting to the schema registry. Default: true\n"},"ttl":{"type":"number","description":"The TTL in seconds for the schema registry cache.\n"},"url":{"type":"string","description":"The URL of the schema registry.\n"},"valueSchema":{"$ref":"#/types/konnect:index%2FGatewayPluginConfluentConfigSchemaRegistryConfluentValueSchema:GatewayPluginConfluentConfigSchemaRegistryConfluentValueSchema"}},"type":"object","language":{"nodejs":{"requiredOutputs":["authentication","keySchema","sslVerify","valueSchema"]}}},"konnect:index/GatewayPluginConfluentConfigSchemaRegistryConfluentAuthentication:GatewayPluginConfluentConfigSchemaRegistryConfluentAuthentication":{"properties":{"basic":{"$ref":"#/types/konnect:index%2FGatewayPluginConfluentConfigSchemaRegistryConfluentAuthenticationBasic:GatewayPluginConfluentConfigSchemaRegistryConfluentAuthenticationBasic"},"mode":{"type":"string","description":"Authentication mode to use with the schema registry. Default: \"none\"; must be one of [\"basic\", \"none\", \"oauth2\"]\n"},"oauth2":{"$ref":"#/types/konnect:index%2FGatewayPluginConfluentConfigSchemaRegistryConfluentAuthenticationOauth2:GatewayPluginConfluentConfigSchemaRegistryConfluentAuthenticationOauth2"},"oauth2Client":{"$ref":"#/types/konnect:index%2FGatewayPluginConfluentConfigSchemaRegistryConfluentAuthenticationOauth2Client:GatewayPluginConfluentConfigSchemaRegistryConfluentAuthenticationOauth2Client"}},"type":"object","language":{"nodejs":{"requiredOutputs":["basic","mode","oauth2","oauth2Client"]}}},"konnect:index/GatewayPluginConfluentConfigSchemaRegistryConfluentAuthenticationBasic:GatewayPluginConfluentConfigSchemaRegistryConfluentAuthenticationBasic":{"properties":{"password":{"type":"string","description":"Not Null\n"},"username":{"type":"string","description":"Not Null\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["password","username"]}}},"konnect:index/GatewayPluginConfluentConfigSchemaRegistryConfluentAuthenticationOauth2:GatewayPluginConfluentConfigSchemaRegistryConfluentAuthenticationOauth2":{"properties":{"audiences":{"type":"array","items":{"type":"string"},"description":"List of audiences passed to the IdP when obtaining a new token. Default: []\n"},"clientId":{"type":"string","description":"The client ID for the application registration in the IdP.\n"},"clientSecret":{"type":"string","description":"The client secret for the application registration in the IdP.\n"},"grantType":{"type":"string","description":"The OAuth grant type to be used. Default: \"client*credentials\"; must be one of [\"client*credentials\", \"password\"]\n"},"password":{"type":"string","description":"The password to use if `config.oauth.grant_type` is set to \u003cspan pulumi-lang-nodejs=\"`password`\" pulumi-lang-dotnet=\"`Password`\" pulumi-lang-go=\"`password`\" pulumi-lang-python=\"`password`\" pulumi-lang-yaml=\"`password`\" pulumi-lang-java=\"`password`\"\u003e`password`\u003c/span\u003e.\n"},"scopes":{"type":"array","items":{"type":"string"},"description":"List of scopes to request from the IdP when obtaining a new token. Default: [\"openid\"]\n"},"tokenEndpoint":{"type":"string","description":"The token endpoint URI. Not Null\n"},"tokenHeaders":{"type":"object","additionalProperties":{"type":"string"},"description":"Extra headers to be passed in the token endpoint request.\n"},"tokenPostArgs":{"type":"object","additionalProperties":{"type":"string"},"description":"Extra post arguments to be passed in the token endpoint request.\n"},"username":{"type":"string","description":"The username to use if `config.oauth.grant_type` is set to \u003cspan pulumi-lang-nodejs=\"`password`\" pulumi-lang-dotnet=\"`Password`\" pulumi-lang-go=\"`password`\" pulumi-lang-python=\"`password`\" pulumi-lang-yaml=\"`password`\" pulumi-lang-java=\"`password`\"\u003e`password`\u003c/span\u003e.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["audiences","grantType","scopes","tokenEndpoint"]}}},"konnect:index/GatewayPluginConfluentConfigSchemaRegistryConfluentAuthenticationOauth2Client:GatewayPluginConfluentConfigSchemaRegistryConfluentAuthenticationOauth2Client":{"properties":{"authMethod":{"type":"string","description":"The authentication method used in client requests to the IdP. Supported values are: \u003cspan pulumi-lang-nodejs=\"`clientSecretBasic`\" pulumi-lang-dotnet=\"`ClientSecretBasic`\" pulumi-lang-go=\"`clientSecretBasic`\" pulumi-lang-python=\"`client_secret_basic`\" pulumi-lang-yaml=\"`clientSecretBasic`\" pulumi-lang-java=\"`clientSecretBasic`\"\u003e`client_secret_basic`\u003c/span\u003e to send \u003cspan pulumi-lang-nodejs=\"`clientId`\" pulumi-lang-dotnet=\"`ClientId`\" pulumi-lang-go=\"`clientId`\" pulumi-lang-python=\"`client_id`\" pulumi-lang-yaml=\"`clientId`\" pulumi-lang-java=\"`clientId`\"\u003e`client_id`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`clientSecret`\" pulumi-lang-dotnet=\"`ClientSecret`\" pulumi-lang-go=\"`clientSecret`\" pulumi-lang-python=\"`client_secret`\" pulumi-lang-yaml=\"`clientSecret`\" pulumi-lang-java=\"`clientSecret`\"\u003e`client_secret`\u003c/span\u003e in the `Authorization: Basic` header, \u003cspan pulumi-lang-nodejs=\"`clientSecretPost`\" pulumi-lang-dotnet=\"`ClientSecretPost`\" pulumi-lang-go=\"`clientSecretPost`\" pulumi-lang-python=\"`client_secret_post`\" pulumi-lang-yaml=\"`clientSecretPost`\" pulumi-lang-java=\"`clientSecretPost`\"\u003e`client_secret_post`\u003c/span\u003e to send \u003cspan pulumi-lang-nodejs=\"`clientId`\" pulumi-lang-dotnet=\"`ClientId`\" pulumi-lang-go=\"`clientId`\" pulumi-lang-python=\"`client_id`\" pulumi-lang-yaml=\"`clientId`\" pulumi-lang-java=\"`clientId`\"\u003e`client_id`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`clientSecret`\" pulumi-lang-dotnet=\"`ClientSecret`\" pulumi-lang-go=\"`clientSecret`\" pulumi-lang-python=\"`client_secret`\" pulumi-lang-yaml=\"`clientSecret`\" pulumi-lang-java=\"`clientSecret`\"\u003e`client_secret`\u003c/span\u003e as part of the request body, or \u003cspan pulumi-lang-nodejs=\"`clientSecretJwt`\" pulumi-lang-dotnet=\"`ClientSecretJwt`\" pulumi-lang-go=\"`clientSecretJwt`\" pulumi-lang-python=\"`client_secret_jwt`\" pulumi-lang-yaml=\"`clientSecretJwt`\" pulumi-lang-java=\"`clientSecretJwt`\"\u003e`client_secret_jwt`\u003c/span\u003e to send a JWT signed with the \u003cspan pulumi-lang-nodejs=\"`clientSecret`\" pulumi-lang-dotnet=\"`ClientSecret`\" pulumi-lang-go=\"`clientSecret`\" pulumi-lang-python=\"`client_secret`\" pulumi-lang-yaml=\"`clientSecret`\" pulumi-lang-java=\"`clientSecret`\"\u003e`client_secret`\u003c/span\u003e using the client assertion as part of the body. Default: \"client*secret*post\"; must be one of [\"client*secret*basic\", \"client*secret*jwt\", \"client*secret*post\", \"none\"]\n"},"clientSecretJwtAlg":{"type":"string","description":"The algorithm to use with JWT when using \u003cspan pulumi-lang-nodejs=\"`clientSecretJwt`\" pulumi-lang-dotnet=\"`ClientSecretJwt`\" pulumi-lang-go=\"`clientSecretJwt`\" pulumi-lang-python=\"`client_secret_jwt`\" pulumi-lang-yaml=\"`clientSecretJwt`\" pulumi-lang-java=\"`clientSecretJwt`\"\u003e`client_secret_jwt`\u003c/span\u003e authentication. Default: \"HS512\"; must be one of [\"HS256\", \"HS512\"]\n"},"httpProxy":{"type":"string","description":"The proxy to use when making HTTP requests to the IdP.\n"},"httpProxyAuthorization":{"type":"string","description":"The `Proxy-Authorization` header value to be used with \u003cspan pulumi-lang-nodejs=\"`httpProxy`\" pulumi-lang-dotnet=\"`HttpProxy`\" pulumi-lang-go=\"`httpProxy`\" pulumi-lang-python=\"`http_proxy`\" pulumi-lang-yaml=\"`httpProxy`\" pulumi-lang-java=\"`httpProxy`\"\u003e`http_proxy`\u003c/span\u003e.\n"},"httpVersion":{"type":"number","description":"The HTTP version used for requests made by this plugin. Supported values: `1.1` for HTTP 1.1 and `1.0` for HTTP 1.0.\n"},"httpsProxy":{"type":"string","description":"The proxy to use when making HTTPS requests to the IdP.\n"},"httpsProxyAuthorization":{"type":"string","description":"The `Proxy-Authorization` header value to be used with \u003cspan pulumi-lang-nodejs=\"`httpsProxy`\" pulumi-lang-dotnet=\"`HttpsProxy`\" pulumi-lang-go=\"`httpsProxy`\" pulumi-lang-python=\"`https_proxy`\" pulumi-lang-yaml=\"`httpsProxy`\" pulumi-lang-java=\"`httpsProxy`\"\u003e`https_proxy`\u003c/span\u003e.\n"},"keepAlive":{"type":"boolean","description":"Whether to use keepalive connections to the IdP. Default: true\n"},"noProxy":{"type":"string","description":"A comma-separated list of hosts that should not be proxied.\n"},"sslVerify":{"type":"boolean","description":"Whether to verify the certificate presented by the IdP when using HTTPS. Default: false\n"},"timeout":{"type":"number","description":"Network I/O timeout for requests to the IdP in milliseconds. Default: 10000\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["authMethod","clientSecretJwtAlg","httpVersion","keepAlive","sslVerify","timeout"]}}},"konnect:index/GatewayPluginConfluentConfigSchemaRegistryConfluentKeySchema:GatewayPluginConfluentConfigSchemaRegistryConfluentKeySchema":{"properties":{"schemaVersion":{"type":"string","description":"The schema version to use for serialization/deserialization. Use 'latest' to always fetch the most recent version.\n"},"subjectName":{"type":"string","description":"The name of the subject\n"}},"type":"object"},"konnect:index/GatewayPluginConfluentConfigSchemaRegistryConfluentValueSchema:GatewayPluginConfluentConfigSchemaRegistryConfluentValueSchema":{"properties":{"schemaVersion":{"type":"string","description":"The schema version to use for serialization/deserialization. Use 'latest' to always fetch the most recent version.\n"},"subjectName":{"type":"string","description":"The name of the subject\n"}},"type":"object"},"konnect:index/GatewayPluginConfluentConfigSecurity:GatewayPluginConfluentConfigSecurity":{"properties":{"sslVerify":{"type":"boolean","description":"Enables verification of the certificate presented by the server. Default: false\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["sslVerify"]}}},"konnect:index/GatewayPluginConfluentConsumeConfig:GatewayPluginConfluentConsumeConfig":{"properties":{"autoOffsetReset":{"type":"string","description":"The offset to start from when there is no initial offset in the consumer group. Default: \"earliest\"; must be one of [\"earliest\", \"latest\"]\n"},"bootstrapServers":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginConfluentConsumeConfigBootstrapServer:GatewayPluginConfluentConsumeConfigBootstrapServer"},"description":"Set of bootstrap brokers in a `{host: host, port: port}` list format.\n"},"clusterApiKey":{"type":"string","description":"Username/Apikey for SASL authentication.\n"},"clusterApiSecret":{"type":"string","description":"Password/ApiSecret for SASL authentication.\n"},"clusterName":{"type":"string","description":"An identifier for the Kafka cluster. By default, this field generates a random string. You can also set your own custom cluster identifier.  If more than one Kafka plugin is configured without a \u003cspan pulumi-lang-nodejs=\"`clusterName`\" pulumi-lang-dotnet=\"`ClusterName`\" pulumi-lang-go=\"`clusterName`\" pulumi-lang-python=\"`cluster_name`\" pulumi-lang-yaml=\"`clusterName`\" pulumi-lang-java=\"`clusterName`\"\u003e`cluster_name`\u003c/span\u003e (that is, if the default autogenerated value is removed), these plugins will use the same producer, and by extension, the same cluster. Logs will be sent to the leader of the cluster.\n"},"commitStrategy":{"type":"string","description":"The strategy to use for committing offsets. Default: \"auto\"; must be one of [\"auto\", \"off\"]\n"},"confluentCloudApiKey":{"type":"string","description":"Apikey for authentication with Confluent Cloud. This allows for management tasks such as creating topics, ACLs, etc.\n"},"confluentCloudApiSecret":{"type":"string","description":"The corresponding secret for the Confluent Cloud API key.\n"},"dlqTopic":{"type":"string","description":"The topic to use for the Dead Letter Queue.\n"},"enableDlq":{"type":"boolean","description":"Enables Dead Letter Queue. When enabled, if the message doesn't conform to the schema (from Schema Registry) or there's an error in the \u003cspan pulumi-lang-nodejs=\"`messageByLuaFunctions`\" pulumi-lang-dotnet=\"`MessageByLuaFunctions`\" pulumi-lang-go=\"`messageByLuaFunctions`\" pulumi-lang-python=\"`message_by_lua_functions`\" pulumi-lang-yaml=\"`messageByLuaFunctions`\" pulumi-lang-java=\"`messageByLuaFunctions`\"\u003e`message_by_lua_functions`\u003c/span\u003e, it will be forwarded to \u003cspan pulumi-lang-nodejs=\"`dlqTopic`\" pulumi-lang-dotnet=\"`DlqTopic`\" pulumi-lang-go=\"`dlqTopic`\" pulumi-lang-python=\"`dlq_topic`\" pulumi-lang-yaml=\"`dlqTopic`\" pulumi-lang-java=\"`dlqTopic`\"\u003e`dlq_topic`\u003c/span\u003e that can be processed later.\n"},"enforceLatestOffsetReset":{"type":"boolean","description":"When true, 'latest' offset reset behaves correctly (starts from end). When false (default), maintains backwards compatibility where 'latest' acts like 'earliest'. Default: false\n"},"keepalive":{"type":"number","description":"Keepalive timeout in milliseconds. Default: 60000\n"},"keepaliveEnabled":{"type":"boolean","description":"Default: false\n"},"messageByLuaFunctions":{"type":"array","items":{"type":"string"},"description":"The Lua functions that manipulates the message being sent to the client.\n"},"messageDeserializer":{"type":"string","description":"The deserializer to use for the consumed messages. Default: \"noop\"; must be one of [\"json\", \"noop\"]\n"},"mode":{"type":"string","description":"The mode of operation for the plugin. Default: \"http-get\"; must be one of [\"http-get\", \"server-sent-events\", \"websocket\"]\n"},"schemaRegistry":{"$ref":"#/types/konnect:index%2FGatewayPluginConfluentConsumeConfigSchemaRegistry:GatewayPluginConfluentConsumeConfigSchemaRegistry","description":"The plugin-global schema registry configuration.\n"},"security":{"$ref":"#/types/konnect:index%2FGatewayPluginConfluentConsumeConfigSecurity:GatewayPluginConfluentConsumeConfigSecurity"},"timeout":{"type":"number","description":"Socket timeout in milliseconds. Default: 10000\n"},"topics":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginConfluentConsumeConfigTopic:GatewayPluginConfluentConsumeConfigTopic"},"description":"The Kafka topics and their configuration you want to consume from.\n"}},"type":"object","required":["clusterApiKey","clusterApiSecret","topics"],"language":{"nodejs":{"requiredOutputs":["autoOffsetReset","clusterApiKey","clusterApiSecret","commitStrategy","enforceLatestOffsetReset","keepalive","keepaliveEnabled","messageDeserializer","mode","schemaRegistry","security","timeout","topics"]}}},"konnect:index/GatewayPluginConfluentConsumeConfigBootstrapServer:GatewayPluginConfluentConsumeConfigBootstrapServer":{"properties":{"host":{"type":"string","description":"A string representing a host name, such as example.com. Not Null\n"},"port":{"type":"number","description":"An integer representing a port number between 0 and 65535, inclusive. Not Null\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["host","port"]}}},"konnect:index/GatewayPluginConfluentConsumeConfigSchemaRegistry:GatewayPluginConfluentConsumeConfigSchemaRegistry":{"properties":{"confluent":{"$ref":"#/types/konnect:index%2FGatewayPluginConfluentConsumeConfigSchemaRegistryConfluent:GatewayPluginConfluentConsumeConfigSchemaRegistryConfluent"}},"type":"object","language":{"nodejs":{"requiredOutputs":["confluent"]}}},"konnect:index/GatewayPluginConfluentConsumeConfigSchemaRegistryConfluent:GatewayPluginConfluentConsumeConfigSchemaRegistryConfluent":{"properties":{"authentication":{"$ref":"#/types/konnect:index%2FGatewayPluginConfluentConsumeConfigSchemaRegistryConfluentAuthentication:GatewayPluginConfluentConsumeConfigSchemaRegistryConfluentAuthentication"},"sslVerify":{"type":"boolean","description":"Set to false to disable SSL certificate verification when connecting to the schema registry. Default: true\n"},"ttl":{"type":"number","description":"The TTL in seconds for the schema registry cache.\n"},"url":{"type":"string","description":"The URL of the schema registry.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["authentication","sslVerify"]}}},"konnect:index/GatewayPluginConfluentConsumeConfigSchemaRegistryConfluentAuthentication:GatewayPluginConfluentConsumeConfigSchemaRegistryConfluentAuthentication":{"properties":{"basic":{"$ref":"#/types/konnect:index%2FGatewayPluginConfluentConsumeConfigSchemaRegistryConfluentAuthenticationBasic:GatewayPluginConfluentConsumeConfigSchemaRegistryConfluentAuthenticationBasic"},"mode":{"type":"string","description":"Authentication mode to use with the schema registry. Default: \"none\"; must be one of [\"basic\", \"none\", \"oauth2\"]\n"},"oauth2":{"$ref":"#/types/konnect:index%2FGatewayPluginConfluentConsumeConfigSchemaRegistryConfluentAuthenticationOauth2:GatewayPluginConfluentConsumeConfigSchemaRegistryConfluentAuthenticationOauth2"},"oauth2Client":{"$ref":"#/types/konnect:index%2FGatewayPluginConfluentConsumeConfigSchemaRegistryConfluentAuthenticationOauth2Client:GatewayPluginConfluentConsumeConfigSchemaRegistryConfluentAuthenticationOauth2Client"}},"type":"object","language":{"nodejs":{"requiredOutputs":["basic","mode","oauth2","oauth2Client"]}}},"konnect:index/GatewayPluginConfluentConsumeConfigSchemaRegistryConfluentAuthenticationBasic:GatewayPluginConfluentConsumeConfigSchemaRegistryConfluentAuthenticationBasic":{"properties":{"password":{"type":"string"},"username":{"type":"string"}},"type":"object","required":["password","username"]},"konnect:index/GatewayPluginConfluentConsumeConfigSchemaRegistryConfluentAuthenticationOauth2:GatewayPluginConfluentConsumeConfigSchemaRegistryConfluentAuthenticationOauth2":{"properties":{"audiences":{"type":"array","items":{"type":"string"},"description":"List of audiences passed to the IdP when obtaining a new token. Default: []\n"},"clientId":{"type":"string","description":"The client ID for the application registration in the IdP.\n"},"clientSecret":{"type":"string","description":"The client secret for the application registration in the IdP.\n"},"grantType":{"type":"string","description":"The OAuth grant type to be used. Default: \"client*credentials\"; must be one of [\"client*credentials\", \"password\"]\n"},"password":{"type":"string","description":"The password to use if `config.oauth.grant_type` is set to \u003cspan pulumi-lang-nodejs=\"`password`\" pulumi-lang-dotnet=\"`Password`\" pulumi-lang-go=\"`password`\" pulumi-lang-python=\"`password`\" pulumi-lang-yaml=\"`password`\" pulumi-lang-java=\"`password`\"\u003e`password`\u003c/span\u003e.\n"},"scopes":{"type":"array","items":{"type":"string"},"description":"List of scopes to request from the IdP when obtaining a new token. Default: [\"openid\"]\n"},"tokenEndpoint":{"type":"string","description":"The token endpoint URI.\n"},"tokenHeaders":{"type":"object","additionalProperties":{"type":"string"},"description":"Extra headers to be passed in the token endpoint request.\n"},"tokenPostArgs":{"type":"object","additionalProperties":{"type":"string"},"description":"Extra post arguments to be passed in the token endpoint request.\n"},"username":{"type":"string","description":"The username to use if `config.oauth.grant_type` is set to \u003cspan pulumi-lang-nodejs=\"`password`\" pulumi-lang-dotnet=\"`Password`\" pulumi-lang-go=\"`password`\" pulumi-lang-python=\"`password`\" pulumi-lang-yaml=\"`password`\" pulumi-lang-java=\"`password`\"\u003e`password`\u003c/span\u003e.\n"}},"type":"object","required":["tokenEndpoint"],"language":{"nodejs":{"requiredOutputs":["audiences","grantType","scopes","tokenEndpoint"]}}},"konnect:index/GatewayPluginConfluentConsumeConfigSchemaRegistryConfluentAuthenticationOauth2Client:GatewayPluginConfluentConsumeConfigSchemaRegistryConfluentAuthenticationOauth2Client":{"properties":{"authMethod":{"type":"string","description":"The authentication method used in client requests to the IdP. Supported values are: \u003cspan pulumi-lang-nodejs=\"`clientSecretBasic`\" pulumi-lang-dotnet=\"`ClientSecretBasic`\" pulumi-lang-go=\"`clientSecretBasic`\" pulumi-lang-python=\"`client_secret_basic`\" pulumi-lang-yaml=\"`clientSecretBasic`\" pulumi-lang-java=\"`clientSecretBasic`\"\u003e`client_secret_basic`\u003c/span\u003e to send \u003cspan pulumi-lang-nodejs=\"`clientId`\" pulumi-lang-dotnet=\"`ClientId`\" pulumi-lang-go=\"`clientId`\" pulumi-lang-python=\"`client_id`\" pulumi-lang-yaml=\"`clientId`\" pulumi-lang-java=\"`clientId`\"\u003e`client_id`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`clientSecret`\" pulumi-lang-dotnet=\"`ClientSecret`\" pulumi-lang-go=\"`clientSecret`\" pulumi-lang-python=\"`client_secret`\" pulumi-lang-yaml=\"`clientSecret`\" pulumi-lang-java=\"`clientSecret`\"\u003e`client_secret`\u003c/span\u003e in the `Authorization: Basic` header, \u003cspan pulumi-lang-nodejs=\"`clientSecretPost`\" pulumi-lang-dotnet=\"`ClientSecretPost`\" pulumi-lang-go=\"`clientSecretPost`\" pulumi-lang-python=\"`client_secret_post`\" pulumi-lang-yaml=\"`clientSecretPost`\" pulumi-lang-java=\"`clientSecretPost`\"\u003e`client_secret_post`\u003c/span\u003e to send \u003cspan pulumi-lang-nodejs=\"`clientId`\" pulumi-lang-dotnet=\"`ClientId`\" pulumi-lang-go=\"`clientId`\" pulumi-lang-python=\"`client_id`\" pulumi-lang-yaml=\"`clientId`\" pulumi-lang-java=\"`clientId`\"\u003e`client_id`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`clientSecret`\" pulumi-lang-dotnet=\"`ClientSecret`\" pulumi-lang-go=\"`clientSecret`\" pulumi-lang-python=\"`client_secret`\" pulumi-lang-yaml=\"`clientSecret`\" pulumi-lang-java=\"`clientSecret`\"\u003e`client_secret`\u003c/span\u003e as part of the request body, or \u003cspan pulumi-lang-nodejs=\"`clientSecretJwt`\" pulumi-lang-dotnet=\"`ClientSecretJwt`\" pulumi-lang-go=\"`clientSecretJwt`\" pulumi-lang-python=\"`client_secret_jwt`\" pulumi-lang-yaml=\"`clientSecretJwt`\" pulumi-lang-java=\"`clientSecretJwt`\"\u003e`client_secret_jwt`\u003c/span\u003e to send a JWT signed with the \u003cspan pulumi-lang-nodejs=\"`clientSecret`\" pulumi-lang-dotnet=\"`ClientSecret`\" pulumi-lang-go=\"`clientSecret`\" pulumi-lang-python=\"`client_secret`\" pulumi-lang-yaml=\"`clientSecret`\" pulumi-lang-java=\"`clientSecret`\"\u003e`client_secret`\u003c/span\u003e using the client assertion as part of the body. Default: \"client*secret*post\"; must be one of [\"client*secret*basic\", \"client*secret*jwt\", \"client*secret*post\", \"none\"]\n"},"clientSecretJwtAlg":{"type":"string","description":"The algorithm to use with JWT when using \u003cspan pulumi-lang-nodejs=\"`clientSecretJwt`\" pulumi-lang-dotnet=\"`ClientSecretJwt`\" pulumi-lang-go=\"`clientSecretJwt`\" pulumi-lang-python=\"`client_secret_jwt`\" pulumi-lang-yaml=\"`clientSecretJwt`\" pulumi-lang-java=\"`clientSecretJwt`\"\u003e`client_secret_jwt`\u003c/span\u003e authentication. Default: \"HS512\"; must be one of [\"HS256\", \"HS512\"]\n"},"httpProxy":{"type":"string","description":"The proxy to use when making HTTP requests to the IdP.\n"},"httpProxyAuthorization":{"type":"string","description":"The `Proxy-Authorization` header value to be used with \u003cspan pulumi-lang-nodejs=\"`httpProxy`\" pulumi-lang-dotnet=\"`HttpProxy`\" pulumi-lang-go=\"`httpProxy`\" pulumi-lang-python=\"`http_proxy`\" pulumi-lang-yaml=\"`httpProxy`\" pulumi-lang-java=\"`httpProxy`\"\u003e`http_proxy`\u003c/span\u003e.\n"},"httpVersion":{"type":"number","description":"The HTTP version used for requests made by this plugin. Supported values: `1.1` for HTTP 1.1 and `1.0` for HTTP 1.0.\n"},"httpsProxy":{"type":"string","description":"The proxy to use when making HTTPS requests to the IdP.\n"},"httpsProxyAuthorization":{"type":"string","description":"The `Proxy-Authorization` header value to be used with \u003cspan pulumi-lang-nodejs=\"`httpsProxy`\" pulumi-lang-dotnet=\"`HttpsProxy`\" pulumi-lang-go=\"`httpsProxy`\" pulumi-lang-python=\"`https_proxy`\" pulumi-lang-yaml=\"`httpsProxy`\" pulumi-lang-java=\"`httpsProxy`\"\u003e`https_proxy`\u003c/span\u003e.\n"},"keepAlive":{"type":"boolean","description":"Whether to use keepalive connections to the IdP. Default: true\n"},"noProxy":{"type":"string","description":"A comma-separated list of hosts that should not be proxied.\n"},"sslVerify":{"type":"boolean","description":"Whether to verify the certificate presented by the IdP when using HTTPS. Default: false\n"},"timeout":{"type":"number","description":"Network I/O timeout for requests to the IdP in milliseconds. Default: 10000\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["authMethod","clientSecretJwtAlg","httpVersion","keepAlive","sslVerify","timeout"]}}},"konnect:index/GatewayPluginConfluentConsumeConfigSecurity:GatewayPluginConfluentConsumeConfigSecurity":{"properties":{"sslVerify":{"type":"boolean","description":"Enables verification of the certificate presented by the server. Default: false\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["sslVerify"]}}},"konnect:index/GatewayPluginConfluentConsumeConfigTopic:GatewayPluginConfluentConsumeConfigTopic":{"properties":{"name":{"type":"string","description":"Not Null\n"},"schemaRegistry":{"$ref":"#/types/konnect:index%2FGatewayPluginConfluentConsumeConfigTopicSchemaRegistry:GatewayPluginConfluentConsumeConfigTopicSchemaRegistry","description":"The plugin-global schema registry configuration.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["name","schemaRegistry"]}}},"konnect:index/GatewayPluginConfluentConsumeConfigTopicSchemaRegistry:GatewayPluginConfluentConsumeConfigTopicSchemaRegistry":{"properties":{"confluent":{"$ref":"#/types/konnect:index%2FGatewayPluginConfluentConsumeConfigTopicSchemaRegistryConfluent:GatewayPluginConfluentConsumeConfigTopicSchemaRegistryConfluent"}},"type":"object","language":{"nodejs":{"requiredOutputs":["confluent"]}}},"konnect:index/GatewayPluginConfluentConsumeConfigTopicSchemaRegistryConfluent:GatewayPluginConfluentConsumeConfigTopicSchemaRegistryConfluent":{"properties":{"authentication":{"$ref":"#/types/konnect:index%2FGatewayPluginConfluentConsumeConfigTopicSchemaRegistryConfluentAuthentication:GatewayPluginConfluentConsumeConfigTopicSchemaRegistryConfluentAuthentication"},"sslVerify":{"type":"boolean","description":"Set to false to disable SSL certificate verification when connecting to the schema registry. Default: true\n"},"ttl":{"type":"number","description":"The TTL in seconds for the schema registry cache.\n"},"url":{"type":"string","description":"The URL of the schema registry.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["authentication","sslVerify"]}}},"konnect:index/GatewayPluginConfluentConsumeConfigTopicSchemaRegistryConfluentAuthentication:GatewayPluginConfluentConsumeConfigTopicSchemaRegistryConfluentAuthentication":{"properties":{"basic":{"$ref":"#/types/konnect:index%2FGatewayPluginConfluentConsumeConfigTopicSchemaRegistryConfluentAuthenticationBasic:GatewayPluginConfluentConsumeConfigTopicSchemaRegistryConfluentAuthenticationBasic"},"mode":{"type":"string","description":"Authentication mode to use with the schema registry. Default: \"none\"; must be one of [\"basic\", \"none\", \"oauth2\"]\n"},"oauth2":{"$ref":"#/types/konnect:index%2FGatewayPluginConfluentConsumeConfigTopicSchemaRegistryConfluentAuthenticationOauth2:GatewayPluginConfluentConsumeConfigTopicSchemaRegistryConfluentAuthenticationOauth2"},"oauth2Client":{"$ref":"#/types/konnect:index%2FGatewayPluginConfluentConsumeConfigTopicSchemaRegistryConfluentAuthenticationOauth2Client:GatewayPluginConfluentConsumeConfigTopicSchemaRegistryConfluentAuthenticationOauth2Client"}},"type":"object","language":{"nodejs":{"requiredOutputs":["basic","mode","oauth2","oauth2Client"]}}},"konnect:index/GatewayPluginConfluentConsumeConfigTopicSchemaRegistryConfluentAuthenticationBasic:GatewayPluginConfluentConsumeConfigTopicSchemaRegistryConfluentAuthenticationBasic":{"properties":{"password":{"type":"string","description":"Not Null\n"},"username":{"type":"string","description":"Not Null\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["password","username"]}}},"konnect:index/GatewayPluginConfluentConsumeConfigTopicSchemaRegistryConfluentAuthenticationOauth2:GatewayPluginConfluentConsumeConfigTopicSchemaRegistryConfluentAuthenticationOauth2":{"properties":{"audiences":{"type":"array","items":{"type":"string"},"description":"List of audiences passed to the IdP when obtaining a new token. Default: []\n"},"clientId":{"type":"string","description":"The client ID for the application registration in the IdP.\n"},"clientSecret":{"type":"string","description":"The client secret for the application registration in the IdP.\n"},"grantType":{"type":"string","description":"The OAuth grant type to be used. Default: \"client*credentials\"; must be one of [\"client*credentials\", \"password\"]\n"},"password":{"type":"string","description":"The password to use if `config.oauth.grant_type` is set to \u003cspan pulumi-lang-nodejs=\"`password`\" pulumi-lang-dotnet=\"`Password`\" pulumi-lang-go=\"`password`\" pulumi-lang-python=\"`password`\" pulumi-lang-yaml=\"`password`\" pulumi-lang-java=\"`password`\"\u003e`password`\u003c/span\u003e.\n"},"scopes":{"type":"array","items":{"type":"string"},"description":"List of scopes to request from the IdP when obtaining a new token. Default: [\"openid\"]\n"},"tokenEndpoint":{"type":"string","description":"The token endpoint URI. Not Null\n"},"tokenHeaders":{"type":"object","additionalProperties":{"type":"string"},"description":"Extra headers to be passed in the token endpoint request.\n"},"tokenPostArgs":{"type":"object","additionalProperties":{"type":"string"},"description":"Extra post arguments to be passed in the token endpoint request.\n"},"username":{"type":"string","description":"The username to use if `config.oauth.grant_type` is set to \u003cspan pulumi-lang-nodejs=\"`password`\" pulumi-lang-dotnet=\"`Password`\" pulumi-lang-go=\"`password`\" pulumi-lang-python=\"`password`\" pulumi-lang-yaml=\"`password`\" pulumi-lang-java=\"`password`\"\u003e`password`\u003c/span\u003e.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["audiences","grantType","scopes","tokenEndpoint"]}}},"konnect:index/GatewayPluginConfluentConsumeConfigTopicSchemaRegistryConfluentAuthenticationOauth2Client:GatewayPluginConfluentConsumeConfigTopicSchemaRegistryConfluentAuthenticationOauth2Client":{"properties":{"authMethod":{"type":"string","description":"The authentication method used in client requests to the IdP. Supported values are: \u003cspan pulumi-lang-nodejs=\"`clientSecretBasic`\" pulumi-lang-dotnet=\"`ClientSecretBasic`\" pulumi-lang-go=\"`clientSecretBasic`\" pulumi-lang-python=\"`client_secret_basic`\" pulumi-lang-yaml=\"`clientSecretBasic`\" pulumi-lang-java=\"`clientSecretBasic`\"\u003e`client_secret_basic`\u003c/span\u003e to send \u003cspan pulumi-lang-nodejs=\"`clientId`\" pulumi-lang-dotnet=\"`ClientId`\" pulumi-lang-go=\"`clientId`\" pulumi-lang-python=\"`client_id`\" pulumi-lang-yaml=\"`clientId`\" pulumi-lang-java=\"`clientId`\"\u003e`client_id`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`clientSecret`\" pulumi-lang-dotnet=\"`ClientSecret`\" pulumi-lang-go=\"`clientSecret`\" pulumi-lang-python=\"`client_secret`\" pulumi-lang-yaml=\"`clientSecret`\" pulumi-lang-java=\"`clientSecret`\"\u003e`client_secret`\u003c/span\u003e in the `Authorization: Basic` header, \u003cspan pulumi-lang-nodejs=\"`clientSecretPost`\" pulumi-lang-dotnet=\"`ClientSecretPost`\" pulumi-lang-go=\"`clientSecretPost`\" pulumi-lang-python=\"`client_secret_post`\" pulumi-lang-yaml=\"`clientSecretPost`\" pulumi-lang-java=\"`clientSecretPost`\"\u003e`client_secret_post`\u003c/span\u003e to send \u003cspan pulumi-lang-nodejs=\"`clientId`\" pulumi-lang-dotnet=\"`ClientId`\" pulumi-lang-go=\"`clientId`\" pulumi-lang-python=\"`client_id`\" pulumi-lang-yaml=\"`clientId`\" pulumi-lang-java=\"`clientId`\"\u003e`client_id`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`clientSecret`\" pulumi-lang-dotnet=\"`ClientSecret`\" pulumi-lang-go=\"`clientSecret`\" pulumi-lang-python=\"`client_secret`\" pulumi-lang-yaml=\"`clientSecret`\" pulumi-lang-java=\"`clientSecret`\"\u003e`client_secret`\u003c/span\u003e as part of the request body, or \u003cspan pulumi-lang-nodejs=\"`clientSecretJwt`\" pulumi-lang-dotnet=\"`ClientSecretJwt`\" pulumi-lang-go=\"`clientSecretJwt`\" pulumi-lang-python=\"`client_secret_jwt`\" pulumi-lang-yaml=\"`clientSecretJwt`\" pulumi-lang-java=\"`clientSecretJwt`\"\u003e`client_secret_jwt`\u003c/span\u003e to send a JWT signed with the \u003cspan pulumi-lang-nodejs=\"`clientSecret`\" pulumi-lang-dotnet=\"`ClientSecret`\" pulumi-lang-go=\"`clientSecret`\" pulumi-lang-python=\"`client_secret`\" pulumi-lang-yaml=\"`clientSecret`\" pulumi-lang-java=\"`clientSecret`\"\u003e`client_secret`\u003c/span\u003e using the client assertion as part of the body. Default: \"client*secret*post\"; must be one of [\"client*secret*basic\", \"client*secret*jwt\", \"client*secret*post\", \"none\"]\n"},"clientSecretJwtAlg":{"type":"string","description":"The algorithm to use with JWT when using \u003cspan pulumi-lang-nodejs=\"`clientSecretJwt`\" pulumi-lang-dotnet=\"`ClientSecretJwt`\" pulumi-lang-go=\"`clientSecretJwt`\" pulumi-lang-python=\"`client_secret_jwt`\" pulumi-lang-yaml=\"`clientSecretJwt`\" pulumi-lang-java=\"`clientSecretJwt`\"\u003e`client_secret_jwt`\u003c/span\u003e authentication. Default: \"HS512\"; must be one of [\"HS256\", \"HS512\"]\n"},"httpProxy":{"type":"string","description":"The proxy to use when making HTTP requests to the IdP.\n"},"httpProxyAuthorization":{"type":"string","description":"The `Proxy-Authorization` header value to be used with \u003cspan pulumi-lang-nodejs=\"`httpProxy`\" pulumi-lang-dotnet=\"`HttpProxy`\" pulumi-lang-go=\"`httpProxy`\" pulumi-lang-python=\"`http_proxy`\" pulumi-lang-yaml=\"`httpProxy`\" pulumi-lang-java=\"`httpProxy`\"\u003e`http_proxy`\u003c/span\u003e.\n"},"httpVersion":{"type":"number","description":"The HTTP version used for requests made by this plugin. Supported values: `1.1` for HTTP 1.1 and `1.0` for HTTP 1.0.\n"},"httpsProxy":{"type":"string","description":"The proxy to use when making HTTPS requests to the IdP.\n"},"httpsProxyAuthorization":{"type":"string","description":"The `Proxy-Authorization` header value to be used with \u003cspan pulumi-lang-nodejs=\"`httpsProxy`\" pulumi-lang-dotnet=\"`HttpsProxy`\" pulumi-lang-go=\"`httpsProxy`\" pulumi-lang-python=\"`https_proxy`\" pulumi-lang-yaml=\"`httpsProxy`\" pulumi-lang-java=\"`httpsProxy`\"\u003e`https_proxy`\u003c/span\u003e.\n"},"keepAlive":{"type":"boolean","description":"Whether to use keepalive connections to the IdP. Default: true\n"},"noProxy":{"type":"string","description":"A comma-separated list of hosts that should not be proxied.\n"},"sslVerify":{"type":"boolean","description":"Whether to verify the certificate presented by the IdP when using HTTPS. Default: false\n"},"timeout":{"type":"number","description":"Network I/O timeout for requests to the IdP in milliseconds. Default: 10000\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["authMethod","clientSecretJwtAlg","httpVersion","keepAlive","sslVerify","timeout"]}}},"konnect:index/GatewayPluginConfluentConsumeConsumer:GatewayPluginConfluentConsumeConsumer":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginConfluentConsumeOrdering:GatewayPluginConfluentConsumeOrdering":{"properties":{"after":{"$ref":"#/types/konnect:index%2FGatewayPluginConfluentConsumeOrderingAfter:GatewayPluginConfluentConsumeOrderingAfter"},"before":{"$ref":"#/types/konnect:index%2FGatewayPluginConfluentConsumeOrderingBefore:GatewayPluginConfluentConsumeOrderingBefore"}},"type":"object","language":{"nodejs":{"requiredOutputs":["after","before"]}}},"konnect:index/GatewayPluginConfluentConsumeOrderingAfter:GatewayPluginConfluentConsumeOrderingAfter":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginConfluentConsumeOrderingBefore:GatewayPluginConfluentConsumeOrderingBefore":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginConfluentConsumePartial:GatewayPluginConfluentConsumePartial":{"properties":{"id":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"name":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"path":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id","name","path"]}}},"konnect:index/GatewayPluginConfluentConsumeRoute:GatewayPluginConfluentConsumeRoute":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginConfluentConsumeService:GatewayPluginConfluentConsumeService":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginConfluentConsumer:GatewayPluginConfluentConsumer":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginConfluentOrdering:GatewayPluginConfluentOrdering":{"properties":{"after":{"$ref":"#/types/konnect:index%2FGatewayPluginConfluentOrderingAfter:GatewayPluginConfluentOrderingAfter"},"before":{"$ref":"#/types/konnect:index%2FGatewayPluginConfluentOrderingBefore:GatewayPluginConfluentOrderingBefore"}},"type":"object","language":{"nodejs":{"requiredOutputs":["after","before"]}}},"konnect:index/GatewayPluginConfluentOrderingAfter:GatewayPluginConfluentOrderingAfter":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginConfluentOrderingBefore:GatewayPluginConfluentOrderingBefore":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginConfluentPartial:GatewayPluginConfluentPartial":{"properties":{"id":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"name":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"path":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id","name","path"]}}},"konnect:index/GatewayPluginConfluentRoute:GatewayPluginConfluentRoute":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginConfluentService:GatewayPluginConfluentService":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginCorrelationIdConfig:GatewayPluginCorrelationIdConfig":{"properties":{"echoDownstream":{"type":"boolean","description":"Whether to echo the header back to downstream (the client). Default: false\n"},"generator":{"type":"string","description":"The generator to use for the correlation ID. Accepted values are \u003cspan pulumi-lang-nodejs=\"`uuid`\" pulumi-lang-dotnet=\"`Uuid`\" pulumi-lang-go=\"`uuid`\" pulumi-lang-python=\"`uuid`\" pulumi-lang-yaml=\"`uuid`\" pulumi-lang-java=\"`uuid`\"\u003e`uuid`\u003c/span\u003e, `uuid#counter`, and \u003cspan pulumi-lang-nodejs=\"`tracker`\" pulumi-lang-dotnet=\"`Tracker`\" pulumi-lang-go=\"`tracker`\" pulumi-lang-python=\"`tracker`\" pulumi-lang-yaml=\"`tracker`\" pulumi-lang-java=\"`tracker`\"\u003e`tracker`\u003c/span\u003e. See Generators. Default: \"uuid#counter\"; must be one of [\"tracker\", \"uuid\", \"uuid#counter\"]\n"},"headerName":{"type":"string","description":"The HTTP header name to use for the correlation ID. Default: \"Kong-Request-ID\"\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["echoDownstream","generator","headerName"]}}},"konnect:index/GatewayPluginCorrelationIdConsumer:GatewayPluginCorrelationIdConsumer":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginCorrelationIdOrdering:GatewayPluginCorrelationIdOrdering":{"properties":{"after":{"$ref":"#/types/konnect:index%2FGatewayPluginCorrelationIdOrderingAfter:GatewayPluginCorrelationIdOrderingAfter"},"before":{"$ref":"#/types/konnect:index%2FGatewayPluginCorrelationIdOrderingBefore:GatewayPluginCorrelationIdOrderingBefore"}},"type":"object","language":{"nodejs":{"requiredOutputs":["after","before"]}}},"konnect:index/GatewayPluginCorrelationIdOrderingAfter:GatewayPluginCorrelationIdOrderingAfter":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginCorrelationIdOrderingBefore:GatewayPluginCorrelationIdOrderingBefore":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginCorrelationIdPartial:GatewayPluginCorrelationIdPartial":{"properties":{"id":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"name":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"path":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id","name","path"]}}},"konnect:index/GatewayPluginCorrelationIdRoute:GatewayPluginCorrelationIdRoute":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginCorrelationIdService:GatewayPluginCorrelationIdService":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginCorsConfig:GatewayPluginCorsConfig":{"properties":{"allowOriginAbsent":{"type":"boolean","description":"A boolean value that skip cors response headers when origin header of request is empty. Default: true\n"},"credentials":{"type":"boolean","description":"Flag to determine whether the `Access-Control-Allow-Credentials` header should be sent with \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e as the value. Default: false\n"},"exposedHeaders":{"type":"array","items":{"type":"string"},"description":"Value for the `Access-Control-Expose-Headers` header. If not specified, no custom headers are exposed.\n"},"headers":{"type":"array","items":{"type":"string"},"description":"Value for the `Access-Control-Allow-Headers` header.\n"},"maxAge":{"type":"number","description":"Indicates how long the results of the preflight request can be cached, in \u003cspan pulumi-lang-nodejs=\"`seconds`\" pulumi-lang-dotnet=\"`Seconds`\" pulumi-lang-go=\"`seconds`\" pulumi-lang-python=\"`seconds`\" pulumi-lang-yaml=\"`seconds`\" pulumi-lang-java=\"`seconds`\"\u003e`seconds`\u003c/span\u003e.\n"},"methods":{"type":"array","items":{"type":"string"},"description":"'Value for the `Access-Control-Allow-Methods` header. Available options include `GET`, `HEAD`, `PUT`, `PATCH`, `POST`, `DELETE`, `OPTIONS`, `TRACE`, `CONNECT`. By default, all options are allowed.'. Default: [\"CONNECT\",\"DELETE\",\"GET\",\"HEAD\",\"OPTIONS\",\"PATCH\",\"POST\",\"PUT\",\"TRACE\"]\n"},"origins":{"type":"array","items":{"type":"string"},"description":"List of allowed domains for the `Access-Control-Allow-Origin` header. If you want to allow all origins, add `*` as a single value to this configuration field. The accepted values can either be flat strings or PCRE regexes. NOTE: If you don't specify any allowed domains, all origins are allowed.\n"},"preflightContinue":{"type":"boolean","description":"A boolean value that instructs the plugin to proxy the `OPTIONS` preflight request to the Upstream service. Default: false\n"},"privateNetwork":{"type":"boolean","description":"Flag to determine whether the `Access-Control-Allow-Private-Network` header should be sent with \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e as the value. Default: false\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["allowOriginAbsent","credentials","methods","preflightContinue","privateNetwork"]}}},"konnect:index/GatewayPluginCorsOrdering:GatewayPluginCorsOrdering":{"properties":{"after":{"$ref":"#/types/konnect:index%2FGatewayPluginCorsOrderingAfter:GatewayPluginCorsOrderingAfter"},"before":{"$ref":"#/types/konnect:index%2FGatewayPluginCorsOrderingBefore:GatewayPluginCorsOrderingBefore"}},"type":"object","language":{"nodejs":{"requiredOutputs":["after","before"]}}},"konnect:index/GatewayPluginCorsOrderingAfter:GatewayPluginCorsOrderingAfter":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginCorsOrderingBefore:GatewayPluginCorsOrderingBefore":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginCorsPartial:GatewayPluginCorsPartial":{"properties":{"id":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"name":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"path":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id","name","path"]}}},"konnect:index/GatewayPluginCorsRoute:GatewayPluginCorsRoute":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginCorsService:GatewayPluginCorsService":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginDatadogConfig:GatewayPluginDatadogConfig":{"properties":{"consumerTag":{"type":"string","description":"String to be attached as tag of the consumer. Default: \"consumer\"\n"},"flushTimeout":{"type":"number","description":"Optional time in seconds. If \u003cspan pulumi-lang-nodejs=\"`queueSize`\" pulumi-lang-dotnet=\"`QueueSize`\" pulumi-lang-go=\"`queueSize`\" pulumi-lang-python=\"`queue_size`\" pulumi-lang-yaml=\"`queueSize`\" pulumi-lang-java=\"`queueSize`\"\u003e`queue_size`\u003c/span\u003e \u003e 1, this is the max idle time before sending a log with less than \u003cspan pulumi-lang-nodejs=\"`queueSize`\" pulumi-lang-dotnet=\"`QueueSize`\" pulumi-lang-go=\"`queueSize`\" pulumi-lang-python=\"`queue_size`\" pulumi-lang-yaml=\"`queueSize`\" pulumi-lang-java=\"`queueSize`\"\u003e`queue_size`\u003c/span\u003e records.\n"},"host":{"type":"string","description":"A string representing a host name, such as example.com. Default: \"localhost\"\n"},"metrics":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginDatadogConfigMetric:GatewayPluginDatadogConfigMetric"},"description":"List of metrics to be logged.\n"},"port":{"type":"number","description":"An integer representing a port number between 0 and 65535, inclusive. Default: 8125\n"},"prefix":{"type":"string","description":"String to be attached as a prefix to a metric's name. Default: \"kong\"\n"},"queue":{"$ref":"#/types/konnect:index%2FGatewayPluginDatadogConfigQueue:GatewayPluginDatadogConfigQueue"},"queueSize":{"type":"number","description":"Maximum number of log entries to be sent on each message to the upstream server.\n"},"retryCount":{"type":"number","description":"Number of times to retry when sending data to the upstream server.\n"},"routeNameTag":{"type":"string","description":"String to be attached as tag of the route name or ID.\n"},"serviceNameTag":{"type":"string","description":"String to be attached as the name of the service. Default: \"name\"\n"},"statusTag":{"type":"string","description":"String to be attached as the tag of the HTTP status. Default: \"status\"\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["consumerTag","host","metrics","port","prefix","queue","serviceNameTag","statusTag"]}}},"konnect:index/GatewayPluginDatadogConfigMetric:GatewayPluginDatadogConfigMetric":{"properties":{"consumerIdentifier":{"type":"string","description":"Authenticated user detail. must be one of [\"consumer*id\", \"custom*id\", \"username\"]\n"},"name":{"type":"string","description":"Datadog metric’s name. Not Null; must be one of [\"kong*latency\", \"latency\", \"request*count\", \"request*size\", \"response*size\", \u003cspan pulumi-lang-nodejs=\"\"upstreamLatency\"\" pulumi-lang-dotnet=\"\"UpstreamLatency\"\" pulumi-lang-go=\"\"upstreamLatency\"\" pulumi-lang-python=\"\"upstream_latency\"\" pulumi-lang-yaml=\"\"upstreamLatency\"\" pulumi-lang-java=\"\"upstreamLatency\"\"\u003e\"upstream_latency\"\u003c/span\u003e]\n"},"sampleRate":{"type":"number","description":"Sampling rate\n"},"statType":{"type":"string","description":"Determines what sort of event the metric represents. Not Null; must be one of [\"counter\", \"distribution\", \"gauge\", \"histogram\", \"meter\", \"set\", \"timer\"]\n"},"tags":{"type":"array","items":{"type":"string"},"description":"List of tags\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["consumerIdentifier","name","sampleRate","statType","tags"]}}},"konnect:index/GatewayPluginDatadogConfigQueue:GatewayPluginDatadogConfigQueue":{"properties":{"concurrencyLimit":{"type":"number","description":"The number of of queue delivery timers. -1 indicates unlimited. Default: 1; must be one of [\"-1\", \"1\"]\n"},"initialRetryDelay":{"type":"number","description":"Time in seconds before the initial retry is made for a failing batch.\n"},"maxBatchSize":{"type":"number","description":"Maximum number of entries that can be processed at a time. Default: 1\n"},"maxBytes":{"type":"number","description":"Maximum number of bytes that can be waiting on a queue, requires string content.\n"},"maxCoalescingDelay":{"type":"number","description":"Maximum number of (fractional) seconds to elapse after the first entry was queued before the queue starts calling the handler. Default: 1\n"},"maxEntries":{"type":"number","description":"Maximum number of entries that can be waiting on the queue. Default: 10000\n"},"maxRetryDelay":{"type":"number","description":"Maximum time in seconds between retries, caps exponential backoff. Default: 60\n"},"maxRetryTime":{"type":"number","description":"Time in seconds before the queue gives up calling a failed handler for a batch. Default: 60\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["concurrencyLimit","initialRetryDelay","maxBatchSize","maxCoalescingDelay","maxEntries","maxRetryDelay","maxRetryTime"]}}},"konnect:index/GatewayPluginDatadogConsumer:GatewayPluginDatadogConsumer":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginDatadogOrdering:GatewayPluginDatadogOrdering":{"properties":{"after":{"$ref":"#/types/konnect:index%2FGatewayPluginDatadogOrderingAfter:GatewayPluginDatadogOrderingAfter"},"before":{"$ref":"#/types/konnect:index%2FGatewayPluginDatadogOrderingBefore:GatewayPluginDatadogOrderingBefore"}},"type":"object","language":{"nodejs":{"requiredOutputs":["after","before"]}}},"konnect:index/GatewayPluginDatadogOrderingAfter:GatewayPluginDatadogOrderingAfter":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginDatadogOrderingBefore:GatewayPluginDatadogOrderingBefore":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginDatadogPartial:GatewayPluginDatadogPartial":{"properties":{"id":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"name":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"path":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id","name","path"]}}},"konnect:index/GatewayPluginDatadogRoute:GatewayPluginDatadogRoute":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginDatadogService:GatewayPluginDatadogService":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginDatakitConfig:GatewayPluginDatakitConfig":{"properties":{"debug":{"type":"boolean","description":"Default: false\n"},"nodes":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginDatakitConfigNode:GatewayPluginDatakitConfigNode"}},"resources":{"$ref":"#/types/konnect:index%2FGatewayPluginDatakitConfigResources:GatewayPluginDatakitConfigResources"}},"type":"object","required":["nodes"],"language":{"nodejs":{"requiredOutputs":["debug","nodes","resources"]}}},"konnect:index/GatewayPluginDatakitConfigNode:GatewayPluginDatakitConfigNode":{"properties":{"branch":{"$ref":"#/types/konnect:index%2FGatewayPluginDatakitConfigNodeBranch:GatewayPluginDatakitConfigNodeBranch","description":"Execute different nodes based on some input condition\n"},"cache":{"$ref":"#/types/konnect:index%2FGatewayPluginDatakitConfigNodeCache:GatewayPluginDatakitConfigNodeCache","description":"Fetch cached data\n"},"call":{"$ref":"#/types/konnect:index%2FGatewayPluginDatakitConfigNodeCall:GatewayPluginDatakitConfigNodeCall","description":"Make an external HTTP request\n"},"exit":{"$ref":"#/types/konnect:index%2FGatewayPluginDatakitConfigNodeExit:GatewayPluginDatakitConfigNodeExit","description":"Terminate the request and send a response to the client\n"},"jq":{"$ref":"#/types/konnect:index%2FGatewayPluginDatakitConfigNodeJq:GatewayPluginDatakitConfigNodeJq","description":"Process data using \u003cspan pulumi-lang-nodejs=\"`jq`\" pulumi-lang-dotnet=\"`Jq`\" pulumi-lang-go=\"`jq`\" pulumi-lang-python=\"`jq`\" pulumi-lang-yaml=\"`jq`\" pulumi-lang-java=\"`jq`\"\u003e`jq`\u003c/span\u003e syntax\n"},"jsonToXml":{"$ref":"#/types/konnect:index%2FGatewayPluginDatakitConfigNodeJsonToXml:GatewayPluginDatakitConfigNodeJsonToXml","description":"transform JSON or lua table to XML\n"},"property":{"$ref":"#/types/konnect:index%2FGatewayPluginDatakitConfigNodeProperty:GatewayPluginDatakitConfigNodeProperty","description":"Get or set a property\n"},"static":{"$ref":"#/types/konnect:index%2FGatewayPluginDatakitConfigNodeStatic:GatewayPluginDatakitConfigNodeStatic","description":"Produce reusable outputs from statically-configured values\n"},"xmlToJson":{"$ref":"#/types/konnect:index%2FGatewayPluginDatakitConfigNodeXmlToJson:GatewayPluginDatakitConfigNodeXmlToJson","description":"convert XML to JSON\n"}},"type":"object"},"konnect:index/GatewayPluginDatakitConfigNodeBranch:GatewayPluginDatakitConfigNodeBranch":{"properties":{"elses":{"type":"array","items":{"type":"string"},"description":"nodes to execute if the input condition is \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e\n"},"input":{"type":"string","description":"branch node input\n"},"name":{"type":"string","description":"A label that uniquely identifies the node within the plugin configuration so that it can be used for input/output connections. Must be valid \u003cspan pulumi-lang-nodejs=\"`snakeCase`\" pulumi-lang-dotnet=\"`SnakeCase`\" pulumi-lang-go=\"`snakeCase`\" pulumi-lang-python=\"`snake_case`\" pulumi-lang-yaml=\"`snakeCase`\" pulumi-lang-java=\"`snakeCase`\"\u003e`snake_case`\u003c/span\u003e or `kebab-case`.\n"},"output":{"type":"string","description":"branch node output\n"},"outputs":{"$ref":"#/types/konnect:index%2FGatewayPluginDatakitConfigNodeBranchOutputs:GatewayPluginDatakitConfigNodeBranchOutputs","description":"branch node outputs\n"},"thens":{"type":"array","items":{"type":"string"},"description":"nodes to execute if the input condition is \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["outputs"]}}},"konnect:index/GatewayPluginDatakitConfigNodeBranchOutputs:GatewayPluginDatakitConfigNodeBranchOutputs":{"properties":{"else":{"type":"string","description":"node output\n"},"then":{"type":"string","description":"node output\n"}},"type":"object"},"konnect:index/GatewayPluginDatakitConfigNodeCache:GatewayPluginDatakitConfigNodeCache":{"properties":{"bypassOnError":{"type":"boolean"},"input":{"type":"string","description":"cache node input\n"},"inputs":{"$ref":"#/types/konnect:index%2FGatewayPluginDatakitConfigNodeCacheInputs:GatewayPluginDatakitConfigNodeCacheInputs","description":"cache node inputs\n"},"name":{"type":"string","description":"A label that uniquely identifies the node within the plugin configuration so that it can be used for input/output connections. Must be valid \u003cspan pulumi-lang-nodejs=\"`snakeCase`\" pulumi-lang-dotnet=\"`SnakeCase`\" pulumi-lang-go=\"`snakeCase`\" pulumi-lang-python=\"`snake_case`\" pulumi-lang-yaml=\"`snakeCase`\" pulumi-lang-java=\"`snakeCase`\"\u003e`snake_case`\u003c/span\u003e or `kebab-case`.\n"},"output":{"type":"string","description":"cache node output\n"},"outputs":{"$ref":"#/types/konnect:index%2FGatewayPluginDatakitConfigNodeCacheOutputs:GatewayPluginDatakitConfigNodeCacheOutputs","description":"cache node outputs\n"},"ttl":{"type":"number"}},"type":"object","language":{"nodejs":{"requiredOutputs":["inputs","outputs"]}}},"konnect:index/GatewayPluginDatakitConfigNodeCacheInputs:GatewayPluginDatakitConfigNodeCacheInputs":{"properties":{"data":{"type":"string","description":"The data to be cached.\n"},"key":{"type":"string","description":"The cache key.\n"},"ttl":{"type":"string","description":"The TTL in seconds.\n"}},"type":"object"},"konnect:index/GatewayPluginDatakitConfigNodeCacheOutputs:GatewayPluginDatakitConfigNodeCacheOutputs":{"properties":{"data":{"type":"string","description":"The data that was cached.\n"},"hit":{"type":"string","description":"Signals a cache hit.\n"},"miss":{"type":"string","description":"Signals a cache miss.\n"},"stored":{"type":"string","description":"Signals whether data was stored in cache.\n"}},"type":"object"},"konnect:index/GatewayPluginDatakitConfigNodeCall:GatewayPluginDatakitConfigNodeCall":{"properties":{"input":{"type":"string","description":"call node input\n"},"inputs":{"$ref":"#/types/konnect:index%2FGatewayPluginDatakitConfigNodeCallInputs:GatewayPluginDatakitConfigNodeCallInputs","description":"call node inputs\n"},"method":{"type":"string","description":"A string representing an HTTP method, such as GET, POST, PUT, or DELETE. The string must contain only uppercase letters. Default: \"GET\"\n"},"name":{"type":"string","description":"A label that uniquely identifies the node within the plugin configuration so that it can be used for input/output connections. Must be valid \u003cspan pulumi-lang-nodejs=\"`snakeCase`\" pulumi-lang-dotnet=\"`SnakeCase`\" pulumi-lang-go=\"`snakeCase`\" pulumi-lang-python=\"`snake_case`\" pulumi-lang-yaml=\"`snakeCase`\" pulumi-lang-java=\"`snakeCase`\"\u003e`snake_case`\u003c/span\u003e or `kebab-case`.\n"},"output":{"type":"string","description":"call node output\n"},"outputs":{"$ref":"#/types/konnect:index%2FGatewayPluginDatakitConfigNodeCallOutputs:GatewayPluginDatakitConfigNodeCallOutputs","description":"call node outputs\n"},"sslServerName":{"type":"string","description":"A string representing an SNI (server name indication) value for TLS.\n"},"sslVerify":{"type":"boolean","description":"Whether to verify the TLS certificate when making HTTPS requests.\n"},"timeout":{"type":"number","description":"An integer representing a timeout in milliseconds. Must be between 0 and 2^31-2.\n"},"url":{"type":"string","description":"A string representing a URL, such as https://example.com/path/to/resource?q=search.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["inputs","method","outputs"]}}},"konnect:index/GatewayPluginDatakitConfigNodeCallInputs:GatewayPluginDatakitConfigNodeCallInputs":{"properties":{"body":{"type":"string","description":"HTTP request body\n"},"headers":{"type":"string","description":"HTTP request headers\n"},"httpProxy":{"type":"string","description":"The HTTP proxy URL. This proxy server will be used for HTTP requests.\n"},"httpsProxy":{"type":"string","description":"The HTTPS proxy URL. This proxy server will be used for HTTPS requests.\n"},"proxyAuthPassword":{"type":"string","description":"The password to authenticate with, if the forward proxy is protected by basic authentication.\n"},"proxyAuthUsername":{"type":"string","description":"The username to authenticate with, if the forward proxy is protected by basic authentication.\n"},"query":{"type":"string","description":"HTTP request query\n"},"url":{"type":"string","description":"HTTP request URL\n"}},"type":"object"},"konnect:index/GatewayPluginDatakitConfigNodeCallOutputs:GatewayPluginDatakitConfigNodeCallOutputs":{"properties":{"body":{"type":"string","description":"HTTP response body\n"},"headers":{"type":"string","description":"HTTP response headers\n"},"status":{"type":"string","description":"HTTP response status code\n"}},"type":"object"},"konnect:index/GatewayPluginDatakitConfigNodeExit:GatewayPluginDatakitConfigNodeExit":{"properties":{"input":{"type":"string","description":"exit node input\n"},"inputs":{"$ref":"#/types/konnect:index%2FGatewayPluginDatakitConfigNodeExitInputs:GatewayPluginDatakitConfigNodeExitInputs","description":"exit node inputs\n"},"name":{"type":"string","description":"A label that uniquely identifies the node within the plugin configuration so that it can be used for input/output connections. Must be valid \u003cspan pulumi-lang-nodejs=\"`snakeCase`\" pulumi-lang-dotnet=\"`SnakeCase`\" pulumi-lang-go=\"`snakeCase`\" pulumi-lang-python=\"`snake_case`\" pulumi-lang-yaml=\"`snakeCase`\" pulumi-lang-java=\"`snakeCase`\"\u003e`snake_case`\u003c/span\u003e or `kebab-case`.\n"},"status":{"type":"number","description":"HTTP status code. Default: 200\n"},"warnHeadersSent":{"type":"boolean"}},"type":"object","language":{"nodejs":{"requiredOutputs":["inputs","status"]}}},"konnect:index/GatewayPluginDatakitConfigNodeExitInputs:GatewayPluginDatakitConfigNodeExitInputs":{"properties":{"body":{"type":"string","description":"HTTP response body\n"},"headers":{"type":"string","description":"HTTP response headers\n"}},"type":"object"},"konnect:index/GatewayPluginDatakitConfigNodeJq:GatewayPluginDatakitConfigNodeJq":{"properties":{"input":{"type":"string","description":"filter input(s)\n"},"inputs":{"type":"object","additionalProperties":{"type":"string"},"description":"filter input(s)\n"},"jq":{"type":"string","description":"The jq filter text. Refer to https://jqlang.org/manual/ for full documentation. Not Null\n"},"name":{"type":"string","description":"A label that uniquely identifies the node within the plugin configuration so that it can be used for input/output connections. Must be valid \u003cspan pulumi-lang-nodejs=\"`snakeCase`\" pulumi-lang-dotnet=\"`SnakeCase`\" pulumi-lang-go=\"`snakeCase`\" pulumi-lang-python=\"`snake_case`\" pulumi-lang-yaml=\"`snakeCase`\" pulumi-lang-java=\"`snakeCase`\"\u003e`snake_case`\u003c/span\u003e or `kebab-case`.\n"},"output":{"type":"string","description":"filter output(s)\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["jq"]}}},"konnect:index/GatewayPluginDatakitConfigNodeJsonToXml:GatewayPluginDatakitConfigNodeJsonToXml":{"properties":{"attributesBlockName":{"type":"string"},"attributesNamePrefix":{"type":"string"},"input":{"type":"string","description":"JSON string or table\n"},"inputs":{"type":"object","additionalProperties":{"type":"string"},"description":"JSON string or table\n"},"name":{"type":"string","description":"A label that uniquely identifies the node within the plugin configuration so that it can be used for input/output connections. Must be valid \u003cspan pulumi-lang-nodejs=\"`snakeCase`\" pulumi-lang-dotnet=\"`SnakeCase`\" pulumi-lang-go=\"`snakeCase`\" pulumi-lang-python=\"`snake_case`\" pulumi-lang-yaml=\"`snakeCase`\" pulumi-lang-java=\"`snakeCase`\"\u003e`snake_case`\u003c/span\u003e or `kebab-case`.\n"},"output":{"type":"string","description":"XML document converted from JSON\n"},"rootElementName":{"type":"string"},"textBlockName":{"type":"string","description":"The name of the block to treat as XML text content. Default: \"#text\"\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["textBlockName"]}}},"konnect:index/GatewayPluginDatakitConfigNodeProperty:GatewayPluginDatakitConfigNodeProperty":{"properties":{"contentType":{"type":"string","description":"The expected mime type of the property value. When set to `application/json`, SET operations will JSON-encode input data before writing it, and GET operations will JSON-decode output data after reading it. Otherwise, this setting has no effect. must be one of [\"application/json\", \"application/octet-stream\", \"text/plain\"]\n"},"input":{"type":"string","description":"Property input source. When connected, this node operates in SET mode and writes input data to the property. Otherwise, the node operates in GET mode and reads the property.\n"},"name":{"type":"string","description":"A label that uniquely identifies the node within the plugin configuration so that it can be used for input/output connections. Must be valid \u003cspan pulumi-lang-nodejs=\"`snakeCase`\" pulumi-lang-dotnet=\"`SnakeCase`\" pulumi-lang-go=\"`snakeCase`\" pulumi-lang-python=\"`snake_case`\" pulumi-lang-yaml=\"`snakeCase`\" pulumi-lang-java=\"`snakeCase`\"\u003e`snake_case`\u003c/span\u003e or `kebab-case`.\n"},"output":{"type":"string","description":"Property output. This can be connected regardless of whether the node is operating in GET mode or SET mode.\n"},"property":{"type":"string","description":"The property name to get/set. Not Null\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["contentType","property"]}}},"konnect:index/GatewayPluginDatakitConfigNodeStatic:GatewayPluginDatakitConfigNodeStatic":{"properties":{"name":{"type":"string","description":"A label that uniquely identifies the node within the plugin configuration so that it can be used for input/output connections. Must be valid \u003cspan pulumi-lang-nodejs=\"`snakeCase`\" pulumi-lang-dotnet=\"`SnakeCase`\" pulumi-lang-go=\"`snakeCase`\" pulumi-lang-python=\"`snake_case`\" pulumi-lang-yaml=\"`snakeCase`\" pulumi-lang-java=\"`snakeCase`\"\u003e`snake_case`\u003c/span\u003e or `kebab-case`.\n"},"output":{"type":"string","description":"The entire `.values` map\n"},"outputs":{"type":"object","additionalProperties":{"type":"string"},"description":"Individual items from `.values`, referenced by key\n"},"values":{"type":"object","additionalProperties":{"type":"string"},"description":"An object with string keys and freeform values\n"}},"type":"object"},"konnect:index/GatewayPluginDatakitConfigNodeXmlToJson:GatewayPluginDatakitConfigNodeXmlToJson":{"properties":{"attributesBlockName":{"type":"string"},"attributesNamePrefix":{"type":"string"},"input":{"type":"string","description":"XML document string\n"},"name":{"type":"string","description":"A label that uniquely identifies the node within the plugin configuration so that it can be used for input/output connections. Must be valid \u003cspan pulumi-lang-nodejs=\"`snakeCase`\" pulumi-lang-dotnet=\"`SnakeCase`\" pulumi-lang-go=\"`snakeCase`\" pulumi-lang-python=\"`snake_case`\" pulumi-lang-yaml=\"`snakeCase`\" pulumi-lang-java=\"`snakeCase`\"\u003e`snake_case`\u003c/span\u003e or `kebab-case`.\n"},"output":{"type":"string","description":"a map object converted from XML document. If connected to `request.body` or `response.body`, the output will be a JSON object.\n"},"recognizeType":{"type":"boolean","description":"Default: true\n"},"textAsProperty":{"type":"boolean","description":"Default: false\n"},"textBlockName":{"type":"string","description":"Default: \"#text\"\n"},"xpath":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["recognizeType","textAsProperty","textBlockName"]}}},"konnect:index/GatewayPluginDatakitConfigResources:GatewayPluginDatakitConfigResources":{"properties":{"cache":{"$ref":"#/types/konnect:index%2FGatewayPluginDatakitConfigResourcesCache:GatewayPluginDatakitConfigResourcesCache"},"vault":{"type":"object","additionalProperties":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["cache"]}}},"konnect:index/GatewayPluginDatakitConfigResourcesCache:GatewayPluginDatakitConfigResourcesCache":{"properties":{"memory":{"$ref":"#/types/konnect:index%2FGatewayPluginDatakitConfigResourcesCacheMemory:GatewayPluginDatakitConfigResourcesCacheMemory"},"redis":{"$ref":"#/types/konnect:index%2FGatewayPluginDatakitConfigResourcesCacheRedis:GatewayPluginDatakitConfigResourcesCacheRedis"},"strategy":{"type":"string","description":"The backing data store in which to hold cache entities. Accepted values are: \u003cspan pulumi-lang-nodejs=\"`memory`\" pulumi-lang-dotnet=\"`Memory`\" pulumi-lang-go=\"`memory`\" pulumi-lang-python=\"`memory`\" pulumi-lang-yaml=\"`memory`\" pulumi-lang-java=\"`memory`\"\u003e`memory`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`redis`\" pulumi-lang-dotnet=\"`Redis`\" pulumi-lang-go=\"`redis`\" pulumi-lang-python=\"`redis`\" pulumi-lang-yaml=\"`redis`\" pulumi-lang-java=\"`redis`\"\u003e`redis`\u003c/span\u003e. must be one of [\"memory\", \"redis\"]\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["memory","redis","strategy"]}}},"konnect:index/GatewayPluginDatakitConfigResourcesCacheMemory:GatewayPluginDatakitConfigResourcesCacheMemory":{"properties":{"dictionaryName":{"type":"string","description":"The name of the shared dictionary in which to hold cache entities when the memory strategy is selected. Note that this dictionary currently must be defined manually in the Kong Nginx template. Default: \"kong*db*cache\"\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["dictionaryName"]}}},"konnect:index/GatewayPluginDatakitConfigResourcesCacheRedis:GatewayPluginDatakitConfigResourcesCacheRedis":{"properties":{"cloudAuthentication":{"$ref":"#/types/konnect:index%2FGatewayPluginDatakitConfigResourcesCacheRedisCloudAuthentication:GatewayPluginDatakitConfigResourcesCacheRedisCloudAuthentication","description":"Cloud auth related configs for connecting to a Cloud Provider's Redis instance.\n"},"clusterMaxRedirections":{"type":"number","description":"Maximum retry attempts for redirection. Default: 5\n"},"clusterNodes":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginDatakitConfigResourcesCacheRedisClusterNode:GatewayPluginDatakitConfigResourcesCacheRedisClusterNode"},"description":"Cluster addresses to use for Redis connections when the \u003cspan pulumi-lang-nodejs=\"`redis`\" pulumi-lang-dotnet=\"`Redis`\" pulumi-lang-go=\"`redis`\" pulumi-lang-python=\"`redis`\" pulumi-lang-yaml=\"`redis`\" pulumi-lang-java=\"`redis`\"\u003e`redis`\u003c/span\u003e strategy is defined. Defining this field implies using a Redis Cluster. The minimum length of the array is 1 element.\n"},"connectTimeout":{"type":"number","description":"An integer representing a timeout in milliseconds. Must be between 0 and 2^31-2. Default: 2000\n"},"connectionIsProxied":{"type":"boolean","description":"If the connection to Redis is proxied (e.g. Envoy), set it \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e. Set the \u003cspan pulumi-lang-nodejs=\"`host`\" pulumi-lang-dotnet=\"`Host`\" pulumi-lang-go=\"`host`\" pulumi-lang-python=\"`host`\" pulumi-lang-yaml=\"`host`\" pulumi-lang-java=\"`host`\"\u003e`host`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`port`\" pulumi-lang-dotnet=\"`Port`\" pulumi-lang-go=\"`port`\" pulumi-lang-python=\"`port`\" pulumi-lang-yaml=\"`port`\" pulumi-lang-java=\"`port`\"\u003e`port`\u003c/span\u003e to point to the proxy address. Default: false\n"},"database":{"type":"number","description":"Database to use for the Redis connection when using the \u003cspan pulumi-lang-nodejs=\"`redis`\" pulumi-lang-dotnet=\"`Redis`\" pulumi-lang-go=\"`redis`\" pulumi-lang-python=\"`redis`\" pulumi-lang-yaml=\"`redis`\" pulumi-lang-java=\"`redis`\"\u003e`redis`\u003c/span\u003e strategy. Default: 0\n"},"host":{"type":"string","description":"A string representing a host name, such as example.com. Default: \"127.0.0.1\"\n"},"keepaliveBacklog":{"type":"number","description":"Limits the total number of opened connections for a pool. If the connection pool is full, connection queues above the limit go into the backlog queue. If the backlog queue is full, subsequent connect operations fail and return \u003cspan pulumi-lang-nodejs=\"`nil`\" pulumi-lang-dotnet=\"`Nil`\" pulumi-lang-go=\"`nil`\" pulumi-lang-python=\"`nil`\" pulumi-lang-yaml=\"`nil`\" pulumi-lang-java=\"`nil`\"\u003e`nil`\u003c/span\u003e. Queued operations (subject to set timeouts) resume once the number of connections in the pool is less than \u003cspan pulumi-lang-nodejs=\"`keepalivePoolSize`\" pulumi-lang-dotnet=\"`KeepalivePoolSize`\" pulumi-lang-go=\"`keepalivePoolSize`\" pulumi-lang-python=\"`keepalive_pool_size`\" pulumi-lang-yaml=\"`keepalivePoolSize`\" pulumi-lang-java=\"`keepalivePoolSize`\"\u003e`keepalive_pool_size`\u003c/span\u003e. If latency is high or throughput is low, try increasing this value. Empirically, this value is larger than \u003cspan pulumi-lang-nodejs=\"`keepalivePoolSize`\" pulumi-lang-dotnet=\"`KeepalivePoolSize`\" pulumi-lang-go=\"`keepalivePoolSize`\" pulumi-lang-python=\"`keepalive_pool_size`\" pulumi-lang-yaml=\"`keepalivePoolSize`\" pulumi-lang-java=\"`keepalivePoolSize`\"\u003e`keepalive_pool_size`\u003c/span\u003e.\n"},"keepalivePoolSize":{"type":"number","description":"The size limit for every cosocket connection pool associated with every remote server, per worker process. If neither \u003cspan pulumi-lang-nodejs=\"`keepalivePoolSize`\" pulumi-lang-dotnet=\"`KeepalivePoolSize`\" pulumi-lang-go=\"`keepalivePoolSize`\" pulumi-lang-python=\"`keepalive_pool_size`\" pulumi-lang-yaml=\"`keepalivePoolSize`\" pulumi-lang-java=\"`keepalivePoolSize`\"\u003e`keepalive_pool_size`\u003c/span\u003e nor \u003cspan pulumi-lang-nodejs=\"`keepaliveBacklog`\" pulumi-lang-dotnet=\"`KeepaliveBacklog`\" pulumi-lang-go=\"`keepaliveBacklog`\" pulumi-lang-python=\"`keepalive_backlog`\" pulumi-lang-yaml=\"`keepaliveBacklog`\" pulumi-lang-java=\"`keepaliveBacklog`\"\u003e`keepalive_backlog`\u003c/span\u003e is specified, no pool is created. If \u003cspan pulumi-lang-nodejs=\"`keepalivePoolSize`\" pulumi-lang-dotnet=\"`KeepalivePoolSize`\" pulumi-lang-go=\"`keepalivePoolSize`\" pulumi-lang-python=\"`keepalive_pool_size`\" pulumi-lang-yaml=\"`keepalivePoolSize`\" pulumi-lang-java=\"`keepalivePoolSize`\"\u003e`keepalive_pool_size`\u003c/span\u003e isn't specified but \u003cspan pulumi-lang-nodejs=\"`keepaliveBacklog`\" pulumi-lang-dotnet=\"`KeepaliveBacklog`\" pulumi-lang-go=\"`keepaliveBacklog`\" pulumi-lang-python=\"`keepalive_backlog`\" pulumi-lang-yaml=\"`keepaliveBacklog`\" pulumi-lang-java=\"`keepaliveBacklog`\"\u003e`keepalive_backlog`\u003c/span\u003e is specified, then the pool uses the default value. Try to increase (e.g. 512) this value if latency is high or throughput is low. Default: 256\n"},"password":{"type":"string","description":"Password to use for Redis connections. If undefined, no AUTH commands are sent to Redis.\n"},"port":{"type":"number","description":"An integer representing a port number between 0 and 65535, inclusive. Default: 6379\n"},"readTimeout":{"type":"number","description":"An integer representing a timeout in milliseconds. Must be between 0 and 2^31-2. Default: 2000\n"},"sendTimeout":{"type":"number","description":"An integer representing a timeout in milliseconds. Must be between 0 and 2^31-2. Default: 2000\n"},"sentinelMaster":{"type":"string","description":"Sentinel master to use for Redis connections. Defining this value implies using Redis Sentinel.\n"},"sentinelNodes":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginDatakitConfigResourcesCacheRedisSentinelNode:GatewayPluginDatakitConfigResourcesCacheRedisSentinelNode"},"description":"Sentinel node addresses to use for Redis connections when the \u003cspan pulumi-lang-nodejs=\"`redis`\" pulumi-lang-dotnet=\"`Redis`\" pulumi-lang-go=\"`redis`\" pulumi-lang-python=\"`redis`\" pulumi-lang-yaml=\"`redis`\" pulumi-lang-java=\"`redis`\"\u003e`redis`\u003c/span\u003e strategy is defined. Defining this field implies using a Redis Sentinel. The minimum length of the array is 1 element.\n"},"sentinelPassword":{"type":"string","description":"Sentinel password to authenticate with a Redis Sentinel instance. If undefined, no AUTH commands are sent to Redis Sentinels.\n"},"sentinelRole":{"type":"string","description":"Sentinel role to use for Redis connections when the \u003cspan pulumi-lang-nodejs=\"`redis`\" pulumi-lang-dotnet=\"`Redis`\" pulumi-lang-go=\"`redis`\" pulumi-lang-python=\"`redis`\" pulumi-lang-yaml=\"`redis`\" pulumi-lang-java=\"`redis`\"\u003e`redis`\u003c/span\u003e strategy is defined. Defining this value implies using Redis Sentinel. must be one of [\"any\", \"master\", \"slave\"]\n"},"sentinelUsername":{"type":"string","description":"Sentinel username to authenticate with a Redis Sentinel instance. If undefined, ACL authentication won't be performed. This requires Redis v6.2.0+.\n"},"serverName":{"type":"string","description":"A string representing an SNI (server name indication) value for TLS.\n"},"ssl":{"type":"boolean","description":"If set to true, uses SSL to connect to Redis. Default: false\n"},"sslVerify":{"type":"boolean","description":"If set to true, verifies the validity of the server SSL certificate. If setting this parameter, also configure \u003cspan pulumi-lang-nodejs=\"`luaSslTrustedCertificate`\" pulumi-lang-dotnet=\"`LuaSslTrustedCertificate`\" pulumi-lang-go=\"`luaSslTrustedCertificate`\" pulumi-lang-python=\"`lua_ssl_trusted_certificate`\" pulumi-lang-yaml=\"`luaSslTrustedCertificate`\" pulumi-lang-java=\"`luaSslTrustedCertificate`\"\u003e`lua_ssl_trusted_certificate`\u003c/span\u003e in `kong.conf` to specify the CA (or server) certificate used by your Redis server. You may also need to configure \u003cspan pulumi-lang-nodejs=\"`luaSslVerifyDepth`\" pulumi-lang-dotnet=\"`LuaSslVerifyDepth`\" pulumi-lang-go=\"`luaSslVerifyDepth`\" pulumi-lang-python=\"`lua_ssl_verify_depth`\" pulumi-lang-yaml=\"`luaSslVerifyDepth`\" pulumi-lang-java=\"`luaSslVerifyDepth`\"\u003e`lua_ssl_verify_depth`\u003c/span\u003e accordingly. Default: false\n"},"username":{"type":"string","description":"Username to use for Redis connections. If undefined, ACL authentication won't be performed. This requires Redis v6.0.0+. To be compatible with Redis v5.x.y, you can set it to \u003cspan pulumi-lang-nodejs=\"`default`\" pulumi-lang-dotnet=\"`Default`\" pulumi-lang-go=\"`default`\" pulumi-lang-python=\"`default`\" pulumi-lang-yaml=\"`default`\" pulumi-lang-java=\"`default`\"\u003e`default`\u003c/span\u003e.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["cloudAuthentication","clusterMaxRedirections","connectTimeout","connectionIsProxied","database","host","keepalivePoolSize","port","readTimeout","sendTimeout","sentinelRole","ssl","sslVerify"]}}},"konnect:index/GatewayPluginDatakitConfigResourcesCacheRedisCloudAuthentication:GatewayPluginDatakitConfigResourcesCacheRedisCloudAuthentication":{"properties":{"authProvider":{"type":"string","description":"Auth providers to be used to authenticate to a Cloud Provider's Redis instance. must be one of [\"aws\", \"azure\", \"gcp\"]\n"},"awsAccessKeyId":{"type":"string","description":"AWS Access Key ID to be used for authentication when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e.\n"},"awsAssumeRoleArn":{"type":"string","description":"The ARN of the IAM role to assume for generating ElastiCache IAM authentication tokens.\n"},"awsCacheName":{"type":"string","description":"The name of the AWS Elasticache cluster when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e.\n"},"awsIsServerless":{"type":"boolean","description":"This flag specifies whether the cluster is serverless when\u003cspan pulumi-lang-nodejs=\" authProvider \" pulumi-lang-dotnet=\" AuthProvider \" pulumi-lang-go=\" authProvider \" pulumi-lang-python=\" auth_provider \" pulumi-lang-yaml=\" authProvider \" pulumi-lang-java=\" authProvider \"\u003e auth_provider \u003c/span\u003eis set to \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e. Default: true\n"},"awsRegion":{"type":"string","description":"The region of the AWS ElastiCache cluster when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e.\n"},"awsRoleSessionName":{"type":"string","description":"The session name for the temporary credentials when assuming the IAM role.\n"},"awsSecretAccessKey":{"type":"string","description":"AWS Secret Access Key to be used for authentication when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e.\n"},"azureClientId":{"type":"string","description":"Azure Client ID to be used for authentication when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`azure`\" pulumi-lang-dotnet=\"`Azure`\" pulumi-lang-go=\"`azure`\" pulumi-lang-python=\"`azure`\" pulumi-lang-yaml=\"`azure`\" pulumi-lang-java=\"`azure`\"\u003e`azure`\u003c/span\u003e.\n"},"azureClientSecret":{"type":"string","description":"Azure Client Secret to be used for authentication when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`azure`\" pulumi-lang-dotnet=\"`Azure`\" pulumi-lang-go=\"`azure`\" pulumi-lang-python=\"`azure`\" pulumi-lang-yaml=\"`azure`\" pulumi-lang-java=\"`azure`\"\u003e`azure`\u003c/span\u003e.\n"},"azureTenantId":{"type":"string","description":"Azure Tenant ID to be used for authentication when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`azure`\" pulumi-lang-dotnet=\"`Azure`\" pulumi-lang-go=\"`azure`\" pulumi-lang-python=\"`azure`\" pulumi-lang-yaml=\"`azure`\" pulumi-lang-java=\"`azure`\"\u003e`azure`\u003c/span\u003e.\n"},"gcpServiceAccountJson":{"type":"string","description":"GCP Service Account JSON to be used for authentication when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`gcp`\" pulumi-lang-dotnet=\"`Gcp`\" pulumi-lang-go=\"`gcp`\" pulumi-lang-python=\"`gcp`\" pulumi-lang-yaml=\"`gcp`\" pulumi-lang-java=\"`gcp`\"\u003e`gcp`\u003c/span\u003e.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["authProvider","awsIsServerless"]}}},"konnect:index/GatewayPluginDatakitConfigResourcesCacheRedisClusterNode:GatewayPluginDatakitConfigResourcesCacheRedisClusterNode":{"properties":{"ip":{"type":"string","description":"A string representing a host name, such as example.com. Default: \"127.0.0.1\"\n"},"port":{"type":"number","description":"An integer representing a port number between 0 and 65535, inclusive. Default: 6379\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["ip","port"]}}},"konnect:index/GatewayPluginDatakitConfigResourcesCacheRedisSentinelNode:GatewayPluginDatakitConfigResourcesCacheRedisSentinelNode":{"properties":{"host":{"type":"string","description":"A string representing a host name, such as example.com. Default: \"127.0.0.1\"\n"},"port":{"type":"number","description":"An integer representing a port number between 0 and 65535, inclusive. Default: 6379\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["host","port"]}}},"konnect:index/GatewayPluginDatakitConsumer:GatewayPluginDatakitConsumer":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginDatakitConsumerGroup:GatewayPluginDatakitConsumerGroup":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginDatakitOrdering:GatewayPluginDatakitOrdering":{"properties":{"after":{"$ref":"#/types/konnect:index%2FGatewayPluginDatakitOrderingAfter:GatewayPluginDatakitOrderingAfter"},"before":{"$ref":"#/types/konnect:index%2FGatewayPluginDatakitOrderingBefore:GatewayPluginDatakitOrderingBefore"}},"type":"object","language":{"nodejs":{"requiredOutputs":["after","before"]}}},"konnect:index/GatewayPluginDatakitOrderingAfter:GatewayPluginDatakitOrderingAfter":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginDatakitOrderingBefore:GatewayPluginDatakitOrderingBefore":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginDatakitPartial:GatewayPluginDatakitPartial":{"properties":{"id":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"name":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"path":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id","name","path"]}}},"konnect:index/GatewayPluginDatakitRoute:GatewayPluginDatakitRoute":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginDatakitService:GatewayPluginDatakitService":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginDegraphqlConfig:GatewayPluginDegraphqlConfig":{"properties":{"graphqlServerPath":{"type":"string","description":"The GraphQL endpoint serve path. Default: \"/graphql\"\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["graphqlServerPath"]}}},"konnect:index/GatewayPluginDegraphqlOrdering:GatewayPluginDegraphqlOrdering":{"properties":{"after":{"$ref":"#/types/konnect:index%2FGatewayPluginDegraphqlOrderingAfter:GatewayPluginDegraphqlOrderingAfter"},"before":{"$ref":"#/types/konnect:index%2FGatewayPluginDegraphqlOrderingBefore:GatewayPluginDegraphqlOrderingBefore"}},"type":"object","language":{"nodejs":{"requiredOutputs":["after","before"]}}},"konnect:index/GatewayPluginDegraphqlOrderingAfter:GatewayPluginDegraphqlOrderingAfter":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginDegraphqlOrderingBefore:GatewayPluginDegraphqlOrderingBefore":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginDegraphqlPartial:GatewayPluginDegraphqlPartial":{"properties":{"id":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"name":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"path":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id","name","path"]}}},"konnect:index/GatewayPluginDegraphqlRoute:GatewayPluginDegraphqlRoute":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginDegraphqlService:GatewayPluginDegraphqlService":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginExitTransformerConfig:GatewayPluginExitTransformerConfig":{"properties":{"functions":{"type":"array","items":{"type":"string"}},"handleUnexpected":{"type":"boolean","description":"Determines whether to handle unexpected errors by transforming their responses. Default: false\n"},"handleUnknown":{"type":"boolean","description":"Determines whether to handle unknown status codes by transforming their responses. Default: false\n"}},"type":"object","required":["functions"],"language":{"nodejs":{"requiredOutputs":["functions","handleUnexpected","handleUnknown"]}}},"konnect:index/GatewayPluginExitTransformerConsumer:GatewayPluginExitTransformerConsumer":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginExitTransformerOrdering:GatewayPluginExitTransformerOrdering":{"properties":{"after":{"$ref":"#/types/konnect:index%2FGatewayPluginExitTransformerOrderingAfter:GatewayPluginExitTransformerOrderingAfter"},"before":{"$ref":"#/types/konnect:index%2FGatewayPluginExitTransformerOrderingBefore:GatewayPluginExitTransformerOrderingBefore"}},"type":"object","language":{"nodejs":{"requiredOutputs":["after","before"]}}},"konnect:index/GatewayPluginExitTransformerOrderingAfter:GatewayPluginExitTransformerOrderingAfter":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginExitTransformerOrderingBefore:GatewayPluginExitTransformerOrderingBefore":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginExitTransformerPartial:GatewayPluginExitTransformerPartial":{"properties":{"id":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"name":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"path":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id","name","path"]}}},"konnect:index/GatewayPluginExitTransformerRoute:GatewayPluginExitTransformerRoute":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginExitTransformerService:GatewayPluginExitTransformerService":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginFileLogConfig:GatewayPluginFileLogConfig":{"properties":{"customFieldsByLua":{"type":"object","additionalProperties":{"type":"string"},"description":"Lua code as a key-value map\n"},"path":{"type":"string","description":"The file path of the output log file. The plugin creates the log file if it doesn't exist yet.\n"},"reopen":{"type":"boolean","description":"Determines whether the log file is closed and reopened on every request. Default: false\n"}},"type":"object","required":["path"],"language":{"nodejs":{"requiredOutputs":["customFieldsByLua","path","reopen"]}}},"konnect:index/GatewayPluginFileLogConsumer:GatewayPluginFileLogConsumer":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginFileLogOrdering:GatewayPluginFileLogOrdering":{"properties":{"after":{"$ref":"#/types/konnect:index%2FGatewayPluginFileLogOrderingAfter:GatewayPluginFileLogOrderingAfter"},"before":{"$ref":"#/types/konnect:index%2FGatewayPluginFileLogOrderingBefore:GatewayPluginFileLogOrderingBefore"}},"type":"object","language":{"nodejs":{"requiredOutputs":["after","before"]}}},"konnect:index/GatewayPluginFileLogOrderingAfter:GatewayPluginFileLogOrderingAfter":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginFileLogOrderingBefore:GatewayPluginFileLogOrderingBefore":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginFileLogPartial:GatewayPluginFileLogPartial":{"properties":{"id":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"name":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"path":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id","name","path"]}}},"konnect:index/GatewayPluginFileLogRoute:GatewayPluginFileLogRoute":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginFileLogService:GatewayPluginFileLogService":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginForwardProxyConfig:GatewayPluginForwardProxyConfig":{"properties":{"authPassword":{"type":"string","description":"The password to authenticate with, if the forward proxy is protected\nby basic authentication.\n"},"authUsername":{"type":"string","description":"The username to authenticate with, if the forward proxy is protected\nby basic authentication.\n"},"httpProxyHost":{"type":"string","description":"A string representing a host name, such as example.com.\n"},"httpProxyPort":{"type":"number","description":"An integer representing a port number between 0 and 65535, inclusive.\n"},"httpsProxyHost":{"type":"string","description":"A string representing a host name, such as example.com.\n"},"httpsProxyPort":{"type":"number","description":"An integer representing a port number between 0 and 65535, inclusive.\n"},"httpsVerify":{"type":"boolean","description":"Whether the server certificate will be verified according to the CA certificates specified in lua*ssl*trusted_certificate. Default: false\n"},"proxyScheme":{"type":"string","description":"The proxy scheme to use when connecting. Only \u003cspan pulumi-lang-nodejs=\"`http`\" pulumi-lang-dotnet=\"`Http`\" pulumi-lang-go=\"`http`\" pulumi-lang-python=\"`http`\" pulumi-lang-yaml=\"`http`\" pulumi-lang-java=\"`http`\"\u003e`http`\u003c/span\u003e is supported. Default: \"http\"; must be \"http\"\n"},"xHeaders":{"type":"string","description":"Determines how to handle headers when forwarding the request. Default: \"append\"; must be one of [\"append\", \"delete\", \"transparent\"]\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["httpsVerify","proxyScheme","xHeaders"]}}},"konnect:index/GatewayPluginForwardProxyConsumer:GatewayPluginForwardProxyConsumer":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginForwardProxyOrdering:GatewayPluginForwardProxyOrdering":{"properties":{"after":{"$ref":"#/types/konnect:index%2FGatewayPluginForwardProxyOrderingAfter:GatewayPluginForwardProxyOrderingAfter"},"before":{"$ref":"#/types/konnect:index%2FGatewayPluginForwardProxyOrderingBefore:GatewayPluginForwardProxyOrderingBefore"}},"type":"object","language":{"nodejs":{"requiredOutputs":["after","before"]}}},"konnect:index/GatewayPluginForwardProxyOrderingAfter:GatewayPluginForwardProxyOrderingAfter":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginForwardProxyOrderingBefore:GatewayPluginForwardProxyOrderingBefore":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginForwardProxyPartial:GatewayPluginForwardProxyPartial":{"properties":{"id":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"name":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"path":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id","name","path"]}}},"konnect:index/GatewayPluginForwardProxyRoute:GatewayPluginForwardProxyRoute":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginForwardProxyService:GatewayPluginForwardProxyService":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginGraphqlProxyCacheAdvancedConfig:GatewayPluginGraphqlProxyCacheAdvancedConfig":{"properties":{"bypassOnErr":{"type":"boolean","description":"Unhandled errors while trying to retrieve a cache entry (such as redis down) are resolved with `Bypass`, with the request going upstream. Default: false\n"},"cacheTtl":{"type":"number","description":"TTL in seconds of cache entities. Must be a value greater than 0. Default: 300\n"},"memory":{"$ref":"#/types/konnect:index%2FGatewayPluginGraphqlProxyCacheAdvancedConfigMemory:GatewayPluginGraphqlProxyCacheAdvancedConfigMemory"},"redis":{"$ref":"#/types/konnect:index%2FGatewayPluginGraphqlProxyCacheAdvancedConfigRedis:GatewayPluginGraphqlProxyCacheAdvancedConfigRedis"},"strategy":{"type":"string","description":"The backing data store in which to hold cached entities. Accepted value is \u003cspan pulumi-lang-nodejs=\"`memory`\" pulumi-lang-dotnet=\"`Memory`\" pulumi-lang-go=\"`memory`\" pulumi-lang-python=\"`memory`\" pulumi-lang-yaml=\"`memory`\" pulumi-lang-java=\"`memory`\"\u003e`memory`\u003c/span\u003e. Default: \"memory\"; must be one of [\"memory\", \"redis\"]\n"},"varyHeaders":{"type":"array","items":{"type":"string"},"description":"Relevant headers considered for the cache key. If undefined, none of the headers are taken into consideration.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["bypassOnErr","cacheTtl","memory","redis","strategy"]}}},"konnect:index/GatewayPluginGraphqlProxyCacheAdvancedConfigMemory:GatewayPluginGraphqlProxyCacheAdvancedConfigMemory":{"properties":{"dictionaryName":{"type":"string","description":"The name of the shared dictionary in which to hold cache entities when the memory strategy is selected. This dictionary currently must be defined manually in the Kong Nginx template. Default: \"kong*db*cache\"\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["dictionaryName"]}}},"konnect:index/GatewayPluginGraphqlProxyCacheAdvancedConfigRedis:GatewayPluginGraphqlProxyCacheAdvancedConfigRedis":{"properties":{"cloudAuthentication":{"$ref":"#/types/konnect:index%2FGatewayPluginGraphqlProxyCacheAdvancedConfigRedisCloudAuthentication:GatewayPluginGraphqlProxyCacheAdvancedConfigRedisCloudAuthentication","description":"Cloud auth related configs for connecting to a Cloud Provider's Redis instance.\n"},"clusterMaxRedirections":{"type":"number","description":"Maximum retry attempts for redirection. Default: 5\n"},"clusterNodes":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginGraphqlProxyCacheAdvancedConfigRedisClusterNode:GatewayPluginGraphqlProxyCacheAdvancedConfigRedisClusterNode"},"description":"Cluster addresses to use for Redis connections when the \u003cspan pulumi-lang-nodejs=\"`redis`\" pulumi-lang-dotnet=\"`Redis`\" pulumi-lang-go=\"`redis`\" pulumi-lang-python=\"`redis`\" pulumi-lang-yaml=\"`redis`\" pulumi-lang-java=\"`redis`\"\u003e`redis`\u003c/span\u003e strategy is defined. Defining this field implies using a Redis Cluster. The minimum length of the array is 1 element.\n"},"connectTimeout":{"type":"number","description":"An integer representing a timeout in milliseconds. Must be between 0 and 2^31-2. Default: 2000\n"},"connectionIsProxied":{"type":"boolean","description":"If the connection to Redis is proxied (e.g. Envoy), set it \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e. Set the \u003cspan pulumi-lang-nodejs=\"`host`\" pulumi-lang-dotnet=\"`Host`\" pulumi-lang-go=\"`host`\" pulumi-lang-python=\"`host`\" pulumi-lang-yaml=\"`host`\" pulumi-lang-java=\"`host`\"\u003e`host`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`port`\" pulumi-lang-dotnet=\"`Port`\" pulumi-lang-go=\"`port`\" pulumi-lang-python=\"`port`\" pulumi-lang-yaml=\"`port`\" pulumi-lang-java=\"`port`\"\u003e`port`\u003c/span\u003e to point to the proxy address. Default: false\n"},"database":{"type":"number","description":"Database to use for the Redis connection when using the \u003cspan pulumi-lang-nodejs=\"`redis`\" pulumi-lang-dotnet=\"`Redis`\" pulumi-lang-go=\"`redis`\" pulumi-lang-python=\"`redis`\" pulumi-lang-yaml=\"`redis`\" pulumi-lang-java=\"`redis`\"\u003e`redis`\u003c/span\u003e strategy. Default: 0\n"},"host":{"type":"string","description":"A string representing a host name, such as example.com. Default: \"127.0.0.1\"\n"},"keepaliveBacklog":{"type":"number","description":"Limits the total number of opened connections for a pool. If the connection pool is full, connection queues above the limit go into the backlog queue. If the backlog queue is full, subsequent connect operations fail and return \u003cspan pulumi-lang-nodejs=\"`nil`\" pulumi-lang-dotnet=\"`Nil`\" pulumi-lang-go=\"`nil`\" pulumi-lang-python=\"`nil`\" pulumi-lang-yaml=\"`nil`\" pulumi-lang-java=\"`nil`\"\u003e`nil`\u003c/span\u003e. Queued operations (subject to set timeouts) resume once the number of connections in the pool is less than \u003cspan pulumi-lang-nodejs=\"`keepalivePoolSize`\" pulumi-lang-dotnet=\"`KeepalivePoolSize`\" pulumi-lang-go=\"`keepalivePoolSize`\" pulumi-lang-python=\"`keepalive_pool_size`\" pulumi-lang-yaml=\"`keepalivePoolSize`\" pulumi-lang-java=\"`keepalivePoolSize`\"\u003e`keepalive_pool_size`\u003c/span\u003e. If latency is high or throughput is low, try increasing this value. Empirically, this value is larger than \u003cspan pulumi-lang-nodejs=\"`keepalivePoolSize`\" pulumi-lang-dotnet=\"`KeepalivePoolSize`\" pulumi-lang-go=\"`keepalivePoolSize`\" pulumi-lang-python=\"`keepalive_pool_size`\" pulumi-lang-yaml=\"`keepalivePoolSize`\" pulumi-lang-java=\"`keepalivePoolSize`\"\u003e`keepalive_pool_size`\u003c/span\u003e.\n"},"keepalivePoolSize":{"type":"number","description":"The size limit for every cosocket connection pool associated with every remote server, per worker process. If neither \u003cspan pulumi-lang-nodejs=\"`keepalivePoolSize`\" pulumi-lang-dotnet=\"`KeepalivePoolSize`\" pulumi-lang-go=\"`keepalivePoolSize`\" pulumi-lang-python=\"`keepalive_pool_size`\" pulumi-lang-yaml=\"`keepalivePoolSize`\" pulumi-lang-java=\"`keepalivePoolSize`\"\u003e`keepalive_pool_size`\u003c/span\u003e nor \u003cspan pulumi-lang-nodejs=\"`keepaliveBacklog`\" pulumi-lang-dotnet=\"`KeepaliveBacklog`\" pulumi-lang-go=\"`keepaliveBacklog`\" pulumi-lang-python=\"`keepalive_backlog`\" pulumi-lang-yaml=\"`keepaliveBacklog`\" pulumi-lang-java=\"`keepaliveBacklog`\"\u003e`keepalive_backlog`\u003c/span\u003e is specified, no pool is created. If \u003cspan pulumi-lang-nodejs=\"`keepalivePoolSize`\" pulumi-lang-dotnet=\"`KeepalivePoolSize`\" pulumi-lang-go=\"`keepalivePoolSize`\" pulumi-lang-python=\"`keepalive_pool_size`\" pulumi-lang-yaml=\"`keepalivePoolSize`\" pulumi-lang-java=\"`keepalivePoolSize`\"\u003e`keepalive_pool_size`\u003c/span\u003e isn't specified but \u003cspan pulumi-lang-nodejs=\"`keepaliveBacklog`\" pulumi-lang-dotnet=\"`KeepaliveBacklog`\" pulumi-lang-go=\"`keepaliveBacklog`\" pulumi-lang-python=\"`keepalive_backlog`\" pulumi-lang-yaml=\"`keepaliveBacklog`\" pulumi-lang-java=\"`keepaliveBacklog`\"\u003e`keepalive_backlog`\u003c/span\u003e is specified, then the pool uses the default value. Try to increase (e.g. 512) this value if latency is high or throughput is low. Default: 256\n"},"password":{"type":"string","description":"Password to use for Redis connections. If undefined, no AUTH commands are sent to Redis.\n"},"port":{"type":"number","description":"An integer representing a port number between 0 and 65535, inclusive. Default: 6379\n"},"readTimeout":{"type":"number","description":"An integer representing a timeout in milliseconds. Must be between 0 and 2^31-2. Default: 2000\n"},"sendTimeout":{"type":"number","description":"An integer representing a timeout in milliseconds. Must be between 0 and 2^31-2. Default: 2000\n"},"sentinelMaster":{"type":"string","description":"Sentinel master to use for Redis connections. Defining this value implies using Redis Sentinel.\n"},"sentinelNodes":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginGraphqlProxyCacheAdvancedConfigRedisSentinelNode:GatewayPluginGraphqlProxyCacheAdvancedConfigRedisSentinelNode"},"description":"Sentinel node addresses to use for Redis connections when the \u003cspan pulumi-lang-nodejs=\"`redis`\" pulumi-lang-dotnet=\"`Redis`\" pulumi-lang-go=\"`redis`\" pulumi-lang-python=\"`redis`\" pulumi-lang-yaml=\"`redis`\" pulumi-lang-java=\"`redis`\"\u003e`redis`\u003c/span\u003e strategy is defined. Defining this field implies using a Redis Sentinel. The minimum length of the array is 1 element.\n"},"sentinelPassword":{"type":"string","description":"Sentinel password to authenticate with a Redis Sentinel instance. If undefined, no AUTH commands are sent to Redis Sentinels.\n"},"sentinelRole":{"type":"string","description":"Sentinel role to use for Redis connections when the \u003cspan pulumi-lang-nodejs=\"`redis`\" pulumi-lang-dotnet=\"`Redis`\" pulumi-lang-go=\"`redis`\" pulumi-lang-python=\"`redis`\" pulumi-lang-yaml=\"`redis`\" pulumi-lang-java=\"`redis`\"\u003e`redis`\u003c/span\u003e strategy is defined. Defining this value implies using Redis Sentinel. must be one of [\"any\", \"master\", \"slave\"]\n"},"sentinelUsername":{"type":"string","description":"Sentinel username to authenticate with a Redis Sentinel instance. If undefined, ACL authentication won't be performed. This requires Redis v6.2.0+.\n"},"serverName":{"type":"string","description":"A string representing an SNI (server name indication) value for TLS.\n"},"ssl":{"type":"boolean","description":"If set to true, uses SSL to connect to Redis. Default: false\n"},"sslVerify":{"type":"boolean","description":"If set to true, verifies the validity of the server SSL certificate. If setting this parameter, also configure \u003cspan pulumi-lang-nodejs=\"`luaSslTrustedCertificate`\" pulumi-lang-dotnet=\"`LuaSslTrustedCertificate`\" pulumi-lang-go=\"`luaSslTrustedCertificate`\" pulumi-lang-python=\"`lua_ssl_trusted_certificate`\" pulumi-lang-yaml=\"`luaSslTrustedCertificate`\" pulumi-lang-java=\"`luaSslTrustedCertificate`\"\u003e`lua_ssl_trusted_certificate`\u003c/span\u003e in `kong.conf` to specify the CA (or server) certificate used by your Redis server. You may also need to configure \u003cspan pulumi-lang-nodejs=\"`luaSslVerifyDepth`\" pulumi-lang-dotnet=\"`LuaSslVerifyDepth`\" pulumi-lang-go=\"`luaSslVerifyDepth`\" pulumi-lang-python=\"`lua_ssl_verify_depth`\" pulumi-lang-yaml=\"`luaSslVerifyDepth`\" pulumi-lang-java=\"`luaSslVerifyDepth`\"\u003e`lua_ssl_verify_depth`\u003c/span\u003e accordingly. Default: false\n"},"username":{"type":"string","description":"Username to use for Redis connections. If undefined, ACL authentication won't be performed. This requires Redis v6.0.0+. To be compatible with Redis v5.x.y, you can set it to \u003cspan pulumi-lang-nodejs=\"`default`\" pulumi-lang-dotnet=\"`Default`\" pulumi-lang-go=\"`default`\" pulumi-lang-python=\"`default`\" pulumi-lang-yaml=\"`default`\" pulumi-lang-java=\"`default`\"\u003e`default`\u003c/span\u003e.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["cloudAuthentication","clusterMaxRedirections","connectTimeout","connectionIsProxied","database","host","keepalivePoolSize","port","readTimeout","sendTimeout","sentinelRole","ssl","sslVerify"]}}},"konnect:index/GatewayPluginGraphqlProxyCacheAdvancedConfigRedisCloudAuthentication:GatewayPluginGraphqlProxyCacheAdvancedConfigRedisCloudAuthentication":{"properties":{"authProvider":{"type":"string","description":"Auth providers to be used to authenticate to a Cloud Provider's Redis instance. must be one of [\"aws\", \"azure\", \"gcp\"]\n"},"awsAccessKeyId":{"type":"string","description":"AWS Access Key ID to be used for authentication when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e.\n"},"awsAssumeRoleArn":{"type":"string","description":"The ARN of the IAM role to assume for generating ElastiCache IAM authentication tokens.\n"},"awsCacheName":{"type":"string","description":"The name of the AWS Elasticache cluster when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e.\n"},"awsIsServerless":{"type":"boolean","description":"This flag specifies whether the cluster is serverless when\u003cspan pulumi-lang-nodejs=\" authProvider \" pulumi-lang-dotnet=\" AuthProvider \" pulumi-lang-go=\" authProvider \" pulumi-lang-python=\" auth_provider \" pulumi-lang-yaml=\" authProvider \" pulumi-lang-java=\" authProvider \"\u003e auth_provider \u003c/span\u003eis set to \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e. Default: true\n"},"awsRegion":{"type":"string","description":"The region of the AWS ElastiCache cluster when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e.\n"},"awsRoleSessionName":{"type":"string","description":"The session name for the temporary credentials when assuming the IAM role.\n"},"awsSecretAccessKey":{"type":"string","description":"AWS Secret Access Key to be used for authentication when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e.\n"},"azureClientId":{"type":"string","description":"Azure Client ID to be used for authentication when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`azure`\" pulumi-lang-dotnet=\"`Azure`\" pulumi-lang-go=\"`azure`\" pulumi-lang-python=\"`azure`\" pulumi-lang-yaml=\"`azure`\" pulumi-lang-java=\"`azure`\"\u003e`azure`\u003c/span\u003e.\n"},"azureClientSecret":{"type":"string","description":"Azure Client Secret to be used for authentication when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`azure`\" pulumi-lang-dotnet=\"`Azure`\" pulumi-lang-go=\"`azure`\" pulumi-lang-python=\"`azure`\" pulumi-lang-yaml=\"`azure`\" pulumi-lang-java=\"`azure`\"\u003e`azure`\u003c/span\u003e.\n"},"azureTenantId":{"type":"string","description":"Azure Tenant ID to be used for authentication when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`azure`\" pulumi-lang-dotnet=\"`Azure`\" pulumi-lang-go=\"`azure`\" pulumi-lang-python=\"`azure`\" pulumi-lang-yaml=\"`azure`\" pulumi-lang-java=\"`azure`\"\u003e`azure`\u003c/span\u003e.\n"},"gcpServiceAccountJson":{"type":"string","description":"GCP Service Account JSON to be used for authentication when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`gcp`\" pulumi-lang-dotnet=\"`Gcp`\" pulumi-lang-go=\"`gcp`\" pulumi-lang-python=\"`gcp`\" pulumi-lang-yaml=\"`gcp`\" pulumi-lang-java=\"`gcp`\"\u003e`gcp`\u003c/span\u003e.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["authProvider","awsIsServerless"]}}},"konnect:index/GatewayPluginGraphqlProxyCacheAdvancedConfigRedisClusterNode:GatewayPluginGraphqlProxyCacheAdvancedConfigRedisClusterNode":{"properties":{"ip":{"type":"string","description":"A string representing a host name, such as example.com. Default: \"127.0.0.1\"\n"},"port":{"type":"number","description":"An integer representing a port number between 0 and 65535, inclusive. Default: 6379\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["ip","port"]}}},"konnect:index/GatewayPluginGraphqlProxyCacheAdvancedConfigRedisSentinelNode:GatewayPluginGraphqlProxyCacheAdvancedConfigRedisSentinelNode":{"properties":{"host":{"type":"string","description":"A string representing a host name, such as example.com. Default: \"127.0.0.1\"\n"},"port":{"type":"number","description":"An integer representing a port number between 0 and 65535, inclusive. Default: 6379\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["host","port"]}}},"konnect:index/GatewayPluginGraphqlProxyCacheAdvancedConsumer:GatewayPluginGraphqlProxyCacheAdvancedConsumer":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginGraphqlProxyCacheAdvancedOrdering:GatewayPluginGraphqlProxyCacheAdvancedOrdering":{"properties":{"after":{"$ref":"#/types/konnect:index%2FGatewayPluginGraphqlProxyCacheAdvancedOrderingAfter:GatewayPluginGraphqlProxyCacheAdvancedOrderingAfter"},"before":{"$ref":"#/types/konnect:index%2FGatewayPluginGraphqlProxyCacheAdvancedOrderingBefore:GatewayPluginGraphqlProxyCacheAdvancedOrderingBefore"}},"type":"object","language":{"nodejs":{"requiredOutputs":["after","before"]}}},"konnect:index/GatewayPluginGraphqlProxyCacheAdvancedOrderingAfter:GatewayPluginGraphqlProxyCacheAdvancedOrderingAfter":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginGraphqlProxyCacheAdvancedOrderingBefore:GatewayPluginGraphqlProxyCacheAdvancedOrderingBefore":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginGraphqlProxyCacheAdvancedPartial:GatewayPluginGraphqlProxyCacheAdvancedPartial":{"properties":{"id":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"name":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"path":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id","name","path"]}}},"konnect:index/GatewayPluginGraphqlProxyCacheAdvancedRoute:GatewayPluginGraphqlProxyCacheAdvancedRoute":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginGraphqlProxyCacheAdvancedService:GatewayPluginGraphqlProxyCacheAdvancedService":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginGraphqlRateLimitingAdvancedConfig:GatewayPluginGraphqlRateLimitingAdvancedConfig":{"properties":{"costStrategy":{"type":"string","description":"Strategy to use to evaluate query costs. Either \u003cspan pulumi-lang-nodejs=\"`default`\" pulumi-lang-dotnet=\"`Default`\" pulumi-lang-go=\"`default`\" pulumi-lang-python=\"`default`\" pulumi-lang-yaml=\"`default`\" pulumi-lang-java=\"`default`\"\u003e`default`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`nodeQuantifier`\" pulumi-lang-dotnet=\"`NodeQuantifier`\" pulumi-lang-go=\"`nodeQuantifier`\" pulumi-lang-python=\"`node_quantifier`\" pulumi-lang-yaml=\"`nodeQuantifier`\" pulumi-lang-java=\"`nodeQuantifier`\"\u003e`node_quantifier`\u003c/span\u003e. Default: \"default\"; must be one of [\"default\", \u003cspan pulumi-lang-nodejs=\"\"nodeQuantifier\"\" pulumi-lang-dotnet=\"\"NodeQuantifier\"\" pulumi-lang-go=\"\"nodeQuantifier\"\" pulumi-lang-python=\"\"node_quantifier\"\" pulumi-lang-yaml=\"\"nodeQuantifier\"\" pulumi-lang-java=\"\"nodeQuantifier\"\"\u003e\"node_quantifier\"\u003c/span\u003e]\n"},"dictionaryName":{"type":"string","description":"The shared dictionary where counters will be stored until the next sync cycle. Default: \"kong*rate*limiting_counters\"\n"},"hideClientHeaders":{"type":"boolean","description":"Optionally hide informative response headers. Available options: \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e. Default: false\n"},"identifier":{"type":"string","description":"How to define the rate limit key. Can be \u003cspan pulumi-lang-nodejs=\"`ip`\" pulumi-lang-dotnet=\"`Ip`\" pulumi-lang-go=\"`ip`\" pulumi-lang-python=\"`ip`\" pulumi-lang-yaml=\"`ip`\" pulumi-lang-java=\"`ip`\"\u003e`ip`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`credential`\" pulumi-lang-dotnet=\"`Credential`\" pulumi-lang-go=\"`credential`\" pulumi-lang-python=\"`credential`\" pulumi-lang-yaml=\"`credential`\" pulumi-lang-java=\"`credential`\"\u003e`credential`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`consumer`\" pulumi-lang-dotnet=\"`Consumer`\" pulumi-lang-go=\"`consumer`\" pulumi-lang-python=\"`consumer`\" pulumi-lang-yaml=\"`consumer`\" pulumi-lang-java=\"`consumer`\"\u003e`consumer`\u003c/span\u003e. Default: \"consumer\"; must be one of [\"consumer\", \"credential\", \"ip\"]\n"},"limits":{"type":"array","items":{"type":"number"},"description":"One or more requests-per-window limits to apply.\n"},"maxCost":{"type":"number","description":"A defined maximum cost per query. 0 means unlimited. Default: 0\n"},"namespace":{"type":"string","description":"The rate limiting namespace to use for this plugin instance. This namespace is used to share rate limiting counters across different instances. If it is not provided, a random UUID is generated. NOTE: For the plugin instances sharing the same namespace, all the configurations that are required for synchronizing counters, e.g. \u003cspan pulumi-lang-nodejs=\"`strategy`\" pulumi-lang-dotnet=\"`Strategy`\" pulumi-lang-go=\"`strategy`\" pulumi-lang-python=\"`strategy`\" pulumi-lang-yaml=\"`strategy`\" pulumi-lang-java=\"`strategy`\"\u003e`strategy`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`redis`\" pulumi-lang-dotnet=\"`Redis`\" pulumi-lang-go=\"`redis`\" pulumi-lang-python=\"`redis`\" pulumi-lang-yaml=\"`redis`\" pulumi-lang-java=\"`redis`\"\u003e`redis`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`syncRate`\" pulumi-lang-dotnet=\"`SyncRate`\" pulumi-lang-go=\"`syncRate`\" pulumi-lang-python=\"`sync_rate`\" pulumi-lang-yaml=\"`syncRate`\" pulumi-lang-java=\"`syncRate`\"\u003e`sync_rate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`windowSize`\" pulumi-lang-dotnet=\"`WindowSize`\" pulumi-lang-go=\"`windowSize`\" pulumi-lang-python=\"`window_size`\" pulumi-lang-yaml=\"`windowSize`\" pulumi-lang-java=\"`windowSize`\"\u003e`window_size`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`dictionaryName`\" pulumi-lang-dotnet=\"`DictionaryName`\" pulumi-lang-go=\"`dictionaryName`\" pulumi-lang-python=\"`dictionary_name`\" pulumi-lang-yaml=\"`dictionaryName`\" pulumi-lang-java=\"`dictionaryName`\"\u003e`dictionary_name`\u003c/span\u003e, need to be the same.\n"},"passAllDownstreamHeaders":{"type":"boolean","description":"pass all downstream headers to the upstream graphql server in introspection request. Default: false\n"},"redis":{"$ref":"#/types/konnect:index%2FGatewayPluginGraphqlRateLimitingAdvancedConfigRedis:GatewayPluginGraphqlRateLimitingAdvancedConfigRedis"},"scoreFactor":{"type":"number","description":"A scoring factor to multiply (or divide) the cost. The \u003cspan pulumi-lang-nodejs=\"`scoreFactor`\" pulumi-lang-dotnet=\"`ScoreFactor`\" pulumi-lang-go=\"`scoreFactor`\" pulumi-lang-python=\"`score_factor`\" pulumi-lang-yaml=\"`scoreFactor`\" pulumi-lang-java=\"`scoreFactor`\"\u003e`score_factor`\u003c/span\u003e must always be greater than 0. Default: 1\n"},"strategy":{"type":"string","description":"The rate-limiting strategy to use for retrieving and incrementing the limits. Default: \"cluster\"; must be one of [\"cluster\", \"redis\"]\n"},"syncRate":{"type":"number","description":"How often to sync counter data to the central data store. A value of 0 results in synchronous behavior; a value of -1 ignores sync behavior entirely and only stores counters in node memory. A value greater than 0 syncs the counters in that many number of seconds.\n"},"windowSizes":{"type":"array","items":{"type":"number"},"description":"One or more window sizes to apply a limit to (defined in seconds).\n"},"windowType":{"type":"string","description":"Sets the time window to either \u003cspan pulumi-lang-nodejs=\"`sliding`\" pulumi-lang-dotnet=\"`Sliding`\" pulumi-lang-go=\"`sliding`\" pulumi-lang-python=\"`sliding`\" pulumi-lang-yaml=\"`sliding`\" pulumi-lang-java=\"`sliding`\"\u003e`sliding`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`fixed`\" pulumi-lang-dotnet=\"`Fixed`\" pulumi-lang-go=\"`fixed`\" pulumi-lang-python=\"`fixed`\" pulumi-lang-yaml=\"`fixed`\" pulumi-lang-java=\"`fixed`\"\u003e`fixed`\u003c/span\u003e. Default: \"sliding\"; must be one of [\"fixed\", \"sliding\"]\n"}},"type":"object","required":["limits","syncRate","windowSizes"],"language":{"nodejs":{"requiredOutputs":["costStrategy","dictionaryName","hideClientHeaders","identifier","limits","maxCost","passAllDownstreamHeaders","redis","scoreFactor","strategy","syncRate","windowSizes","windowType"]}}},"konnect:index/GatewayPluginGraphqlRateLimitingAdvancedConfigRedis:GatewayPluginGraphqlRateLimitingAdvancedConfigRedis":{"properties":{"cloudAuthentication":{"$ref":"#/types/konnect:index%2FGatewayPluginGraphqlRateLimitingAdvancedConfigRedisCloudAuthentication:GatewayPluginGraphqlRateLimitingAdvancedConfigRedisCloudAuthentication","description":"Cloud auth related configs for connecting to a Cloud Provider's Redis instance.\n"},"clusterMaxRedirections":{"type":"number","description":"Maximum retry attempts for redirection. Default: 5\n"},"clusterNodes":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginGraphqlRateLimitingAdvancedConfigRedisClusterNode:GatewayPluginGraphqlRateLimitingAdvancedConfigRedisClusterNode"},"description":"Cluster addresses to use for Redis connections when the \u003cspan pulumi-lang-nodejs=\"`redis`\" pulumi-lang-dotnet=\"`Redis`\" pulumi-lang-go=\"`redis`\" pulumi-lang-python=\"`redis`\" pulumi-lang-yaml=\"`redis`\" pulumi-lang-java=\"`redis`\"\u003e`redis`\u003c/span\u003e strategy is defined. Defining this field implies using a Redis Cluster. The minimum length of the array is 1 element.\n"},"connectTimeout":{"type":"number","description":"An integer representing a timeout in milliseconds. Must be between 0 and 2^31-2. Default: 2000\n"},"connectionIsProxied":{"type":"boolean","description":"If the connection to Redis is proxied (e.g. Envoy), set it \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e. Set the \u003cspan pulumi-lang-nodejs=\"`host`\" pulumi-lang-dotnet=\"`Host`\" pulumi-lang-go=\"`host`\" pulumi-lang-python=\"`host`\" pulumi-lang-yaml=\"`host`\" pulumi-lang-java=\"`host`\"\u003e`host`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`port`\" pulumi-lang-dotnet=\"`Port`\" pulumi-lang-go=\"`port`\" pulumi-lang-python=\"`port`\" pulumi-lang-yaml=\"`port`\" pulumi-lang-java=\"`port`\"\u003e`port`\u003c/span\u003e to point to the proxy address. Default: false\n"},"database":{"type":"number","description":"Database to use for the Redis connection when using the \u003cspan pulumi-lang-nodejs=\"`redis`\" pulumi-lang-dotnet=\"`Redis`\" pulumi-lang-go=\"`redis`\" pulumi-lang-python=\"`redis`\" pulumi-lang-yaml=\"`redis`\" pulumi-lang-java=\"`redis`\"\u003e`redis`\u003c/span\u003e strategy. Default: 0\n"},"host":{"type":"string","description":"A string representing a host name, such as example.com. Default: \"127.0.0.1\"\n"},"keepaliveBacklog":{"type":"number","description":"Limits the total number of opened connections for a pool. If the connection pool is full, connection queues above the limit go into the backlog queue. If the backlog queue is full, subsequent connect operations fail and return \u003cspan pulumi-lang-nodejs=\"`nil`\" pulumi-lang-dotnet=\"`Nil`\" pulumi-lang-go=\"`nil`\" pulumi-lang-python=\"`nil`\" pulumi-lang-yaml=\"`nil`\" pulumi-lang-java=\"`nil`\"\u003e`nil`\u003c/span\u003e. Queued operations (subject to set timeouts) resume once the number of connections in the pool is less than \u003cspan pulumi-lang-nodejs=\"`keepalivePoolSize`\" pulumi-lang-dotnet=\"`KeepalivePoolSize`\" pulumi-lang-go=\"`keepalivePoolSize`\" pulumi-lang-python=\"`keepalive_pool_size`\" pulumi-lang-yaml=\"`keepalivePoolSize`\" pulumi-lang-java=\"`keepalivePoolSize`\"\u003e`keepalive_pool_size`\u003c/span\u003e. If latency is high or throughput is low, try increasing this value. Empirically, this value is larger than \u003cspan pulumi-lang-nodejs=\"`keepalivePoolSize`\" pulumi-lang-dotnet=\"`KeepalivePoolSize`\" pulumi-lang-go=\"`keepalivePoolSize`\" pulumi-lang-python=\"`keepalive_pool_size`\" pulumi-lang-yaml=\"`keepalivePoolSize`\" pulumi-lang-java=\"`keepalivePoolSize`\"\u003e`keepalive_pool_size`\u003c/span\u003e.\n"},"keepalivePoolSize":{"type":"number","description":"The size limit for every cosocket connection pool associated with every remote server, per worker process. If neither \u003cspan pulumi-lang-nodejs=\"`keepalivePoolSize`\" pulumi-lang-dotnet=\"`KeepalivePoolSize`\" pulumi-lang-go=\"`keepalivePoolSize`\" pulumi-lang-python=\"`keepalive_pool_size`\" pulumi-lang-yaml=\"`keepalivePoolSize`\" pulumi-lang-java=\"`keepalivePoolSize`\"\u003e`keepalive_pool_size`\u003c/span\u003e nor \u003cspan pulumi-lang-nodejs=\"`keepaliveBacklog`\" pulumi-lang-dotnet=\"`KeepaliveBacklog`\" pulumi-lang-go=\"`keepaliveBacklog`\" pulumi-lang-python=\"`keepalive_backlog`\" pulumi-lang-yaml=\"`keepaliveBacklog`\" pulumi-lang-java=\"`keepaliveBacklog`\"\u003e`keepalive_backlog`\u003c/span\u003e is specified, no pool is created. If \u003cspan pulumi-lang-nodejs=\"`keepalivePoolSize`\" pulumi-lang-dotnet=\"`KeepalivePoolSize`\" pulumi-lang-go=\"`keepalivePoolSize`\" pulumi-lang-python=\"`keepalive_pool_size`\" pulumi-lang-yaml=\"`keepalivePoolSize`\" pulumi-lang-java=\"`keepalivePoolSize`\"\u003e`keepalive_pool_size`\u003c/span\u003e isn't specified but \u003cspan pulumi-lang-nodejs=\"`keepaliveBacklog`\" pulumi-lang-dotnet=\"`KeepaliveBacklog`\" pulumi-lang-go=\"`keepaliveBacklog`\" pulumi-lang-python=\"`keepalive_backlog`\" pulumi-lang-yaml=\"`keepaliveBacklog`\" pulumi-lang-java=\"`keepaliveBacklog`\"\u003e`keepalive_backlog`\u003c/span\u003e is specified, then the pool uses the default value. Try to increase (e.g. 512) this value if latency is high or throughput is low. Default: 256\n"},"password":{"type":"string","description":"Password to use for Redis connections. If undefined, no AUTH commands are sent to Redis.\n"},"port":{"type":"number","description":"An integer representing a port number between 0 and 65535, inclusive. Default: 6379\n"},"readTimeout":{"type":"number","description":"An integer representing a timeout in milliseconds. Must be between 0 and 2^31-2. Default: 2000\n"},"sendTimeout":{"type":"number","description":"An integer representing a timeout in milliseconds. Must be between 0 and 2^31-2. Default: 2000\n"},"sentinelMaster":{"type":"string","description":"Sentinel master to use for Redis connections. Defining this value implies using Redis Sentinel.\n"},"sentinelNodes":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginGraphqlRateLimitingAdvancedConfigRedisSentinelNode:GatewayPluginGraphqlRateLimitingAdvancedConfigRedisSentinelNode"},"description":"Sentinel node addresses to use for Redis connections when the \u003cspan pulumi-lang-nodejs=\"`redis`\" pulumi-lang-dotnet=\"`Redis`\" pulumi-lang-go=\"`redis`\" pulumi-lang-python=\"`redis`\" pulumi-lang-yaml=\"`redis`\" pulumi-lang-java=\"`redis`\"\u003e`redis`\u003c/span\u003e strategy is defined. Defining this field implies using a Redis Sentinel. The minimum length of the array is 1 element.\n"},"sentinelPassword":{"type":"string","description":"Sentinel password to authenticate with a Redis Sentinel instance. If undefined, no AUTH commands are sent to Redis Sentinels.\n"},"sentinelRole":{"type":"string","description":"Sentinel role to use for Redis connections when the \u003cspan pulumi-lang-nodejs=\"`redis`\" pulumi-lang-dotnet=\"`Redis`\" pulumi-lang-go=\"`redis`\" pulumi-lang-python=\"`redis`\" pulumi-lang-yaml=\"`redis`\" pulumi-lang-java=\"`redis`\"\u003e`redis`\u003c/span\u003e strategy is defined. Defining this value implies using Redis Sentinel. must be one of [\"any\", \"master\", \"slave\"]\n"},"sentinelUsername":{"type":"string","description":"Sentinel username to authenticate with a Redis Sentinel instance. If undefined, ACL authentication won't be performed. This requires Redis v6.2.0+.\n"},"serverName":{"type":"string","description":"A string representing an SNI (server name indication) value for TLS.\n"},"ssl":{"type":"boolean","description":"If set to true, uses SSL to connect to Redis. Default: false\n"},"sslVerify":{"type":"boolean","description":"If set to true, verifies the validity of the server SSL certificate. If setting this parameter, also configure \u003cspan pulumi-lang-nodejs=\"`luaSslTrustedCertificate`\" pulumi-lang-dotnet=\"`LuaSslTrustedCertificate`\" pulumi-lang-go=\"`luaSslTrustedCertificate`\" pulumi-lang-python=\"`lua_ssl_trusted_certificate`\" pulumi-lang-yaml=\"`luaSslTrustedCertificate`\" pulumi-lang-java=\"`luaSslTrustedCertificate`\"\u003e`lua_ssl_trusted_certificate`\u003c/span\u003e in `kong.conf` to specify the CA (or server) certificate used by your Redis server. You may also need to configure \u003cspan pulumi-lang-nodejs=\"`luaSslVerifyDepth`\" pulumi-lang-dotnet=\"`LuaSslVerifyDepth`\" pulumi-lang-go=\"`luaSslVerifyDepth`\" pulumi-lang-python=\"`lua_ssl_verify_depth`\" pulumi-lang-yaml=\"`luaSslVerifyDepth`\" pulumi-lang-java=\"`luaSslVerifyDepth`\"\u003e`lua_ssl_verify_depth`\u003c/span\u003e accordingly. Default: false\n"},"username":{"type":"string","description":"Username to use for Redis connections. If undefined, ACL authentication won't be performed. This requires Redis v6.0.0+. To be compatible with Redis v5.x.y, you can set it to \u003cspan pulumi-lang-nodejs=\"`default`\" pulumi-lang-dotnet=\"`Default`\" pulumi-lang-go=\"`default`\" pulumi-lang-python=\"`default`\" pulumi-lang-yaml=\"`default`\" pulumi-lang-java=\"`default`\"\u003e`default`\u003c/span\u003e.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["cloudAuthentication","clusterMaxRedirections","connectTimeout","connectionIsProxied","database","host","keepalivePoolSize","port","readTimeout","sendTimeout","sentinelRole","ssl","sslVerify"]}}},"konnect:index/GatewayPluginGraphqlRateLimitingAdvancedConfigRedisCloudAuthentication:GatewayPluginGraphqlRateLimitingAdvancedConfigRedisCloudAuthentication":{"properties":{"authProvider":{"type":"string","description":"Auth providers to be used to authenticate to a Cloud Provider's Redis instance. must be one of [\"aws\", \"azure\", \"gcp\"]\n"},"awsAccessKeyId":{"type":"string","description":"AWS Access Key ID to be used for authentication when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e.\n"},"awsAssumeRoleArn":{"type":"string","description":"The ARN of the IAM role to assume for generating ElastiCache IAM authentication tokens.\n"},"awsCacheName":{"type":"string","description":"The name of the AWS Elasticache cluster when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e.\n"},"awsIsServerless":{"type":"boolean","description":"This flag specifies whether the cluster is serverless when\u003cspan pulumi-lang-nodejs=\" authProvider \" pulumi-lang-dotnet=\" AuthProvider \" pulumi-lang-go=\" authProvider \" pulumi-lang-python=\" auth_provider \" pulumi-lang-yaml=\" authProvider \" pulumi-lang-java=\" authProvider \"\u003e auth_provider \u003c/span\u003eis set to \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e. Default: true\n"},"awsRegion":{"type":"string","description":"The region of the AWS ElastiCache cluster when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e.\n"},"awsRoleSessionName":{"type":"string","description":"The session name for the temporary credentials when assuming the IAM role.\n"},"awsSecretAccessKey":{"type":"string","description":"AWS Secret Access Key to be used for authentication when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e.\n"},"azureClientId":{"type":"string","description":"Azure Client ID to be used for authentication when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`azure`\" pulumi-lang-dotnet=\"`Azure`\" pulumi-lang-go=\"`azure`\" pulumi-lang-python=\"`azure`\" pulumi-lang-yaml=\"`azure`\" pulumi-lang-java=\"`azure`\"\u003e`azure`\u003c/span\u003e.\n"},"azureClientSecret":{"type":"string","description":"Azure Client Secret to be used for authentication when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`azure`\" pulumi-lang-dotnet=\"`Azure`\" pulumi-lang-go=\"`azure`\" pulumi-lang-python=\"`azure`\" pulumi-lang-yaml=\"`azure`\" pulumi-lang-java=\"`azure`\"\u003e`azure`\u003c/span\u003e.\n"},"azureTenantId":{"type":"string","description":"Azure Tenant ID to be used for authentication when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`azure`\" pulumi-lang-dotnet=\"`Azure`\" pulumi-lang-go=\"`azure`\" pulumi-lang-python=\"`azure`\" pulumi-lang-yaml=\"`azure`\" pulumi-lang-java=\"`azure`\"\u003e`azure`\u003c/span\u003e.\n"},"gcpServiceAccountJson":{"type":"string","description":"GCP Service Account JSON to be used for authentication when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`gcp`\" pulumi-lang-dotnet=\"`Gcp`\" pulumi-lang-go=\"`gcp`\" pulumi-lang-python=\"`gcp`\" pulumi-lang-yaml=\"`gcp`\" pulumi-lang-java=\"`gcp`\"\u003e`gcp`\u003c/span\u003e.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["authProvider","awsIsServerless"]}}},"konnect:index/GatewayPluginGraphqlRateLimitingAdvancedConfigRedisClusterNode:GatewayPluginGraphqlRateLimitingAdvancedConfigRedisClusterNode":{"properties":{"ip":{"type":"string","description":"A string representing a host name, such as example.com. Default: \"127.0.0.1\"\n"},"port":{"type":"number","description":"An integer representing a port number between 0 and 65535, inclusive. Default: 6379\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["ip","port"]}}},"konnect:index/GatewayPluginGraphqlRateLimitingAdvancedConfigRedisSentinelNode:GatewayPluginGraphqlRateLimitingAdvancedConfigRedisSentinelNode":{"properties":{"host":{"type":"string","description":"A string representing a host name, such as example.com. Default: \"127.0.0.1\"\n"},"port":{"type":"number","description":"An integer representing a port number between 0 and 65535, inclusive. Default: 6379\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["host","port"]}}},"konnect:index/GatewayPluginGraphqlRateLimitingAdvancedConsumer:GatewayPluginGraphqlRateLimitingAdvancedConsumer":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginGraphqlRateLimitingAdvancedOrdering:GatewayPluginGraphqlRateLimitingAdvancedOrdering":{"properties":{"after":{"$ref":"#/types/konnect:index%2FGatewayPluginGraphqlRateLimitingAdvancedOrderingAfter:GatewayPluginGraphqlRateLimitingAdvancedOrderingAfter"},"before":{"$ref":"#/types/konnect:index%2FGatewayPluginGraphqlRateLimitingAdvancedOrderingBefore:GatewayPluginGraphqlRateLimitingAdvancedOrderingBefore"}},"type":"object","language":{"nodejs":{"requiredOutputs":["after","before"]}}},"konnect:index/GatewayPluginGraphqlRateLimitingAdvancedOrderingAfter:GatewayPluginGraphqlRateLimitingAdvancedOrderingAfter":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginGraphqlRateLimitingAdvancedOrderingBefore:GatewayPluginGraphqlRateLimitingAdvancedOrderingBefore":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginGraphqlRateLimitingAdvancedPartial:GatewayPluginGraphqlRateLimitingAdvancedPartial":{"properties":{"id":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"name":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"path":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id","name","path"]}}},"konnect:index/GatewayPluginGraphqlRateLimitingAdvancedRoute:GatewayPluginGraphqlRateLimitingAdvancedRoute":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginGraphqlRateLimitingAdvancedService:GatewayPluginGraphqlRateLimitingAdvancedService":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginGrpcGatewayConfig:GatewayPluginGrpcGatewayConfig":{"properties":{"proto":{"type":"string","description":"Describes the gRPC types and methods.\n"}},"type":"object"},"konnect:index/GatewayPluginGrpcGatewayConsumer:GatewayPluginGrpcGatewayConsumer":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginGrpcGatewayOrdering:GatewayPluginGrpcGatewayOrdering":{"properties":{"after":{"$ref":"#/types/konnect:index%2FGatewayPluginGrpcGatewayOrderingAfter:GatewayPluginGrpcGatewayOrderingAfter"},"before":{"$ref":"#/types/konnect:index%2FGatewayPluginGrpcGatewayOrderingBefore:GatewayPluginGrpcGatewayOrderingBefore"}},"type":"object","language":{"nodejs":{"requiredOutputs":["after","before"]}}},"konnect:index/GatewayPluginGrpcGatewayOrderingAfter:GatewayPluginGrpcGatewayOrderingAfter":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginGrpcGatewayOrderingBefore:GatewayPluginGrpcGatewayOrderingBefore":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginGrpcGatewayPartial:GatewayPluginGrpcGatewayPartial":{"properties":{"id":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"name":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"path":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id","name","path"]}}},"konnect:index/GatewayPluginGrpcGatewayRoute:GatewayPluginGrpcGatewayRoute":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginGrpcGatewayService:GatewayPluginGrpcGatewayService":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginGrpcWebConfig:GatewayPluginGrpcWebConfig":{"properties":{"allowOriginHeader":{"type":"string","description":"The value of the `Access-Control-Allow-Origin` header in the response to the gRPC-Web client. Default: \"*\"\n"},"passStrippedPath":{"type":"boolean","description":"If set to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e causes the plugin to pass the stripped request path to the upstream gRPC service.\n"},"proto":{"type":"string","description":"If present, describes the gRPC types and methods. Required to support payload transcoding. When absent, the web client must use application/grpw-web+proto content.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["allowOriginHeader"]}}},"konnect:index/GatewayPluginGrpcWebConsumer:GatewayPluginGrpcWebConsumer":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginGrpcWebOrdering:GatewayPluginGrpcWebOrdering":{"properties":{"after":{"$ref":"#/types/konnect:index%2FGatewayPluginGrpcWebOrderingAfter:GatewayPluginGrpcWebOrderingAfter"},"before":{"$ref":"#/types/konnect:index%2FGatewayPluginGrpcWebOrderingBefore:GatewayPluginGrpcWebOrderingBefore"}},"type":"object","language":{"nodejs":{"requiredOutputs":["after","before"]}}},"konnect:index/GatewayPluginGrpcWebOrderingAfter:GatewayPluginGrpcWebOrderingAfter":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginGrpcWebOrderingBefore:GatewayPluginGrpcWebOrderingBefore":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginGrpcWebPartial:GatewayPluginGrpcWebPartial":{"properties":{"id":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"name":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"path":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id","name","path"]}}},"konnect:index/GatewayPluginGrpcWebRoute:GatewayPluginGrpcWebRoute":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginGrpcWebService:GatewayPluginGrpcWebService":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginHeaderCertAuthConfig:GatewayPluginHeaderCertAuthConfig":{"properties":{"allowPartialChain":{"type":"boolean","description":"Allow certificate verification with only an intermediate certificate. When this is enabled, you don't need to upload the full chain to Kong Certificates. Default: false\n"},"anonymous":{"type":"string","description":"An optional string (consumer UUID or username) value to use as an “anonymous” consumer if authentication fails. If empty (default null), the request fails with an authentication failure \u003cspan pulumi-lang-nodejs=\"`4xx`\" pulumi-lang-dotnet=\"`4xx`\" pulumi-lang-go=\"`4xx`\" pulumi-lang-python=\"`4xx`\" pulumi-lang-yaml=\"`4xx`\" pulumi-lang-java=\"`4xx`\"\u003e`4xx`\u003c/span\u003e. Note that this value must refer to the consumer \u003cspan pulumi-lang-nodejs=\"`id`\" pulumi-lang-dotnet=\"`Id`\" pulumi-lang-go=\"`id`\" pulumi-lang-python=\"`id`\" pulumi-lang-yaml=\"`id`\" pulumi-lang-java=\"`id`\"\u003e`id`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`username`\" pulumi-lang-dotnet=\"`Username`\" pulumi-lang-go=\"`username`\" pulumi-lang-python=\"`username`\" pulumi-lang-yaml=\"`username`\" pulumi-lang-java=\"`username`\"\u003e`username`\u003c/span\u003e attribute, and **not** its \u003cspan pulumi-lang-nodejs=\"`customId`\" pulumi-lang-dotnet=\"`CustomId`\" pulumi-lang-go=\"`customId`\" pulumi-lang-python=\"`custom_id`\" pulumi-lang-yaml=\"`customId`\" pulumi-lang-java=\"`customId`\"\u003e`custom_id`\u003c/span\u003e.\n"},"authenticatedGroupBy":{"type":"string","description":"Certificate property to use as the authenticated group. Valid values are `CN` (Common Name) or `DN` (Distinguished Name). Once \u003cspan pulumi-lang-nodejs=\"`skipConsumerLookup`\" pulumi-lang-dotnet=\"`SkipConsumerLookup`\" pulumi-lang-go=\"`skipConsumerLookup`\" pulumi-lang-python=\"`skip_consumer_lookup`\" pulumi-lang-yaml=\"`skipConsumerLookup`\" pulumi-lang-java=\"`skipConsumerLookup`\"\u003e`skip_consumer_lookup`\u003c/span\u003e is applied, any client with a valid certificate can access the Service/API. To restrict usage to only some of the authenticated users, also add the ACL plugin (not covered here) and create allowed or denied groups of users. Default: \"CN\"; must be one of [\"CN\", \"DN\"]\n"},"caCertificates":{"type":"array","items":{"type":"string"},"description":"List of CA Certificates strings to use as Certificate Authorities (CA) when validating a client certificate. At least one is required but you can specify as many as needed. The value of this array is comprised of primary keys (\u003cspan pulumi-lang-nodejs=\"`id`\" pulumi-lang-dotnet=\"`Id`\" pulumi-lang-go=\"`id`\" pulumi-lang-python=\"`id`\" pulumi-lang-yaml=\"`id`\" pulumi-lang-java=\"`id`\"\u003e`id`\u003c/span\u003e).\n"},"cacheTtl":{"type":"number","description":"Cache expiry time in seconds. Default: 60\n"},"certCacheTtl":{"type":"number","description":"The length of time in milliseconds between refreshes of the revocation check status cache. Default: 60000\n"},"certificateHeaderFormat":{"type":"string","description":"Format of the certificate header. Supported formats: \u003cspan pulumi-lang-nodejs=\"`base64Encoded`\" pulumi-lang-dotnet=\"`Base64Encoded`\" pulumi-lang-go=\"`base64Encoded`\" pulumi-lang-python=\"`base64_encoded`\" pulumi-lang-yaml=\"`base64Encoded`\" pulumi-lang-java=\"`base64Encoded`\"\u003e`base64_encoded`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`urlEncoded`\" pulumi-lang-dotnet=\"`UrlEncoded`\" pulumi-lang-go=\"`urlEncoded`\" pulumi-lang-python=\"`url_encoded`\" pulumi-lang-yaml=\"`urlEncoded`\" pulumi-lang-java=\"`urlEncoded`\"\u003e`url_encoded`\u003c/span\u003e. must be one of [\"base64*encoded\", \"url*encoded\"]\n"},"certificateHeaderName":{"type":"string","description":"Name of the header that contains the certificate, received from the WAF or other L7 downstream proxy.\n"},"consumerBies":{"type":"array","items":{"type":"string"},"description":"Whether to match the subject name of the client-supplied certificate against consumer's \u003cspan pulumi-lang-nodejs=\"`username`\" pulumi-lang-dotnet=\"`Username`\" pulumi-lang-go=\"`username`\" pulumi-lang-python=\"`username`\" pulumi-lang-yaml=\"`username`\" pulumi-lang-java=\"`username`\"\u003e`username`\u003c/span\u003e and/or \u003cspan pulumi-lang-nodejs=\"`customId`\" pulumi-lang-dotnet=\"`CustomId`\" pulumi-lang-go=\"`customId`\" pulumi-lang-python=\"`custom_id`\" pulumi-lang-yaml=\"`customId`\" pulumi-lang-java=\"`customId`\"\u003e`custom_id`\u003c/span\u003e attribute. If set to `[]` (the empty array), then auto-matching is disabled. Default: [\u003cspan pulumi-lang-nodejs=\"\"customId\"\" pulumi-lang-dotnet=\"\"CustomId\"\" pulumi-lang-go=\"\"customId\"\" pulumi-lang-python=\"\"custom_id\"\" pulumi-lang-yaml=\"\"customId\"\" pulumi-lang-java=\"\"customId\"\"\u003e\"custom_id\"\u003c/span\u003e,\"username\"]\n"},"defaultConsumer":{"type":"string","description":"The UUID or username of the consumer to use when a trusted client certificate is presented but no consumer matches. Note that this value must refer to the consumer \u003cspan pulumi-lang-nodejs=\"`id`\" pulumi-lang-dotnet=\"`Id`\" pulumi-lang-go=\"`id`\" pulumi-lang-python=\"`id`\" pulumi-lang-yaml=\"`id`\" pulumi-lang-java=\"`id`\"\u003e`id`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`username`\" pulumi-lang-dotnet=\"`Username`\" pulumi-lang-go=\"`username`\" pulumi-lang-python=\"`username`\" pulumi-lang-yaml=\"`username`\" pulumi-lang-java=\"`username`\"\u003e`username`\u003c/span\u003e attribute, and **not** its \u003cspan pulumi-lang-nodejs=\"`customId`\" pulumi-lang-dotnet=\"`CustomId`\" pulumi-lang-go=\"`customId`\" pulumi-lang-python=\"`custom_id`\" pulumi-lang-yaml=\"`customId`\" pulumi-lang-java=\"`customId`\"\u003e`custom_id`\u003c/span\u003e.\n"},"httpProxyHost":{"type":"string","description":"A string representing a host name, such as example.com.\n"},"httpProxyPort":{"type":"number","description":"An integer representing a port number between 0 and 65535, inclusive.\n"},"httpTimeout":{"type":"number","description":"HTTP timeout threshold in milliseconds when communicating with the OCSP server or downloading CRL. Default: 30000\n"},"httpsProxyHost":{"type":"string","description":"A string representing a host name, such as example.com.\n"},"httpsProxyPort":{"type":"number","description":"An integer representing a port number between 0 and 65535, inclusive.\n"},"revocationCheckMode":{"type":"string","description":"Controls client certificate revocation check behavior. If set to `SKIP`, no revocation check is performed. If set to `IGNORE_CA_ERROR`, the plugin respects the revocation status when either OCSP or CRL URL is set, and doesn't fail on network issues. If set to `STRICT`, the plugin only treats the certificate as valid when it's able to verify the revocation status. Default: \"IGNORE*CA*ERROR\"; must be one of [\"IGNORE*CA*ERROR\", \"SKIP\", \"STRICT\"]\n"},"secureSource":{"type":"boolean","description":"Whether to secure the source of the request. If set to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, the plugin will only allow requests from trusted IPs (configured by the \u003cspan pulumi-lang-nodejs=\"`trustedIps`\" pulumi-lang-dotnet=\"`TrustedIps`\" pulumi-lang-go=\"`trustedIps`\" pulumi-lang-python=\"`trusted_ips`\" pulumi-lang-yaml=\"`trustedIps`\" pulumi-lang-java=\"`trustedIps`\"\u003e`trusted_ips`\u003c/span\u003e config option). Default: true\n"},"skipConsumerLookup":{"type":"boolean","description":"Skip consumer lookup once certificate is trusted against the configured CA list. Default: false\n"},"sslVerify":{"type":"boolean","description":"This option enables verification of the certificate presented by the server of the OCSP responder's URL and by the server of the CRL Distribution Point.\n"}},"type":"object","required":["caCertificates","certificateHeaderFormat","certificateHeaderName"],"language":{"nodejs":{"requiredOutputs":["allowPartialChain","authenticatedGroupBy","caCertificates","cacheTtl","certCacheTtl","certificateHeaderFormat","certificateHeaderName","consumerBies","httpTimeout","revocationCheckMode","secureSource","skipConsumerLookup"]}}},"konnect:index/GatewayPluginHeaderCertAuthOrdering:GatewayPluginHeaderCertAuthOrdering":{"properties":{"after":{"$ref":"#/types/konnect:index%2FGatewayPluginHeaderCertAuthOrderingAfter:GatewayPluginHeaderCertAuthOrderingAfter"},"before":{"$ref":"#/types/konnect:index%2FGatewayPluginHeaderCertAuthOrderingBefore:GatewayPluginHeaderCertAuthOrderingBefore"}},"type":"object","language":{"nodejs":{"requiredOutputs":["after","before"]}}},"konnect:index/GatewayPluginHeaderCertAuthOrderingAfter:GatewayPluginHeaderCertAuthOrderingAfter":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginHeaderCertAuthOrderingBefore:GatewayPluginHeaderCertAuthOrderingBefore":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginHeaderCertAuthPartial:GatewayPluginHeaderCertAuthPartial":{"properties":{"id":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"name":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"path":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id","name","path"]}}},"konnect:index/GatewayPluginHeaderCertAuthRoute:GatewayPluginHeaderCertAuthRoute":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginHeaderCertAuthService:GatewayPluginHeaderCertAuthService":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginHmacAuthConfig:GatewayPluginHmacAuthConfig":{"properties":{"algorithms":{"type":"array","items":{"type":"string"},"description":"A list of HMAC digest algorithms that the user wants to support. Allowed values are `hmac-sha1`, `hmac-sha256`, `hmac-sha384`, and `hmac-sha512`. Default: [\"hmac-sha1\",\"hmac-sha256\",\"hmac-sha384\",\"hmac-sha512\"]\n"},"anonymous":{"type":"string","description":"An optional string (Consumer UUID or username) value to use as an “anonymous” consumer if authentication fails.\n"},"clockSkew":{"type":"number","description":"Clock skew in seconds to prevent replay attacks. Default: 300\n"},"enforceHeaders":{"type":"array","items":{"type":"string"},"description":"A list of headers that the client should at least use for HTTP signature creation. Default: []\n"},"hideCredentials":{"type":"boolean","description":"An optional boolean value telling the plugin to show or hide the credential from the upstream service. Default: false\n"},"realm":{"type":"string","description":"When authentication fails the plugin sends `WWW-Authenticate` header with \u003cspan pulumi-lang-nodejs=\"`realm`\" pulumi-lang-dotnet=\"`Realm`\" pulumi-lang-go=\"`realm`\" pulumi-lang-python=\"`realm`\" pulumi-lang-yaml=\"`realm`\" pulumi-lang-java=\"`realm`\"\u003e`realm`\u003c/span\u003e attribute value.\n"},"validateRequestBody":{"type":"boolean","description":"A boolean value telling the plugin to enable body validation. Default: false\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["algorithms","clockSkew","enforceHeaders","hideCredentials","validateRequestBody"]}}},"konnect:index/GatewayPluginHmacAuthOrdering:GatewayPluginHmacAuthOrdering":{"properties":{"after":{"$ref":"#/types/konnect:index%2FGatewayPluginHmacAuthOrderingAfter:GatewayPluginHmacAuthOrderingAfter"},"before":{"$ref":"#/types/konnect:index%2FGatewayPluginHmacAuthOrderingBefore:GatewayPluginHmacAuthOrderingBefore"}},"type":"object","language":{"nodejs":{"requiredOutputs":["after","before"]}}},"konnect:index/GatewayPluginHmacAuthOrderingAfter:GatewayPluginHmacAuthOrderingAfter":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginHmacAuthOrderingBefore:GatewayPluginHmacAuthOrderingBefore":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginHmacAuthPartial:GatewayPluginHmacAuthPartial":{"properties":{"id":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"name":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"path":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id","name","path"]}}},"konnect:index/GatewayPluginHmacAuthRoute:GatewayPluginHmacAuthRoute":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginHmacAuthService:GatewayPluginHmacAuthService":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginHttpLogConfig:GatewayPluginHttpLogConfig":{"properties":{"contentType":{"type":"string","description":"Indicates the type of data sent. The only available option is `application/json`. Default: \"application/json\"; must be one of [\"application/json\", \"application/json; charset=utf-8\"]\n"},"customFieldsByLua":{"type":"object","additionalProperties":{"type":"string"},"description":"Lua code as a key-value map\n"},"flushTimeout":{"type":"number","description":"Optional time in seconds. If \u003cspan pulumi-lang-nodejs=\"`queueSize`\" pulumi-lang-dotnet=\"`QueueSize`\" pulumi-lang-go=\"`queueSize`\" pulumi-lang-python=\"`queue_size`\" pulumi-lang-yaml=\"`queueSize`\" pulumi-lang-java=\"`queueSize`\"\u003e`queue_size`\u003c/span\u003e \u003e 1, this is the max idle time before sending a log with less than \u003cspan pulumi-lang-nodejs=\"`queueSize`\" pulumi-lang-dotnet=\"`QueueSize`\" pulumi-lang-go=\"`queueSize`\" pulumi-lang-python=\"`queue_size`\" pulumi-lang-yaml=\"`queueSize`\" pulumi-lang-java=\"`queueSize`\"\u003e`queue_size`\u003c/span\u003e records.\n"},"headers":{"type":"object","additionalProperties":{"type":"string"},"description":"An optional table of headers included in the HTTP message to the upstream server. Values are indexed by header name, and each header name accepts a single string.\n"},"httpEndpoint":{"type":"string","description":"A string representing a URL, such as https://example.com/path/to/resource?q=search.\n"},"keepalive":{"type":"number","description":"An optional value in milliseconds that defines how long an idle connection will live before being closed. Default: 60000\n"},"method":{"type":"string","description":"An optional method used to send data to the HTTP server. Supported values are `POST` (default), `PUT`, and `PATCH`. Default: \"POST\"; must be one of [\"PATCH\", \"POST\", \"PUT\"]\n"},"queue":{"$ref":"#/types/konnect:index%2FGatewayPluginHttpLogConfigQueue:GatewayPluginHttpLogConfigQueue"},"queueSize":{"type":"number","description":"Maximum number of log entries to be sent on each message to the upstream server.\n"},"retryCount":{"type":"number","description":"Number of times to retry when sending data to the upstream server.\n"},"sslVerify":{"type":"boolean","description":"When using TLS, this option enables verification of the certificate presented by the server.\n"},"timeout":{"type":"number","description":"An optional timeout in milliseconds when sending data to the upstream server. Default: 10000\n"}},"type":"object","required":["httpEndpoint"],"language":{"nodejs":{"requiredOutputs":["contentType","httpEndpoint","keepalive","method","queue","timeout"]}}},"konnect:index/GatewayPluginHttpLogConfigQueue:GatewayPluginHttpLogConfigQueue":{"properties":{"concurrencyLimit":{"type":"number","description":"The number of of queue delivery timers. -1 indicates unlimited. Default: 1; must be one of [\"-1\", \"1\"]\n"},"initialRetryDelay":{"type":"number","description":"Time in seconds before the initial retry is made for a failing batch.\n"},"maxBatchSize":{"type":"number","description":"Maximum number of entries that can be processed at a time. Default: 1\n"},"maxBytes":{"type":"number","description":"Maximum number of bytes that can be waiting on a queue, requires string content.\n"},"maxCoalescingDelay":{"type":"number","description":"Maximum number of (fractional) seconds to elapse after the first entry was queued before the queue starts calling the handler. Default: 1\n"},"maxEntries":{"type":"number","description":"Maximum number of entries that can be waiting on the queue. Default: 10000\n"},"maxRetryDelay":{"type":"number","description":"Maximum time in seconds between retries, caps exponential backoff. Default: 60\n"},"maxRetryTime":{"type":"number","description":"Time in seconds before the queue gives up calling a failed handler for a batch. Default: 60\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["concurrencyLimit","initialRetryDelay","maxBatchSize","maxCoalescingDelay","maxEntries","maxRetryDelay","maxRetryTime"]}}},"konnect:index/GatewayPluginHttpLogConsumer:GatewayPluginHttpLogConsumer":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginHttpLogOrdering:GatewayPluginHttpLogOrdering":{"properties":{"after":{"$ref":"#/types/konnect:index%2FGatewayPluginHttpLogOrderingAfter:GatewayPluginHttpLogOrderingAfter"},"before":{"$ref":"#/types/konnect:index%2FGatewayPluginHttpLogOrderingBefore:GatewayPluginHttpLogOrderingBefore"}},"type":"object","language":{"nodejs":{"requiredOutputs":["after","before"]}}},"konnect:index/GatewayPluginHttpLogOrderingAfter:GatewayPluginHttpLogOrderingAfter":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginHttpLogOrderingBefore:GatewayPluginHttpLogOrderingBefore":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginHttpLogPartial:GatewayPluginHttpLogPartial":{"properties":{"id":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"name":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"path":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id","name","path"]}}},"konnect:index/GatewayPluginHttpLogRoute:GatewayPluginHttpLogRoute":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginHttpLogService:GatewayPluginHttpLogService":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginInjectionProtectionConfig:GatewayPluginInjectionProtectionConfig":{"properties":{"customInjections":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginInjectionProtectionConfigCustomInjection:GatewayPluginInjectionProtectionConfigCustomInjection"},"description":"Custom regexes to check for.\n"},"enforcementMode":{"type":"string","description":"Enforcement mode of the security policy. Default: \"block\"; must be one of [\"block\", \u003cspan pulumi-lang-nodejs=\"\"logOnly\"\" pulumi-lang-dotnet=\"\"LogOnly\"\" pulumi-lang-go=\"\"logOnly\"\" pulumi-lang-python=\"\"log_only\"\" pulumi-lang-yaml=\"\"logOnly\"\" pulumi-lang-java=\"\"logOnly\"\"\u003e\"log_only\"\u003c/span\u003e]\n"},"errorMessage":{"type":"string","description":"The response message when validation fails. Default: \"Bad Request\"\n"},"errorStatusCode":{"type":"number","description":"The response status code when validation fails. Default: 400\n"},"injectionTypes":{"type":"array","items":{"type":"string"},"description":"The type of injections to check for. Default: [\"sql\"]\n"},"locations":{"type":"array","items":{"type":"string"},"description":"The locations to check for injection. Default: [\"path*and*query\"]\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["enforcementMode","errorMessage","errorStatusCode","injectionTypes","locations"]}}},"konnect:index/GatewayPluginInjectionProtectionConfigCustomInjection:GatewayPluginInjectionProtectionConfigCustomInjection":{"properties":{"name":{"type":"string","description":"A unique name for this injection. Not Null\n"},"regex":{"type":"string","description":"The regex to match against. Not Null\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["name","regex"]}}},"konnect:index/GatewayPluginInjectionProtectionOrdering:GatewayPluginInjectionProtectionOrdering":{"properties":{"after":{"$ref":"#/types/konnect:index%2FGatewayPluginInjectionProtectionOrderingAfter:GatewayPluginInjectionProtectionOrderingAfter"},"before":{"$ref":"#/types/konnect:index%2FGatewayPluginInjectionProtectionOrderingBefore:GatewayPluginInjectionProtectionOrderingBefore"}},"type":"object","language":{"nodejs":{"requiredOutputs":["after","before"]}}},"konnect:index/GatewayPluginInjectionProtectionOrderingAfter:GatewayPluginInjectionProtectionOrderingAfter":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginInjectionProtectionOrderingBefore:GatewayPluginInjectionProtectionOrderingBefore":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginInjectionProtectionPartial:GatewayPluginInjectionProtectionPartial":{"properties":{"id":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"name":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"path":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id","name","path"]}}},"konnect:index/GatewayPluginInjectionProtectionRoute:GatewayPluginInjectionProtectionRoute":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginInjectionProtectionService:GatewayPluginInjectionProtectionService":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginIpRestrictionConfig:GatewayPluginIpRestrictionConfig":{"properties":{"allows":{"type":"array","items":{"type":"string"},"description":"List of IPs or CIDR ranges to allow. One of `config.allow` or `config.deny` must be specified.\n"},"denies":{"type":"array","items":{"type":"string"},"description":"List of IPs or CIDR ranges to deny. One of `config.allow` or `config.deny` must be specified.\n"},"message":{"type":"string","description":"The message to send as a response body to rejected requests.\n"},"status":{"type":"number","description":"The HTTP status of the requests that will be rejected by the plugin.\n"}},"type":"object"},"konnect:index/GatewayPluginIpRestrictionConsumer:GatewayPluginIpRestrictionConsumer":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginIpRestrictionConsumerGroup:GatewayPluginIpRestrictionConsumerGroup":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginIpRestrictionOrdering:GatewayPluginIpRestrictionOrdering":{"properties":{"after":{"$ref":"#/types/konnect:index%2FGatewayPluginIpRestrictionOrderingAfter:GatewayPluginIpRestrictionOrderingAfter"},"before":{"$ref":"#/types/konnect:index%2FGatewayPluginIpRestrictionOrderingBefore:GatewayPluginIpRestrictionOrderingBefore"}},"type":"object","language":{"nodejs":{"requiredOutputs":["after","before"]}}},"konnect:index/GatewayPluginIpRestrictionOrderingAfter:GatewayPluginIpRestrictionOrderingAfter":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginIpRestrictionOrderingBefore:GatewayPluginIpRestrictionOrderingBefore":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginIpRestrictionPartial:GatewayPluginIpRestrictionPartial":{"properties":{"id":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"name":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"path":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id","name","path"]}}},"konnect:index/GatewayPluginIpRestrictionRoute:GatewayPluginIpRestrictionRoute":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginIpRestrictionService:GatewayPluginIpRestrictionService":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginJqConfig:GatewayPluginJqConfig":{"properties":{"requestIfMediaTypes":{"type":"array","items":{"type":"string"},"description":"Default: [\"application/json\"]\n"},"requestJqProgram":{"type":"string"},"requestJqProgramOptions":{"$ref":"#/types/konnect:index%2FGatewayPluginJqConfigRequestJqProgramOptions:GatewayPluginJqConfigRequestJqProgramOptions"},"responseIfMediaTypes":{"type":"array","items":{"type":"string"},"description":"Default: [\"application/json\"]\n"},"responseIfStatusCodes":{"type":"array","items":{"type":"number"},"description":"Default: [200]\n"},"responseJqProgram":{"type":"string"},"responseJqProgramOptions":{"$ref":"#/types/konnect:index%2FGatewayPluginJqConfigResponseJqProgramOptions:GatewayPluginJqConfigResponseJqProgramOptions"}},"type":"object","language":{"nodejs":{"requiredOutputs":["requestIfMediaTypes","requestJqProgramOptions","responseIfMediaTypes","responseIfStatusCodes","responseJqProgramOptions"]}}},"konnect:index/GatewayPluginJqConfigRequestJqProgramOptions:GatewayPluginJqConfigRequestJqProgramOptions":{"properties":{"asciiOutput":{"type":"boolean","description":"Default: false\n"},"compactOutput":{"type":"boolean","description":"Default: true\n"},"joinOutput":{"type":"boolean","description":"Default: false\n"},"rawOutput":{"type":"boolean","description":"Default: false\n"},"sortKeys":{"type":"boolean","description":"Default: false\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["asciiOutput","compactOutput","joinOutput","rawOutput","sortKeys"]}}},"konnect:index/GatewayPluginJqConfigResponseJqProgramOptions:GatewayPluginJqConfigResponseJqProgramOptions":{"properties":{"asciiOutput":{"type":"boolean","description":"Default: false\n"},"compactOutput":{"type":"boolean","description":"Default: true\n"},"joinOutput":{"type":"boolean","description":"Default: false\n"},"rawOutput":{"type":"boolean","description":"Default: false\n"},"sortKeys":{"type":"boolean","description":"Default: false\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["asciiOutput","compactOutput","joinOutput","rawOutput","sortKeys"]}}},"konnect:index/GatewayPluginJqConsumer:GatewayPluginJqConsumer":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginJqOrdering:GatewayPluginJqOrdering":{"properties":{"after":{"$ref":"#/types/konnect:index%2FGatewayPluginJqOrderingAfter:GatewayPluginJqOrderingAfter"},"before":{"$ref":"#/types/konnect:index%2FGatewayPluginJqOrderingBefore:GatewayPluginJqOrderingBefore"}},"type":"object","language":{"nodejs":{"requiredOutputs":["after","before"]}}},"konnect:index/GatewayPluginJqOrderingAfter:GatewayPluginJqOrderingAfter":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginJqOrderingBefore:GatewayPluginJqOrderingBefore":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginJqPartial:GatewayPluginJqPartial":{"properties":{"id":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"name":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"path":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id","name","path"]}}},"konnect:index/GatewayPluginJqRoute:GatewayPluginJqRoute":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginJqService:GatewayPluginJqService":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginJsonThreatProtectionConfig:GatewayPluginJsonThreatProtectionConfig":{"properties":{"allowDuplicateObjectEntryName":{"type":"boolean","description":"Allow or disallow duplicate object entry name. Default: true\n"},"enforcementMode":{"type":"string","description":"Enforcement mode of the security policy. Default: \"block\"; must be one of [\"block\", \u003cspan pulumi-lang-nodejs=\"\"logOnly\"\" pulumi-lang-dotnet=\"\"LogOnly\"\" pulumi-lang-go=\"\"logOnly\"\" pulumi-lang-python=\"\"log_only\"\" pulumi-lang-yaml=\"\"logOnly\"\" pulumi-lang-java=\"\"logOnly\"\"\u003e\"log_only\"\u003c/span\u003e]\n"},"errorMessage":{"type":"string","description":"The response message when validation fails. Default: \"Bad Request\"\n"},"errorStatusCode":{"type":"number","description":"The response status code when validation fails. Default: 400\n"},"maxArrayElementCount":{"type":"number","description":"Max number of elements in an array. -1 means unlimited. Default: -1\n"},"maxBodySize":{"type":"number","description":"Max size of the request body. -1 means unlimited. Default: 8192\n"},"maxContainerDepth":{"type":"number","description":"Max nested depth of objects and arrays. -1 means unlimited. Default: -1\n"},"maxObjectEntryCount":{"type":"number","description":"Max number of entries in an object. -1 means unlimited. Default: -1\n"},"maxObjectEntryNameLength":{"type":"number","description":"Max string length of object name. -1 means unlimited. Default: -1\n"},"maxStringValueLength":{"type":"number","description":"Max string value length. -1 means unlimited. Default: -1\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["allowDuplicateObjectEntryName","enforcementMode","errorMessage","errorStatusCode","maxArrayElementCount","maxBodySize","maxContainerDepth","maxObjectEntryCount","maxObjectEntryNameLength","maxStringValueLength"]}}},"konnect:index/GatewayPluginJsonThreatProtectionOrdering:GatewayPluginJsonThreatProtectionOrdering":{"properties":{"after":{"$ref":"#/types/konnect:index%2FGatewayPluginJsonThreatProtectionOrderingAfter:GatewayPluginJsonThreatProtectionOrderingAfter"},"before":{"$ref":"#/types/konnect:index%2FGatewayPluginJsonThreatProtectionOrderingBefore:GatewayPluginJsonThreatProtectionOrderingBefore"}},"type":"object","language":{"nodejs":{"requiredOutputs":["after","before"]}}},"konnect:index/GatewayPluginJsonThreatProtectionOrderingAfter:GatewayPluginJsonThreatProtectionOrderingAfter":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginJsonThreatProtectionOrderingBefore:GatewayPluginJsonThreatProtectionOrderingBefore":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginJsonThreatProtectionPartial:GatewayPluginJsonThreatProtectionPartial":{"properties":{"id":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"name":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"path":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id","name","path"]}}},"konnect:index/GatewayPluginJsonThreatProtectionRoute:GatewayPluginJsonThreatProtectionRoute":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginJsonThreatProtectionService:GatewayPluginJsonThreatProtectionService":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginJweDecryptConfig:GatewayPluginJweDecryptConfig":{"properties":{"forwardHeaderName":{"type":"string","description":"The name of the header that is used to set the decrypted value. Default: \"Authorization\"\n"},"keySets":{"type":"array","items":{"type":"string"},"description":"Denote the name or names of all Key Sets that should be inspected when trying to find a suitable key to decrypt the JWE token.\n"},"lookupHeaderName":{"type":"string","description":"The name of the header to look for the JWE token. Default: \"Authorization\"\n"},"strict":{"type":"boolean","description":"Defines how the plugin behaves in cases where no token was found in the request. When using \u003cspan pulumi-lang-nodejs=\"`strict`\" pulumi-lang-dotnet=\"`Strict`\" pulumi-lang-go=\"`strict`\" pulumi-lang-python=\"`strict`\" pulumi-lang-yaml=\"`strict`\" pulumi-lang-java=\"`strict`\"\u003e`strict`\u003c/span\u003e mode, the request requires a token to be present and subsequently raise an error if none could be found. Default: true\n"}},"type":"object","required":["keySets"],"language":{"nodejs":{"requiredOutputs":["forwardHeaderName","keySets","lookupHeaderName","strict"]}}},"konnect:index/GatewayPluginJweDecryptOrdering:GatewayPluginJweDecryptOrdering":{"properties":{"after":{"$ref":"#/types/konnect:index%2FGatewayPluginJweDecryptOrderingAfter:GatewayPluginJweDecryptOrderingAfter"},"before":{"$ref":"#/types/konnect:index%2FGatewayPluginJweDecryptOrderingBefore:GatewayPluginJweDecryptOrderingBefore"}},"type":"object","language":{"nodejs":{"requiredOutputs":["after","before"]}}},"konnect:index/GatewayPluginJweDecryptOrderingAfter:GatewayPluginJweDecryptOrderingAfter":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginJweDecryptOrderingBefore:GatewayPluginJweDecryptOrderingBefore":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginJweDecryptPartial:GatewayPluginJweDecryptPartial":{"properties":{"id":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"name":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"path":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id","name","path"]}}},"konnect:index/GatewayPluginJweDecryptRoute:GatewayPluginJweDecryptRoute":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginJweDecryptService:GatewayPluginJweDecryptService":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginJwtConfig:GatewayPluginJwtConfig":{"properties":{"anonymous":{"type":"string","description":"An optional string (consumer UUID or username) value to use as an “anonymous” consumer if authentication fails.\n"},"claimsToVerifies":{"type":"array","items":{"type":"string"},"description":"A list of registered claims (according to RFC 7519) that Kong can verify as well. Accepted values: one of exp or nbf.\n"},"cookieNames":{"type":"array","items":{"type":"string"},"description":"A list of cookie names that Kong will inspect to retrieve JWTs. Default: []\n"},"headerNames":{"type":"array","items":{"type":"string"},"description":"A list of HTTP header names that Kong will inspect to retrieve JWTs. Default: [\"authorization\"]\n"},"keyClaimName":{"type":"string","description":"The name of the claim in which the key identifying the secret must be passed. The plugin will attempt to read this claim from the JWT payload and the header, in that order. Default: \"iss\"\n"},"maximumExpiration":{"type":"number","description":"A value between 0 and 31536000 (365 days) limiting the lifetime of the JWT to\u003cspan pulumi-lang-nodejs=\" maximumExpiration \" pulumi-lang-dotnet=\" MaximumExpiration \" pulumi-lang-go=\" maximumExpiration \" pulumi-lang-python=\" maximum_expiration \" pulumi-lang-yaml=\" maximumExpiration \" pulumi-lang-java=\" maximumExpiration \"\u003e maximum_expiration \u003c/span\u003eseconds in the future. Default: 0\n"},"realm":{"type":"string","description":"When authentication fails the plugin sends `WWW-Authenticate` header with \u003cspan pulumi-lang-nodejs=\"`realm`\" pulumi-lang-dotnet=\"`Realm`\" pulumi-lang-go=\"`realm`\" pulumi-lang-python=\"`realm`\" pulumi-lang-yaml=\"`realm`\" pulumi-lang-java=\"`realm`\"\u003e`realm`\u003c/span\u003e attribute value.\n"},"runOnPreflight":{"type":"boolean","description":"A boolean value that indicates whether the plugin should run (and try to authenticate) on OPTIONS preflight requests. If set to false, then OPTIONS requests will always be allowed. Default: true\n"},"secretIsBase64":{"type":"boolean","description":"If true, the plugin assumes the credential’s secret to be base64 encoded. You will need to create a base64-encoded secret for your Consumer, and sign your JWT with the original secret. Default: false\n"},"uriParamNames":{"type":"array","items":{"type":"string"},"description":"A list of querystring parameters that Kong will inspect to retrieve JWTs. Default: [\"jwt\"]\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["cookieNames","headerNames","keyClaimName","maximumExpiration","runOnPreflight","secretIsBase64","uriParamNames"]}}},"konnect:index/GatewayPluginJwtOrdering:GatewayPluginJwtOrdering":{"properties":{"after":{"$ref":"#/types/konnect:index%2FGatewayPluginJwtOrderingAfter:GatewayPluginJwtOrderingAfter"},"before":{"$ref":"#/types/konnect:index%2FGatewayPluginJwtOrderingBefore:GatewayPluginJwtOrderingBefore"}},"type":"object","language":{"nodejs":{"requiredOutputs":["after","before"]}}},"konnect:index/GatewayPluginJwtOrderingAfter:GatewayPluginJwtOrderingAfter":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginJwtOrderingBefore:GatewayPluginJwtOrderingBefore":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginJwtPartial:GatewayPluginJwtPartial":{"properties":{"id":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"name":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"path":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id","name","path"]}}},"konnect:index/GatewayPluginJwtRoute:GatewayPluginJwtRoute":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginJwtService:GatewayPluginJwtService":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginJwtSignerConfig:GatewayPluginJwtSignerConfig":{"properties":{"accessTokenAudienceClaims":{"type":"array","items":{"type":"string"},"description":"Specify the claim in an access token to verify against values of `config.access_token_audiences_allowed`. Default: [\"aud\"]\n"},"accessTokenAudiencesAlloweds":{"type":"array","items":{"type":"string"},"description":"The audiences allowed to be present in the access token claim specified by `config.access_token_audience_claim`.\n"},"accessTokenConsumerBies":{"type":"array","items":{"type":"string"},"description":"When the plugin tries to apply an access token to a Kong consumer mapping, it tries to find a matching Kong consumer from properties defined using this configuration parameter. The parameter can take an array of values. Valid values are \u003cspan pulumi-lang-nodejs=\"`id`\" pulumi-lang-dotnet=\"`Id`\" pulumi-lang-go=\"`id`\" pulumi-lang-python=\"`id`\" pulumi-lang-yaml=\"`id`\" pulumi-lang-java=\"`id`\"\u003e`id`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`username`\" pulumi-lang-dotnet=\"`Username`\" pulumi-lang-go=\"`username`\" pulumi-lang-python=\"`username`\" pulumi-lang-yaml=\"`username`\" pulumi-lang-java=\"`username`\"\u003e`username`\u003c/span\u003e, and \u003cspan pulumi-lang-nodejs=\"`customId`\" pulumi-lang-dotnet=\"`CustomId`\" pulumi-lang-go=\"`customId`\" pulumi-lang-python=\"`custom_id`\" pulumi-lang-yaml=\"`customId`\" pulumi-lang-java=\"`customId`\"\u003e`custom_id`\u003c/span\u003e. Default: [\u003cspan pulumi-lang-nodejs=\"\"customId\"\" pulumi-lang-dotnet=\"\"CustomId\"\" pulumi-lang-go=\"\"customId\"\" pulumi-lang-python=\"\"custom_id\"\" pulumi-lang-yaml=\"\"customId\"\" pulumi-lang-java=\"\"customId\"\"\u003e\"custom_id\"\u003c/span\u003e,\"username\"]\n"},"accessTokenConsumerClaims":{"type":"array","items":{"type":"string"},"description":"When you set a value for this parameter, the plugin tries to map an arbitrary claim specified with this configuration parameter (for example, \u003cspan pulumi-lang-nodejs=\"`sub`\" pulumi-lang-dotnet=\"`Sub`\" pulumi-lang-go=\"`sub`\" pulumi-lang-python=\"`sub`\" pulumi-lang-yaml=\"`sub`\" pulumi-lang-java=\"`sub`\"\u003e`sub`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`username`\" pulumi-lang-dotnet=\"`Username`\" pulumi-lang-go=\"`username`\" pulumi-lang-python=\"`username`\" pulumi-lang-yaml=\"`username`\" pulumi-lang-java=\"`username`\"\u003e`username`\u003c/span\u003e) in an access token to Kong consumer entity.\n"},"accessTokenEndpointsSslVerify":{"type":"boolean","description":"Whether to verify the TLS certificate if any of \u003cspan pulumi-lang-nodejs=\"`accessTokenIntrospectionEndpoint`\" pulumi-lang-dotnet=\"`AccessTokenIntrospectionEndpoint`\" pulumi-lang-go=\"`accessTokenIntrospectionEndpoint`\" pulumi-lang-python=\"`access_token_introspection_endpoint`\" pulumi-lang-yaml=\"`accessTokenIntrospectionEndpoint`\" pulumi-lang-java=\"`accessTokenIntrospectionEndpoint`\"\u003e`access_token_introspection_endpoint`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`accessTokenJwksUri`\" pulumi-lang-dotnet=\"`AccessTokenJwksUri`\" pulumi-lang-go=\"`accessTokenJwksUri`\" pulumi-lang-python=\"`access_token_jwks_uri`\" pulumi-lang-yaml=\"`accessTokenJwksUri`\" pulumi-lang-java=\"`accessTokenJwksUri`\"\u003e`access_token_jwks_uri`\u003c/span\u003e, or \u003cspan pulumi-lang-nodejs=\"`accessTokenKeyset`\" pulumi-lang-dotnet=\"`AccessTokenKeyset`\" pulumi-lang-go=\"`accessTokenKeyset`\" pulumi-lang-python=\"`access_token_keyset`\" pulumi-lang-yaml=\"`accessTokenKeyset`\" pulumi-lang-java=\"`accessTokenKeyset`\"\u003e`access_token_keyset`\u003c/span\u003e is an HTTPS URI.\n"},"accessTokenExpiryClaims":{"type":"array","items":{"type":"string"},"description":"Specify the expiry claim in an access token to verify if the default \u003cspan pulumi-lang-nodejs=\"`exp`\" pulumi-lang-dotnet=\"`Exp`\" pulumi-lang-go=\"`exp`\" pulumi-lang-python=\"`exp`\" pulumi-lang-yaml=\"`exp`\" pulumi-lang-java=\"`exp`\"\u003e`exp`\u003c/span\u003e is not used. Default: [\"exp\"]\n"},"accessTokenIntrospectionAudienceClaims":{"type":"array","items":{"type":"string"},"description":"Specify the claim in an access token introspection to verify against values of `config.access_token_introspection_audiences_allowed`. Default: [\"aud\"]\n"},"accessTokenIntrospectionAudiencesAlloweds":{"type":"array","items":{"type":"string"},"description":"The audiences allowed to be present in the access token introspection claim specified by `config.access_token_introspection_audience_claim`.\n"},"accessTokenIntrospectionAuthorization":{"type":"string","description":"If the introspection endpoint requires client authentication (client being the JWT Signer plugin), you can specify the `Authorization` header's value with this configuration parameter.\n"},"accessTokenIntrospectionBodyArgs":{"type":"string","description":"This parameter allows you to pass URL encoded request body arguments. For example: `resource=` or `a=1\u0026b=\u0026c`.\n"},"accessTokenIntrospectionConsumerBies":{"type":"array","items":{"type":"string"},"description":"When the plugin tries to do access token introspection results to Kong consumer mapping, it tries to find a matching Kong consumer from properties defined using this configuration parameter. The parameter can take an array of values. Default: [\u003cspan pulumi-lang-nodejs=\"\"customId\"\" pulumi-lang-dotnet=\"\"CustomId\"\" pulumi-lang-go=\"\"customId\"\" pulumi-lang-python=\"\"custom_id\"\" pulumi-lang-yaml=\"\"customId\"\" pulumi-lang-java=\"\"customId\"\"\u003e\"custom_id\"\u003c/span\u003e,\"username\"]\n"},"accessTokenIntrospectionConsumerClaims":{"type":"array","items":{"type":"string"},"description":"When you set a value for this parameter, the plugin tries to map an arbitrary claim specified with this configuration parameter (such as \u003cspan pulumi-lang-nodejs=\"`sub`\" pulumi-lang-dotnet=\"`Sub`\" pulumi-lang-go=\"`sub`\" pulumi-lang-python=\"`sub`\" pulumi-lang-yaml=\"`sub`\" pulumi-lang-java=\"`sub`\"\u003e`sub`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`username`\" pulumi-lang-dotnet=\"`Username`\" pulumi-lang-go=\"`username`\" pulumi-lang-python=\"`username`\" pulumi-lang-yaml=\"`username`\" pulumi-lang-java=\"`username`\"\u003e`username`\u003c/span\u003e) in access token introspection results to the Kong consumer entity.\n"},"accessTokenIntrospectionEndpoint":{"type":"string","description":"When you use \u003cspan pulumi-lang-nodejs=\"`opaque`\" pulumi-lang-dotnet=\"`Opaque`\" pulumi-lang-go=\"`opaque`\" pulumi-lang-python=\"`opaque`\" pulumi-lang-yaml=\"`opaque`\" pulumi-lang-java=\"`opaque`\"\u003e`opaque`\u003c/span\u003e access tokens and you want to turn on access token introspection, you need to specify the OAuth 2.0 introspection endpoint URI with this configuration parameter.\n"},"accessTokenIntrospectionExpiryClaims":{"type":"array","items":{"type":"string"},"description":"Specify the expiry claim in an access token introspection to verify if the default \u003cspan pulumi-lang-nodejs=\"`exp`\" pulumi-lang-dotnet=\"`Exp`\" pulumi-lang-go=\"`exp`\" pulumi-lang-python=\"`exp`\" pulumi-lang-yaml=\"`exp`\" pulumi-lang-java=\"`exp`\"\u003e`exp`\u003c/span\u003e is not used. Default: [\"exp\"]\n"},"accessTokenIntrospectionHint":{"type":"string","description":"If you need to give \u003cspan pulumi-lang-nodejs=\"`hint`\" pulumi-lang-dotnet=\"`Hint`\" pulumi-lang-go=\"`hint`\" pulumi-lang-python=\"`hint`\" pulumi-lang-yaml=\"`hint`\" pulumi-lang-java=\"`hint`\"\u003e`hint`\u003c/span\u003e parameter when introspecting an access token, use this parameter to specify the value. By default, the plugin sends `hint=access_token`. Default: \u003cspan pulumi-lang-nodejs=\"\"accessToken\"\" pulumi-lang-dotnet=\"\"AccessToken\"\" pulumi-lang-go=\"\"accessToken\"\" pulumi-lang-python=\"\"access_token\"\" pulumi-lang-yaml=\"\"accessToken\"\" pulumi-lang-java=\"\"accessToken\"\"\u003e\"access_token\"\u003c/span\u003e\n"},"accessTokenIntrospectionIssuerClaims":{"type":"array","items":{"type":"string"},"description":"Specify the claim in an access token introspection to verify against values of `config.access_token_introspection_issuers_allowed`. Default: [\"iss\"]\n"},"accessTokenIntrospectionIssuersAlloweds":{"type":"array","items":{"type":"string"},"description":"The issuers allowed to be present in the access token introspection claim specified by `config.access_token_introspection_issuer_claim`.\n"},"accessTokenIntrospectionJwtClaims":{"type":"array","items":{"type":"string"},"description":"If your introspection endpoint returns an access token in one of the keys (or claims) within the introspection results (`JSON`). If the key cannot be found, the plugin responds with `401 Unauthorized`. Also if the key is found but cannot be decoded as JWT, it also responds with `401 Unauthorized`.\n"},"accessTokenIntrospectionLeeway":{"type":"number","description":"Adjusts clock skew between the token issuer introspection results and Kong. The value will be used to time-related claim verification. For example, it will be added to introspection results (`JSON`) \u003cspan pulumi-lang-nodejs=\"`exp`\" pulumi-lang-dotnet=\"`Exp`\" pulumi-lang-go=\"`exp`\" pulumi-lang-python=\"`exp`\" pulumi-lang-yaml=\"`exp`\" pulumi-lang-java=\"`exp`\"\u003e`exp`\u003c/span\u003e claim/property before checking token expiry against Kong servers current time in seconds. You can disable access token introspection \u003cspan pulumi-lang-nodejs=\"`expiry`\" pulumi-lang-dotnet=\"`Expiry`\" pulumi-lang-go=\"`expiry`\" pulumi-lang-python=\"`expiry`\" pulumi-lang-yaml=\"`expiry`\" pulumi-lang-java=\"`expiry`\"\u003e`expiry`\u003c/span\u003e verification altogether with `config.verify_access_token_introspection_expiry`. Default: 0\n"},"accessTokenIntrospectionNotbeforeClaims":{"type":"array","items":{"type":"string"},"description":"Specify the notbefore claim in an access token introspection to verify if the default \u003cspan pulumi-lang-nodejs=\"`nbf`\" pulumi-lang-dotnet=\"`Nbf`\" pulumi-lang-go=\"`nbf`\" pulumi-lang-python=\"`nbf`\" pulumi-lang-yaml=\"`nbf`\" pulumi-lang-java=\"`nbf`\"\u003e`nbf`\u003c/span\u003e is not used. Default: [\"nbf\"]\n"},"accessTokenIntrospectionOptionalClaims":{"type":"array","items":{"type":"array","items":{"type":"string"}},"description":"Specify the optional claims of the access token introspection result. These claims are only validated when they are present. Every claim is specified by an array. If the array has multiple elements, it means the claim is inside a nested object of the payload.\n"},"accessTokenIntrospectionRequiredClaims":{"type":"array","items":{"type":"array","items":{"type":"string"}},"description":"Specify the required claims that must be present in the access token introspection result. Every claim is specified by an array. If the array has multiple elements, it means the claim is inside a nested object of the payload.\n"},"accessTokenIntrospectionScopesClaims":{"type":"array","items":{"type":"string"},"description":"Specify the claim/property in access token introspection results (`JSON`) to be verified against values of `config.access_token_introspection_scopes_required`. This supports nested claims. For example, with Keycloak you could use `[ \u003cspan pulumi-lang-nodejs=\"\"realmAccess\"\" pulumi-lang-dotnet=\"\"RealmAccess\"\" pulumi-lang-go=\"\"realmAccess\"\" pulumi-lang-python=\"\"realm_access\"\" pulumi-lang-yaml=\"\"realmAccess\"\" pulumi-lang-java=\"\"realmAccess\"\"\u003e\"realm_access\"\u003c/span\u003e, \"roles\" ]`, which can be given as `realm_access,roles` (form post). If the claim is not found in access token introspection results, and you have specified `config.access_token_introspection_scopes_required`, the plugin responds with `403 Forbidden`. Default: [\"scope\"]\n"},"accessTokenIntrospectionScopesRequireds":{"type":"array","items":{"type":"string"},"description":"Specify the required values (or scopes) that are checked by an introspection claim/property specified by `config.access_token_introspection_scopes_claim`.\n"},"accessTokenIntrospectionSubjectClaims":{"type":"array","items":{"type":"string"},"description":"Specify the claim in an access token introspection to verify against values of `config.access_token_introspection_subjects_allowed`. Default: [\"sub\"]\n"},"accessTokenIntrospectionSubjectsAlloweds":{"type":"array","items":{"type":"string"},"description":"The subjects allowed to be present in the access token introspection claim specified by `config.access_token_introspection_subject_claim`.\n"},"accessTokenIntrospectionTimeout":{"type":"number","description":"Timeout in milliseconds for an introspection request. The plugin tries to introspect twice if the first request fails for some reason. If both requests timeout, then the plugin runs two times the `config.access_token_introspection_timeout` on access token introspection.\n"},"accessTokenIssuer":{"type":"string","description":"The \u003cspan pulumi-lang-nodejs=\"`iss`\" pulumi-lang-dotnet=\"`Iss`\" pulumi-lang-go=\"`iss`\" pulumi-lang-python=\"`iss`\" pulumi-lang-yaml=\"`iss`\" pulumi-lang-java=\"`iss`\"\u003e`iss`\u003c/span\u003e claim of a signed or re-signed access token is set to this value. Original \u003cspan pulumi-lang-nodejs=\"`iss`\" pulumi-lang-dotnet=\"`Iss`\" pulumi-lang-go=\"`iss`\" pulumi-lang-python=\"`iss`\" pulumi-lang-yaml=\"`iss`\" pulumi-lang-java=\"`iss`\"\u003e`iss`\u003c/span\u003e claim of the incoming token (possibly introspected) is stored in \u003cspan pulumi-lang-nodejs=\"`originalIss`\" pulumi-lang-dotnet=\"`OriginalIss`\" pulumi-lang-go=\"`originalIss`\" pulumi-lang-python=\"`original_iss`\" pulumi-lang-yaml=\"`originalIss`\" pulumi-lang-java=\"`originalIss`\"\u003e`original_iss`\u003c/span\u003e claim of the newly signed access token. Default: \"kong\"\n"},"accessTokenIssuerClaims":{"type":"array","items":{"type":"string"},"description":"Specify the claim in an access token to verify against values of `config.access_token_issuers_allowed`. Default: [\"iss\"]\n"},"accessTokenIssuersAlloweds":{"type":"array","items":{"type":"string"},"description":"The issuers allowed to be present in the access token claim specified by `config.access_token_issuer_claim`.\n"},"accessTokenJwksUri":{"type":"string","description":"Specify the URI where the plugin can fetch the public keys (JWKS) to verify the signature of the access token.\n"},"accessTokenJwksUriClientCertificate":{"$ref":"#/types/konnect:index%2FGatewayPluginJwtSignerConfigAccessTokenJwksUriClientCertificate:GatewayPluginJwtSignerConfigAccessTokenJwksUriClientCertificate","description":"The client certificate that will be used to authenticate Kong if \u003cspan pulumi-lang-nodejs=\"`accessTokenJwksUri`\" pulumi-lang-dotnet=\"`AccessTokenJwksUri`\" pulumi-lang-go=\"`accessTokenJwksUri`\" pulumi-lang-python=\"`access_token_jwks_uri`\" pulumi-lang-yaml=\"`accessTokenJwksUri`\" pulumi-lang-java=\"`accessTokenJwksUri`\"\u003e`access_token_jwks_uri`\u003c/span\u003e is an https uri that requires mTLS Auth.\n"},"accessTokenJwksUriClientPassword":{"type":"string","description":"The client password that will be used to authenticate Kong if \u003cspan pulumi-lang-nodejs=\"`accessTokenJwksUri`\" pulumi-lang-dotnet=\"`AccessTokenJwksUri`\" pulumi-lang-go=\"`accessTokenJwksUri`\" pulumi-lang-python=\"`access_token_jwks_uri`\" pulumi-lang-yaml=\"`accessTokenJwksUri`\" pulumi-lang-java=\"`accessTokenJwksUri`\"\u003e`access_token_jwks_uri`\u003c/span\u003e is a uri that requires Basic Auth. Should be configured together with \u003cspan pulumi-lang-nodejs=\"`accessTokenJwksUriClientUsername`\" pulumi-lang-dotnet=\"`AccessTokenJwksUriClientUsername`\" pulumi-lang-go=\"`accessTokenJwksUriClientUsername`\" pulumi-lang-python=\"`access_token_jwks_uri_client_username`\" pulumi-lang-yaml=\"`accessTokenJwksUriClientUsername`\" pulumi-lang-java=\"`accessTokenJwksUriClientUsername`\"\u003e`access_token_jwks_uri_client_username`\u003c/span\u003e\n"},"accessTokenJwksUriClientUsername":{"type":"string","description":"The client username that will be used to authenticate Kong if \u003cspan pulumi-lang-nodejs=\"`accessTokenJwksUri`\" pulumi-lang-dotnet=\"`AccessTokenJwksUri`\" pulumi-lang-go=\"`accessTokenJwksUri`\" pulumi-lang-python=\"`access_token_jwks_uri`\" pulumi-lang-yaml=\"`accessTokenJwksUri`\" pulumi-lang-java=\"`accessTokenJwksUri`\"\u003e`access_token_jwks_uri`\u003c/span\u003e is a uri that requires Basic Auth. Should be configured together with \u003cspan pulumi-lang-nodejs=\"`accessTokenJwksUriClientPassword`\" pulumi-lang-dotnet=\"`AccessTokenJwksUriClientPassword`\" pulumi-lang-go=\"`accessTokenJwksUriClientPassword`\" pulumi-lang-python=\"`access_token_jwks_uri_client_password`\" pulumi-lang-yaml=\"`accessTokenJwksUriClientPassword`\" pulumi-lang-java=\"`accessTokenJwksUriClientPassword`\"\u003e`access_token_jwks_uri_client_password`\u003c/span\u003e\n"},"accessTokenJwksUriRotatePeriod":{"type":"number","description":"Specify the period (in seconds) to auto-rotate the jwks for \u003cspan pulumi-lang-nodejs=\"`accessTokenJwksUri`\" pulumi-lang-dotnet=\"`AccessTokenJwksUri`\" pulumi-lang-go=\"`accessTokenJwksUri`\" pulumi-lang-python=\"`access_token_jwks_uri`\" pulumi-lang-yaml=\"`accessTokenJwksUri`\" pulumi-lang-java=\"`accessTokenJwksUri`\"\u003e`access_token_jwks_uri`\u003c/span\u003e. The default value 0 means no auto-rotation. Default: 0\n"},"accessTokenKeyset":{"type":"string","description":"The name of the keyset containing signing keys. Default: \"kong\"\n"},"accessTokenKeysetClientCertificate":{"$ref":"#/types/konnect:index%2FGatewayPluginJwtSignerConfigAccessTokenKeysetClientCertificate:GatewayPluginJwtSignerConfigAccessTokenKeysetClientCertificate","description":"The client certificate that will be used to authenticate Kong if \u003cspan pulumi-lang-nodejs=\"`accessTokenKeyset`\" pulumi-lang-dotnet=\"`AccessTokenKeyset`\" pulumi-lang-go=\"`accessTokenKeyset`\" pulumi-lang-python=\"`access_token_keyset`\" pulumi-lang-yaml=\"`accessTokenKeyset`\" pulumi-lang-java=\"`accessTokenKeyset`\"\u003e`access_token_keyset`\u003c/span\u003e is an https uri that requires mTLS Auth.\n"},"accessTokenKeysetClientPassword":{"type":"string","description":"The client password that will be used to authenticate Kong if \u003cspan pulumi-lang-nodejs=\"`accessTokenKeyset`\" pulumi-lang-dotnet=\"`AccessTokenKeyset`\" pulumi-lang-go=\"`accessTokenKeyset`\" pulumi-lang-python=\"`access_token_keyset`\" pulumi-lang-yaml=\"`accessTokenKeyset`\" pulumi-lang-java=\"`accessTokenKeyset`\"\u003e`access_token_keyset`\u003c/span\u003e is a uri that requires Basic Auth. Should be configured together with \u003cspan pulumi-lang-nodejs=\"`accessTokenKeysetClientUsername`\" pulumi-lang-dotnet=\"`AccessTokenKeysetClientUsername`\" pulumi-lang-go=\"`accessTokenKeysetClientUsername`\" pulumi-lang-python=\"`access_token_keyset_client_username`\" pulumi-lang-yaml=\"`accessTokenKeysetClientUsername`\" pulumi-lang-java=\"`accessTokenKeysetClientUsername`\"\u003e`access_token_keyset_client_username`\u003c/span\u003e\n"},"accessTokenKeysetClientUsername":{"type":"string","description":"The client username that will be used to authenticate Kong if \u003cspan pulumi-lang-nodejs=\"`accessTokenKeyset`\" pulumi-lang-dotnet=\"`AccessTokenKeyset`\" pulumi-lang-go=\"`accessTokenKeyset`\" pulumi-lang-python=\"`access_token_keyset`\" pulumi-lang-yaml=\"`accessTokenKeyset`\" pulumi-lang-java=\"`accessTokenKeyset`\"\u003e`access_token_keyset`\u003c/span\u003e is a uri that requires Basic Auth. Should be configured together with \u003cspan pulumi-lang-nodejs=\"`accessTokenKeysetClientPassword`\" pulumi-lang-dotnet=\"`AccessTokenKeysetClientPassword`\" pulumi-lang-go=\"`accessTokenKeysetClientPassword`\" pulumi-lang-python=\"`access_token_keyset_client_password`\" pulumi-lang-yaml=\"`accessTokenKeysetClientPassword`\" pulumi-lang-java=\"`accessTokenKeysetClientPassword`\"\u003e`access_token_keyset_client_password`\u003c/span\u003e\n"},"accessTokenKeysetRotatePeriod":{"type":"number","description":"Specify the period (in seconds) to auto-rotate the jwks for \u003cspan pulumi-lang-nodejs=\"`accessTokenKeyset`\" pulumi-lang-dotnet=\"`AccessTokenKeyset`\" pulumi-lang-go=\"`accessTokenKeyset`\" pulumi-lang-python=\"`access_token_keyset`\" pulumi-lang-yaml=\"`accessTokenKeyset`\" pulumi-lang-java=\"`accessTokenKeyset`\"\u003e`access_token_keyset`\u003c/span\u003e. The default value 0 means no auto-rotation. Default: 0\n"},"accessTokenLeeway":{"type":"number","description":"Adjusts clock skew between the token issuer and Kong. The value will be used to time-related claim verification. For example, it will be added to the token's \u003cspan pulumi-lang-nodejs=\"`exp`\" pulumi-lang-dotnet=\"`Exp`\" pulumi-lang-go=\"`exp`\" pulumi-lang-python=\"`exp`\" pulumi-lang-yaml=\"`exp`\" pulumi-lang-java=\"`exp`\"\u003e`exp`\u003c/span\u003e claim before checking token expiry against Kong servers' current time in seconds. You can disable access token \u003cspan pulumi-lang-nodejs=\"`expiry`\" pulumi-lang-dotnet=\"`Expiry`\" pulumi-lang-go=\"`expiry`\" pulumi-lang-python=\"`expiry`\" pulumi-lang-yaml=\"`expiry`\" pulumi-lang-java=\"`expiry`\"\u003e`expiry`\u003c/span\u003e verification altogether with `config.verify_access_token_expiry`. Default: 0\n"},"accessTokenNotbeforeClaims":{"type":"array","items":{"type":"string"},"description":"Specify the notbefore claim in an access token to verify if the default \u003cspan pulumi-lang-nodejs=\"`nbf`\" pulumi-lang-dotnet=\"`Nbf`\" pulumi-lang-go=\"`nbf`\" pulumi-lang-python=\"`nbf`\" pulumi-lang-yaml=\"`nbf`\" pulumi-lang-java=\"`nbf`\"\u003e`nbf`\u003c/span\u003e is not used. Default: [\"nbf\"]\n"},"accessTokenOptional":{"type":"boolean","description":"If an access token is not provided or no `config.access_token_request_header` is specified, the plugin cannot verify the access token. In that case, the plugin normally responds with `401 Unauthorized` (client didn't send a token) or `500 Unexpected` (a configuration error). Use this parameter to allow the request to proceed even when there is no token to check. If the token is provided, then this parameter has no effect. Default: false\n"},"accessTokenOptionalClaims":{"type":"array","items":{"type":"array","items":{"type":"string"}},"description":"Specify the optional claims of the access token. These claims are only validated when they are present. Every claim is specified by an array. If the array has multiple elements, it means the claim is inside a nested object of the payload.\n"},"accessTokenRequestHeader":{"type":"string","description":"This parameter tells the name of the header where to look for the access token. Default: \"Authorization\"\n"},"accessTokenRequiredClaims":{"type":"array","items":{"type":"array","items":{"type":"string"}},"description":"Specify the required claims that must be present in the access token. Every claim is specified by an array. If the array has multiple elements, it means the claim is inside a nested object of the payload.\n"},"accessTokenScopesClaims":{"type":"array","items":{"type":"string"},"description":"Specify the claim in an access token to verify against values of `config.access_token_scopes_required`. Default: [\"scope\"]\n"},"accessTokenScopesRequireds":{"type":"array","items":{"type":"string"},"description":"Specify the required values (or scopes) that are checked by a claim specified by `config.access_token_scopes_claim`.\n"},"accessTokenSigning":{"type":"boolean","description":"Quickly turn access token signing or re-signing off and on as needed. If turned off, the plugin will not send the signed or resigned token to the upstream. Default: true\n"},"accessTokenSigningAlgorithm":{"type":"string","description":"When this plugin sets the upstream header as specified with `config.access_token_upstream_header`, re-signs the original access token using the private keys of the JWT Signer plugin. Specify the algorithm that is used to sign the token. The `config.access_token_issuer` specifies which \u003cspan pulumi-lang-nodejs=\"`keyset`\" pulumi-lang-dotnet=\"`Keyset`\" pulumi-lang-go=\"`keyset`\" pulumi-lang-python=\"`keyset`\" pulumi-lang-yaml=\"`keyset`\" pulumi-lang-java=\"`keyset`\"\u003e`keyset`\u003c/span\u003e is used to sign the new token issued by Kong using the specified signing algorithm. Default: \"RS256\"; must be one of [\"ES256\", \"ES384\", \"ES512\", \"EdDSA\", \"HS256\", \"HS384\", \"HS512\", \"PS256\", \"PS384\", \"PS512\", \"RS256\", \"RS512\"]\n"},"accessTokenSubjectClaims":{"type":"array","items":{"type":"string"},"description":"Specify the claim in an access token to verify against values of `config.access_token_subjects_allowed`. Default: [\"sub\"]\n"},"accessTokenSubjectsAlloweds":{"type":"array","items":{"type":"string"},"description":"The subjects allowed to be present in the access token claim specified by `config.access_token_subject_claim`.\n"},"accessTokenUpstreamHeader":{"type":"string","description":"Removes the `config.access_token_request_header` from the request after reading its value. With `config.access_token_upstream_header`, you can specify the upstream header where the plugin adds the Kong signed token. If you don't specify a value, such as use \u003cspan pulumi-lang-nodejs=\"`null`\" pulumi-lang-dotnet=\"`Null`\" pulumi-lang-go=\"`null`\" pulumi-lang-python=\"`null`\" pulumi-lang-yaml=\"`null`\" pulumi-lang-java=\"`null`\"\u003e`null`\u003c/span\u003e or `\"\"` (empty string), the plugin does not even try to sign or re-sign the token. Default: \"Authorization:Bearer\"\n"},"accessTokenUpstreamLeeway":{"type":"number","description":"If you want to add or subtract (using a negative value) expiry time (in seconds) of the original access token, you can specify a value that is added to the original access token's \u003cspan pulumi-lang-nodejs=\"`exp`\" pulumi-lang-dotnet=\"`Exp`\" pulumi-lang-go=\"`exp`\" pulumi-lang-python=\"`exp`\" pulumi-lang-yaml=\"`exp`\" pulumi-lang-java=\"`exp`\"\u003e`exp`\u003c/span\u003e claim. Default: 0\n"},"addAccessTokenClaims":{"type":"object","additionalProperties":{"type":"string"},"description":"Add customized claims if they are not present yet. Value can be a regular or JSON string; if JSON, decoded data is used as the claim's value.\n"},"addChannelTokenClaims":{"type":"object","additionalProperties":{"type":"string"},"description":"Add customized claims if they are not present yet. Value can be a regular or JSON string; if JSON, decoded data is used as the claim's value.\n"},"addClaims":{"type":"object","additionalProperties":{"type":"string"},"description":"Add customized claims to both tokens if they are not present yet. Value can be a regular or JSON string; if JSON, decoded data is used as the claim's value.\n"},"cacheAccessTokenIntrospection":{"type":"boolean","description":"Whether to cache access token introspection results. Default: true\n"},"cacheChannelTokenIntrospection":{"type":"boolean","description":"Whether to cache channel token introspection results. Default: true\n"},"channelTokenAudienceClaims":{"type":"array","items":{"type":"string"},"description":"Specify the claim in a channel token to verify against values of `config.channel_token_audiences_allowed`. Default: [\"aud\"]\n"},"channelTokenAudiencesAlloweds":{"type":"array","items":{"type":"string"},"description":"The audiences allowed to be present in the channel token claim specified by `config.channel_token_audience_claim`.\n"},"channelTokenConsumerBies":{"type":"array","items":{"type":"string"},"description":"When the plugin tries to do channel token to Kong consumer mapping, it tries to find a matching Kong consumer from properties defined using this configuration parameter. The parameter can take an array of valid values: \u003cspan pulumi-lang-nodejs=\"`id`\" pulumi-lang-dotnet=\"`Id`\" pulumi-lang-go=\"`id`\" pulumi-lang-python=\"`id`\" pulumi-lang-yaml=\"`id`\" pulumi-lang-java=\"`id`\"\u003e`id`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`username`\" pulumi-lang-dotnet=\"`Username`\" pulumi-lang-go=\"`username`\" pulumi-lang-python=\"`username`\" pulumi-lang-yaml=\"`username`\" pulumi-lang-java=\"`username`\"\u003e`username`\u003c/span\u003e, and \u003cspan pulumi-lang-nodejs=\"`customId`\" pulumi-lang-dotnet=\"`CustomId`\" pulumi-lang-go=\"`customId`\" pulumi-lang-python=\"`custom_id`\" pulumi-lang-yaml=\"`customId`\" pulumi-lang-java=\"`customId`\"\u003e`custom_id`\u003c/span\u003e. Default: [\u003cspan pulumi-lang-nodejs=\"\"customId\"\" pulumi-lang-dotnet=\"\"CustomId\"\" pulumi-lang-go=\"\"customId\"\" pulumi-lang-python=\"\"custom_id\"\" pulumi-lang-yaml=\"\"customId\"\" pulumi-lang-java=\"\"customId\"\"\u003e\"custom_id\"\u003c/span\u003e,\"username\"]\n"},"channelTokenConsumerClaims":{"type":"array","items":{"type":"string"},"description":"When you set a value for this parameter, the plugin tries to map an arbitrary claim specified with this configuration parameter. Kong consumers have an \u003cspan pulumi-lang-nodejs=\"`id`\" pulumi-lang-dotnet=\"`Id`\" pulumi-lang-go=\"`id`\" pulumi-lang-python=\"`id`\" pulumi-lang-yaml=\"`id`\" pulumi-lang-java=\"`id`\"\u003e`id`\u003c/span\u003e, a \u003cspan pulumi-lang-nodejs=\"`username`\" pulumi-lang-dotnet=\"`Username`\" pulumi-lang-go=\"`username`\" pulumi-lang-python=\"`username`\" pulumi-lang-yaml=\"`username`\" pulumi-lang-java=\"`username`\"\u003e`username`\u003c/span\u003e, and a \u003cspan pulumi-lang-nodejs=\"`customId`\" pulumi-lang-dotnet=\"`CustomId`\" pulumi-lang-go=\"`customId`\" pulumi-lang-python=\"`custom_id`\" pulumi-lang-yaml=\"`customId`\" pulumi-lang-java=\"`customId`\"\u003e`custom_id`\u003c/span\u003e. If this parameter is enabled but the mapping fails, such as when there's a non-existent Kong consumer, the plugin responds with `403 Forbidden`.\n"},"channelTokenEndpointsSslVerify":{"type":"boolean","description":"Whether to verify the TLS certificate if any of \u003cspan pulumi-lang-nodejs=\"`channelTokenIntrospectionEndpoint`\" pulumi-lang-dotnet=\"`ChannelTokenIntrospectionEndpoint`\" pulumi-lang-go=\"`channelTokenIntrospectionEndpoint`\" pulumi-lang-python=\"`channel_token_introspection_endpoint`\" pulumi-lang-yaml=\"`channelTokenIntrospectionEndpoint`\" pulumi-lang-java=\"`channelTokenIntrospectionEndpoint`\"\u003e`channel_token_introspection_endpoint`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`channelTokenJwksUri`\" pulumi-lang-dotnet=\"`ChannelTokenJwksUri`\" pulumi-lang-go=\"`channelTokenJwksUri`\" pulumi-lang-python=\"`channel_token_jwks_uri`\" pulumi-lang-yaml=\"`channelTokenJwksUri`\" pulumi-lang-java=\"`channelTokenJwksUri`\"\u003e`channel_token_jwks_uri`\u003c/span\u003e, or \u003cspan pulumi-lang-nodejs=\"`channelTokenKeyset`\" pulumi-lang-dotnet=\"`ChannelTokenKeyset`\" pulumi-lang-go=\"`channelTokenKeyset`\" pulumi-lang-python=\"`channel_token_keyset`\" pulumi-lang-yaml=\"`channelTokenKeyset`\" pulumi-lang-java=\"`channelTokenKeyset`\"\u003e`channel_token_keyset`\u003c/span\u003e is an HTTPS URI.\n"},"channelTokenExpiryClaims":{"type":"array","items":{"type":"string"},"description":"Specify the expiry claim in a channel token to verify if the default \u003cspan pulumi-lang-nodejs=\"`exp`\" pulumi-lang-dotnet=\"`Exp`\" pulumi-lang-go=\"`exp`\" pulumi-lang-python=\"`exp`\" pulumi-lang-yaml=\"`exp`\" pulumi-lang-java=\"`exp`\"\u003e`exp`\u003c/span\u003e is not used. Default: [\"exp\"]\n"},"channelTokenIntrospectionAudienceClaims":{"type":"array","items":{"type":"string"},"description":"Specify the claim in a channel token introspection to verify against values of `config.channel_token_introspection_audiences_allowed`. Default: [\"aud\"]\n"},"channelTokenIntrospectionAudiencesAlloweds":{"type":"array","items":{"type":"string"},"description":"The audiences allowed to be present in the channel token introspection claim specified by `config.channel_token_introspection_audience_claim`.\n"},"channelTokenIntrospectionAuthorization":{"type":"string","description":"When using \u003cspan pulumi-lang-nodejs=\"`opaque`\" pulumi-lang-dotnet=\"`Opaque`\" pulumi-lang-go=\"`opaque`\" pulumi-lang-python=\"`opaque`\" pulumi-lang-yaml=\"`opaque`\" pulumi-lang-java=\"`opaque`\"\u003e`opaque`\u003c/span\u003e channel tokens, and you want to turn on channel token introspection, you need to specify the OAuth 2.0 introspection endpoint URI with this configuration parameter. Otherwise the plugin will not try introspection, and instead returns `401 Unauthorized` when using opaque channel tokens.\n"},"channelTokenIntrospectionBodyArgs":{"type":"string","description":"If you need to pass additional body arguments to introspection endpoint when the plugin introspects the opaque channel token, you can use this config parameter to specify them. You should URL encode the value. For example: `resource=` or `a=1\u0026b=\u0026c`.\n"},"channelTokenIntrospectionConsumerBies":{"type":"array","items":{"type":"string"},"description":"When the plugin tries to do channel token introspection results to Kong consumer mapping, it tries to find a matching Kong consumer from properties defined using this configuration parameter. The parameter can take an array of values. Valid values are \u003cspan pulumi-lang-nodejs=\"`id`\" pulumi-lang-dotnet=\"`Id`\" pulumi-lang-go=\"`id`\" pulumi-lang-python=\"`id`\" pulumi-lang-yaml=\"`id`\" pulumi-lang-java=\"`id`\"\u003e`id`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`username`\" pulumi-lang-dotnet=\"`Username`\" pulumi-lang-go=\"`username`\" pulumi-lang-python=\"`username`\" pulumi-lang-yaml=\"`username`\" pulumi-lang-java=\"`username`\"\u003e`username`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`customId`\" pulumi-lang-dotnet=\"`CustomId`\" pulumi-lang-go=\"`customId`\" pulumi-lang-python=\"`custom_id`\" pulumi-lang-yaml=\"`customId`\" pulumi-lang-java=\"`customId`\"\u003e`custom_id`\u003c/span\u003e. Default: [\u003cspan pulumi-lang-nodejs=\"\"customId\"\" pulumi-lang-dotnet=\"\"CustomId\"\" pulumi-lang-go=\"\"customId\"\" pulumi-lang-python=\"\"custom_id\"\" pulumi-lang-yaml=\"\"customId\"\" pulumi-lang-java=\"\"customId\"\"\u003e\"custom_id\"\u003c/span\u003e,\"username\"]\n"},"channelTokenIntrospectionConsumerClaims":{"type":"array","items":{"type":"string"},"description":"When you set a value for this parameter, the plugin tries to map an arbitrary claim specified with this configuration parameter (such as \u003cspan pulumi-lang-nodejs=\"`sub`\" pulumi-lang-dotnet=\"`Sub`\" pulumi-lang-go=\"`sub`\" pulumi-lang-python=\"`sub`\" pulumi-lang-yaml=\"`sub`\" pulumi-lang-java=\"`sub`\"\u003e`sub`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`username`\" pulumi-lang-dotnet=\"`Username`\" pulumi-lang-go=\"`username`\" pulumi-lang-python=\"`username`\" pulumi-lang-yaml=\"`username`\" pulumi-lang-java=\"`username`\"\u003e`username`\u003c/span\u003e) in channel token introspection results to Kong consumer entity\n"},"channelTokenIntrospectionEndpoint":{"type":"string","description":"When you use \u003cspan pulumi-lang-nodejs=\"`opaque`\" pulumi-lang-dotnet=\"`Opaque`\" pulumi-lang-go=\"`opaque`\" pulumi-lang-python=\"`opaque`\" pulumi-lang-yaml=\"`opaque`\" pulumi-lang-java=\"`opaque`\"\u003e`opaque`\u003c/span\u003e access tokens and you want to turn on access token introspection, you need to specify the OAuth 2.0 introspection endpoint URI with this configuration parameter. Otherwise, the plugin does not try introspection and returns `401 Unauthorized` instead.\n"},"channelTokenIntrospectionExpiryClaims":{"type":"array","items":{"type":"string"},"description":"Specify the expiry claim in a channel token to verify if the default \u003cspan pulumi-lang-nodejs=\"`exp`\" pulumi-lang-dotnet=\"`Exp`\" pulumi-lang-go=\"`exp`\" pulumi-lang-python=\"`exp`\" pulumi-lang-yaml=\"`exp`\" pulumi-lang-java=\"`exp`\"\u003e`exp`\u003c/span\u003e is not used. Default: [\"exp\"]\n"},"channelTokenIntrospectionHint":{"type":"string","description":"If you need to give \u003cspan pulumi-lang-nodejs=\"`hint`\" pulumi-lang-dotnet=\"`Hint`\" pulumi-lang-go=\"`hint`\" pulumi-lang-python=\"`hint`\" pulumi-lang-yaml=\"`hint`\" pulumi-lang-java=\"`hint`\"\u003e`hint`\u003c/span\u003e parameter when introspecting a channel token, you can use this parameter to specify the value of such parameter. By default, a \u003cspan pulumi-lang-nodejs=\"`hint`\" pulumi-lang-dotnet=\"`Hint`\" pulumi-lang-go=\"`hint`\" pulumi-lang-python=\"`hint`\" pulumi-lang-yaml=\"`hint`\" pulumi-lang-java=\"`hint`\"\u003e`hint`\u003c/span\u003e isn't sent with channel token introspection.\n"},"channelTokenIntrospectionIssuerClaims":{"type":"array","items":{"type":"string"},"description":"Specify the claim in a channel token introspection to verify against values of `config.channel_token_introspection_issuers_allowed`. Default: [\"iss\"]\n"},"channelTokenIntrospectionIssuersAlloweds":{"type":"array","items":{"type":"string"},"description":"The issuers allowed to be present in the channel token introspection claim specified by `config.channel_token_introspection_issuer_claim`.\n"},"channelTokenIntrospectionJwtClaims":{"type":"array","items":{"type":"string"},"description":"If your introspection endpoint returns a channel token in one of the keys (or claims) in the introspection results (`JSON`), the plugin can use that value instead of the introspection results when doing expiry verification and signing of the new token issued by Kong.\n"},"channelTokenIntrospectionLeeway":{"type":"number","description":"You can use this parameter to adjust clock skew between the token issuer introspection results and Kong. The value will be used to time-related claim verification. For example, it will be added to introspection results (`JSON`) \u003cspan pulumi-lang-nodejs=\"`exp`\" pulumi-lang-dotnet=\"`Exp`\" pulumi-lang-go=\"`exp`\" pulumi-lang-python=\"`exp`\" pulumi-lang-yaml=\"`exp`\" pulumi-lang-java=\"`exp`\"\u003e`exp`\u003c/span\u003e claim/property before checking token expiry against Kong servers current time (in seconds). You can disable channel token introspection \u003cspan pulumi-lang-nodejs=\"`expiry`\" pulumi-lang-dotnet=\"`Expiry`\" pulumi-lang-go=\"`expiry`\" pulumi-lang-python=\"`expiry`\" pulumi-lang-yaml=\"`expiry`\" pulumi-lang-java=\"`expiry`\"\u003e`expiry`\u003c/span\u003e verification altogether with `config.verify_channel_token_introspection_expiry`. Default: 0\n"},"channelTokenIntrospectionNotbeforeClaims":{"type":"array","items":{"type":"string"},"description":"Specify the notbefore claim in a channel token to verify if the default \u003cspan pulumi-lang-nodejs=\"`nbf`\" pulumi-lang-dotnet=\"`Nbf`\" pulumi-lang-go=\"`nbf`\" pulumi-lang-python=\"`nbf`\" pulumi-lang-yaml=\"`nbf`\" pulumi-lang-java=\"`nbf`\"\u003e`nbf`\u003c/span\u003e is not used. Default: [\"nbf\"]\n"},"channelTokenIntrospectionOptionalClaims":{"type":"array","items":{"type":"array","items":{"type":"string"}},"description":"Specify the optional claims of the channel token introspection. These claims are only validated when they are present. Every claim is specified by an array. If the array has multiple elements, it means the claim is inside a nested object of the payload.\n"},"channelTokenIntrospectionRequiredClaims":{"type":"array","items":{"type":"array","items":{"type":"string"}},"description":"Specify the required claims that must be present in the channel token introspection. Every claim is specified by an array. If the array has multiple elements, it means the claim is inside a nested object of the payload.\n"},"channelTokenIntrospectionScopesClaims":{"type":"array","items":{"type":"string"},"description":"Use this parameter to specify the claim/property in channel token introspection results (`JSON`) to be verified against values of `config.channel_token_introspection_scopes_required`. This supports nested claims. Default: [\"scope\"]\n"},"channelTokenIntrospectionScopesRequireds":{"type":"array","items":{"type":"string"},"description":"Use this parameter to specify the required values (or scopes) that are checked by an introspection claim/property specified by `config.channel_token_introspection_scopes_claim`.\n"},"channelTokenIntrospectionSubjectClaims":{"type":"array","items":{"type":"string"},"description":"Specify the claim in a channel token to verify against values of `config.channel_token_introspection_subjects_allowed`. Default: [\"sub\"]\n"},"channelTokenIntrospectionSubjectsAlloweds":{"type":"array","items":{"type":"string"},"description":"The subjects allowed to be present in the channel token introspection claim specified by `config.channel_token_introspection_subject_claim`.\n"},"channelTokenIntrospectionTimeout":{"type":"number","description":"Timeout in milliseconds for an introspection request. The plugin tries to introspect twice if the first request fails for some reason. If both requests timeout, then the plugin runs two times the `config.access_token_introspection_timeout` on channel token introspection.\n"},"channelTokenIssuer":{"type":"string","description":"The \u003cspan pulumi-lang-nodejs=\"`iss`\" pulumi-lang-dotnet=\"`Iss`\" pulumi-lang-go=\"`iss`\" pulumi-lang-python=\"`iss`\" pulumi-lang-yaml=\"`iss`\" pulumi-lang-java=\"`iss`\"\u003e`iss`\u003c/span\u003e claim of the re-signed channel token is set to this value, which is \u003cspan pulumi-lang-nodejs=\"`kong`\" pulumi-lang-dotnet=\"`Kong`\" pulumi-lang-go=\"`kong`\" pulumi-lang-python=\"`kong`\" pulumi-lang-yaml=\"`kong`\" pulumi-lang-java=\"`kong`\"\u003e`kong`\u003c/span\u003e by default. The original \u003cspan pulumi-lang-nodejs=\"`iss`\" pulumi-lang-dotnet=\"`Iss`\" pulumi-lang-go=\"`iss`\" pulumi-lang-python=\"`iss`\" pulumi-lang-yaml=\"`iss`\" pulumi-lang-java=\"`iss`\"\u003e`iss`\u003c/span\u003e claim of the incoming token (possibly introspected) is stored in the \u003cspan pulumi-lang-nodejs=\"`originalIss`\" pulumi-lang-dotnet=\"`OriginalIss`\" pulumi-lang-go=\"`originalIss`\" pulumi-lang-python=\"`original_iss`\" pulumi-lang-yaml=\"`originalIss`\" pulumi-lang-java=\"`originalIss`\"\u003e`original_iss`\u003c/span\u003e claim of the newly signed channel token. Default: \"kong\"\n"},"channelTokenIssuerClaims":{"type":"array","items":{"type":"string"},"description":"Specify the claim in a channel token to verify against values of `config.channel_token_issuers_allowed`. Default: [\"iss\"]\n"},"channelTokenIssuersAlloweds":{"type":"array","items":{"type":"string"},"description":"The issuers allowed to be present in the channel token claim specified by `config.channel_token_issuer_claim`.\n"},"channelTokenJwksUri":{"type":"string","description":"If you want to use `config.verify_channel_token_signature`, you must specify the URI where the plugin can fetch the public keys (JWKS) to verify the signature of the channel token. If you don't specify a URI and you pass a JWT token to the plugin, then the plugin responds with `401 Unauthorized`.\n"},"channelTokenJwksUriClientCertificate":{"$ref":"#/types/konnect:index%2FGatewayPluginJwtSignerConfigChannelTokenJwksUriClientCertificate:GatewayPluginJwtSignerConfigChannelTokenJwksUriClientCertificate","description":"The client certificate that will be used to authenticate Kong if \u003cspan pulumi-lang-nodejs=\"`channelTokenJwksUri`\" pulumi-lang-dotnet=\"`ChannelTokenJwksUri`\" pulumi-lang-go=\"`channelTokenJwksUri`\" pulumi-lang-python=\"`channel_token_jwks_uri`\" pulumi-lang-yaml=\"`channelTokenJwksUri`\" pulumi-lang-java=\"`channelTokenJwksUri`\"\u003e`channel_token_jwks_uri`\u003c/span\u003e is an https uri that requires mTLS Auth.\n"},"channelTokenJwksUriClientPassword":{"type":"string","description":"The client password that will be used to authenticate Kong if \u003cspan pulumi-lang-nodejs=\"`channelTokenJwksUri`\" pulumi-lang-dotnet=\"`ChannelTokenJwksUri`\" pulumi-lang-go=\"`channelTokenJwksUri`\" pulumi-lang-python=\"`channel_token_jwks_uri`\" pulumi-lang-yaml=\"`channelTokenJwksUri`\" pulumi-lang-java=\"`channelTokenJwksUri`\"\u003e`channel_token_jwks_uri`\u003c/span\u003e is a uri that requires Basic Auth. Should be configured together with \u003cspan pulumi-lang-nodejs=\"`channelTokenJwksUriClientUsername`\" pulumi-lang-dotnet=\"`ChannelTokenJwksUriClientUsername`\" pulumi-lang-go=\"`channelTokenJwksUriClientUsername`\" pulumi-lang-python=\"`channel_token_jwks_uri_client_username`\" pulumi-lang-yaml=\"`channelTokenJwksUriClientUsername`\" pulumi-lang-java=\"`channelTokenJwksUriClientUsername`\"\u003e`channel_token_jwks_uri_client_username`\u003c/span\u003e\n"},"channelTokenJwksUriClientUsername":{"type":"string","description":"The client username that will be used to authenticate Kong if \u003cspan pulumi-lang-nodejs=\"`channelTokenJwksUri`\" pulumi-lang-dotnet=\"`ChannelTokenJwksUri`\" pulumi-lang-go=\"`channelTokenJwksUri`\" pulumi-lang-python=\"`channel_token_jwks_uri`\" pulumi-lang-yaml=\"`channelTokenJwksUri`\" pulumi-lang-java=\"`channelTokenJwksUri`\"\u003e`channel_token_jwks_uri`\u003c/span\u003e is a uri that requires Basic Auth. Should be configured together with \u003cspan pulumi-lang-nodejs=\"`channelTokenJwksUriClientPassword`\" pulumi-lang-dotnet=\"`ChannelTokenJwksUriClientPassword`\" pulumi-lang-go=\"`channelTokenJwksUriClientPassword`\" pulumi-lang-python=\"`channel_token_jwks_uri_client_password`\" pulumi-lang-yaml=\"`channelTokenJwksUriClientPassword`\" pulumi-lang-java=\"`channelTokenJwksUriClientPassword`\"\u003e`channel_token_jwks_uri_client_password`\u003c/span\u003e\n"},"channelTokenJwksUriRotatePeriod":{"type":"number","description":"Specify the period (in seconds) to auto-rotate the jwks for \u003cspan pulumi-lang-nodejs=\"`channelTokenJwksUri`\" pulumi-lang-dotnet=\"`ChannelTokenJwksUri`\" pulumi-lang-go=\"`channelTokenJwksUri`\" pulumi-lang-python=\"`channel_token_jwks_uri`\" pulumi-lang-yaml=\"`channelTokenJwksUri`\" pulumi-lang-java=\"`channelTokenJwksUri`\"\u003e`channel_token_jwks_uri`\u003c/span\u003e. The default value 0 means no auto-rotation. Default: 0\n"},"channelTokenKeyset":{"type":"string","description":"The name of the keyset containing signing keys. Default: \"kong\"\n"},"channelTokenKeysetClientCertificate":{"$ref":"#/types/konnect:index%2FGatewayPluginJwtSignerConfigChannelTokenKeysetClientCertificate:GatewayPluginJwtSignerConfigChannelTokenKeysetClientCertificate","description":"The client certificate that will be used to authenticate Kong if \u003cspan pulumi-lang-nodejs=\"`channelTokenKeyset`\" pulumi-lang-dotnet=\"`ChannelTokenKeyset`\" pulumi-lang-go=\"`channelTokenKeyset`\" pulumi-lang-python=\"`channel_token_keyset`\" pulumi-lang-yaml=\"`channelTokenKeyset`\" pulumi-lang-java=\"`channelTokenKeyset`\"\u003e`channel_token_keyset`\u003c/span\u003e is an https uri that requires mTLS Auth.\n"},"channelTokenKeysetClientPassword":{"type":"string","description":"The client password that will be used to authenticate Kong if \u003cspan pulumi-lang-nodejs=\"`channelTokenKeyset`\" pulumi-lang-dotnet=\"`ChannelTokenKeyset`\" pulumi-lang-go=\"`channelTokenKeyset`\" pulumi-lang-python=\"`channel_token_keyset`\" pulumi-lang-yaml=\"`channelTokenKeyset`\" pulumi-lang-java=\"`channelTokenKeyset`\"\u003e`channel_token_keyset`\u003c/span\u003e is a uri that requires Basic Auth. Should be configured together with \u003cspan pulumi-lang-nodejs=\"`channelTokenKeysetClientUsername`\" pulumi-lang-dotnet=\"`ChannelTokenKeysetClientUsername`\" pulumi-lang-go=\"`channelTokenKeysetClientUsername`\" pulumi-lang-python=\"`channel_token_keyset_client_username`\" pulumi-lang-yaml=\"`channelTokenKeysetClientUsername`\" pulumi-lang-java=\"`channelTokenKeysetClientUsername`\"\u003e`channel_token_keyset_client_username`\u003c/span\u003e\n"},"channelTokenKeysetClientUsername":{"type":"string","description":"The client username that will be used to authenticate Kong if \u003cspan pulumi-lang-nodejs=\"`channelTokenKeyset`\" pulumi-lang-dotnet=\"`ChannelTokenKeyset`\" pulumi-lang-go=\"`channelTokenKeyset`\" pulumi-lang-python=\"`channel_token_keyset`\" pulumi-lang-yaml=\"`channelTokenKeyset`\" pulumi-lang-java=\"`channelTokenKeyset`\"\u003e`channel_token_keyset`\u003c/span\u003e is a uri that requires Basic Auth. Should be configured together with \u003cspan pulumi-lang-nodejs=\"`channelTokenKeysetClientPassword`\" pulumi-lang-dotnet=\"`ChannelTokenKeysetClientPassword`\" pulumi-lang-go=\"`channelTokenKeysetClientPassword`\" pulumi-lang-python=\"`channel_token_keyset_client_password`\" pulumi-lang-yaml=\"`channelTokenKeysetClientPassword`\" pulumi-lang-java=\"`channelTokenKeysetClientPassword`\"\u003e`channel_token_keyset_client_password`\u003c/span\u003e\n"},"channelTokenKeysetRotatePeriod":{"type":"number","description":"Specify the period (in seconds) to auto-rotate the jwks for \u003cspan pulumi-lang-nodejs=\"`channelTokenKeyset`\" pulumi-lang-dotnet=\"`ChannelTokenKeyset`\" pulumi-lang-go=\"`channelTokenKeyset`\" pulumi-lang-python=\"`channel_token_keyset`\" pulumi-lang-yaml=\"`channelTokenKeyset`\" pulumi-lang-java=\"`channelTokenKeyset`\"\u003e`channel_token_keyset`\u003c/span\u003e. The default value 0 means no auto-rotation. Default: 0\n"},"channelTokenLeeway":{"type":"number","description":"Adjusts clock skew between the token issuer and Kong. The value will be used to time-related claim verification. For example, it will be added to token's \u003cspan pulumi-lang-nodejs=\"`exp`\" pulumi-lang-dotnet=\"`Exp`\" pulumi-lang-go=\"`exp`\" pulumi-lang-python=\"`exp`\" pulumi-lang-yaml=\"`exp`\" pulumi-lang-java=\"`exp`\"\u003e`exp`\u003c/span\u003e claim before checking token expiry against Kong servers current time in seconds. You can disable channel token \u003cspan pulumi-lang-nodejs=\"`expiry`\" pulumi-lang-dotnet=\"`Expiry`\" pulumi-lang-go=\"`expiry`\" pulumi-lang-python=\"`expiry`\" pulumi-lang-yaml=\"`expiry`\" pulumi-lang-java=\"`expiry`\"\u003e`expiry`\u003c/span\u003e verification altogether with `config.verify_channel_token_expiry`. Default: 0\n"},"channelTokenNotbeforeClaims":{"type":"array","items":{"type":"string"},"description":"Specify the notbefore claim in a channel token to verify if the default \u003cspan pulumi-lang-nodejs=\"`nbf`\" pulumi-lang-dotnet=\"`Nbf`\" pulumi-lang-go=\"`nbf`\" pulumi-lang-python=\"`nbf`\" pulumi-lang-yaml=\"`nbf`\" pulumi-lang-java=\"`nbf`\"\u003e`nbf`\u003c/span\u003e is not used. Default: [\"nbf\"]\n"},"channelTokenOptional":{"type":"boolean","description":"If a channel token is not provided or no `config.channel_token_request_header` is specified, the plugin cannot verify the channel token. In that case, the plugin normally responds with `401 Unauthorized` (client didn't send a token) or `500 Unexpected` (a configuration error). Enable this parameter to allow the request to proceed even when there is no channel token to check. If the channel token is provided, then this parameter has no effect. Default: false\n"},"channelTokenOptionalClaims":{"type":"array","items":{"type":"array","items":{"type":"string"}},"description":"Specify the optional claims of the channel token. These claims are only validated when they are present. Every claim is specified by an array. If the array has multiple elements, it means the claim is inside a nested object of the payload.\n"},"channelTokenRequestHeader":{"type":"string","description":"This parameter tells the name of the header where to look for the channel token. If you don't want to do anything with the channel token, then you can set this to \u003cspan pulumi-lang-nodejs=\"`null`\" pulumi-lang-dotnet=\"`Null`\" pulumi-lang-go=\"`null`\" pulumi-lang-python=\"`null`\" pulumi-lang-yaml=\"`null`\" pulumi-lang-java=\"`null`\"\u003e`null`\u003c/span\u003e or `\"\"` (empty string).\n"},"channelTokenRequiredClaims":{"type":"array","items":{"type":"array","items":{"type":"string"}},"description":"Specify the required claims that must be present in the channel token. Every claim is specified by an array. If the array has multiple elements, it means the claim is inside a nested object of the payload.\n"},"channelTokenScopesClaims":{"type":"array","items":{"type":"string"},"description":"Specify the claim in a channel token to verify against values of `config.channel_token_scopes_required`. This supports nested claims. Default: [\"scope\"]\n"},"channelTokenScopesRequireds":{"type":"array","items":{"type":"string"},"description":"Specify the required values (or scopes) that are checked by a claim specified by `config.channel_token_scopes_claim`.\n"},"channelTokenSigning":{"type":"boolean","description":"Quickly turn channel token signing or re-signing off and on as needed. If turned off, the plugin will not send the signed or resigned token to the upstream. Default: true\n"},"channelTokenSigningAlgorithm":{"type":"string","description":"When this plugin sets the upstream header as specified with `config.channel_token_upstream_header`, it also re-signs the original channel token using private keys of this plugin. Specify the algorithm that is used to sign the token. Default: \"RS256\"; must be one of [\"ES256\", \"ES384\", \"ES512\", \"EdDSA\", \"HS256\", \"HS384\", \"HS512\", \"PS256\", \"PS384\", \"PS512\", \"RS256\", \"RS512\"]\n"},"channelTokenSubjectClaims":{"type":"array","items":{"type":"string"},"description":"Specify the claim in a channel token to verify against values of `config.channel_token_subjects_allowed`. Default: [\"sub\"]\n"},"channelTokenSubjectsAlloweds":{"type":"array","items":{"type":"string"},"description":"The subjects allowed to be present in the channel token claim specified by `config.channel_token_subject_claim`.\n"},"channelTokenUpstreamHeader":{"type":"string","description":"This plugin removes the `config.channel_token_request_header` from the request after reading its value.\n"},"channelTokenUpstreamLeeway":{"type":"number","description":"If you want to add or perhaps subtract (using negative value) expiry time of the original channel token, you can specify a value that is added to the original channel token's \u003cspan pulumi-lang-nodejs=\"`exp`\" pulumi-lang-dotnet=\"`Exp`\" pulumi-lang-go=\"`exp`\" pulumi-lang-python=\"`exp`\" pulumi-lang-yaml=\"`exp`\" pulumi-lang-java=\"`exp`\"\u003e`exp`\u003c/span\u003e claim. Default: 0\n"},"enableAccessTokenIntrospection":{"type":"boolean","description":"If you don't want to support opaque access tokens, change this configuration parameter to \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e to disable introspection. Default: true\n"},"enableChannelTokenIntrospection":{"type":"boolean","description":"If you don't want to support opaque channel tokens, disable introspection by changing this configuration parameter to \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e. Default: true\n"},"enableHsSignatures":{"type":"boolean","description":"Tokens signed with HMAC algorithms such as `HS256`, `HS384`, or `HS512` are not accepted by default. If you need to accept such tokens for verification, enable this setting. Default: false\n"},"enableInstrumentation":{"type":"boolean","description":"Writes log entries with some added information using `ngx.CRIT` (CRITICAL) level. Default: false\n"},"originalAccessTokenUpstreamHeader":{"type":"string","description":"The HTTP header name used to store the original access token.\n"},"originalChannelTokenUpstreamHeader":{"type":"string","description":"The HTTP header name used to store the original channel token.\n"},"realm":{"type":"string","description":"When authentication or authorization fails, or there is an unexpected error, the plugin sends a `WWW-Authenticate` header with the \u003cspan pulumi-lang-nodejs=\"`realm`\" pulumi-lang-dotnet=\"`Realm`\" pulumi-lang-go=\"`realm`\" pulumi-lang-python=\"`realm`\" pulumi-lang-yaml=\"`realm`\" pulumi-lang-java=\"`realm`\"\u003e`realm`\u003c/span\u003e attribute value.\n"},"removeAccessTokenClaims":{"type":"array","items":{"type":"string"},"description":"remove claims. It should be an array, and each element is a claim key string. Default: []\n"},"removeChannelTokenClaims":{"type":"array","items":{"type":"string"},"description":"remove claims. It should be an array, and each element is a claim key string. Default: []\n"},"setAccessTokenClaims":{"type":"object","additionalProperties":{"type":"string"},"description":"Set customized claims. If a claim is already present, it will be overwritten. Value can be a regular or JSON string; if JSON, decoded data is used as the claim's value.\n"},"setChannelTokenClaims":{"type":"object","additionalProperties":{"type":"string"},"description":"Set customized claims. If a claim is already present, it will be overwritten. Value can be a regular or JSON string; if JSON, decoded data is used as the claim's value.\n"},"setClaims":{"type":"object","additionalProperties":{"type":"string"},"description":"Set customized claims to both tokens. If a claim is already present, it will be overwritten. Value can be a regular or JSON string; if JSON, decoded data is used as the claim's value.\n"},"trustAccessTokenIntrospection":{"type":"boolean","description":"Use this parameter to enable and disable further checks on a payload before the new token is signed. If you set this to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, the expiry or scopes are not checked on a payload. Default: true\n"},"trustChannelTokenIntrospection":{"type":"boolean","description":"Providing an opaque channel token for plugin introspection, and verifying expiry and scopes on introspection results may make further payload checks unnecessary before the plugin signs a new token. This also applies when using a JWT token with introspection JSON as per config.channel*token*introspection*jwt*claim. Use this parameter to manage additional payload checks before signing a new token. With true (default), payload's expiry or scopes aren't checked. Default: true\n"},"verifyAccessTokenAudience":{"type":"boolean","description":"Quickly turn off and on the access token required audiences verification, specified with `config.access_token_audiences_required`. Default: true\n"},"verifyAccessTokenExpiry":{"type":"boolean","description":"Quickly turn access token expiry verification off and on as needed. Default: true\n"},"verifyAccessTokenIntrospectionAudience":{"type":"boolean","description":"Quickly turn off and on the access token introspection required audiences verification, specified with `config.access_token_introspection_audiences_required`. Default: true\n"},"verifyAccessTokenIntrospectionExpiry":{"type":"boolean","description":"Quickly turn access token introspection expiry verification off and on as needed. Default: true\n"},"verifyAccessTokenIntrospectionIssuer":{"type":"boolean","description":"Quickly turn off and on the access token introspection allowed issuers verification, specified with `config.access_token_introspection_issuers_allowed`. Default: true\n"},"verifyAccessTokenIntrospectionNotbefore":{"type":"boolean","description":"Quickly turn off and on the access token introspection notbefore verification. Default: false\n"},"verifyAccessTokenIntrospectionScopes":{"type":"boolean","description":"Quickly turn off and on the access token introspection scopes verification, specified with `config.access_token_introspection_scopes_required`. Default: true\n"},"verifyAccessTokenIntrospectionSubject":{"type":"boolean","description":"Quickly turn off and on the access token introspection required subjects verification, specified with `config.access_token_introspection_subjects_required`. Default: true\n"},"verifyAccessTokenIssuer":{"type":"boolean","description":"Quickly turn off and on the access token allowed issuers verification, specified with `config.access_token_issuers_allowed`. Default: true\n"},"verifyAccessTokenNotbefore":{"type":"boolean","description":"Quickly turn off and on the access token notbefore verification. Default: false\n"},"verifyAccessTokenScopes":{"type":"boolean","description":"Quickly turn off and on the access token required scopes verification, specified with `config.access_token_scopes_required`. Default: true\n"},"verifyAccessTokenSignature":{"type":"boolean","description":"Quickly turn access token signature verification off and on as needed. Default: true\n"},"verifyAccessTokenSubject":{"type":"boolean","description":"Quickly turn off and on the access token required subjects verification, specified with `config.access_token_subjects_required`. Default: true\n"},"verifyChannelTokenAudience":{"type":"boolean","description":"Quickly turn off and on the channel token required audiences verification, specified with `config.channel_token_audiences_required`. Default: true\n"},"verifyChannelTokenExpiry":{"type":"boolean","description":"Default: true\n"},"verifyChannelTokenIntrospectionAudience":{"type":"boolean","description":"Quickly turn off and on the channel token introspection required audiences verification, specified with `config.channel_token_introspection_audiences_required`. Default: true\n"},"verifyChannelTokenIntrospectionExpiry":{"type":"boolean","description":"Quickly turn on/off the channel token introspection expiry verification. Default: true\n"},"verifyChannelTokenIntrospectionIssuer":{"type":"boolean","description":"Quickly turn off and on the channel token introspection allowed issuers verification, specified with `config.channel_token_introspection_issuers_allowed`. Default: true\n"},"verifyChannelTokenIntrospectionNotbefore":{"type":"boolean","description":"Quickly turn off and on the channel token introspection notbefore verification. Default: false\n"},"verifyChannelTokenIntrospectionScopes":{"type":"boolean","description":"Quickly turn on/off the channel token introspection scopes verification specified with `config.channel_token_introspection_scopes_required`. Default: true\n"},"verifyChannelTokenIntrospectionSubject":{"type":"boolean","description":"Quickly turn off and on the channel token introspection required subjects verification, specified with `config.channel_token_introspection_subjects_required`. Default: true\n"},"verifyChannelTokenIssuer":{"type":"boolean","description":"Quickly turn off and on the channel token allowed issuers verification, specified with `config.channel_token_issuers_allowed`. Default: true\n"},"verifyChannelTokenNotbefore":{"type":"boolean","description":"Quickly turn off and on the channel token notbefore verification. Default: false\n"},"verifyChannelTokenScopes":{"type":"boolean","description":"Quickly turn on/off the channel token required scopes verification specified with `config.channel_token_scopes_required`. Default: true\n"},"verifyChannelTokenSignature":{"type":"boolean","description":"Quickly turn on/off the channel token signature verification. Default: true\n"},"verifyChannelTokenSubject":{"type":"boolean","description":"Quickly turn off and on the channel token required subjects verification, specified with `config.channel_token_subjects_required`. Default: true\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["accessTokenAudienceClaims","accessTokenConsumerBies","accessTokenExpiryClaims","accessTokenIntrospectionAudienceClaims","accessTokenIntrospectionConsumerBies","accessTokenIntrospectionExpiryClaims","accessTokenIntrospectionHint","accessTokenIntrospectionIssuerClaims","accessTokenIntrospectionLeeway","accessTokenIntrospectionNotbeforeClaims","accessTokenIntrospectionScopesClaims","accessTokenIntrospectionSubjectClaims","accessTokenIssuer","accessTokenIssuerClaims","accessTokenJwksUriClientCertificate","accessTokenJwksUriRotatePeriod","accessTokenKeyset","accessTokenKeysetClientCertificate","accessTokenKeysetRotatePeriod","accessTokenLeeway","accessTokenNotbeforeClaims","accessTokenOptional","accessTokenRequestHeader","accessTokenScopesClaims","accessTokenSigning","accessTokenSigningAlgorithm","accessTokenSubjectClaims","accessTokenUpstreamHeader","accessTokenUpstreamLeeway","addAccessTokenClaims","addChannelTokenClaims","addClaims","cacheAccessTokenIntrospection","cacheChannelTokenIntrospection","channelTokenAudienceClaims","channelTokenConsumerBies","channelTokenExpiryClaims","channelTokenIntrospectionAudienceClaims","channelTokenIntrospectionConsumerBies","channelTokenIntrospectionExpiryClaims","channelTokenIntrospectionIssuerClaims","channelTokenIntrospectionLeeway","channelTokenIntrospectionNotbeforeClaims","channelTokenIntrospectionScopesClaims","channelTokenIntrospectionSubjectClaims","channelTokenIssuer","channelTokenIssuerClaims","channelTokenJwksUriClientCertificate","channelTokenJwksUriRotatePeriod","channelTokenKeyset","channelTokenKeysetClientCertificate","channelTokenKeysetRotatePeriod","channelTokenLeeway","channelTokenNotbeforeClaims","channelTokenOptional","channelTokenScopesClaims","channelTokenSigning","channelTokenSigningAlgorithm","channelTokenSubjectClaims","channelTokenUpstreamLeeway","enableAccessTokenIntrospection","enableChannelTokenIntrospection","enableHsSignatures","enableInstrumentation","removeAccessTokenClaims","removeChannelTokenClaims","setAccessTokenClaims","setChannelTokenClaims","setClaims","trustAccessTokenIntrospection","trustChannelTokenIntrospection","verifyAccessTokenAudience","verifyAccessTokenExpiry","verifyAccessTokenIntrospectionAudience","verifyAccessTokenIntrospectionExpiry","verifyAccessTokenIntrospectionIssuer","verifyAccessTokenIntrospectionNotbefore","verifyAccessTokenIntrospectionScopes","verifyAccessTokenIntrospectionSubject","verifyAccessTokenIssuer","verifyAccessTokenNotbefore","verifyAccessTokenScopes","verifyAccessTokenSignature","verifyAccessTokenSubject","verifyChannelTokenAudience","verifyChannelTokenExpiry","verifyChannelTokenIntrospectionAudience","verifyChannelTokenIntrospectionExpiry","verifyChannelTokenIntrospectionIssuer","verifyChannelTokenIntrospectionNotbefore","verifyChannelTokenIntrospectionScopes","verifyChannelTokenIntrospectionSubject","verifyChannelTokenIssuer","verifyChannelTokenNotbefore","verifyChannelTokenScopes","verifyChannelTokenSignature","verifyChannelTokenSubject"]}}},"konnect:index/GatewayPluginJwtSignerConfigAccessTokenJwksUriClientCertificate:GatewayPluginJwtSignerConfigAccessTokenJwksUriClientCertificate":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginJwtSignerConfigAccessTokenKeysetClientCertificate:GatewayPluginJwtSignerConfigAccessTokenKeysetClientCertificate":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginJwtSignerConfigChannelTokenJwksUriClientCertificate:GatewayPluginJwtSignerConfigChannelTokenJwksUriClientCertificate":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginJwtSignerConfigChannelTokenKeysetClientCertificate:GatewayPluginJwtSignerConfigChannelTokenKeysetClientCertificate":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginJwtSignerOrdering:GatewayPluginJwtSignerOrdering":{"properties":{"after":{"$ref":"#/types/konnect:index%2FGatewayPluginJwtSignerOrderingAfter:GatewayPluginJwtSignerOrderingAfter"},"before":{"$ref":"#/types/konnect:index%2FGatewayPluginJwtSignerOrderingBefore:GatewayPluginJwtSignerOrderingBefore"}},"type":"object","language":{"nodejs":{"requiredOutputs":["after","before"]}}},"konnect:index/GatewayPluginJwtSignerOrderingAfter:GatewayPluginJwtSignerOrderingAfter":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginJwtSignerOrderingBefore:GatewayPluginJwtSignerOrderingBefore":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginJwtSignerPartial:GatewayPluginJwtSignerPartial":{"properties":{"id":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"name":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"path":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id","name","path"]}}},"konnect:index/GatewayPluginJwtSignerRoute:GatewayPluginJwtSignerRoute":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginJwtSignerService:GatewayPluginJwtSignerService":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginKafkaConsumeConfig:GatewayPluginKafkaConsumeConfig":{"properties":{"authentication":{"$ref":"#/types/konnect:index%2FGatewayPluginKafkaConsumeConfigAuthentication:GatewayPluginKafkaConsumeConfigAuthentication"},"autoOffsetReset":{"type":"string","description":"The offset to start from when there is no initial offset in the consumer group. Default: \"latest\"; must be one of [\"earliest\", \"latest\"]\n"},"bootstrapServers":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginKafkaConsumeConfigBootstrapServer:GatewayPluginKafkaConsumeConfigBootstrapServer"},"description":"Set of bootstrap brokers in a `{host: host, port: port}` list format.\n"},"clusterName":{"type":"string","description":"An identifier for the Kafka cluster.\n"},"commitStrategy":{"type":"string","description":"The strategy to use for committing offsets. Default: \"auto\"; must be one of [\"auto\", \"off\"]\n"},"dlqTopic":{"type":"string","description":"The topic to use for the Dead Letter Queue.\n"},"enableDlq":{"type":"boolean","description":"Enables Dead Letter Queue. When enabled, if the message doesn't conform to the schema (from Schema Registry) or there's an error in the \u003cspan pulumi-lang-nodejs=\"`messageByLuaFunctions`\" pulumi-lang-dotnet=\"`MessageByLuaFunctions`\" pulumi-lang-go=\"`messageByLuaFunctions`\" pulumi-lang-python=\"`message_by_lua_functions`\" pulumi-lang-yaml=\"`messageByLuaFunctions`\" pulumi-lang-java=\"`messageByLuaFunctions`\"\u003e`message_by_lua_functions`\u003c/span\u003e, it will be forwarded to \u003cspan pulumi-lang-nodejs=\"`dlqTopic`\" pulumi-lang-dotnet=\"`DlqTopic`\" pulumi-lang-go=\"`dlqTopic`\" pulumi-lang-python=\"`dlq_topic`\" pulumi-lang-yaml=\"`dlqTopic`\" pulumi-lang-java=\"`dlqTopic`\"\u003e`dlq_topic`\u003c/span\u003e that can be processed later.\n"},"enforceLatestOffsetReset":{"type":"boolean","description":"When true, 'latest' offset reset behaves correctly (starts from end). When false (default), maintains backwards compatibility where 'latest' acts like 'earliest'. Default: false\n"},"messageByLuaFunctions":{"type":"array","items":{"type":"string"},"description":"The Lua functions that manipulates the message being sent to the client.\n"},"messageDeserializer":{"type":"string","description":"The deserializer to use for the consumed messages. Default: \"noop\"; must be one of [\"json\", \"noop\"]\n"},"mode":{"type":"string","description":"The mode of operation for the plugin. Default: \"http-get\"; must be one of [\"http-get\", \"server-sent-events\", \"websocket\"]\n"},"schemaRegistry":{"$ref":"#/types/konnect:index%2FGatewayPluginKafkaConsumeConfigSchemaRegistry:GatewayPluginKafkaConsumeConfigSchemaRegistry","description":"The plugin-global schema registry configuration.\n"},"security":{"$ref":"#/types/konnect:index%2FGatewayPluginKafkaConsumeConfigSecurity:GatewayPluginKafkaConsumeConfigSecurity"},"topics":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginKafkaConsumeConfigTopic:GatewayPluginKafkaConsumeConfigTopic"},"description":"The Kafka topics and their configuration you want to consume from.\n"}},"type":"object","required":["bootstrapServers","topics"],"language":{"nodejs":{"requiredOutputs":["authentication","autoOffsetReset","bootstrapServers","commitStrategy","enforceLatestOffsetReset","messageDeserializer","mode","schemaRegistry","security","topics"]}}},"konnect:index/GatewayPluginKafkaConsumeConfigAuthentication:GatewayPluginKafkaConsumeConfigAuthentication":{"properties":{"mechanism":{"type":"string","description":"The SASL authentication mechanism.  Supported options: `PLAIN` or `SCRAM-SHA-256`. must be one of [\"PLAIN\", \"SCRAM-SHA-256\", \"SCRAM-SHA-512\"]\n"},"password":{"type":"string","description":"Password for SASL authentication.\n"},"strategy":{"type":"string","description":"The authentication strategy for the plugin, the only option for the value is \u003cspan pulumi-lang-nodejs=\"`sasl`\" pulumi-lang-dotnet=\"`Sasl`\" pulumi-lang-go=\"`sasl`\" pulumi-lang-python=\"`sasl`\" pulumi-lang-yaml=\"`sasl`\" pulumi-lang-java=\"`sasl`\"\u003e`sasl`\u003c/span\u003e. must be \"sasl\"\n"},"tokenauth":{"type":"boolean","description":"Enable this to indicate `DelegationToken` authentication\n"},"user":{"type":"string","description":"Username for SASL authentication.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["mechanism","strategy"]}}},"konnect:index/GatewayPluginKafkaConsumeConfigBootstrapServer:GatewayPluginKafkaConsumeConfigBootstrapServer":{"properties":{"host":{"type":"string","description":"A string representing a host name, such as example.com. Not Null\n"},"port":{"type":"number","description":"An integer representing a port number between 0 and 65535, inclusive. Not Null\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["host","port"]}}},"konnect:index/GatewayPluginKafkaConsumeConfigSchemaRegistry:GatewayPluginKafkaConsumeConfigSchemaRegistry":{"properties":{"confluent":{"$ref":"#/types/konnect:index%2FGatewayPluginKafkaConsumeConfigSchemaRegistryConfluent:GatewayPluginKafkaConsumeConfigSchemaRegistryConfluent"}},"type":"object","language":{"nodejs":{"requiredOutputs":["confluent"]}}},"konnect:index/GatewayPluginKafkaConsumeConfigSchemaRegistryConfluent:GatewayPluginKafkaConsumeConfigSchemaRegistryConfluent":{"properties":{"authentication":{"$ref":"#/types/konnect:index%2FGatewayPluginKafkaConsumeConfigSchemaRegistryConfluentAuthentication:GatewayPluginKafkaConsumeConfigSchemaRegistryConfluentAuthentication"},"sslVerify":{"type":"boolean","description":"Set to false to disable SSL certificate verification when connecting to the schema registry. Default: true\n"},"ttl":{"type":"number","description":"The TTL in seconds for the schema registry cache.\n"},"url":{"type":"string","description":"The URL of the schema registry.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["authentication","sslVerify"]}}},"konnect:index/GatewayPluginKafkaConsumeConfigSchemaRegistryConfluentAuthentication:GatewayPluginKafkaConsumeConfigSchemaRegistryConfluentAuthentication":{"properties":{"basic":{"$ref":"#/types/konnect:index%2FGatewayPluginKafkaConsumeConfigSchemaRegistryConfluentAuthenticationBasic:GatewayPluginKafkaConsumeConfigSchemaRegistryConfluentAuthenticationBasic"},"mode":{"type":"string","description":"Authentication mode to use with the schema registry. Default: \"none\"; must be one of [\"basic\", \"none\", \"oauth2\"]\n"},"oauth2":{"$ref":"#/types/konnect:index%2FGatewayPluginKafkaConsumeConfigSchemaRegistryConfluentAuthenticationOauth2:GatewayPluginKafkaConsumeConfigSchemaRegistryConfluentAuthenticationOauth2"},"oauth2Client":{"$ref":"#/types/konnect:index%2FGatewayPluginKafkaConsumeConfigSchemaRegistryConfluentAuthenticationOauth2Client:GatewayPluginKafkaConsumeConfigSchemaRegistryConfluentAuthenticationOauth2Client"}},"type":"object","language":{"nodejs":{"requiredOutputs":["basic","mode","oauth2","oauth2Client"]}}},"konnect:index/GatewayPluginKafkaConsumeConfigSchemaRegistryConfluentAuthenticationBasic:GatewayPluginKafkaConsumeConfigSchemaRegistryConfluentAuthenticationBasic":{"properties":{"password":{"type":"string","description":"Not Null\n"},"username":{"type":"string","description":"Not Null\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["password","username"]}}},"konnect:index/GatewayPluginKafkaConsumeConfigSchemaRegistryConfluentAuthenticationOauth2:GatewayPluginKafkaConsumeConfigSchemaRegistryConfluentAuthenticationOauth2":{"properties":{"audiences":{"type":"array","items":{"type":"string"},"description":"List of audiences passed to the IdP when obtaining a new token. Default: []\n"},"clientId":{"type":"string","description":"The client ID for the application registration in the IdP.\n"},"clientSecret":{"type":"string","description":"The client secret for the application registration in the IdP.\n"},"grantType":{"type":"string","description":"The OAuth grant type to be used. Default: \"client*credentials\"; must be one of [\"client*credentials\", \"password\"]\n"},"password":{"type":"string","description":"The password to use if `config.oauth.grant_type` is set to \u003cspan pulumi-lang-nodejs=\"`password`\" pulumi-lang-dotnet=\"`Password`\" pulumi-lang-go=\"`password`\" pulumi-lang-python=\"`password`\" pulumi-lang-yaml=\"`password`\" pulumi-lang-java=\"`password`\"\u003e`password`\u003c/span\u003e.\n"},"scopes":{"type":"array","items":{"type":"string"},"description":"List of scopes to request from the IdP when obtaining a new token. Default: [\"openid\"]\n"},"tokenEndpoint":{"type":"string","description":"The token endpoint URI. Not Null\n"},"tokenHeaders":{"type":"object","additionalProperties":{"type":"string"},"description":"Extra headers to be passed in the token endpoint request.\n"},"tokenPostArgs":{"type":"object","additionalProperties":{"type":"string"},"description":"Extra post arguments to be passed in the token endpoint request.\n"},"username":{"type":"string","description":"The username to use if `config.oauth.grant_type` is set to \u003cspan pulumi-lang-nodejs=\"`password`\" pulumi-lang-dotnet=\"`Password`\" pulumi-lang-go=\"`password`\" pulumi-lang-python=\"`password`\" pulumi-lang-yaml=\"`password`\" pulumi-lang-java=\"`password`\"\u003e`password`\u003c/span\u003e.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["audiences","grantType","scopes","tokenEndpoint"]}}},"konnect:index/GatewayPluginKafkaConsumeConfigSchemaRegistryConfluentAuthenticationOauth2Client:GatewayPluginKafkaConsumeConfigSchemaRegistryConfluentAuthenticationOauth2Client":{"properties":{"authMethod":{"type":"string","description":"The authentication method used in client requests to the IdP. Supported values are: \u003cspan pulumi-lang-nodejs=\"`clientSecretBasic`\" pulumi-lang-dotnet=\"`ClientSecretBasic`\" pulumi-lang-go=\"`clientSecretBasic`\" pulumi-lang-python=\"`client_secret_basic`\" pulumi-lang-yaml=\"`clientSecretBasic`\" pulumi-lang-java=\"`clientSecretBasic`\"\u003e`client_secret_basic`\u003c/span\u003e to send \u003cspan pulumi-lang-nodejs=\"`clientId`\" pulumi-lang-dotnet=\"`ClientId`\" pulumi-lang-go=\"`clientId`\" pulumi-lang-python=\"`client_id`\" pulumi-lang-yaml=\"`clientId`\" pulumi-lang-java=\"`clientId`\"\u003e`client_id`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`clientSecret`\" pulumi-lang-dotnet=\"`ClientSecret`\" pulumi-lang-go=\"`clientSecret`\" pulumi-lang-python=\"`client_secret`\" pulumi-lang-yaml=\"`clientSecret`\" pulumi-lang-java=\"`clientSecret`\"\u003e`client_secret`\u003c/span\u003e in the `Authorization: Basic` header, \u003cspan pulumi-lang-nodejs=\"`clientSecretPost`\" pulumi-lang-dotnet=\"`ClientSecretPost`\" pulumi-lang-go=\"`clientSecretPost`\" pulumi-lang-python=\"`client_secret_post`\" pulumi-lang-yaml=\"`clientSecretPost`\" pulumi-lang-java=\"`clientSecretPost`\"\u003e`client_secret_post`\u003c/span\u003e to send \u003cspan pulumi-lang-nodejs=\"`clientId`\" pulumi-lang-dotnet=\"`ClientId`\" pulumi-lang-go=\"`clientId`\" pulumi-lang-python=\"`client_id`\" pulumi-lang-yaml=\"`clientId`\" pulumi-lang-java=\"`clientId`\"\u003e`client_id`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`clientSecret`\" pulumi-lang-dotnet=\"`ClientSecret`\" pulumi-lang-go=\"`clientSecret`\" pulumi-lang-python=\"`client_secret`\" pulumi-lang-yaml=\"`clientSecret`\" pulumi-lang-java=\"`clientSecret`\"\u003e`client_secret`\u003c/span\u003e as part of the request body, or \u003cspan pulumi-lang-nodejs=\"`clientSecretJwt`\" pulumi-lang-dotnet=\"`ClientSecretJwt`\" pulumi-lang-go=\"`clientSecretJwt`\" pulumi-lang-python=\"`client_secret_jwt`\" pulumi-lang-yaml=\"`clientSecretJwt`\" pulumi-lang-java=\"`clientSecretJwt`\"\u003e`client_secret_jwt`\u003c/span\u003e to send a JWT signed with the \u003cspan pulumi-lang-nodejs=\"`clientSecret`\" pulumi-lang-dotnet=\"`ClientSecret`\" pulumi-lang-go=\"`clientSecret`\" pulumi-lang-python=\"`client_secret`\" pulumi-lang-yaml=\"`clientSecret`\" pulumi-lang-java=\"`clientSecret`\"\u003e`client_secret`\u003c/span\u003e using the client assertion as part of the body. Default: \"client*secret*post\"; must be one of [\"client*secret*basic\", \"client*secret*jwt\", \"client*secret*post\", \"none\"]\n"},"clientSecretJwtAlg":{"type":"string","description":"The algorithm to use with JWT when using \u003cspan pulumi-lang-nodejs=\"`clientSecretJwt`\" pulumi-lang-dotnet=\"`ClientSecretJwt`\" pulumi-lang-go=\"`clientSecretJwt`\" pulumi-lang-python=\"`client_secret_jwt`\" pulumi-lang-yaml=\"`clientSecretJwt`\" pulumi-lang-java=\"`clientSecretJwt`\"\u003e`client_secret_jwt`\u003c/span\u003e authentication. Default: \"HS512\"; must be one of [\"HS256\", \"HS512\"]\n"},"httpProxy":{"type":"string","description":"The proxy to use when making HTTP requests to the IdP.\n"},"httpProxyAuthorization":{"type":"string","description":"The `Proxy-Authorization` header value to be used with \u003cspan pulumi-lang-nodejs=\"`httpProxy`\" pulumi-lang-dotnet=\"`HttpProxy`\" pulumi-lang-go=\"`httpProxy`\" pulumi-lang-python=\"`http_proxy`\" pulumi-lang-yaml=\"`httpProxy`\" pulumi-lang-java=\"`httpProxy`\"\u003e`http_proxy`\u003c/span\u003e.\n"},"httpVersion":{"type":"number","description":"The HTTP version used for requests made by this plugin. Supported values: `1.1` for HTTP 1.1 and `1.0` for HTTP 1.0.\n"},"httpsProxy":{"type":"string","description":"The proxy to use when making HTTPS requests to the IdP.\n"},"httpsProxyAuthorization":{"type":"string","description":"The `Proxy-Authorization` header value to be used with \u003cspan pulumi-lang-nodejs=\"`httpsProxy`\" pulumi-lang-dotnet=\"`HttpsProxy`\" pulumi-lang-go=\"`httpsProxy`\" pulumi-lang-python=\"`https_proxy`\" pulumi-lang-yaml=\"`httpsProxy`\" pulumi-lang-java=\"`httpsProxy`\"\u003e`https_proxy`\u003c/span\u003e.\n"},"keepAlive":{"type":"boolean","description":"Whether to use keepalive connections to the IdP. Default: true\n"},"noProxy":{"type":"string","description":"A comma-separated list of hosts that should not be proxied.\n"},"sslVerify":{"type":"boolean","description":"Whether to verify the certificate presented by the IdP when using HTTPS. Default: false\n"},"timeout":{"type":"number","description":"Network I/O timeout for requests to the IdP in milliseconds. Default: 10000\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["authMethod","clientSecretJwtAlg","httpVersion","keepAlive","sslVerify","timeout"]}}},"konnect:index/GatewayPluginKafkaConsumeConfigSecurity:GatewayPluginKafkaConsumeConfigSecurity":{"properties":{"certificateId":{"type":"string","description":"UUID of certificate entity for mTLS authentication.\n"},"ssl":{"type":"boolean","description":"Enables TLS.\n"},"sslVerify":{"type":"boolean","description":"When using TLS, this option enables verification of the certificate presented by the server. Default: false\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["sslVerify"]}}},"konnect:index/GatewayPluginKafkaConsumeConfigTopic:GatewayPluginKafkaConsumeConfigTopic":{"properties":{"name":{"type":"string","description":"Not Null\n"},"schemaRegistry":{"$ref":"#/types/konnect:index%2FGatewayPluginKafkaConsumeConfigTopicSchemaRegistry:GatewayPluginKafkaConsumeConfigTopicSchemaRegistry","description":"The plugin-global schema registry configuration.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["name","schemaRegistry"]}}},"konnect:index/GatewayPluginKafkaConsumeConfigTopicSchemaRegistry:GatewayPluginKafkaConsumeConfigTopicSchemaRegistry":{"properties":{"confluent":{"$ref":"#/types/konnect:index%2FGatewayPluginKafkaConsumeConfigTopicSchemaRegistryConfluent:GatewayPluginKafkaConsumeConfigTopicSchemaRegistryConfluent"}},"type":"object","language":{"nodejs":{"requiredOutputs":["confluent"]}}},"konnect:index/GatewayPluginKafkaConsumeConfigTopicSchemaRegistryConfluent:GatewayPluginKafkaConsumeConfigTopicSchemaRegistryConfluent":{"properties":{"authentication":{"$ref":"#/types/konnect:index%2FGatewayPluginKafkaConsumeConfigTopicSchemaRegistryConfluentAuthentication:GatewayPluginKafkaConsumeConfigTopicSchemaRegistryConfluentAuthentication"},"sslVerify":{"type":"boolean","description":"Set to false to disable SSL certificate verification when connecting to the schema registry. Default: true\n"},"ttl":{"type":"number","description":"The TTL in seconds for the schema registry cache.\n"},"url":{"type":"string","description":"The URL of the schema registry.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["authentication","sslVerify"]}}},"konnect:index/GatewayPluginKafkaConsumeConfigTopicSchemaRegistryConfluentAuthentication:GatewayPluginKafkaConsumeConfigTopicSchemaRegistryConfluentAuthentication":{"properties":{"basic":{"$ref":"#/types/konnect:index%2FGatewayPluginKafkaConsumeConfigTopicSchemaRegistryConfluentAuthenticationBasic:GatewayPluginKafkaConsumeConfigTopicSchemaRegistryConfluentAuthenticationBasic"},"mode":{"type":"string","description":"Authentication mode to use with the schema registry. Default: \"none\"; must be one of [\"basic\", \"none\", \"oauth2\"]\n"},"oauth2":{"$ref":"#/types/konnect:index%2FGatewayPluginKafkaConsumeConfigTopicSchemaRegistryConfluentAuthenticationOauth2:GatewayPluginKafkaConsumeConfigTopicSchemaRegistryConfluentAuthenticationOauth2"},"oauth2Client":{"$ref":"#/types/konnect:index%2FGatewayPluginKafkaConsumeConfigTopicSchemaRegistryConfluentAuthenticationOauth2Client:GatewayPluginKafkaConsumeConfigTopicSchemaRegistryConfluentAuthenticationOauth2Client"}},"type":"object","language":{"nodejs":{"requiredOutputs":["basic","mode","oauth2","oauth2Client"]}}},"konnect:index/GatewayPluginKafkaConsumeConfigTopicSchemaRegistryConfluentAuthenticationBasic:GatewayPluginKafkaConsumeConfigTopicSchemaRegistryConfluentAuthenticationBasic":{"properties":{"password":{"type":"string","description":"Not Null\n"},"username":{"type":"string","description":"Not Null\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["password","username"]}}},"konnect:index/GatewayPluginKafkaConsumeConfigTopicSchemaRegistryConfluentAuthenticationOauth2:GatewayPluginKafkaConsumeConfigTopicSchemaRegistryConfluentAuthenticationOauth2":{"properties":{"audiences":{"type":"array","items":{"type":"string"},"description":"List of audiences passed to the IdP when obtaining a new token. Default: []\n"},"clientId":{"type":"string","description":"The client ID for the application registration in the IdP.\n"},"clientSecret":{"type":"string","description":"The client secret for the application registration in the IdP.\n"},"grantType":{"type":"string","description":"The OAuth grant type to be used. Default: \"client*credentials\"; must be one of [\"client*credentials\", \"password\"]\n"},"password":{"type":"string","description":"The password to use if `config.oauth.grant_type` is set to \u003cspan pulumi-lang-nodejs=\"`password`\" pulumi-lang-dotnet=\"`Password`\" pulumi-lang-go=\"`password`\" pulumi-lang-python=\"`password`\" pulumi-lang-yaml=\"`password`\" pulumi-lang-java=\"`password`\"\u003e`password`\u003c/span\u003e.\n"},"scopes":{"type":"array","items":{"type":"string"},"description":"List of scopes to request from the IdP when obtaining a new token. Default: [\"openid\"]\n"},"tokenEndpoint":{"type":"string","description":"The token endpoint URI. Not Null\n"},"tokenHeaders":{"type":"object","additionalProperties":{"type":"string"},"description":"Extra headers to be passed in the token endpoint request.\n"},"tokenPostArgs":{"type":"object","additionalProperties":{"type":"string"},"description":"Extra post arguments to be passed in the token endpoint request.\n"},"username":{"type":"string","description":"The username to use if `config.oauth.grant_type` is set to \u003cspan pulumi-lang-nodejs=\"`password`\" pulumi-lang-dotnet=\"`Password`\" pulumi-lang-go=\"`password`\" pulumi-lang-python=\"`password`\" pulumi-lang-yaml=\"`password`\" pulumi-lang-java=\"`password`\"\u003e`password`\u003c/span\u003e.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["audiences","grantType","scopes","tokenEndpoint"]}}},"konnect:index/GatewayPluginKafkaConsumeConfigTopicSchemaRegistryConfluentAuthenticationOauth2Client:GatewayPluginKafkaConsumeConfigTopicSchemaRegistryConfluentAuthenticationOauth2Client":{"properties":{"authMethod":{"type":"string","description":"The authentication method used in client requests to the IdP. Supported values are: \u003cspan pulumi-lang-nodejs=\"`clientSecretBasic`\" pulumi-lang-dotnet=\"`ClientSecretBasic`\" pulumi-lang-go=\"`clientSecretBasic`\" pulumi-lang-python=\"`client_secret_basic`\" pulumi-lang-yaml=\"`clientSecretBasic`\" pulumi-lang-java=\"`clientSecretBasic`\"\u003e`client_secret_basic`\u003c/span\u003e to send \u003cspan pulumi-lang-nodejs=\"`clientId`\" pulumi-lang-dotnet=\"`ClientId`\" pulumi-lang-go=\"`clientId`\" pulumi-lang-python=\"`client_id`\" pulumi-lang-yaml=\"`clientId`\" pulumi-lang-java=\"`clientId`\"\u003e`client_id`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`clientSecret`\" pulumi-lang-dotnet=\"`ClientSecret`\" pulumi-lang-go=\"`clientSecret`\" pulumi-lang-python=\"`client_secret`\" pulumi-lang-yaml=\"`clientSecret`\" pulumi-lang-java=\"`clientSecret`\"\u003e`client_secret`\u003c/span\u003e in the `Authorization: Basic` header, \u003cspan pulumi-lang-nodejs=\"`clientSecretPost`\" pulumi-lang-dotnet=\"`ClientSecretPost`\" pulumi-lang-go=\"`clientSecretPost`\" pulumi-lang-python=\"`client_secret_post`\" pulumi-lang-yaml=\"`clientSecretPost`\" pulumi-lang-java=\"`clientSecretPost`\"\u003e`client_secret_post`\u003c/span\u003e to send \u003cspan pulumi-lang-nodejs=\"`clientId`\" pulumi-lang-dotnet=\"`ClientId`\" pulumi-lang-go=\"`clientId`\" pulumi-lang-python=\"`client_id`\" pulumi-lang-yaml=\"`clientId`\" pulumi-lang-java=\"`clientId`\"\u003e`client_id`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`clientSecret`\" pulumi-lang-dotnet=\"`ClientSecret`\" pulumi-lang-go=\"`clientSecret`\" pulumi-lang-python=\"`client_secret`\" pulumi-lang-yaml=\"`clientSecret`\" pulumi-lang-java=\"`clientSecret`\"\u003e`client_secret`\u003c/span\u003e as part of the request body, or \u003cspan pulumi-lang-nodejs=\"`clientSecretJwt`\" pulumi-lang-dotnet=\"`ClientSecretJwt`\" pulumi-lang-go=\"`clientSecretJwt`\" pulumi-lang-python=\"`client_secret_jwt`\" pulumi-lang-yaml=\"`clientSecretJwt`\" pulumi-lang-java=\"`clientSecretJwt`\"\u003e`client_secret_jwt`\u003c/span\u003e to send a JWT signed with the \u003cspan pulumi-lang-nodejs=\"`clientSecret`\" pulumi-lang-dotnet=\"`ClientSecret`\" pulumi-lang-go=\"`clientSecret`\" pulumi-lang-python=\"`client_secret`\" pulumi-lang-yaml=\"`clientSecret`\" pulumi-lang-java=\"`clientSecret`\"\u003e`client_secret`\u003c/span\u003e using the client assertion as part of the body. Default: \"client*secret*post\"; must be one of [\"client*secret*basic\", \"client*secret*jwt\", \"client*secret*post\", \"none\"]\n"},"clientSecretJwtAlg":{"type":"string","description":"The algorithm to use with JWT when using \u003cspan pulumi-lang-nodejs=\"`clientSecretJwt`\" pulumi-lang-dotnet=\"`ClientSecretJwt`\" pulumi-lang-go=\"`clientSecretJwt`\" pulumi-lang-python=\"`client_secret_jwt`\" pulumi-lang-yaml=\"`clientSecretJwt`\" pulumi-lang-java=\"`clientSecretJwt`\"\u003e`client_secret_jwt`\u003c/span\u003e authentication. Default: \"HS512\"; must be one of [\"HS256\", \"HS512\"]\n"},"httpProxy":{"type":"string","description":"The proxy to use when making HTTP requests to the IdP.\n"},"httpProxyAuthorization":{"type":"string","description":"The `Proxy-Authorization` header value to be used with \u003cspan pulumi-lang-nodejs=\"`httpProxy`\" pulumi-lang-dotnet=\"`HttpProxy`\" pulumi-lang-go=\"`httpProxy`\" pulumi-lang-python=\"`http_proxy`\" pulumi-lang-yaml=\"`httpProxy`\" pulumi-lang-java=\"`httpProxy`\"\u003e`http_proxy`\u003c/span\u003e.\n"},"httpVersion":{"type":"number","description":"The HTTP version used for requests made by this plugin. Supported values: `1.1` for HTTP 1.1 and `1.0` for HTTP 1.0.\n"},"httpsProxy":{"type":"string","description":"The proxy to use when making HTTPS requests to the IdP.\n"},"httpsProxyAuthorization":{"type":"string","description":"The `Proxy-Authorization` header value to be used with \u003cspan pulumi-lang-nodejs=\"`httpsProxy`\" pulumi-lang-dotnet=\"`HttpsProxy`\" pulumi-lang-go=\"`httpsProxy`\" pulumi-lang-python=\"`https_proxy`\" pulumi-lang-yaml=\"`httpsProxy`\" pulumi-lang-java=\"`httpsProxy`\"\u003e`https_proxy`\u003c/span\u003e.\n"},"keepAlive":{"type":"boolean","description":"Whether to use keepalive connections to the IdP. Default: true\n"},"noProxy":{"type":"string","description":"A comma-separated list of hosts that should not be proxied.\n"},"sslVerify":{"type":"boolean","description":"Whether to verify the certificate presented by the IdP when using HTTPS. Default: false\n"},"timeout":{"type":"number","description":"Network I/O timeout for requests to the IdP in milliseconds. Default: 10000\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["authMethod","clientSecretJwtAlg","httpVersion","keepAlive","sslVerify","timeout"]}}},"konnect:index/GatewayPluginKafkaConsumeConsumer:GatewayPluginKafkaConsumeConsumer":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginKafkaConsumeOrdering:GatewayPluginKafkaConsumeOrdering":{"properties":{"after":{"$ref":"#/types/konnect:index%2FGatewayPluginKafkaConsumeOrderingAfter:GatewayPluginKafkaConsumeOrderingAfter"},"before":{"$ref":"#/types/konnect:index%2FGatewayPluginKafkaConsumeOrderingBefore:GatewayPluginKafkaConsumeOrderingBefore"}},"type":"object","language":{"nodejs":{"requiredOutputs":["after","before"]}}},"konnect:index/GatewayPluginKafkaConsumeOrderingAfter:GatewayPluginKafkaConsumeOrderingAfter":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginKafkaConsumeOrderingBefore:GatewayPluginKafkaConsumeOrderingBefore":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginKafkaConsumePartial:GatewayPluginKafkaConsumePartial":{"properties":{"id":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"name":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"path":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id","name","path"]}}},"konnect:index/GatewayPluginKafkaConsumeRoute:GatewayPluginKafkaConsumeRoute":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginKafkaLogConfig:GatewayPluginKafkaLogConfig":{"properties":{"authentication":{"$ref":"#/types/konnect:index%2FGatewayPluginKafkaLogConfigAuthentication:GatewayPluginKafkaLogConfigAuthentication"},"bootstrapServers":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginKafkaLogConfigBootstrapServer:GatewayPluginKafkaLogConfigBootstrapServer"},"description":"Set of bootstrap brokers in a `{host: host, port: port}` list format.\n"},"clusterName":{"type":"string","description":"An identifier for the Kafka cluster. By default, this field generates a random string. You can also set your own custom cluster identifier.  If more than one Kafka plugin is configured without a \u003cspan pulumi-lang-nodejs=\"`clusterName`\" pulumi-lang-dotnet=\"`ClusterName`\" pulumi-lang-go=\"`clusterName`\" pulumi-lang-python=\"`cluster_name`\" pulumi-lang-yaml=\"`clusterName`\" pulumi-lang-java=\"`clusterName`\"\u003e`cluster_name`\u003c/span\u003e (that is, if the default autogenerated value is removed), these plugins will use the same producer, and by extension, the same cluster. Logs will be sent to the leader of the cluster.\n"},"customFieldsByLua":{"type":"object","additionalProperties":{"type":"string"},"description":"Lua code as a key-value map\n"},"keepalive":{"type":"number","description":"Default: 60000\n"},"keepaliveEnabled":{"type":"boolean","description":"Default: false\n"},"keyQueryArg":{"type":"string","description":"The request query parameter name that contains the Kafka message key. If specified, messages with the same key will be sent to the same Kafka partition, ensuring consistent ordering.\n"},"producerAsync":{"type":"boolean","description":"Flag to enable asynchronous mode. Default: true\n"},"producerAsyncBufferingLimitsMessagesInMemory":{"type":"number","description":"Maximum number of messages that can be buffered in memory in asynchronous mode. Default: 50000\n"},"producerAsyncFlushTimeout":{"type":"number","description":"Maximum time interval in milliseconds between buffer flushes in asynchronous mode. Default: 1000\n"},"producerRequestAcks":{"type":"number","description":"The number of acknowledgments the producer requires the leader to have received before considering a request complete. Allowed values: 0 for no acknowledgments; 1 for only the leader; and -1 for the full ISR (In-Sync Replica set). Default: 1; must be one of [\"-1\", \"0\", \"1\"]\n"},"producerRequestLimitsBytesPerRequest":{"type":"number","description":"Maximum size of a Produce request in bytes. Default: 1048576\n"},"producerRequestLimitsMessagesPerRequest":{"type":"number","description":"Maximum number of messages to include into a single Produce request. Default: 200\n"},"producerRequestRetriesBackoffTimeout":{"type":"number","description":"Backoff interval between retry attempts in milliseconds. Default: 100\n"},"producerRequestRetriesMaxAttempts":{"type":"number","description":"Maximum number of retry attempts per single Produce request. Default: 10\n"},"producerRequestTimeout":{"type":"number","description":"Time to wait for a Produce response in milliseconds. Default: 2000\n"},"schemaRegistry":{"$ref":"#/types/konnect:index%2FGatewayPluginKafkaLogConfigSchemaRegistry:GatewayPluginKafkaLogConfigSchemaRegistry","description":"The plugin-global schema registry configuration. This can be overwritten by the topic configuration.\n"},"security":{"$ref":"#/types/konnect:index%2FGatewayPluginKafkaLogConfigSecurity:GatewayPluginKafkaLogConfigSecurity"},"timeout":{"type":"number","description":"Socket timeout in milliseconds. Default: 10000\n"},"topic":{"type":"string","description":"The Kafka topic to publish to.\n"}},"type":"object","required":["topic"],"language":{"nodejs":{"requiredOutputs":["authentication","keepalive","keepaliveEnabled","producerAsync","producerAsyncBufferingLimitsMessagesInMemory","producerAsyncFlushTimeout","producerRequestAcks","producerRequestLimitsBytesPerRequest","producerRequestLimitsMessagesPerRequest","producerRequestRetriesBackoffTimeout","producerRequestRetriesMaxAttempts","producerRequestTimeout","schemaRegistry","security","timeout","topic"]}}},"konnect:index/GatewayPluginKafkaLogConfigAuthentication:GatewayPluginKafkaLogConfigAuthentication":{"properties":{"mechanism":{"type":"string","description":"The SASL authentication mechanism.  Supported options: `PLAIN`, `SCRAM-SHA-256` or `SCRAM-SHA-512`. must be one of [\"PLAIN\", \"SCRAM-SHA-256\", \"SCRAM-SHA-512\"]\n"},"password":{"type":"string","description":"Password for SASL authentication.\n"},"strategy":{"type":"string","description":"The authentication strategy for the plugin, the only option for the value is \u003cspan pulumi-lang-nodejs=\"`sasl`\" pulumi-lang-dotnet=\"`Sasl`\" pulumi-lang-go=\"`sasl`\" pulumi-lang-python=\"`sasl`\" pulumi-lang-yaml=\"`sasl`\" pulumi-lang-java=\"`sasl`\"\u003e`sasl`\u003c/span\u003e. must be \"sasl\"\n"},"tokenauth":{"type":"boolean","description":"Enable this to indicate `DelegationToken` authentication\n"},"user":{"type":"string","description":"Username for SASL authentication.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["mechanism","strategy"]}}},"konnect:index/GatewayPluginKafkaLogConfigBootstrapServer:GatewayPluginKafkaLogConfigBootstrapServer":{"properties":{"host":{"type":"string","description":"A string representing a host name, such as example.com. Not Null\n"},"port":{"type":"number","description":"An integer representing a port number between 0 and 65535, inclusive. Not Null\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["host","port"]}}},"konnect:index/GatewayPluginKafkaLogConfigSchemaRegistry:GatewayPluginKafkaLogConfigSchemaRegistry":{"properties":{"confluent":{"$ref":"#/types/konnect:index%2FGatewayPluginKafkaLogConfigSchemaRegistryConfluent:GatewayPluginKafkaLogConfigSchemaRegistryConfluent"}},"type":"object","language":{"nodejs":{"requiredOutputs":["confluent"]}}},"konnect:index/GatewayPluginKafkaLogConfigSchemaRegistryConfluent:GatewayPluginKafkaLogConfigSchemaRegistryConfluent":{"properties":{"authentication":{"$ref":"#/types/konnect:index%2FGatewayPluginKafkaLogConfigSchemaRegistryConfluentAuthentication:GatewayPluginKafkaLogConfigSchemaRegistryConfluentAuthentication"},"keySchema":{"$ref":"#/types/konnect:index%2FGatewayPluginKafkaLogConfigSchemaRegistryConfluentKeySchema:GatewayPluginKafkaLogConfigSchemaRegistryConfluentKeySchema"},"sslVerify":{"type":"boolean","description":"Set to false to disable SSL certificate verification when connecting to the schema registry. Default: true\n"},"ttl":{"type":"number","description":"The TTL in seconds for the schema registry cache.\n"},"url":{"type":"string","description":"The URL of the schema registry.\n"},"valueSchema":{"$ref":"#/types/konnect:index%2FGatewayPluginKafkaLogConfigSchemaRegistryConfluentValueSchema:GatewayPluginKafkaLogConfigSchemaRegistryConfluentValueSchema"}},"type":"object","language":{"nodejs":{"requiredOutputs":["authentication","keySchema","sslVerify","valueSchema"]}}},"konnect:index/GatewayPluginKafkaLogConfigSchemaRegistryConfluentAuthentication:GatewayPluginKafkaLogConfigSchemaRegistryConfluentAuthentication":{"properties":{"basic":{"$ref":"#/types/konnect:index%2FGatewayPluginKafkaLogConfigSchemaRegistryConfluentAuthenticationBasic:GatewayPluginKafkaLogConfigSchemaRegistryConfluentAuthenticationBasic"},"mode":{"type":"string","description":"Authentication mode to use with the schema registry. Default: \"none\"; must be one of [\"basic\", \"none\", \"oauth2\"]\n"},"oauth2":{"$ref":"#/types/konnect:index%2FGatewayPluginKafkaLogConfigSchemaRegistryConfluentAuthenticationOauth2:GatewayPluginKafkaLogConfigSchemaRegistryConfluentAuthenticationOauth2"},"oauth2Client":{"$ref":"#/types/konnect:index%2FGatewayPluginKafkaLogConfigSchemaRegistryConfluentAuthenticationOauth2Client:GatewayPluginKafkaLogConfigSchemaRegistryConfluentAuthenticationOauth2Client"}},"type":"object","language":{"nodejs":{"requiredOutputs":["basic","mode","oauth2","oauth2Client"]}}},"konnect:index/GatewayPluginKafkaLogConfigSchemaRegistryConfluentAuthenticationBasic:GatewayPluginKafkaLogConfigSchemaRegistryConfluentAuthenticationBasic":{"properties":{"password":{"type":"string"},"username":{"type":"string"}},"type":"object","required":["password","username"]},"konnect:index/GatewayPluginKafkaLogConfigSchemaRegistryConfluentAuthenticationOauth2:GatewayPluginKafkaLogConfigSchemaRegistryConfluentAuthenticationOauth2":{"properties":{"audiences":{"type":"array","items":{"type":"string"},"description":"List of audiences passed to the IdP when obtaining a new token. Default: []\n"},"clientId":{"type":"string","description":"The client ID for the application registration in the IdP.\n"},"clientSecret":{"type":"string","description":"The client secret for the application registration in the IdP.\n"},"grantType":{"type":"string","description":"The OAuth grant type to be used. Default: \"client*credentials\"; must be one of [\"client*credentials\", \"password\"]\n"},"password":{"type":"string","description":"The password to use if `config.oauth.grant_type` is set to \u003cspan pulumi-lang-nodejs=\"`password`\" pulumi-lang-dotnet=\"`Password`\" pulumi-lang-go=\"`password`\" pulumi-lang-python=\"`password`\" pulumi-lang-yaml=\"`password`\" pulumi-lang-java=\"`password`\"\u003e`password`\u003c/span\u003e.\n"},"scopes":{"type":"array","items":{"type":"string"},"description":"List of scopes to request from the IdP when obtaining a new token. Default: [\"openid\"]\n"},"tokenEndpoint":{"type":"string","description":"The token endpoint URI.\n"},"tokenHeaders":{"type":"object","additionalProperties":{"type":"string"},"description":"Extra headers to be passed in the token endpoint request.\n"},"tokenPostArgs":{"type":"object","additionalProperties":{"type":"string"},"description":"Extra post arguments to be passed in the token endpoint request.\n"},"username":{"type":"string","description":"The username to use if `config.oauth.grant_type` is set to \u003cspan pulumi-lang-nodejs=\"`password`\" pulumi-lang-dotnet=\"`Password`\" pulumi-lang-go=\"`password`\" pulumi-lang-python=\"`password`\" pulumi-lang-yaml=\"`password`\" pulumi-lang-java=\"`password`\"\u003e`password`\u003c/span\u003e.\n"}},"type":"object","required":["tokenEndpoint"],"language":{"nodejs":{"requiredOutputs":["audiences","grantType","scopes","tokenEndpoint"]}}},"konnect:index/GatewayPluginKafkaLogConfigSchemaRegistryConfluentAuthenticationOauth2Client:GatewayPluginKafkaLogConfigSchemaRegistryConfluentAuthenticationOauth2Client":{"properties":{"authMethod":{"type":"string","description":"The authentication method used in client requests to the IdP. Supported values are: \u003cspan pulumi-lang-nodejs=\"`clientSecretBasic`\" pulumi-lang-dotnet=\"`ClientSecretBasic`\" pulumi-lang-go=\"`clientSecretBasic`\" pulumi-lang-python=\"`client_secret_basic`\" pulumi-lang-yaml=\"`clientSecretBasic`\" pulumi-lang-java=\"`clientSecretBasic`\"\u003e`client_secret_basic`\u003c/span\u003e to send \u003cspan pulumi-lang-nodejs=\"`clientId`\" pulumi-lang-dotnet=\"`ClientId`\" pulumi-lang-go=\"`clientId`\" pulumi-lang-python=\"`client_id`\" pulumi-lang-yaml=\"`clientId`\" pulumi-lang-java=\"`clientId`\"\u003e`client_id`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`clientSecret`\" pulumi-lang-dotnet=\"`ClientSecret`\" pulumi-lang-go=\"`clientSecret`\" pulumi-lang-python=\"`client_secret`\" pulumi-lang-yaml=\"`clientSecret`\" pulumi-lang-java=\"`clientSecret`\"\u003e`client_secret`\u003c/span\u003e in the `Authorization: Basic` header, \u003cspan pulumi-lang-nodejs=\"`clientSecretPost`\" pulumi-lang-dotnet=\"`ClientSecretPost`\" pulumi-lang-go=\"`clientSecretPost`\" pulumi-lang-python=\"`client_secret_post`\" pulumi-lang-yaml=\"`clientSecretPost`\" pulumi-lang-java=\"`clientSecretPost`\"\u003e`client_secret_post`\u003c/span\u003e to send \u003cspan pulumi-lang-nodejs=\"`clientId`\" pulumi-lang-dotnet=\"`ClientId`\" pulumi-lang-go=\"`clientId`\" pulumi-lang-python=\"`client_id`\" pulumi-lang-yaml=\"`clientId`\" pulumi-lang-java=\"`clientId`\"\u003e`client_id`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`clientSecret`\" pulumi-lang-dotnet=\"`ClientSecret`\" pulumi-lang-go=\"`clientSecret`\" pulumi-lang-python=\"`client_secret`\" pulumi-lang-yaml=\"`clientSecret`\" pulumi-lang-java=\"`clientSecret`\"\u003e`client_secret`\u003c/span\u003e as part of the request body, or \u003cspan pulumi-lang-nodejs=\"`clientSecretJwt`\" pulumi-lang-dotnet=\"`ClientSecretJwt`\" pulumi-lang-go=\"`clientSecretJwt`\" pulumi-lang-python=\"`client_secret_jwt`\" pulumi-lang-yaml=\"`clientSecretJwt`\" pulumi-lang-java=\"`clientSecretJwt`\"\u003e`client_secret_jwt`\u003c/span\u003e to send a JWT signed with the \u003cspan pulumi-lang-nodejs=\"`clientSecret`\" pulumi-lang-dotnet=\"`ClientSecret`\" pulumi-lang-go=\"`clientSecret`\" pulumi-lang-python=\"`client_secret`\" pulumi-lang-yaml=\"`clientSecret`\" pulumi-lang-java=\"`clientSecret`\"\u003e`client_secret`\u003c/span\u003e using the client assertion as part of the body. Default: \"client*secret*post\"; must be one of [\"client*secret*basic\", \"client*secret*jwt\", \"client*secret*post\", \"none\"]\n"},"clientSecretJwtAlg":{"type":"string","description":"The algorithm to use with JWT when using \u003cspan pulumi-lang-nodejs=\"`clientSecretJwt`\" pulumi-lang-dotnet=\"`ClientSecretJwt`\" pulumi-lang-go=\"`clientSecretJwt`\" pulumi-lang-python=\"`client_secret_jwt`\" pulumi-lang-yaml=\"`clientSecretJwt`\" pulumi-lang-java=\"`clientSecretJwt`\"\u003e`client_secret_jwt`\u003c/span\u003e authentication. Default: \"HS512\"; must be one of [\"HS256\", \"HS512\"]\n"},"httpProxy":{"type":"string","description":"The proxy to use when making HTTP requests to the IdP.\n"},"httpProxyAuthorization":{"type":"string","description":"The `Proxy-Authorization` header value to be used with \u003cspan pulumi-lang-nodejs=\"`httpProxy`\" pulumi-lang-dotnet=\"`HttpProxy`\" pulumi-lang-go=\"`httpProxy`\" pulumi-lang-python=\"`http_proxy`\" pulumi-lang-yaml=\"`httpProxy`\" pulumi-lang-java=\"`httpProxy`\"\u003e`http_proxy`\u003c/span\u003e.\n"},"httpVersion":{"type":"number","description":"The HTTP version used for requests made by this plugin. Supported values: `1.1` for HTTP 1.1 and `1.0` for HTTP 1.0.\n"},"httpsProxy":{"type":"string","description":"The proxy to use when making HTTPS requests to the IdP.\n"},"httpsProxyAuthorization":{"type":"string","description":"The `Proxy-Authorization` header value to be used with \u003cspan pulumi-lang-nodejs=\"`httpsProxy`\" pulumi-lang-dotnet=\"`HttpsProxy`\" pulumi-lang-go=\"`httpsProxy`\" pulumi-lang-python=\"`https_proxy`\" pulumi-lang-yaml=\"`httpsProxy`\" pulumi-lang-java=\"`httpsProxy`\"\u003e`https_proxy`\u003c/span\u003e.\n"},"keepAlive":{"type":"boolean","description":"Whether to use keepalive connections to the IdP. Default: true\n"},"noProxy":{"type":"string","description":"A comma-separated list of hosts that should not be proxied.\n"},"sslVerify":{"type":"boolean","description":"Whether to verify the certificate presented by the IdP when using HTTPS. Default: false\n"},"timeout":{"type":"number","description":"Network I/O timeout for requests to the IdP in milliseconds. Default: 10000\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["authMethod","clientSecretJwtAlg","httpVersion","keepAlive","sslVerify","timeout"]}}},"konnect:index/GatewayPluginKafkaLogConfigSchemaRegistryConfluentKeySchema:GatewayPluginKafkaLogConfigSchemaRegistryConfluentKeySchema":{"properties":{"schemaVersion":{"type":"string","description":"The schema version to use for serialization/deserialization. Use 'latest' to always fetch the most recent version.\n"},"subjectName":{"type":"string","description":"The name of the subject\n"}},"type":"object"},"konnect:index/GatewayPluginKafkaLogConfigSchemaRegistryConfluentValueSchema:GatewayPluginKafkaLogConfigSchemaRegistryConfluentValueSchema":{"properties":{"schemaVersion":{"type":"string","description":"The schema version to use for serialization/deserialization. Use 'latest' to always fetch the most recent version.\n"},"subjectName":{"type":"string","description":"The name of the subject\n"}},"type":"object"},"konnect:index/GatewayPluginKafkaLogConfigSecurity:GatewayPluginKafkaLogConfigSecurity":{"properties":{"certificateId":{"type":"string","description":"UUID of certificate entity for mTLS authentication.\n"},"ssl":{"type":"boolean","description":"Enables TLS.\n"},"sslVerify":{"type":"boolean","description":"When using TLS, this option enables verification of the certificate presented by the server. Default: false\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["sslVerify"]}}},"konnect:index/GatewayPluginKafkaLogConsumer:GatewayPluginKafkaLogConsumer":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginKafkaLogOrdering:GatewayPluginKafkaLogOrdering":{"properties":{"after":{"$ref":"#/types/konnect:index%2FGatewayPluginKafkaLogOrderingAfter:GatewayPluginKafkaLogOrderingAfter"},"before":{"$ref":"#/types/konnect:index%2FGatewayPluginKafkaLogOrderingBefore:GatewayPluginKafkaLogOrderingBefore"}},"type":"object","language":{"nodejs":{"requiredOutputs":["after","before"]}}},"konnect:index/GatewayPluginKafkaLogOrderingAfter:GatewayPluginKafkaLogOrderingAfter":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginKafkaLogOrderingBefore:GatewayPluginKafkaLogOrderingBefore":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginKafkaLogPartial:GatewayPluginKafkaLogPartial":{"properties":{"id":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"name":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"path":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id","name","path"]}}},"konnect:index/GatewayPluginKafkaLogRoute:GatewayPluginKafkaLogRoute":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginKafkaLogService:GatewayPluginKafkaLogService":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginKafkaUpstreamConfig:GatewayPluginKafkaUpstreamConfig":{"properties":{"allowedTopics":{"type":"array","items":{"type":"string"},"description":"The list of allowed topic names to which messages can be sent. The default topic configured in the \u003cspan pulumi-lang-nodejs=\"`topic`\" pulumi-lang-dotnet=\"`Topic`\" pulumi-lang-go=\"`topic`\" pulumi-lang-python=\"`topic`\" pulumi-lang-yaml=\"`topic`\" pulumi-lang-java=\"`topic`\"\u003e`topic`\u003c/span\u003e field is always allowed, regardless of its inclusion in \u003cspan pulumi-lang-nodejs=\"`allowedTopics`\" pulumi-lang-dotnet=\"`AllowedTopics`\" pulumi-lang-go=\"`allowedTopics`\" pulumi-lang-python=\"`allowed_topics`\" pulumi-lang-yaml=\"`allowedTopics`\" pulumi-lang-java=\"`allowedTopics`\"\u003e`allowed_topics`\u003c/span\u003e.\n"},"authentication":{"$ref":"#/types/konnect:index%2FGatewayPluginKafkaUpstreamConfigAuthentication:GatewayPluginKafkaUpstreamConfigAuthentication"},"bootstrapServers":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginKafkaUpstreamConfigBootstrapServer:GatewayPluginKafkaUpstreamConfigBootstrapServer"},"description":"Set of bootstrap brokers in a `{host: host, port: port}` list format.\n"},"clusterName":{"type":"string","description":"An identifier for the Kafka cluster. By default, this field generates a random string. You can also set your own custom cluster identifier.  If more than one Kafka plugin is configured without a \u003cspan pulumi-lang-nodejs=\"`clusterName`\" pulumi-lang-dotnet=\"`ClusterName`\" pulumi-lang-go=\"`clusterName`\" pulumi-lang-python=\"`cluster_name`\" pulumi-lang-yaml=\"`clusterName`\" pulumi-lang-java=\"`clusterName`\"\u003e`cluster_name`\u003c/span\u003e (that is, if the default autogenerated value is removed), these plugins will use the same producer, and by extension, the same cluster. Logs will be sent to the leader of the cluster.\n"},"forwardBody":{"type":"boolean","description":"Include the request body in the message. At least one of these must be true: \u003cspan pulumi-lang-nodejs=\"`forwardMethod`\" pulumi-lang-dotnet=\"`ForwardMethod`\" pulumi-lang-go=\"`forwardMethod`\" pulumi-lang-python=\"`forward_method`\" pulumi-lang-yaml=\"`forwardMethod`\" pulumi-lang-java=\"`forwardMethod`\"\u003e`forward_method`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`forwardUri`\" pulumi-lang-dotnet=\"`ForwardUri`\" pulumi-lang-go=\"`forwardUri`\" pulumi-lang-python=\"`forward_uri`\" pulumi-lang-yaml=\"`forwardUri`\" pulumi-lang-java=\"`forwardUri`\"\u003e`forward_uri`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`forwardHeaders`\" pulumi-lang-dotnet=\"`ForwardHeaders`\" pulumi-lang-go=\"`forwardHeaders`\" pulumi-lang-python=\"`forward_headers`\" pulumi-lang-yaml=\"`forwardHeaders`\" pulumi-lang-java=\"`forwardHeaders`\"\u003e`forward_headers`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`forwardBody`\" pulumi-lang-dotnet=\"`ForwardBody`\" pulumi-lang-go=\"`forwardBody`\" pulumi-lang-python=\"`forward_body`\" pulumi-lang-yaml=\"`forwardBody`\" pulumi-lang-java=\"`forwardBody`\"\u003e`forward_body`\u003c/span\u003e. Default: true\n"},"forwardHeaders":{"type":"boolean","description":"Include the request headers in the message. At least one of these must be true: \u003cspan pulumi-lang-nodejs=\"`forwardMethod`\" pulumi-lang-dotnet=\"`ForwardMethod`\" pulumi-lang-go=\"`forwardMethod`\" pulumi-lang-python=\"`forward_method`\" pulumi-lang-yaml=\"`forwardMethod`\" pulumi-lang-java=\"`forwardMethod`\"\u003e`forward_method`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`forwardUri`\" pulumi-lang-dotnet=\"`ForwardUri`\" pulumi-lang-go=\"`forwardUri`\" pulumi-lang-python=\"`forward_uri`\" pulumi-lang-yaml=\"`forwardUri`\" pulumi-lang-java=\"`forwardUri`\"\u003e`forward_uri`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`forwardHeaders`\" pulumi-lang-dotnet=\"`ForwardHeaders`\" pulumi-lang-go=\"`forwardHeaders`\" pulumi-lang-python=\"`forward_headers`\" pulumi-lang-yaml=\"`forwardHeaders`\" pulumi-lang-java=\"`forwardHeaders`\"\u003e`forward_headers`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`forwardBody`\" pulumi-lang-dotnet=\"`ForwardBody`\" pulumi-lang-go=\"`forwardBody`\" pulumi-lang-python=\"`forward_body`\" pulumi-lang-yaml=\"`forwardBody`\" pulumi-lang-java=\"`forwardBody`\"\u003e`forward_body`\u003c/span\u003e. Default: false\n"},"forwardMethod":{"type":"boolean","description":"Include the request method in the message. At least one of these must be true: \u003cspan pulumi-lang-nodejs=\"`forwardMethod`\" pulumi-lang-dotnet=\"`ForwardMethod`\" pulumi-lang-go=\"`forwardMethod`\" pulumi-lang-python=\"`forward_method`\" pulumi-lang-yaml=\"`forwardMethod`\" pulumi-lang-java=\"`forwardMethod`\"\u003e`forward_method`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`forwardUri`\" pulumi-lang-dotnet=\"`ForwardUri`\" pulumi-lang-go=\"`forwardUri`\" pulumi-lang-python=\"`forward_uri`\" pulumi-lang-yaml=\"`forwardUri`\" pulumi-lang-java=\"`forwardUri`\"\u003e`forward_uri`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`forwardHeaders`\" pulumi-lang-dotnet=\"`ForwardHeaders`\" pulumi-lang-go=\"`forwardHeaders`\" pulumi-lang-python=\"`forward_headers`\" pulumi-lang-yaml=\"`forwardHeaders`\" pulumi-lang-java=\"`forwardHeaders`\"\u003e`forward_headers`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`forwardBody`\" pulumi-lang-dotnet=\"`ForwardBody`\" pulumi-lang-go=\"`forwardBody`\" pulumi-lang-python=\"`forward_body`\" pulumi-lang-yaml=\"`forwardBody`\" pulumi-lang-java=\"`forwardBody`\"\u003e`forward_body`\u003c/span\u003e. Default: false\n"},"forwardUri":{"type":"boolean","description":"Include the request URI and URI arguments (as in, query arguments) in the message. At least one of these must be true: \u003cspan pulumi-lang-nodejs=\"`forwardMethod`\" pulumi-lang-dotnet=\"`ForwardMethod`\" pulumi-lang-go=\"`forwardMethod`\" pulumi-lang-python=\"`forward_method`\" pulumi-lang-yaml=\"`forwardMethod`\" pulumi-lang-java=\"`forwardMethod`\"\u003e`forward_method`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`forwardUri`\" pulumi-lang-dotnet=\"`ForwardUri`\" pulumi-lang-go=\"`forwardUri`\" pulumi-lang-python=\"`forward_uri`\" pulumi-lang-yaml=\"`forwardUri`\" pulumi-lang-java=\"`forwardUri`\"\u003e`forward_uri`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`forwardHeaders`\" pulumi-lang-dotnet=\"`ForwardHeaders`\" pulumi-lang-go=\"`forwardHeaders`\" pulumi-lang-python=\"`forward_headers`\" pulumi-lang-yaml=\"`forwardHeaders`\" pulumi-lang-java=\"`forwardHeaders`\"\u003e`forward_headers`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`forwardBody`\" pulumi-lang-dotnet=\"`ForwardBody`\" pulumi-lang-go=\"`forwardBody`\" pulumi-lang-python=\"`forward_body`\" pulumi-lang-yaml=\"`forwardBody`\" pulumi-lang-java=\"`forwardBody`\"\u003e`forward_body`\u003c/span\u003e. Default: false\n"},"keepalive":{"type":"number","description":"Keepalive timeout in milliseconds. Default: 60000\n"},"keepaliveEnabled":{"type":"boolean","description":"Default: false\n"},"keyQueryArg":{"type":"string","description":"The request query parameter name that contains the Kafka message key. If specified, messages with the same key will be sent to the same Kafka partition, ensuring consistent ordering.\n"},"messageByLuaFunctions":{"type":"array","items":{"type":"string"},"description":"The Lua functions that manipulates the message being sent to the Kafka topic.\n"},"producerAsync":{"type":"boolean","description":"Flag to enable asynchronous mode. Default: true\n"},"producerAsyncBufferingLimitsMessagesInMemory":{"type":"number","description":"Maximum number of messages that can be buffered in memory in asynchronous mode. Default: 50000\n"},"producerAsyncFlushTimeout":{"type":"number","description":"Maximum time interval in milliseconds between buffer flushes in asynchronous mode. Default: 1000\n"},"producerRequestAcks":{"type":"number","description":"The number of acknowledgments the producer requires the leader to have received before considering a request complete. Allowed values: 0 for no acknowledgments; 1 for only the leader; and -1 for the full ISR (In-Sync Replica set). Default: 1; must be one of [\"-1\", \"0\", \"1\"]\n"},"producerRequestLimitsBytesPerRequest":{"type":"number","description":"Maximum size of a Produce request in bytes. Default: 1048576\n"},"producerRequestLimitsMessagesPerRequest":{"type":"number","description":"Maximum number of messages to include into a single producer request. Default: 200\n"},"producerRequestRetriesBackoffTimeout":{"type":"number","description":"Backoff interval between retry attempts in milliseconds. Default: 100\n"},"producerRequestRetriesMaxAttempts":{"type":"number","description":"Maximum number of retry attempts per single Produce request. Default: 10\n"},"producerRequestTimeout":{"type":"number","description":"Time to wait for a Produce response in milliseconds. Default: 2000\n"},"schemaRegistry":{"$ref":"#/types/konnect:index%2FGatewayPluginKafkaUpstreamConfigSchemaRegistry:GatewayPluginKafkaUpstreamConfigSchemaRegistry","description":"The plugin-global schema registry configuration. This can be overwritten by the topic configuration.\n"},"security":{"$ref":"#/types/konnect:index%2FGatewayPluginKafkaUpstreamConfigSecurity:GatewayPluginKafkaUpstreamConfigSecurity"},"timeout":{"type":"number","description":"Socket timeout in milliseconds. Default: 10000\n"},"topic":{"type":"string","description":"The default Kafka topic to publish to if the query parameter defined in the \u003cspan pulumi-lang-nodejs=\"`topicsQueryArg`\" pulumi-lang-dotnet=\"`TopicsQueryArg`\" pulumi-lang-go=\"`topicsQueryArg`\" pulumi-lang-python=\"`topics_query_arg`\" pulumi-lang-yaml=\"`topicsQueryArg`\" pulumi-lang-java=\"`topicsQueryArg`\"\u003e`topics_query_arg`\u003c/span\u003e does not exist in the request\n"},"topicsQueryArg":{"type":"string","description":"The request query parameter name that contains the topics to publish to\n"}},"type":"object","required":["topic"],"language":{"nodejs":{"requiredOutputs":["authentication","forwardBody","forwardHeaders","forwardMethod","forwardUri","keepalive","keepaliveEnabled","producerAsync","producerAsyncBufferingLimitsMessagesInMemory","producerAsyncFlushTimeout","producerRequestAcks","producerRequestLimitsBytesPerRequest","producerRequestLimitsMessagesPerRequest","producerRequestRetriesBackoffTimeout","producerRequestRetriesMaxAttempts","producerRequestTimeout","schemaRegistry","security","timeout","topic"]}}},"konnect:index/GatewayPluginKafkaUpstreamConfigAuthentication:GatewayPluginKafkaUpstreamConfigAuthentication":{"properties":{"mechanism":{"type":"string","description":"The SASL authentication mechanism.  Supported options: `PLAIN`, `SCRAM-SHA-256`, or `SCRAM-SHA-512`. must be one of [\"PLAIN\", \"SCRAM-SHA-256\", \"SCRAM-SHA-512\"]\n"},"password":{"type":"string","description":"Password for SASL authentication.\n"},"strategy":{"type":"string","description":"The authentication strategy for the plugin, the only option for the value is \u003cspan pulumi-lang-nodejs=\"`sasl`\" pulumi-lang-dotnet=\"`Sasl`\" pulumi-lang-go=\"`sasl`\" pulumi-lang-python=\"`sasl`\" pulumi-lang-yaml=\"`sasl`\" pulumi-lang-java=\"`sasl`\"\u003e`sasl`\u003c/span\u003e. must be \"sasl\"\n"},"tokenauth":{"type":"boolean","description":"Enable this to indicate `DelegationToken` authentication.\n"},"user":{"type":"string","description":"Username for SASL authentication.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["mechanism","strategy"]}}},"konnect:index/GatewayPluginKafkaUpstreamConfigBootstrapServer:GatewayPluginKafkaUpstreamConfigBootstrapServer":{"properties":{"host":{"type":"string","description":"A string representing a host name, such as example.com. Not Null\n"},"port":{"type":"number","description":"An integer representing a port number between 0 and 65535, inclusive. Not Null\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["host","port"]}}},"konnect:index/GatewayPluginKafkaUpstreamConfigSchemaRegistry:GatewayPluginKafkaUpstreamConfigSchemaRegistry":{"properties":{"confluent":{"$ref":"#/types/konnect:index%2FGatewayPluginKafkaUpstreamConfigSchemaRegistryConfluent:GatewayPluginKafkaUpstreamConfigSchemaRegistryConfluent"}},"type":"object","language":{"nodejs":{"requiredOutputs":["confluent"]}}},"konnect:index/GatewayPluginKafkaUpstreamConfigSchemaRegistryConfluent:GatewayPluginKafkaUpstreamConfigSchemaRegistryConfluent":{"properties":{"authentication":{"$ref":"#/types/konnect:index%2FGatewayPluginKafkaUpstreamConfigSchemaRegistryConfluentAuthentication:GatewayPluginKafkaUpstreamConfigSchemaRegistryConfluentAuthentication"},"keySchema":{"$ref":"#/types/konnect:index%2FGatewayPluginKafkaUpstreamConfigSchemaRegistryConfluentKeySchema:GatewayPluginKafkaUpstreamConfigSchemaRegistryConfluentKeySchema"},"sslVerify":{"type":"boolean","description":"Set to false to disable SSL certificate verification when connecting to the schema registry. Default: true\n"},"ttl":{"type":"number","description":"The TTL in seconds for the schema registry cache.\n"},"url":{"type":"string","description":"The URL of the schema registry.\n"},"valueSchema":{"$ref":"#/types/konnect:index%2FGatewayPluginKafkaUpstreamConfigSchemaRegistryConfluentValueSchema:GatewayPluginKafkaUpstreamConfigSchemaRegistryConfluentValueSchema"}},"type":"object","language":{"nodejs":{"requiredOutputs":["authentication","keySchema","sslVerify","valueSchema"]}}},"konnect:index/GatewayPluginKafkaUpstreamConfigSchemaRegistryConfluentAuthentication:GatewayPluginKafkaUpstreamConfigSchemaRegistryConfluentAuthentication":{"properties":{"basic":{"$ref":"#/types/konnect:index%2FGatewayPluginKafkaUpstreamConfigSchemaRegistryConfluentAuthenticationBasic:GatewayPluginKafkaUpstreamConfigSchemaRegistryConfluentAuthenticationBasic"},"mode":{"type":"string","description":"Authentication mode to use with the schema registry. Default: \"none\"; must be one of [\"basic\", \"none\", \"oauth2\"]\n"},"oauth2":{"$ref":"#/types/konnect:index%2FGatewayPluginKafkaUpstreamConfigSchemaRegistryConfluentAuthenticationOauth2:GatewayPluginKafkaUpstreamConfigSchemaRegistryConfluentAuthenticationOauth2"},"oauth2Client":{"$ref":"#/types/konnect:index%2FGatewayPluginKafkaUpstreamConfigSchemaRegistryConfluentAuthenticationOauth2Client:GatewayPluginKafkaUpstreamConfigSchemaRegistryConfluentAuthenticationOauth2Client"}},"type":"object","language":{"nodejs":{"requiredOutputs":["basic","mode","oauth2","oauth2Client"]}}},"konnect:index/GatewayPluginKafkaUpstreamConfigSchemaRegistryConfluentAuthenticationBasic:GatewayPluginKafkaUpstreamConfigSchemaRegistryConfluentAuthenticationBasic":{"properties":{"password":{"type":"string"},"username":{"type":"string"}},"type":"object","required":["password","username"]},"konnect:index/GatewayPluginKafkaUpstreamConfigSchemaRegistryConfluentAuthenticationOauth2:GatewayPluginKafkaUpstreamConfigSchemaRegistryConfluentAuthenticationOauth2":{"properties":{"audiences":{"type":"array","items":{"type":"string"},"description":"List of audiences passed to the IdP when obtaining a new token. Default: []\n"},"clientId":{"type":"string","description":"The client ID for the application registration in the IdP.\n"},"clientSecret":{"type":"string","description":"The client secret for the application registration in the IdP.\n"},"grantType":{"type":"string","description":"The OAuth grant type to be used. Default: \"client*credentials\"; must be one of [\"client*credentials\", \"password\"]\n"},"password":{"type":"string","description":"The password to use if `config.oauth.grant_type` is set to \u003cspan pulumi-lang-nodejs=\"`password`\" pulumi-lang-dotnet=\"`Password`\" pulumi-lang-go=\"`password`\" pulumi-lang-python=\"`password`\" pulumi-lang-yaml=\"`password`\" pulumi-lang-java=\"`password`\"\u003e`password`\u003c/span\u003e.\n"},"scopes":{"type":"array","items":{"type":"string"},"description":"List of scopes to request from the IdP when obtaining a new token. Default: [\"openid\"]\n"},"tokenEndpoint":{"type":"string","description":"The token endpoint URI.\n"},"tokenHeaders":{"type":"object","additionalProperties":{"type":"string"},"description":"Extra headers to be passed in the token endpoint request.\n"},"tokenPostArgs":{"type":"object","additionalProperties":{"type":"string"},"description":"Extra post arguments to be passed in the token endpoint request.\n"},"username":{"type":"string","description":"The username to use if `config.oauth.grant_type` is set to \u003cspan pulumi-lang-nodejs=\"`password`\" pulumi-lang-dotnet=\"`Password`\" pulumi-lang-go=\"`password`\" pulumi-lang-python=\"`password`\" pulumi-lang-yaml=\"`password`\" pulumi-lang-java=\"`password`\"\u003e`password`\u003c/span\u003e.\n"}},"type":"object","required":["tokenEndpoint"],"language":{"nodejs":{"requiredOutputs":["audiences","grantType","scopes","tokenEndpoint"]}}},"konnect:index/GatewayPluginKafkaUpstreamConfigSchemaRegistryConfluentAuthenticationOauth2Client:GatewayPluginKafkaUpstreamConfigSchemaRegistryConfluentAuthenticationOauth2Client":{"properties":{"authMethod":{"type":"string","description":"The authentication method used in client requests to the IdP. Supported values are: \u003cspan pulumi-lang-nodejs=\"`clientSecretBasic`\" pulumi-lang-dotnet=\"`ClientSecretBasic`\" pulumi-lang-go=\"`clientSecretBasic`\" pulumi-lang-python=\"`client_secret_basic`\" pulumi-lang-yaml=\"`clientSecretBasic`\" pulumi-lang-java=\"`clientSecretBasic`\"\u003e`client_secret_basic`\u003c/span\u003e to send \u003cspan pulumi-lang-nodejs=\"`clientId`\" pulumi-lang-dotnet=\"`ClientId`\" pulumi-lang-go=\"`clientId`\" pulumi-lang-python=\"`client_id`\" pulumi-lang-yaml=\"`clientId`\" pulumi-lang-java=\"`clientId`\"\u003e`client_id`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`clientSecret`\" pulumi-lang-dotnet=\"`ClientSecret`\" pulumi-lang-go=\"`clientSecret`\" pulumi-lang-python=\"`client_secret`\" pulumi-lang-yaml=\"`clientSecret`\" pulumi-lang-java=\"`clientSecret`\"\u003e`client_secret`\u003c/span\u003e in the `Authorization: Basic` header, \u003cspan pulumi-lang-nodejs=\"`clientSecretPost`\" pulumi-lang-dotnet=\"`ClientSecretPost`\" pulumi-lang-go=\"`clientSecretPost`\" pulumi-lang-python=\"`client_secret_post`\" pulumi-lang-yaml=\"`clientSecretPost`\" pulumi-lang-java=\"`clientSecretPost`\"\u003e`client_secret_post`\u003c/span\u003e to send \u003cspan pulumi-lang-nodejs=\"`clientId`\" pulumi-lang-dotnet=\"`ClientId`\" pulumi-lang-go=\"`clientId`\" pulumi-lang-python=\"`client_id`\" pulumi-lang-yaml=\"`clientId`\" pulumi-lang-java=\"`clientId`\"\u003e`client_id`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`clientSecret`\" pulumi-lang-dotnet=\"`ClientSecret`\" pulumi-lang-go=\"`clientSecret`\" pulumi-lang-python=\"`client_secret`\" pulumi-lang-yaml=\"`clientSecret`\" pulumi-lang-java=\"`clientSecret`\"\u003e`client_secret`\u003c/span\u003e as part of the request body, or \u003cspan pulumi-lang-nodejs=\"`clientSecretJwt`\" pulumi-lang-dotnet=\"`ClientSecretJwt`\" pulumi-lang-go=\"`clientSecretJwt`\" pulumi-lang-python=\"`client_secret_jwt`\" pulumi-lang-yaml=\"`clientSecretJwt`\" pulumi-lang-java=\"`clientSecretJwt`\"\u003e`client_secret_jwt`\u003c/span\u003e to send a JWT signed with the \u003cspan pulumi-lang-nodejs=\"`clientSecret`\" pulumi-lang-dotnet=\"`ClientSecret`\" pulumi-lang-go=\"`clientSecret`\" pulumi-lang-python=\"`client_secret`\" pulumi-lang-yaml=\"`clientSecret`\" pulumi-lang-java=\"`clientSecret`\"\u003e`client_secret`\u003c/span\u003e using the client assertion as part of the body. Default: \"client*secret*post\"; must be one of [\"client*secret*basic\", \"client*secret*jwt\", \"client*secret*post\", \"none\"]\n"},"clientSecretJwtAlg":{"type":"string","description":"The algorithm to use with JWT when using \u003cspan pulumi-lang-nodejs=\"`clientSecretJwt`\" pulumi-lang-dotnet=\"`ClientSecretJwt`\" pulumi-lang-go=\"`clientSecretJwt`\" pulumi-lang-python=\"`client_secret_jwt`\" pulumi-lang-yaml=\"`clientSecretJwt`\" pulumi-lang-java=\"`clientSecretJwt`\"\u003e`client_secret_jwt`\u003c/span\u003e authentication. Default: \"HS512\"; must be one of [\"HS256\", \"HS512\"]\n"},"httpProxy":{"type":"string","description":"The proxy to use when making HTTP requests to the IdP.\n"},"httpProxyAuthorization":{"type":"string","description":"The `Proxy-Authorization` header value to be used with \u003cspan pulumi-lang-nodejs=\"`httpProxy`\" pulumi-lang-dotnet=\"`HttpProxy`\" pulumi-lang-go=\"`httpProxy`\" pulumi-lang-python=\"`http_proxy`\" pulumi-lang-yaml=\"`httpProxy`\" pulumi-lang-java=\"`httpProxy`\"\u003e`http_proxy`\u003c/span\u003e.\n"},"httpVersion":{"type":"number","description":"The HTTP version used for requests made by this plugin. Supported values: `1.1` for HTTP 1.1 and `1.0` for HTTP 1.0.\n"},"httpsProxy":{"type":"string","description":"The proxy to use when making HTTPS requests to the IdP.\n"},"httpsProxyAuthorization":{"type":"string","description":"The `Proxy-Authorization` header value to be used with \u003cspan pulumi-lang-nodejs=\"`httpsProxy`\" pulumi-lang-dotnet=\"`HttpsProxy`\" pulumi-lang-go=\"`httpsProxy`\" pulumi-lang-python=\"`https_proxy`\" pulumi-lang-yaml=\"`httpsProxy`\" pulumi-lang-java=\"`httpsProxy`\"\u003e`https_proxy`\u003c/span\u003e.\n"},"keepAlive":{"type":"boolean","description":"Whether to use keepalive connections to the IdP. Default: true\n"},"noProxy":{"type":"string","description":"A comma-separated list of hosts that should not be proxied.\n"},"sslVerify":{"type":"boolean","description":"Whether to verify the certificate presented by the IdP when using HTTPS. Default: false\n"},"timeout":{"type":"number","description":"Network I/O timeout for requests to the IdP in milliseconds. Default: 10000\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["authMethod","clientSecretJwtAlg","httpVersion","keepAlive","sslVerify","timeout"]}}},"konnect:index/GatewayPluginKafkaUpstreamConfigSchemaRegistryConfluentKeySchema:GatewayPluginKafkaUpstreamConfigSchemaRegistryConfluentKeySchema":{"properties":{"schemaVersion":{"type":"string","description":"The schema version to use for serialization/deserialization. Use 'latest' to always fetch the most recent version.\n"},"subjectName":{"type":"string","description":"The name of the subject\n"}},"type":"object"},"konnect:index/GatewayPluginKafkaUpstreamConfigSchemaRegistryConfluentValueSchema:GatewayPluginKafkaUpstreamConfigSchemaRegistryConfluentValueSchema":{"properties":{"schemaVersion":{"type":"string","description":"The schema version to use for serialization/deserialization. Use 'latest' to always fetch the most recent version.\n"},"subjectName":{"type":"string","description":"The name of the subject\n"}},"type":"object"},"konnect:index/GatewayPluginKafkaUpstreamConfigSecurity:GatewayPluginKafkaUpstreamConfigSecurity":{"properties":{"certificateId":{"type":"string","description":"UUID of certificate entity for mTLS authentication.\n"},"ssl":{"type":"boolean","description":"Enables TLS.\n"},"sslVerify":{"type":"boolean","description":"When using TLS, this option enables verification of the certificate presented by the server. Default: false\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["sslVerify"]}}},"konnect:index/GatewayPluginKafkaUpstreamConsumer:GatewayPluginKafkaUpstreamConsumer":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginKafkaUpstreamOrdering:GatewayPluginKafkaUpstreamOrdering":{"properties":{"after":{"$ref":"#/types/konnect:index%2FGatewayPluginKafkaUpstreamOrderingAfter:GatewayPluginKafkaUpstreamOrderingAfter"},"before":{"$ref":"#/types/konnect:index%2FGatewayPluginKafkaUpstreamOrderingBefore:GatewayPluginKafkaUpstreamOrderingBefore"}},"type":"object","language":{"nodejs":{"requiredOutputs":["after","before"]}}},"konnect:index/GatewayPluginKafkaUpstreamOrderingAfter:GatewayPluginKafkaUpstreamOrderingAfter":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginKafkaUpstreamOrderingBefore:GatewayPluginKafkaUpstreamOrderingBefore":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginKafkaUpstreamPartial:GatewayPluginKafkaUpstreamPartial":{"properties":{"id":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"name":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"path":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id","name","path"]}}},"konnect:index/GatewayPluginKafkaUpstreamRoute:GatewayPluginKafkaUpstreamRoute":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginKafkaUpstreamService:GatewayPluginKafkaUpstreamService":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginKeyAuthConfig:GatewayPluginKeyAuthConfig":{"properties":{"anonymous":{"type":"string","description":"An optional string (consumer UUID or username) value to use as an “anonymous” consumer if authentication fails. If empty (default null), the request will fail with an authentication failure \u003cspan pulumi-lang-nodejs=\"`4xx`\" pulumi-lang-dotnet=\"`4xx`\" pulumi-lang-go=\"`4xx`\" pulumi-lang-python=\"`4xx`\" pulumi-lang-yaml=\"`4xx`\" pulumi-lang-java=\"`4xx`\"\u003e`4xx`\u003c/span\u003e.\n"},"hideCredentials":{"type":"boolean","description":"An optional boolean value telling the plugin to show or hide the credential from the upstream service. If \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, the plugin strips the credential from the request. Default: false\n"},"identityRealms":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginKeyAuthConfigIdentityRealm:GatewayPluginKeyAuthConfigIdentityRealm"},"description":"A configuration of Konnect Identity Realms that indicate where to source a consumer from.\n"},"keyInBody":{"type":"boolean","description":"If enabled, the plugin reads the request body. Supported MIME types: `application/www-form-urlencoded`, `application/json`, and `multipart/form-data`. Default: false\n"},"keyInHeader":{"type":"boolean","description":"If enabled (default), the plugin reads the request header and tries to find the key in it. Default: true\n"},"keyInQuery":{"type":"boolean","description":"If enabled (default), the plugin reads the query parameter in the request and tries to find the key in it. Default: true\n"},"keyNames":{"type":"array","items":{"type":"string"},"description":"Describes an array of parameter names where the plugin will look for a key. The key names may only contain [a-z], [A-Z], [0-9], [_] underscore, and [-] hyphen. Default: [\"apikey\"]\n"},"realm":{"type":"string","description":"When authentication fails the plugin sends `WWW-Authenticate` header with \u003cspan pulumi-lang-nodejs=\"`realm`\" pulumi-lang-dotnet=\"`Realm`\" pulumi-lang-go=\"`realm`\" pulumi-lang-python=\"`realm`\" pulumi-lang-yaml=\"`realm`\" pulumi-lang-java=\"`realm`\"\u003e`realm`\u003c/span\u003e attribute value.\n"},"runOnPreflight":{"type":"boolean","description":"A boolean value that indicates whether the plugin should run (and try to authenticate) on `OPTIONS` preflight requests. If set to \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e, then `OPTIONS` requests are always allowed. Default: true\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["hideCredentials","identityRealms","keyInBody","keyInHeader","keyInQuery","keyNames","runOnPreflight"]}}},"konnect:index/GatewayPluginKeyAuthConfigIdentityRealm:GatewayPluginKeyAuthConfigIdentityRealm":{"properties":{"id":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"region":{"type":"string"},"scope":{"type":"string","description":"must be one of [\"cp\", \"realm\"]\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id","scope"]}}},"konnect:index/GatewayPluginKeyAuthOrdering:GatewayPluginKeyAuthOrdering":{"properties":{"after":{"$ref":"#/types/konnect:index%2FGatewayPluginKeyAuthOrderingAfter:GatewayPluginKeyAuthOrderingAfter"},"before":{"$ref":"#/types/konnect:index%2FGatewayPluginKeyAuthOrderingBefore:GatewayPluginKeyAuthOrderingBefore"}},"type":"object","language":{"nodejs":{"requiredOutputs":["after","before"]}}},"konnect:index/GatewayPluginKeyAuthOrderingAfter:GatewayPluginKeyAuthOrderingAfter":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginKeyAuthOrderingBefore:GatewayPluginKeyAuthOrderingBefore":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginKeyAuthPartial:GatewayPluginKeyAuthPartial":{"properties":{"id":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"name":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"path":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id","name","path"]}}},"konnect:index/GatewayPluginKeyAuthRoute:GatewayPluginKeyAuthRoute":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginKeyAuthService:GatewayPluginKeyAuthService":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginLdapAuthAdvancedConfig:GatewayPluginLdapAuthAdvancedConfig":{"properties":{"anonymous":{"type":"string","description":"An optional string (consumer UUID or username) value to use as an “anonymous” consumer if authentication fails. If empty (default null), the request will fail with an authentication failure \u003cspan pulumi-lang-nodejs=\"`4xx`\" pulumi-lang-dotnet=\"`4xx`\" pulumi-lang-go=\"`4xx`\" pulumi-lang-python=\"`4xx`\" pulumi-lang-yaml=\"`4xx`\" pulumi-lang-java=\"`4xx`\"\u003e`4xx`\u003c/span\u003e. Note that this value must refer to the consumer \u003cspan pulumi-lang-nodejs=\"`id`\" pulumi-lang-dotnet=\"`Id`\" pulumi-lang-go=\"`id`\" pulumi-lang-python=\"`id`\" pulumi-lang-yaml=\"`id`\" pulumi-lang-java=\"`id`\"\u003e`id`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`username`\" pulumi-lang-dotnet=\"`Username`\" pulumi-lang-go=\"`username`\" pulumi-lang-python=\"`username`\" pulumi-lang-yaml=\"`username`\" pulumi-lang-java=\"`username`\"\u003e`username`\u003c/span\u003e attribute, and **not** its \u003cspan pulumi-lang-nodejs=\"`customId`\" pulumi-lang-dotnet=\"`CustomId`\" pulumi-lang-go=\"`customId`\" pulumi-lang-python=\"`custom_id`\" pulumi-lang-yaml=\"`customId`\" pulumi-lang-java=\"`customId`\"\u003e`custom_id`\u003c/span\u003e. Default: \"\"\n"},"attribute":{"type":"string","description":"Attribute to be used to search the user; e.g., \"cn\".\n"},"baseDn":{"type":"string","description":"Base DN as the starting point for the search; e.g., 'dc=example,dc=com'.\n"},"bindDn":{"type":"string","description":"The DN to bind to. Used to perform LDAP search of user. This \u003cspan pulumi-lang-nodejs=\"`bindDn`\" pulumi-lang-dotnet=\"`BindDn`\" pulumi-lang-go=\"`bindDn`\" pulumi-lang-python=\"`bind_dn`\" pulumi-lang-yaml=\"`bindDn`\" pulumi-lang-java=\"`bindDn`\"\u003e`bind_dn`\u003c/span\u003e should have permissions to search for the user being authenticated.\n"},"cacheTtl":{"type":"number","description":"Cache expiry time in seconds. Default: 60\n"},"consumerBies":{"type":"array","items":{"type":"string"},"description":"Whether to authenticate consumers based on \u003cspan pulumi-lang-nodejs=\"`username`\" pulumi-lang-dotnet=\"`Username`\" pulumi-lang-go=\"`username`\" pulumi-lang-python=\"`username`\" pulumi-lang-yaml=\"`username`\" pulumi-lang-java=\"`username`\"\u003e`username`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`customId`\" pulumi-lang-dotnet=\"`CustomId`\" pulumi-lang-go=\"`customId`\" pulumi-lang-python=\"`custom_id`\" pulumi-lang-yaml=\"`customId`\" pulumi-lang-java=\"`customId`\"\u003e`custom_id`\u003c/span\u003e, or both. Default: [\u003cspan pulumi-lang-nodejs=\"\"customId\"\" pulumi-lang-dotnet=\"\"CustomId\"\" pulumi-lang-go=\"\"customId\"\" pulumi-lang-python=\"\"custom_id\"\" pulumi-lang-yaml=\"\"customId\"\" pulumi-lang-java=\"\"customId\"\"\u003e\"custom_id\"\u003c/span\u003e,\"username\"]\n"},"consumerOptional":{"type":"boolean","description":"Whether consumer mapping is optional. If `consumer_optional=true`, the plugin will not attempt to associate a consumer with the LDAP authenticated user. Default: false\n"},"groupBaseDn":{"type":"string","description":"Sets a distinguished name (DN) for the entry where LDAP searches for groups begin. This field is case-insensitive.',dc=com'.\n"},"groupMemberAttribute":{"type":"string","description":"Sets the attribute holding the members of the LDAP group. This field is case-sensitive. Default: \"memberOf\"\n"},"groupNameAttribute":{"type":"string","description":"Sets the attribute holding the name of a group, typically called \u003cspan pulumi-lang-nodejs=\"`name`\" pulumi-lang-dotnet=\"`Name`\" pulumi-lang-go=\"`name`\" pulumi-lang-python=\"`name`\" pulumi-lang-yaml=\"`name`\" pulumi-lang-java=\"`name`\"\u003e`name`\u003c/span\u003e (in Active Directory) or \u003cspan pulumi-lang-nodejs=\"`cn`\" pulumi-lang-dotnet=\"`Cn`\" pulumi-lang-go=\"`cn`\" pulumi-lang-python=\"`cn`\" pulumi-lang-yaml=\"`cn`\" pulumi-lang-java=\"`cn`\"\u003e`cn`\u003c/span\u003e (in OpenLDAP). This field is case-insensitive.\n"},"groupsRequireds":{"type":"array","items":{"type":"string"},"description":"The groups required to be present in the LDAP search result for successful authorization. This config parameter works in both **AND** / **OR** cases. - When `[\"group1 group2\"]` are in the same array indices, both \u003cspan pulumi-lang-nodejs=\"`group1`\" pulumi-lang-dotnet=\"`Group1`\" pulumi-lang-go=\"`group1`\" pulumi-lang-python=\"`group1`\" pulumi-lang-yaml=\"`group1`\" pulumi-lang-java=\"`group1`\"\u003e`group1`\u003c/span\u003e AND \u003cspan pulumi-lang-nodejs=\"`group2`\" pulumi-lang-dotnet=\"`Group2`\" pulumi-lang-go=\"`group2`\" pulumi-lang-python=\"`group2`\" pulumi-lang-yaml=\"`group2`\" pulumi-lang-java=\"`group2`\"\u003e`group2`\u003c/span\u003e need to be present in the LDAP search result. - When `[\"group1\", \"group2\"]` are in different array indices, either \u003cspan pulumi-lang-nodejs=\"`group1`\" pulumi-lang-dotnet=\"`Group1`\" pulumi-lang-go=\"`group1`\" pulumi-lang-python=\"`group1`\" pulumi-lang-yaml=\"`group1`\" pulumi-lang-java=\"`group1`\"\u003e`group1`\u003c/span\u003e OR \u003cspan pulumi-lang-nodejs=\"`group2`\" pulumi-lang-dotnet=\"`Group2`\" pulumi-lang-go=\"`group2`\" pulumi-lang-python=\"`group2`\" pulumi-lang-yaml=\"`group2`\" pulumi-lang-java=\"`group2`\"\u003e`group2`\u003c/span\u003e need to be present in the LDAP search result.\n"},"headerType":{"type":"string","description":"An optional string to use as part of the Authorization header. By default, a valid Authorization header looks like this: `Authorization: ldap base64(username:password)`. If \u003cspan pulumi-lang-nodejs=\"`headerType`\" pulumi-lang-dotnet=\"`HeaderType`\" pulumi-lang-go=\"`headerType`\" pulumi-lang-python=\"`header_type`\" pulumi-lang-yaml=\"`headerType`\" pulumi-lang-java=\"`headerType`\"\u003e`header_type`\u003c/span\u003e is set to \"basic\", then the Authorization header would be `Authorization: basic base64(username:password)`. Note that \u003cspan pulumi-lang-nodejs=\"`headerType`\" pulumi-lang-dotnet=\"`HeaderType`\" pulumi-lang-go=\"`headerType`\" pulumi-lang-python=\"`header_type`\" pulumi-lang-yaml=\"`headerType`\" pulumi-lang-java=\"`headerType`\"\u003e`header_type`\u003c/span\u003e can take any string, not just `'ldap'` and `'basic'`. Default: \"ldap\"\n"},"hideCredentials":{"type":"boolean","description":"An optional boolean value telling the plugin to hide the credential to the upstream server. It will be removed by Kong before proxying the request. Default: false\n"},"keepalive":{"type":"number","description":"An optional value in milliseconds that defines how long an idle connection to LDAP server will live before being closed. Default: 60000\n"},"ldapHost":{"type":"string","description":"Host on which the LDAP server is running.\n"},"ldapPassword":{"type":"string","description":"The password to the LDAP server.\n"},"ldapPort":{"type":"number","description":"TCP port where the LDAP server is listening. 389 is the default port for non-SSL LDAP and AD. 636 is the port required for SSL LDAP and AD. If \u003cspan pulumi-lang-nodejs=\"`ldaps`\" pulumi-lang-dotnet=\"`Ldaps`\" pulumi-lang-go=\"`ldaps`\" pulumi-lang-python=\"`ldaps`\" pulumi-lang-yaml=\"`ldaps`\" pulumi-lang-java=\"`ldaps`\"\u003e`ldaps`\u003c/span\u003e is configured, you must use port 636. Default: 389\n"},"ldaps":{"type":"boolean","description":"Set it to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e to use \u003cspan pulumi-lang-nodejs=\"`ldaps`\" pulumi-lang-dotnet=\"`Ldaps`\" pulumi-lang-go=\"`ldaps`\" pulumi-lang-python=\"`ldaps`\" pulumi-lang-yaml=\"`ldaps`\" pulumi-lang-java=\"`ldaps`\"\u003e`ldaps`\u003c/span\u003e, a secure protocol (that can be configured to TLS) to connect to the LDAP server. When \u003cspan pulumi-lang-nodejs=\"`ldaps`\" pulumi-lang-dotnet=\"`Ldaps`\" pulumi-lang-go=\"`ldaps`\" pulumi-lang-python=\"`ldaps`\" pulumi-lang-yaml=\"`ldaps`\" pulumi-lang-java=\"`ldaps`\"\u003e`ldaps`\u003c/span\u003e is configured, you must use port 636. If the \u003cspan pulumi-lang-nodejs=\"`ldap`\" pulumi-lang-dotnet=\"`Ldap`\" pulumi-lang-go=\"`ldap`\" pulumi-lang-python=\"`ldap`\" pulumi-lang-yaml=\"`ldap`\" pulumi-lang-java=\"`ldap`\"\u003e`ldap`\u003c/span\u003e setting is enabled, ensure the \u003cspan pulumi-lang-nodejs=\"`startTls`\" pulumi-lang-dotnet=\"`StartTls`\" pulumi-lang-go=\"`startTls`\" pulumi-lang-python=\"`start_tls`\" pulumi-lang-yaml=\"`startTls`\" pulumi-lang-java=\"`startTls`\"\u003e`start_tls`\u003c/span\u003e setting is disabled. Default: false\n"},"logSearchResults":{"type":"boolean","description":"Displays all the LDAP search results received from the LDAP server for debugging purposes. Not recommended to be enabled in a production environment. Default: false\n"},"realm":{"type":"string","description":"When authentication fails the plugin sends `WWW-Authenticate` header with \u003cspan pulumi-lang-nodejs=\"`realm`\" pulumi-lang-dotnet=\"`Realm`\" pulumi-lang-go=\"`realm`\" pulumi-lang-python=\"`realm`\" pulumi-lang-yaml=\"`realm`\" pulumi-lang-java=\"`realm`\"\u003e`realm`\u003c/span\u003e attribute value.\n"},"startTls":{"type":"boolean","description":"Set it to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e to issue StartTLS (Transport Layer Security) extended operation over \u003cspan pulumi-lang-nodejs=\"`ldap`\" pulumi-lang-dotnet=\"`Ldap`\" pulumi-lang-go=\"`ldap`\" pulumi-lang-python=\"`ldap`\" pulumi-lang-yaml=\"`ldap`\" pulumi-lang-java=\"`ldap`\"\u003e`ldap`\u003c/span\u003e connection. If the \u003cspan pulumi-lang-nodejs=\"`startTls`\" pulumi-lang-dotnet=\"`StartTls`\" pulumi-lang-go=\"`startTls`\" pulumi-lang-python=\"`start_tls`\" pulumi-lang-yaml=\"`startTls`\" pulumi-lang-java=\"`startTls`\"\u003e`start_tls`\u003c/span\u003e setting is enabled, ensure the \u003cspan pulumi-lang-nodejs=\"`ldaps`\" pulumi-lang-dotnet=\"`Ldaps`\" pulumi-lang-go=\"`ldaps`\" pulumi-lang-python=\"`ldaps`\" pulumi-lang-yaml=\"`ldaps`\" pulumi-lang-java=\"`ldaps`\"\u003e`ldaps`\u003c/span\u003e setting is disabled. Default: false\n"},"timeout":{"type":"number","description":"An optional timeout in milliseconds when waiting for connection with LDAP server. Default: 10000\n"},"verifyLdapHost":{"type":"boolean","description":"Set to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e to authenticate LDAP server. The server certificate will be verified according to the CA certificates specified by the \u003cspan pulumi-lang-nodejs=\"`luaSslTrustedCertificate`\" pulumi-lang-dotnet=\"`LuaSslTrustedCertificate`\" pulumi-lang-go=\"`luaSslTrustedCertificate`\" pulumi-lang-python=\"`lua_ssl_trusted_certificate`\" pulumi-lang-yaml=\"`luaSslTrustedCertificate`\" pulumi-lang-java=\"`luaSslTrustedCertificate`\"\u003e`lua_ssl_trusted_certificate`\u003c/span\u003e directive. Default: false\n"}},"type":"object","required":["attribute","baseDn","ldapHost"],"language":{"nodejs":{"requiredOutputs":["anonymous","attribute","baseDn","cacheTtl","consumerBies","consumerOptional","groupMemberAttribute","headerType","hideCredentials","keepalive","ldapHost","ldapPort","ldaps","logSearchResults","startTls","timeout","verifyLdapHost"]}}},"konnect:index/GatewayPluginLdapAuthAdvancedOrdering:GatewayPluginLdapAuthAdvancedOrdering":{"properties":{"after":{"$ref":"#/types/konnect:index%2FGatewayPluginLdapAuthAdvancedOrderingAfter:GatewayPluginLdapAuthAdvancedOrderingAfter"},"before":{"$ref":"#/types/konnect:index%2FGatewayPluginLdapAuthAdvancedOrderingBefore:GatewayPluginLdapAuthAdvancedOrderingBefore"}},"type":"object","language":{"nodejs":{"requiredOutputs":["after","before"]}}},"konnect:index/GatewayPluginLdapAuthAdvancedOrderingAfter:GatewayPluginLdapAuthAdvancedOrderingAfter":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginLdapAuthAdvancedOrderingBefore:GatewayPluginLdapAuthAdvancedOrderingBefore":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginLdapAuthAdvancedPartial:GatewayPluginLdapAuthAdvancedPartial":{"properties":{"id":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"name":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"path":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id","name","path"]}}},"konnect:index/GatewayPluginLdapAuthAdvancedRoute:GatewayPluginLdapAuthAdvancedRoute":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginLdapAuthAdvancedService:GatewayPluginLdapAuthAdvancedService":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginLdapAuthConfig:GatewayPluginLdapAuthConfig":{"properties":{"anonymous":{"type":"string","description":"An optional string (consumer UUID or username) value to use as an “anonymous” consumer if authentication fails. If empty (default null), the request fails with an authentication failure \u003cspan pulumi-lang-nodejs=\"`4xx`\" pulumi-lang-dotnet=\"`4xx`\" pulumi-lang-go=\"`4xx`\" pulumi-lang-python=\"`4xx`\" pulumi-lang-yaml=\"`4xx`\" pulumi-lang-java=\"`4xx`\"\u003e`4xx`\u003c/span\u003e.\n"},"attribute":{"type":"string","description":"Attribute to be used to search the user; e.g. cn\n"},"baseDn":{"type":"string","description":"Base DN as the starting point for the search; e.g., dc=example,dc=com\n"},"cacheTtl":{"type":"number","description":"Cache expiry time in seconds. Default: 60\n"},"headerType":{"type":"string","description":"An optional string to use as part of the Authorization header. Default: \"ldap\"\n"},"hideCredentials":{"type":"boolean","description":"An optional boolean value telling the plugin to hide the credential to the upstream server. It will be removed by Kong before proxying the request. Default: false\n"},"keepalive":{"type":"number","description":"An optional value in milliseconds that defines how long an idle connection to LDAP server will live before being closed. Default: 60000\n"},"ldapHost":{"type":"string","description":"A string representing a host name, such as example.com.\n"},"ldapPort":{"type":"number","description":"An integer representing a port number between 0 and 65535, inclusive. Default: 389\n"},"ldaps":{"type":"boolean","description":"Set to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e to connect using the LDAPS protocol (LDAP over TLS).  When \u003cspan pulumi-lang-nodejs=\"`ldaps`\" pulumi-lang-dotnet=\"`Ldaps`\" pulumi-lang-go=\"`ldaps`\" pulumi-lang-python=\"`ldaps`\" pulumi-lang-yaml=\"`ldaps`\" pulumi-lang-java=\"`ldaps`\"\u003e`ldaps`\u003c/span\u003e is configured, you must use port 636. If the \u003cspan pulumi-lang-nodejs=\"`ldap`\" pulumi-lang-dotnet=\"`Ldap`\" pulumi-lang-go=\"`ldap`\" pulumi-lang-python=\"`ldap`\" pulumi-lang-yaml=\"`ldap`\" pulumi-lang-java=\"`ldap`\"\u003e`ldap`\u003c/span\u003e setting is enabled, ensure the \u003cspan pulumi-lang-nodejs=\"`startTls`\" pulumi-lang-dotnet=\"`StartTls`\" pulumi-lang-go=\"`startTls`\" pulumi-lang-python=\"`start_tls`\" pulumi-lang-yaml=\"`startTls`\" pulumi-lang-java=\"`startTls`\"\u003e`start_tls`\u003c/span\u003e setting is disabled. Default: false\n"},"realm":{"type":"string","description":"When authentication fails the plugin sends `WWW-Authenticate` header with \u003cspan pulumi-lang-nodejs=\"`realm`\" pulumi-lang-dotnet=\"`Realm`\" pulumi-lang-go=\"`realm`\" pulumi-lang-python=\"`realm`\" pulumi-lang-yaml=\"`realm`\" pulumi-lang-java=\"`realm`\"\u003e`realm`\u003c/span\u003e attribute value.\n"},"startTls":{"type":"boolean","description":"Set it to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e to issue StartTLS (Transport Layer Security) extended operation over \u003cspan pulumi-lang-nodejs=\"`ldap`\" pulumi-lang-dotnet=\"`Ldap`\" pulumi-lang-go=\"`ldap`\" pulumi-lang-python=\"`ldap`\" pulumi-lang-yaml=\"`ldap`\" pulumi-lang-java=\"`ldap`\"\u003e`ldap`\u003c/span\u003e connection. If the \u003cspan pulumi-lang-nodejs=\"`startTls`\" pulumi-lang-dotnet=\"`StartTls`\" pulumi-lang-go=\"`startTls`\" pulumi-lang-python=\"`start_tls`\" pulumi-lang-yaml=\"`startTls`\" pulumi-lang-java=\"`startTls`\"\u003e`start_tls`\u003c/span\u003e setting is enabled, ensure the \u003cspan pulumi-lang-nodejs=\"`ldaps`\" pulumi-lang-dotnet=\"`Ldaps`\" pulumi-lang-go=\"`ldaps`\" pulumi-lang-python=\"`ldaps`\" pulumi-lang-yaml=\"`ldaps`\" pulumi-lang-java=\"`ldaps`\"\u003e`ldaps`\u003c/span\u003e setting is disabled. Default: false\n"},"timeout":{"type":"number","description":"An optional timeout in milliseconds when waiting for connection with LDAP server. Default: 10000\n"},"verifyLdapHost":{"type":"boolean","description":"Set to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e to authenticate LDAP server. The server certificate will be verified according to the CA certificates specified by the \u003cspan pulumi-lang-nodejs=\"`luaSslTrustedCertificate`\" pulumi-lang-dotnet=\"`LuaSslTrustedCertificate`\" pulumi-lang-go=\"`luaSslTrustedCertificate`\" pulumi-lang-python=\"`lua_ssl_trusted_certificate`\" pulumi-lang-yaml=\"`luaSslTrustedCertificate`\" pulumi-lang-java=\"`luaSslTrustedCertificate`\"\u003e`lua_ssl_trusted_certificate`\u003c/span\u003e directive. Default: false\n"}},"type":"object","required":["attribute","baseDn","ldapHost"],"language":{"nodejs":{"requiredOutputs":["attribute","baseDn","cacheTtl","headerType","hideCredentials","keepalive","ldapHost","ldapPort","ldaps","startTls","timeout","verifyLdapHost"]}}},"konnect:index/GatewayPluginLdapAuthOrdering:GatewayPluginLdapAuthOrdering":{"properties":{"after":{"$ref":"#/types/konnect:index%2FGatewayPluginLdapAuthOrderingAfter:GatewayPluginLdapAuthOrderingAfter"},"before":{"$ref":"#/types/konnect:index%2FGatewayPluginLdapAuthOrderingBefore:GatewayPluginLdapAuthOrderingBefore"}},"type":"object","language":{"nodejs":{"requiredOutputs":["after","before"]}}},"konnect:index/GatewayPluginLdapAuthOrderingAfter:GatewayPluginLdapAuthOrderingAfter":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginLdapAuthOrderingBefore:GatewayPluginLdapAuthOrderingBefore":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginLdapAuthPartial:GatewayPluginLdapAuthPartial":{"properties":{"id":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"name":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"path":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id","name","path"]}}},"konnect:index/GatewayPluginLdapAuthRoute:GatewayPluginLdapAuthRoute":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginLdapAuthService:GatewayPluginLdapAuthService":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginLogglyConfig:GatewayPluginLogglyConfig":{"properties":{"clientErrorsSeverity":{"type":"string","description":"Default: \"info\"; must be one of [\"alert\", \"crit\", \"debug\", \"emerg\", \"err\", \"info\", \"notice\", \"warning\"]\n"},"customFieldsByLua":{"type":"object","additionalProperties":{"type":"string"},"description":"Lua code as a key-value map\n"},"host":{"type":"string","description":"A string representing a host name, such as example.com. Default: \"logs-01.loggly.com\"\n"},"key":{"type":"string"},"logLevel":{"type":"string","description":"Default: \"info\"; must be one of [\"alert\", \"crit\", \"debug\", \"emerg\", \"err\", \"info\", \"notice\", \"warning\"]\n"},"port":{"type":"number","description":"An integer representing a port number between 0 and 65535, inclusive. Default: 514\n"},"serverErrorsSeverity":{"type":"string","description":"Default: \"info\"; must be one of [\"alert\", \"crit\", \"debug\", \"emerg\", \"err\", \"info\", \"notice\", \"warning\"]\n"},"successfulSeverity":{"type":"string","description":"Default: \"info\"; must be one of [\"alert\", \"crit\", \"debug\", \"emerg\", \"err\", \"info\", \"notice\", \"warning\"]\n"},"tags":{"type":"array","items":{"type":"string"},"description":"Default: [\"kong\"]\n"},"timeout":{"type":"number","description":"Default: 10000\n"}},"type":"object","required":["key"],"language":{"nodejs":{"requiredOutputs":["clientErrorsSeverity","host","key","logLevel","port","serverErrorsSeverity","successfulSeverity","tags","timeout"]}}},"konnect:index/GatewayPluginLogglyConsumer:GatewayPluginLogglyConsumer":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginLogglyOrdering:GatewayPluginLogglyOrdering":{"properties":{"after":{"$ref":"#/types/konnect:index%2FGatewayPluginLogglyOrderingAfter:GatewayPluginLogglyOrderingAfter"},"before":{"$ref":"#/types/konnect:index%2FGatewayPluginLogglyOrderingBefore:GatewayPluginLogglyOrderingBefore"}},"type":"object","language":{"nodejs":{"requiredOutputs":["after","before"]}}},"konnect:index/GatewayPluginLogglyOrderingAfter:GatewayPluginLogglyOrderingAfter":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginLogglyOrderingBefore:GatewayPluginLogglyOrderingBefore":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginLogglyPartial:GatewayPluginLogglyPartial":{"properties":{"id":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"name":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"path":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id","name","path"]}}},"konnect:index/GatewayPluginLogglyRoute:GatewayPluginLogglyRoute":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginLogglyService:GatewayPluginLogglyService":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginMockingConfig:GatewayPluginMockingConfig":{"properties":{"apiSpecification":{"type":"string","description":"The contents of the specification file. You must use this option for hybrid or DB-less mode. You can include the full specification as part of the configuration. In Kong Manager, you can copy and paste the contents of the spec directly into the `Config.Api Specification` text field.\n"},"apiSpecificationFilename":{"type":"string","description":"The path and name of the specification file loaded into Kong Gateway's database. You cannot use this option for DB-less or hybrid mode.\n"},"customBasePath":{"type":"string","description":"The base path to be used for path match evaluation. This value is ignored if \u003cspan pulumi-lang-nodejs=\"`includeBasePath`\" pulumi-lang-dotnet=\"`IncludeBasePath`\" pulumi-lang-go=\"`includeBasePath`\" pulumi-lang-python=\"`include_base_path`\" pulumi-lang-yaml=\"`includeBasePath`\" pulumi-lang-java=\"`includeBasePath`\"\u003e`include_base_path`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e.\n"},"includeBasePath":{"type":"boolean","description":"Indicates whether to include the base path when performing path match evaluation. Default: false\n"},"includedStatusCodes":{"type":"array","items":{"type":"number"},"description":"A global list of the HTTP status codes that can only be selected and returned.\n"},"maxDelayTime":{"type":"number","description":"The maximum value in seconds of delay time. Set this value when \u003cspan pulumi-lang-nodejs=\"`randomDelay`\" pulumi-lang-dotnet=\"`RandomDelay`\" pulumi-lang-go=\"`randomDelay`\" pulumi-lang-python=\"`random_delay`\" pulumi-lang-yaml=\"`randomDelay`\" pulumi-lang-java=\"`randomDelay`\"\u003e`random_delay`\u003c/span\u003e is enabled and you want to adjust the default. The value must be greater than the \u003cspan pulumi-lang-nodejs=\"`minDelayTime`\" pulumi-lang-dotnet=\"`MinDelayTime`\" pulumi-lang-go=\"`minDelayTime`\" pulumi-lang-python=\"`min_delay_time`\" pulumi-lang-yaml=\"`minDelayTime`\" pulumi-lang-java=\"`minDelayTime`\"\u003e`min_delay_time`\u003c/span\u003e. Default: 1\n"},"minDelayTime":{"type":"number","description":"The minimum value in seconds of delay time. Set this value when \u003cspan pulumi-lang-nodejs=\"`randomDelay`\" pulumi-lang-dotnet=\"`RandomDelay`\" pulumi-lang-go=\"`randomDelay`\" pulumi-lang-python=\"`random_delay`\" pulumi-lang-yaml=\"`randomDelay`\" pulumi-lang-java=\"`randomDelay`\"\u003e`random_delay`\u003c/span\u003e is enabled and you want to adjust the default. The value must be less than the \u003cspan pulumi-lang-nodejs=\"`maxDelayTime`\" pulumi-lang-dotnet=\"`MaxDelayTime`\" pulumi-lang-go=\"`maxDelayTime`\" pulumi-lang-python=\"`max_delay_time`\" pulumi-lang-yaml=\"`maxDelayTime`\" pulumi-lang-java=\"`maxDelayTime`\"\u003e`max_delay_time`\u003c/span\u003e.\n"},"randomDelay":{"type":"boolean","description":"Enables a random delay in the mocked response. Introduces delays to simulate real-time response times by APIs. Default: false\n"},"randomExamples":{"type":"boolean","description":"Randomly selects one example and returns it. This parameter requires the spec to have multiple examples configured. Default: false\n"},"randomStatusCode":{"type":"boolean","description":"Determines whether to randomly select an HTTP status code from the responses of the corresponding API method. The default value is \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e, which means the minimum HTTP status code is always selected and returned. Default: false\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["includeBasePath","maxDelayTime","minDelayTime","randomDelay","randomExamples","randomStatusCode"]}}},"konnect:index/GatewayPluginMockingConsumer:GatewayPluginMockingConsumer":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginMockingOrdering:GatewayPluginMockingOrdering":{"properties":{"after":{"$ref":"#/types/konnect:index%2FGatewayPluginMockingOrderingAfter:GatewayPluginMockingOrderingAfter"},"before":{"$ref":"#/types/konnect:index%2FGatewayPluginMockingOrderingBefore:GatewayPluginMockingOrderingBefore"}},"type":"object","language":{"nodejs":{"requiredOutputs":["after","before"]}}},"konnect:index/GatewayPluginMockingOrderingAfter:GatewayPluginMockingOrderingAfter":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginMockingOrderingBefore:GatewayPluginMockingOrderingBefore":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginMockingPartial:GatewayPluginMockingPartial":{"properties":{"id":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"name":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"path":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id","name","path"]}}},"konnect:index/GatewayPluginMockingRoute:GatewayPluginMockingRoute":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginMockingService:GatewayPluginMockingService":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginMtlsAuthConfig:GatewayPluginMtlsAuthConfig":{"properties":{"allowPartialChain":{"type":"boolean","description":"Allow certificate verification with only an intermediate certificate. When this is enabled, you don't need to upload the full chain to Kong Certificates. Default: false\n"},"anonymous":{"type":"string","description":"An optional string (consumer UUID or username) value to use as an “anonymous” consumer if authentication fails. If empty (default null), the request fails with an authentication failure \u003cspan pulumi-lang-nodejs=\"`4xx`\" pulumi-lang-dotnet=\"`4xx`\" pulumi-lang-go=\"`4xx`\" pulumi-lang-python=\"`4xx`\" pulumi-lang-yaml=\"`4xx`\" pulumi-lang-java=\"`4xx`\"\u003e`4xx`\u003c/span\u003e. Note that this value must refer to the consumer \u003cspan pulumi-lang-nodejs=\"`id`\" pulumi-lang-dotnet=\"`Id`\" pulumi-lang-go=\"`id`\" pulumi-lang-python=\"`id`\" pulumi-lang-yaml=\"`id`\" pulumi-lang-java=\"`id`\"\u003e`id`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`username`\" pulumi-lang-dotnet=\"`Username`\" pulumi-lang-go=\"`username`\" pulumi-lang-python=\"`username`\" pulumi-lang-yaml=\"`username`\" pulumi-lang-java=\"`username`\"\u003e`username`\u003c/span\u003e attribute, and **not** its \u003cspan pulumi-lang-nodejs=\"`customId`\" pulumi-lang-dotnet=\"`CustomId`\" pulumi-lang-go=\"`customId`\" pulumi-lang-python=\"`custom_id`\" pulumi-lang-yaml=\"`customId`\" pulumi-lang-java=\"`customId`\"\u003e`custom_id`\u003c/span\u003e.\n"},"authenticatedGroupBy":{"type":"string","description":"Certificate property to use as the authenticated group. Valid values are `CN` (Common Name) or `DN` (Distinguished Name). Once \u003cspan pulumi-lang-nodejs=\"`skipConsumerLookup`\" pulumi-lang-dotnet=\"`SkipConsumerLookup`\" pulumi-lang-go=\"`skipConsumerLookup`\" pulumi-lang-python=\"`skip_consumer_lookup`\" pulumi-lang-yaml=\"`skipConsumerLookup`\" pulumi-lang-java=\"`skipConsumerLookup`\"\u003e`skip_consumer_lookup`\u003c/span\u003e is applied, any client with a valid certificate can access the Service/API. To restrict usage to only some of the authenticated users, also add the ACL plugin (not covered here) and create allowed or denied groups of users. Default: \"CN\"; must be one of [\"CN\", \"DN\"]\n"},"caCertificates":{"type":"array","items":{"type":"string"},"description":"List of CA Certificates strings to use as Certificate Authorities (CA) when validating a client certificate. At least one is required but you can specify as many as needed. The value of this array is comprised of primary keys (\u003cspan pulumi-lang-nodejs=\"`id`\" pulumi-lang-dotnet=\"`Id`\" pulumi-lang-go=\"`id`\" pulumi-lang-python=\"`id`\" pulumi-lang-yaml=\"`id`\" pulumi-lang-java=\"`id`\"\u003e`id`\u003c/span\u003e).\n"},"cacheTtl":{"type":"number","description":"Cache expiry time in seconds. Default: 60\n"},"certCacheTtl":{"type":"number","description":"The length of time in seconds between refreshes of the revocation check status cache. Default: 60000\n"},"consumerBies":{"type":"array","items":{"type":"string"},"description":"Whether to match the subject name of the client-supplied certificate against consumer's \u003cspan pulumi-lang-nodejs=\"`username`\" pulumi-lang-dotnet=\"`Username`\" pulumi-lang-go=\"`username`\" pulumi-lang-python=\"`username`\" pulumi-lang-yaml=\"`username`\" pulumi-lang-java=\"`username`\"\u003e`username`\u003c/span\u003e and/or \u003cspan pulumi-lang-nodejs=\"`customId`\" pulumi-lang-dotnet=\"`CustomId`\" pulumi-lang-go=\"`customId`\" pulumi-lang-python=\"`custom_id`\" pulumi-lang-yaml=\"`customId`\" pulumi-lang-java=\"`customId`\"\u003e`custom_id`\u003c/span\u003e attribute. If set to `[]` (the empty array), then auto-matching is disabled. Default: [\u003cspan pulumi-lang-nodejs=\"\"customId\"\" pulumi-lang-dotnet=\"\"CustomId\"\" pulumi-lang-go=\"\"customId\"\" pulumi-lang-python=\"\"custom_id\"\" pulumi-lang-yaml=\"\"customId\"\" pulumi-lang-java=\"\"customId\"\"\u003e\"custom_id\"\u003c/span\u003e,\"username\"]\n"},"defaultConsumer":{"type":"string","description":"The UUID or username of the consumer to use when a trusted client certificate is presented but no consumer matches. Note that this value must refer to the consumer \u003cspan pulumi-lang-nodejs=\"`id`\" pulumi-lang-dotnet=\"`Id`\" pulumi-lang-go=\"`id`\" pulumi-lang-python=\"`id`\" pulumi-lang-yaml=\"`id`\" pulumi-lang-java=\"`id`\"\u003e`id`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`username`\" pulumi-lang-dotnet=\"`Username`\" pulumi-lang-go=\"`username`\" pulumi-lang-python=\"`username`\" pulumi-lang-yaml=\"`username`\" pulumi-lang-java=\"`username`\"\u003e`username`\u003c/span\u003e attribute, and **not** its \u003cspan pulumi-lang-nodejs=\"`customId`\" pulumi-lang-dotnet=\"`CustomId`\" pulumi-lang-go=\"`customId`\" pulumi-lang-python=\"`custom_id`\" pulumi-lang-yaml=\"`customId`\" pulumi-lang-java=\"`customId`\"\u003e`custom_id`\u003c/span\u003e.\n"},"httpProxyHost":{"type":"string","description":"A string representing a host name, such as example.com.\n"},"httpProxyPort":{"type":"number","description":"An integer representing a port number between 0 and 65535, inclusive.\n"},"httpTimeout":{"type":"number","description":"HTTP timeout threshold in milliseconds when communicating with the OCSP server or downloading CRL. Default: 30000\n"},"httpsProxyHost":{"type":"string","description":"A string representing a host name, such as example.com.\n"},"httpsProxyPort":{"type":"number","description":"An integer representing a port number between 0 and 65535, inclusive.\n"},"revocationCheckMode":{"type":"string","description":"Controls client certificate revocation check behavior. If set to `SKIP`, no revocation check is performed. If set to `IGNORE_CA_ERROR`, the plugin respects the revocation status when either OCSP or CRL URL is set, and doesn't fail on network issues. If set to `STRICT`, the plugin only treats the certificate as valid when it's able to verify the revocation status. Default: \"IGNORE*CA*ERROR\"; must be one of [\"IGNORE*CA*ERROR\", \"SKIP\", \"STRICT\"]\n"},"sendCaDn":{"type":"boolean","description":"Sends the distinguished names (DN) of the configured CA list in the TLS handshake message. Default: false\n"},"skipConsumerLookup":{"type":"boolean","description":"Skip consumer lookup once certificate is trusted against the configured CA list. Default: false\n"},"sslVerify":{"type":"boolean","description":"This option enables verification of the certificate presented by the server of the OCSP responder's URL and by the server of the CRL Distribution Point.\n"}},"type":"object","required":["caCertificates"],"language":{"nodejs":{"requiredOutputs":["allowPartialChain","authenticatedGroupBy","caCertificates","cacheTtl","certCacheTtl","consumerBies","httpTimeout","revocationCheckMode","sendCaDn","skipConsumerLookup"]}}},"konnect:index/GatewayPluginMtlsAuthOrdering:GatewayPluginMtlsAuthOrdering":{"properties":{"after":{"$ref":"#/types/konnect:index%2FGatewayPluginMtlsAuthOrderingAfter:GatewayPluginMtlsAuthOrderingAfter"},"before":{"$ref":"#/types/konnect:index%2FGatewayPluginMtlsAuthOrderingBefore:GatewayPluginMtlsAuthOrderingBefore"}},"type":"object","language":{"nodejs":{"requiredOutputs":["after","before"]}}},"konnect:index/GatewayPluginMtlsAuthOrderingAfter:GatewayPluginMtlsAuthOrderingAfter":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginMtlsAuthOrderingBefore:GatewayPluginMtlsAuthOrderingBefore":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginMtlsAuthPartial:GatewayPluginMtlsAuthPartial":{"properties":{"id":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"name":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"path":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id","name","path"]}}},"konnect:index/GatewayPluginMtlsAuthRoute:GatewayPluginMtlsAuthRoute":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginMtlsAuthService:GatewayPluginMtlsAuthService":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginOasValidationConfig:GatewayPluginOasValidationConfig":{"properties":{"allowedHeaderParameters":{"type":"string","description":"List of header parameters in the request that will be ignored when performing HTTP header validation. These are additional headers added to an API request beyond those defined in the API specification.  For example, you might include the HTTP header `User-Agent`, which lets servers and network peers identify the application, operating system, vendor, and/or version of the requesting user agent. Default: \"Host,Content-Type,User-Agent,Accept,Content-Length\"\n"},"apiSpec":{"type":"string","description":"The API specification defined using either Swagger or the OpenAPI. This can be either a JSON or YAML based file. If using a YAML file, the spec needs to be URI-Encoded to preserve the YAML format.\n"},"apiSpecEncoded":{"type":"boolean","description":"Indicates whether the\u003cspan pulumi-lang-nodejs=\" apiSpec \" pulumi-lang-dotnet=\" ApiSpec \" pulumi-lang-go=\" apiSpec \" pulumi-lang-python=\" api_spec \" pulumi-lang-yaml=\" apiSpec \" pulumi-lang-java=\" apiSpec \"\u003e api_spec \u003c/span\u003eis URI-Encoded. Default: true\n"},"collectAllErrors":{"type":"boolean","description":"If set to true, collects all validation errors instead of stopping at the first error. Note: Enabling this option with OpenAPI 3.0 will affect performance. Default: false\n"},"customBasePath":{"type":"string","description":"The base path to be used for path match evaluation. This value is ignored if \u003cspan pulumi-lang-nodejs=\"`includeBasePath`\" pulumi-lang-dotnet=\"`IncludeBasePath`\" pulumi-lang-go=\"`includeBasePath`\" pulumi-lang-python=\"`include_base_path`\" pulumi-lang-yaml=\"`includeBasePath`\" pulumi-lang-java=\"`includeBasePath`\"\u003e`include_base_path`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e.\n"},"headerParameterCheck":{"type":"boolean","description":"If set to true, checks if HTTP header parameters in the request exist in the API specification. Default: false\n"},"includeBasePath":{"type":"boolean","description":"Indicates whether to include the base path when performing path match evaluation. Default: false\n"},"notifyOnlyRequestValidationFailure":{"type":"boolean","description":"If set to true, notifications via event hooks are enabled, but request based validation failures don't affect the request flow. Default: false\n"},"notifyOnlyResponseBodyValidationFailure":{"type":"boolean","description":"If set to true, notifications via event hooks are enabled, but response validation failures don't affect the response flow. Default: false\n"},"queryParameterCheck":{"type":"boolean","description":"If set to true, checks if query parameters in the request exist in the API specification. Default: false\n"},"validateRequestBody":{"type":"boolean","description":"If set to true, validates the request body content against the API specification. Default: true\n"},"validateRequestHeaderParams":{"type":"boolean","description":"If set to true, validates HTTP header parameters against the API specification. Default: true\n"},"validateRequestQueryParams":{"type":"boolean","description":"If set to true, validates query parameters against the API specification. Default: true\n"},"validateRequestUriParams":{"type":"boolean","description":"If set to true, validates URI parameters in the request against the API specification. Default: true\n"},"validateResponseBody":{"type":"boolean","description":"If set to true, validates the response from the upstream services against the API specification. If validation fails, it results in an `HTTP 406 Not Acceptable` status code. Default: false\n"},"verboseResponse":{"type":"boolean","description":"If set to true, returns a detailed error message for invalid requests \u0026 responses. This is useful while testing. Default: false\n"}},"type":"object","required":["apiSpec"],"language":{"nodejs":{"requiredOutputs":["allowedHeaderParameters","apiSpec","apiSpecEncoded","collectAllErrors","headerParameterCheck","includeBasePath","notifyOnlyRequestValidationFailure","notifyOnlyResponseBodyValidationFailure","queryParameterCheck","validateRequestBody","validateRequestHeaderParams","validateRequestQueryParams","validateRequestUriParams","validateResponseBody","verboseResponse"]}}},"konnect:index/GatewayPluginOasValidationConsumer:GatewayPluginOasValidationConsumer":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginOasValidationOrdering:GatewayPluginOasValidationOrdering":{"properties":{"after":{"$ref":"#/types/konnect:index%2FGatewayPluginOasValidationOrderingAfter:GatewayPluginOasValidationOrderingAfter"},"before":{"$ref":"#/types/konnect:index%2FGatewayPluginOasValidationOrderingBefore:GatewayPluginOasValidationOrderingBefore"}},"type":"object","language":{"nodejs":{"requiredOutputs":["after","before"]}}},"konnect:index/GatewayPluginOasValidationOrderingAfter:GatewayPluginOasValidationOrderingAfter":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginOasValidationOrderingBefore:GatewayPluginOasValidationOrderingBefore":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginOasValidationPartial:GatewayPluginOasValidationPartial":{"properties":{"id":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"name":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"path":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id","name","path"]}}},"konnect:index/GatewayPluginOasValidationRoute:GatewayPluginOasValidationRoute":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginOasValidationService:GatewayPluginOasValidationService":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginOauth2IntrospectionConfig:GatewayPluginOauth2IntrospectionConfig":{"properties":{"anonymous":{"type":"string","description":"An optional string (consumer UUID or username) value to use as an “anonymous” consumer if authentication fails. If empty (default null), the request fails with an authentication failure \u003cspan pulumi-lang-nodejs=\"`4xx`\" pulumi-lang-dotnet=\"`4xx`\" pulumi-lang-go=\"`4xx`\" pulumi-lang-python=\"`4xx`\" pulumi-lang-yaml=\"`4xx`\" pulumi-lang-java=\"`4xx`\"\u003e`4xx`\u003c/span\u003e. Note that this value must refer to the consumer \u003cspan pulumi-lang-nodejs=\"`id`\" pulumi-lang-dotnet=\"`Id`\" pulumi-lang-go=\"`id`\" pulumi-lang-python=\"`id`\" pulumi-lang-yaml=\"`id`\" pulumi-lang-java=\"`id`\"\u003e`id`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`username`\" pulumi-lang-dotnet=\"`Username`\" pulumi-lang-go=\"`username`\" pulumi-lang-python=\"`username`\" pulumi-lang-yaml=\"`username`\" pulumi-lang-java=\"`username`\"\u003e`username`\u003c/span\u003e attribute, and **not** its \u003cspan pulumi-lang-nodejs=\"`customId`\" pulumi-lang-dotnet=\"`CustomId`\" pulumi-lang-go=\"`customId`\" pulumi-lang-python=\"`custom_id`\" pulumi-lang-yaml=\"`customId`\" pulumi-lang-java=\"`customId`\"\u003e`custom_id`\u003c/span\u003e. Default: \"\"\n"},"authorizationValue":{"type":"string","description":"The value to set as the `Authorization` header when querying the introspection endpoint. This depends on the OAuth 2.0 server, but usually is the \u003cspan pulumi-lang-nodejs=\"`clientId`\" pulumi-lang-dotnet=\"`ClientId`\" pulumi-lang-go=\"`clientId`\" pulumi-lang-python=\"`client_id`\" pulumi-lang-yaml=\"`clientId`\" pulumi-lang-java=\"`clientId`\"\u003e`client_id`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`clientSecret`\" pulumi-lang-dotnet=\"`ClientSecret`\" pulumi-lang-go=\"`clientSecret`\" pulumi-lang-python=\"`client_secret`\" pulumi-lang-yaml=\"`clientSecret`\" pulumi-lang-java=\"`clientSecret`\"\u003e`client_secret`\u003c/span\u003e as a Base64-encoded Basic Auth string (`Basic MG9hNWl...`).\n"},"consumerBy":{"type":"string","description":"A string indicating whether to associate OAuth2 \u003cspan pulumi-lang-nodejs=\"`username`\" pulumi-lang-dotnet=\"`Username`\" pulumi-lang-go=\"`username`\" pulumi-lang-python=\"`username`\" pulumi-lang-yaml=\"`username`\" pulumi-lang-java=\"`username`\"\u003e`username`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`clientId`\" pulumi-lang-dotnet=\"`ClientId`\" pulumi-lang-go=\"`clientId`\" pulumi-lang-python=\"`client_id`\" pulumi-lang-yaml=\"`clientId`\" pulumi-lang-java=\"`clientId`\"\u003e`client_id`\u003c/span\u003e with the consumer's username. OAuth2 \u003cspan pulumi-lang-nodejs=\"`username`\" pulumi-lang-dotnet=\"`Username`\" pulumi-lang-go=\"`username`\" pulumi-lang-python=\"`username`\" pulumi-lang-yaml=\"`username`\" pulumi-lang-java=\"`username`\"\u003e`username`\u003c/span\u003e is mapped to a consumer's \u003cspan pulumi-lang-nodejs=\"`username`\" pulumi-lang-dotnet=\"`Username`\" pulumi-lang-go=\"`username`\" pulumi-lang-python=\"`username`\" pulumi-lang-yaml=\"`username`\" pulumi-lang-java=\"`username`\"\u003e`username`\u003c/span\u003e field, while an OAuth2 \u003cspan pulumi-lang-nodejs=\"`clientId`\" pulumi-lang-dotnet=\"`ClientId`\" pulumi-lang-go=\"`clientId`\" pulumi-lang-python=\"`client_id`\" pulumi-lang-yaml=\"`clientId`\" pulumi-lang-java=\"`clientId`\"\u003e`client_id`\u003c/span\u003e maps to a consumer's \u003cspan pulumi-lang-nodejs=\"`customId`\" pulumi-lang-dotnet=\"`CustomId`\" pulumi-lang-go=\"`customId`\" pulumi-lang-python=\"`custom_id`\" pulumi-lang-yaml=\"`customId`\" pulumi-lang-java=\"`customId`\"\u003e`custom_id`\u003c/span\u003e. Default: \"username\"; must be one of [\u003cspan pulumi-lang-nodejs=\"\"clientId\"\" pulumi-lang-dotnet=\"\"ClientId\"\" pulumi-lang-go=\"\"clientId\"\" pulumi-lang-python=\"\"client_id\"\" pulumi-lang-yaml=\"\"clientId\"\" pulumi-lang-java=\"\"clientId\"\"\u003e\"client_id\"\u003c/span\u003e, \"username\"]\n"},"customClaimsForwards":{"type":"array","items":{"type":"string"},"description":"A list of custom claims to be forwarded from the introspection response to the upstream request. Claims are forwarded in headers with prefix `X-Credential-{claim-name}`. Default: []\n"},"customIntrospectionHeaders":{"type":"object","additionalProperties":{"type":"string"},"description":"A list of custom headers to be added in the introspection request.\n"},"hideCredentials":{"type":"boolean","description":"An optional boolean value telling the plugin to hide the credential to the upstream API server. It will be removed by Kong before proxying the request. Default: false\n"},"introspectRequest":{"type":"boolean","description":"A boolean indicating whether to forward information about the current downstream request to the introspect endpoint. If true, headers `X-Request-Path` and `X-Request-Http-Method` will be inserted into the introspect request. Default: false\n"},"introspectionUrl":{"type":"string","description":"A string representing a URL, such as https://example.com/path/to/resource?q=search.\n"},"keepalive":{"type":"number","description":"An optional value in milliseconds that defines how long an idle connection lives before being closed. Default: 60000\n"},"runOnPreflight":{"type":"boolean","description":"A boolean value that indicates whether the plugin should run (and try to authenticate) on `OPTIONS` preflight requests. If set to \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e, then `OPTIONS` requests will always be allowed. Default: true\n"},"timeout":{"type":"number","description":"An optional timeout in milliseconds when sending data to the upstream server. Default: 10000\n"},"tokenTypeHint":{"type":"string","description":"The \u003cspan pulumi-lang-nodejs=\"`tokenTypeHint`\" pulumi-lang-dotnet=\"`TokenTypeHint`\" pulumi-lang-go=\"`tokenTypeHint`\" pulumi-lang-python=\"`token_type_hint`\" pulumi-lang-yaml=\"`tokenTypeHint`\" pulumi-lang-java=\"`tokenTypeHint`\"\u003e`token_type_hint`\u003c/span\u003e value to associate to introspection requests.\n"},"ttl":{"type":"number","description":"The TTL in seconds for the introspection response. Set to 0 to disable the expiration. Default: 30\n"}},"type":"object","required":["authorizationValue","introspectionUrl"],"language":{"nodejs":{"requiredOutputs":["anonymous","authorizationValue","consumerBy","customClaimsForwards","customIntrospectionHeaders","hideCredentials","introspectRequest","introspectionUrl","keepalive","runOnPreflight","timeout","ttl"]}}},"konnect:index/GatewayPluginOauth2IntrospectionOrdering:GatewayPluginOauth2IntrospectionOrdering":{"properties":{"after":{"$ref":"#/types/konnect:index%2FGatewayPluginOauth2IntrospectionOrderingAfter:GatewayPluginOauth2IntrospectionOrderingAfter"},"before":{"$ref":"#/types/konnect:index%2FGatewayPluginOauth2IntrospectionOrderingBefore:GatewayPluginOauth2IntrospectionOrderingBefore"}},"type":"object","language":{"nodejs":{"requiredOutputs":["after","before"]}}},"konnect:index/GatewayPluginOauth2IntrospectionOrderingAfter:GatewayPluginOauth2IntrospectionOrderingAfter":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginOauth2IntrospectionOrderingBefore:GatewayPluginOauth2IntrospectionOrderingBefore":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginOauth2IntrospectionPartial:GatewayPluginOauth2IntrospectionPartial":{"properties":{"id":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"name":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"path":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id","name","path"]}}},"konnect:index/GatewayPluginOauth2IntrospectionRoute:GatewayPluginOauth2IntrospectionRoute":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginOauth2IntrospectionService:GatewayPluginOauth2IntrospectionService":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginOpaConfig:GatewayPluginOpaConfig":{"properties":{"includeBodyInOpaInput":{"type":"boolean","description":"Default: false\n"},"includeConsumerInOpaInput":{"type":"boolean","description":"If set to true, the Kong Gateway Consumer object in use for the current request (if any) is included as input to OPA. Default: false\n"},"includeParsedJsonBodyInOpaInput":{"type":"boolean","description":"If set to true and the `Content-Type` header of the current request is `application/json`, the request body will be JSON decoded and the decoded struct is included as input to OPA. Default: false\n"},"includeRouteInOpaInput":{"type":"boolean","description":"If set to true, the Kong Gateway Route object in use for the current request is included as input to OPA. Default: false\n"},"includeServiceInOpaInput":{"type":"boolean","description":"If set to true, the Kong Gateway Service object in use for the current request is included as input to OPA. Default: false\n"},"includeUriCapturesInOpaInput":{"type":"boolean","description":"If set to true, the regex capture groups captured on the Kong Gateway Route's path field in the current request (if any) are included as input to OPA. Default: false\n"},"opaHost":{"type":"string","description":"A string representing a host name, such as example.com. Default: \"localhost\"\n"},"opaPath":{"type":"string","description":"A string representing a URL path, such as /path/to/resource. Must start with a forward slash (/) and must not contain empty segments (i.e., two consecutive forward slashes).\n"},"opaPort":{"type":"number","description":"An integer representing a port number between 0 and 65535, inclusive. Default: 8181\n"},"opaProtocol":{"type":"string","description":"The protocol to use when talking to Open Policy Agent (OPA) server. Allowed protocols are \u003cspan pulumi-lang-nodejs=\"`http`\" pulumi-lang-dotnet=\"`Http`\" pulumi-lang-go=\"`http`\" pulumi-lang-python=\"`http`\" pulumi-lang-yaml=\"`http`\" pulumi-lang-java=\"`http`\"\u003e`http`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`https`\" pulumi-lang-dotnet=\"`Https`\" pulumi-lang-go=\"`https`\" pulumi-lang-python=\"`https`\" pulumi-lang-yaml=\"`https`\" pulumi-lang-java=\"`https`\"\u003e`https`\u003c/span\u003e. Default: \"http\"; must be one of [\"http\", \"https\"]\n"},"sslVerify":{"type":"boolean","description":"If set to true, the OPA certificate will be verified according to the CA certificates specified in lua*ssl*trusted_certificate. Default: true\n"}},"type":"object","required":["opaPath"],"language":{"nodejs":{"requiredOutputs":["includeBodyInOpaInput","includeConsumerInOpaInput","includeParsedJsonBodyInOpaInput","includeRouteInOpaInput","includeServiceInOpaInput","includeUriCapturesInOpaInput","opaHost","opaPath","opaPort","opaProtocol","sslVerify"]}}},"konnect:index/GatewayPluginOpaOrdering:GatewayPluginOpaOrdering":{"properties":{"after":{"$ref":"#/types/konnect:index%2FGatewayPluginOpaOrderingAfter:GatewayPluginOpaOrderingAfter"},"before":{"$ref":"#/types/konnect:index%2FGatewayPluginOpaOrderingBefore:GatewayPluginOpaOrderingBefore"}},"type":"object","language":{"nodejs":{"requiredOutputs":["after","before"]}}},"konnect:index/GatewayPluginOpaOrderingAfter:GatewayPluginOpaOrderingAfter":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginOpaOrderingBefore:GatewayPluginOpaOrderingBefore":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginOpaPartial:GatewayPluginOpaPartial":{"properties":{"id":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"name":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"path":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id","name","path"]}}},"konnect:index/GatewayPluginOpaRoute:GatewayPluginOpaRoute":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginOpaService:GatewayPluginOpaService":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginOpenidConnectConfig:GatewayPluginOpenidConnectConfig":{"properties":{"anonymous":{"type":"string","description":"An optional string (consumer UUID or username) value that functions as an “anonymous” consumer if authentication fails. If empty (default null), requests that fail authentication will return a \u003cspan pulumi-lang-nodejs=\"`4xx`\" pulumi-lang-dotnet=\"`4xx`\" pulumi-lang-go=\"`4xx`\" pulumi-lang-python=\"`4xx`\" pulumi-lang-yaml=\"`4xx`\" pulumi-lang-java=\"`4xx`\"\u003e`4xx`\u003c/span\u003e HTTP status code. This value must refer to the consumer \u003cspan pulumi-lang-nodejs=\"`id`\" pulumi-lang-dotnet=\"`Id`\" pulumi-lang-go=\"`id`\" pulumi-lang-python=\"`id`\" pulumi-lang-yaml=\"`id`\" pulumi-lang-java=\"`id`\"\u003e`id`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`username`\" pulumi-lang-dotnet=\"`Username`\" pulumi-lang-go=\"`username`\" pulumi-lang-python=\"`username`\" pulumi-lang-yaml=\"`username`\" pulumi-lang-java=\"`username`\"\u003e`username`\u003c/span\u003e attribute, and **not** its \u003cspan pulumi-lang-nodejs=\"`customId`\" pulumi-lang-dotnet=\"`CustomId`\" pulumi-lang-go=\"`customId`\" pulumi-lang-python=\"`custom_id`\" pulumi-lang-yaml=\"`customId`\" pulumi-lang-java=\"`customId`\"\u003e`custom_id`\u003c/span\u003e.\n"},"audienceClaims":{"type":"array","items":{"type":"string"},"description":"The claim that contains the audience. If multiple values are set, it means the claim is inside a nested object of the token payload. Default: [\"aud\"]\n"},"audienceRequireds":{"type":"array","items":{"type":"string"},"description":"The audiences (\u003cspan pulumi-lang-nodejs=\"`audienceClaim`\" pulumi-lang-dotnet=\"`AudienceClaim`\" pulumi-lang-go=\"`audienceClaim`\" pulumi-lang-python=\"`audience_claim`\" pulumi-lang-yaml=\"`audienceClaim`\" pulumi-lang-java=\"`audienceClaim`\"\u003e`audience_claim`\u003c/span\u003e claim) required to be present in the access token (or introspection results) for successful authorization. This config parameter works in both **AND** / **OR** cases.\n"},"audiences":{"type":"array","items":{"type":"string"},"description":"The audience passed to the authorization endpoint.\n"},"authMethods":{"type":"array","items":{"type":"string"},"description":"Types of credentials/grants to enable. Default: [\"authorization*code\",\"bearer\",\"client*credentials\",\"introspection\",\"kong*oauth2\",\"password\",\"refresh*token\",\"session\",\"userinfo\"]\n"},"authenticatedGroupsClaims":{"type":"array","items":{"type":"string"},"description":"The claim that contains authenticated groups. This setting can be used together with ACL plugin, but it also enables IdP managed groups with other applications and integrations. If multiple values are set, it means the claim is inside a nested object of the token payload.\n"},"authorizationCookieDomain":{"type":"string","description":"The authorization cookie Domain flag.\n"},"authorizationCookieHttpOnly":{"type":"boolean","description":"Forbids JavaScript from accessing the cookie, for example, through the `Document.cookie` property. Default: true\n"},"authorizationCookieName":{"type":"string","description":"The authorization cookie name. Default: \"authorization\"\n"},"authorizationCookiePath":{"type":"string","description":"The authorization cookie Path flag. Default: \"/\"\n"},"authorizationCookieSameSite":{"type":"string","description":"Controls whether a cookie is sent with cross-origin requests, providing some protection against cross-site request forgery attacks. Default: \"Default\"; must be one of [\"Default\", \"Lax\", \"None\", \"Strict\"]\n"},"authorizationCookieSecure":{"type":"boolean","description":"Cookie is only sent to the server when a request is made with the https: scheme (except on localhost), and therefore is more resistant to man-in-the-middle attacks.\n"},"authorizationEndpoint":{"type":"string","description":"The authorization endpoint. If set it overrides the value in \u003cspan pulumi-lang-nodejs=\"`authorizationEndpoint`\" pulumi-lang-dotnet=\"`AuthorizationEndpoint`\" pulumi-lang-go=\"`authorizationEndpoint`\" pulumi-lang-python=\"`authorization_endpoint`\" pulumi-lang-yaml=\"`authorizationEndpoint`\" pulumi-lang-java=\"`authorizationEndpoint`\"\u003e`authorization_endpoint`\u003c/span\u003e returned by the discovery endpoint.\n"},"authorizationQueryArgsClients":{"type":"array","items":{"type":"string"},"description":"Extra query arguments passed from the client to the authorization endpoint.\n"},"authorizationQueryArgsNames":{"type":"array","items":{"type":"string"},"description":"Extra query argument names passed to the authorization endpoint.\n"},"authorizationQueryArgsValues":{"type":"array","items":{"type":"string"},"description":"Extra query argument values passed to the authorization endpoint.\n"},"authorizationRollingTimeout":{"type":"number","description":"Specifies how long the session used for the authorization code flow can be used in seconds until it needs to be renewed. 0 disables the checks and rolling. Default: 600\n"},"bearerTokenCookieName":{"type":"string","description":"The name of the cookie in which the bearer token is passed.\n"},"bearerTokenParamTypes":{"type":"array","items":{"type":"string"},"description":"Where to look for the bearer token: - \u003cspan pulumi-lang-nodejs=\"`header`\" pulumi-lang-dotnet=\"`Header`\" pulumi-lang-go=\"`header`\" pulumi-lang-python=\"`header`\" pulumi-lang-yaml=\"`header`\" pulumi-lang-java=\"`header`\"\u003e`header`\u003c/span\u003e: search the `Authorization`, `access-token`, and `x-access-token` HTTP headers - \u003cspan pulumi-lang-nodejs=\"`query`\" pulumi-lang-dotnet=\"`Query`\" pulumi-lang-go=\"`query`\" pulumi-lang-python=\"`query`\" pulumi-lang-yaml=\"`query`\" pulumi-lang-java=\"`query`\"\u003e`query`\u003c/span\u003e: search the URL's query string - \u003cspan pulumi-lang-nodejs=\"`body`\" pulumi-lang-dotnet=\"`Body`\" pulumi-lang-go=\"`body`\" pulumi-lang-python=\"`body`\" pulumi-lang-yaml=\"`body`\" pulumi-lang-java=\"`body`\"\u003e`body`\u003c/span\u003e: search the HTTP request body - \u003cspan pulumi-lang-nodejs=\"`cookie`\" pulumi-lang-dotnet=\"`Cookie`\" pulumi-lang-go=\"`cookie`\" pulumi-lang-python=\"`cookie`\" pulumi-lang-yaml=\"`cookie`\" pulumi-lang-java=\"`cookie`\"\u003e`cookie`\u003c/span\u003e: search the HTTP request cookies specified with `config.bearer_token_cookie_name`. Default: [\"body\",\"header\",\"query\"]\n"},"byUsernameIgnoreCase":{"type":"boolean","description":"If \u003cspan pulumi-lang-nodejs=\"`consumerBy`\" pulumi-lang-dotnet=\"`ConsumerBy`\" pulumi-lang-go=\"`consumerBy`\" pulumi-lang-python=\"`consumer_by`\" pulumi-lang-yaml=\"`consumerBy`\" pulumi-lang-java=\"`consumerBy`\"\u003e`consumer_by`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`username`\" pulumi-lang-dotnet=\"`Username`\" pulumi-lang-go=\"`username`\" pulumi-lang-python=\"`username`\" pulumi-lang-yaml=\"`username`\" pulumi-lang-java=\"`username`\"\u003e`username`\u003c/span\u003e, specify whether \u003cspan pulumi-lang-nodejs=\"`username`\" pulumi-lang-dotnet=\"`Username`\" pulumi-lang-go=\"`username`\" pulumi-lang-python=\"`username`\" pulumi-lang-yaml=\"`username`\" pulumi-lang-java=\"`username`\"\u003e`username`\u003c/span\u003e can match consumers case-insensitively. Default: false\n"},"cacheIntrospection":{"type":"boolean","description":"Cache the introspection endpoint requests. Default: true\n"},"cacheTokenExchange":{"type":"boolean","description":"Cache the token exchange endpoint requests. Default: true\n"},"cacheTokens":{"type":"boolean","description":"Cache the token endpoint requests. Default: true\n"},"cacheTokensSalt":{"type":"string","description":"Salt used for generating the cache key that is used for caching the token endpoint requests.\n"},"cacheTtl":{"type":"number","description":"The default cache ttl in seconds that is used in case the cached object does not specify the expiry. Default: 3600\n"},"cacheTtlMax":{"type":"number","description":"The maximum cache ttl in seconds (enforced).\n"},"cacheTtlMin":{"type":"number","description":"The minimum cache ttl in seconds (enforced).\n"},"cacheTtlNeg":{"type":"number","description":"The negative cache ttl in seconds.\n"},"cacheTtlResurrect":{"type":"number","description":"The resurrection ttl in seconds.\n"},"cacheUserInfo":{"type":"boolean","description":"Cache the user info requests. Default: true\n"},"claimsForbiddens":{"type":"array","items":{"type":"string"},"description":"If given, these claims are forbidden in the token payload.\n"},"clientAlgs":{"type":"array","items":{"type":"string"},"description":"The algorithm to use for client*secret*jwt (only HS***) or private*key*jwt authentication.\n"},"clientArg":{"type":"string","description":"The client to use for this request (the selection is made with a request parameter with the same name). Default: \u003cspan pulumi-lang-nodejs=\"\"clientId\"\" pulumi-lang-dotnet=\"\"ClientId\"\" pulumi-lang-go=\"\"clientId\"\" pulumi-lang-python=\"\"client_id\"\" pulumi-lang-yaml=\"\"clientId\"\" pulumi-lang-java=\"\"clientId\"\"\u003e\"client_id\"\u003c/span\u003e\n"},"clientAuths":{"type":"array","items":{"type":"string"},"description":"The default OpenID Connect client authentication method is 'client*secret*basic' (using 'Authorization: Basic' header), 'client*secret*post' (credentials in body), 'client*secret*jwt' (signed client assertion in body), 'private*key*jwt' (private key-signed assertion), 'tls*client*auth' (client certificate), 'self*signed*tls*client*auth' (self-signed client certificate), and 'none' (no authentication).\n"},"clientCredentialsParamTypes":{"type":"array","items":{"type":"string"},"description":"Where to look for the client credentials: - \u003cspan pulumi-lang-nodejs=\"`header`\" pulumi-lang-dotnet=\"`Header`\" pulumi-lang-go=\"`header`\" pulumi-lang-python=\"`header`\" pulumi-lang-yaml=\"`header`\" pulumi-lang-java=\"`header`\"\u003e`header`\u003c/span\u003e: search the HTTP headers - \u003cspan pulumi-lang-nodejs=\"`query`\" pulumi-lang-dotnet=\"`Query`\" pulumi-lang-go=\"`query`\" pulumi-lang-python=\"`query`\" pulumi-lang-yaml=\"`query`\" pulumi-lang-java=\"`query`\"\u003e`query`\u003c/span\u003e: search the URL's query string - \u003cspan pulumi-lang-nodejs=\"`body`\" pulumi-lang-dotnet=\"`Body`\" pulumi-lang-go=\"`body`\" pulumi-lang-python=\"`body`\" pulumi-lang-yaml=\"`body`\" pulumi-lang-java=\"`body`\"\u003e`body`\u003c/span\u003e: search from the HTTP request body. Default: [\"body\",\"header\",\"query\"]\n"},"clientIds":{"type":"array","items":{"type":"string"},"description":"The client id(s) that the plugin uses when it calls authenticated endpoints on the identity provider.\n"},"clientJwks":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginOpenidConnectConfigClientJwk:GatewayPluginOpenidConnectConfigClientJwk"},"description":"The JWK used for the private*key*jwt authentication.\n"},"clientSecrets":{"type":"array","items":{"type":"string"},"description":"The client secret.\n"},"clusterCacheRedis":{"$ref":"#/types/konnect:index%2FGatewayPluginOpenidConnectConfigClusterCacheRedis:GatewayPluginOpenidConnectConfigClusterCacheRedis"},"clusterCacheStrategy":{"type":"string","description":"The strategy to use for the cluster cache. If set, the plugin will share cache with nodes configured with the same strategy backend. Currentlly only introspection cache is shared. Default: \"off\"; must be one of [\"off\", \"redis\"]\n"},"consumerBies":{"type":"array","items":{"type":"string"},"description":"Consumer fields used for mapping: - \u003cspan pulumi-lang-nodejs=\"`id`\" pulumi-lang-dotnet=\"`Id`\" pulumi-lang-go=\"`id`\" pulumi-lang-python=\"`id`\" pulumi-lang-yaml=\"`id`\" pulumi-lang-java=\"`id`\"\u003e`id`\u003c/span\u003e: try to find the matching Consumer by \u003cspan pulumi-lang-nodejs=\"`id`\" pulumi-lang-dotnet=\"`Id`\" pulumi-lang-go=\"`id`\" pulumi-lang-python=\"`id`\" pulumi-lang-yaml=\"`id`\" pulumi-lang-java=\"`id`\"\u003e`id`\u003c/span\u003e - \u003cspan pulumi-lang-nodejs=\"`username`\" pulumi-lang-dotnet=\"`Username`\" pulumi-lang-go=\"`username`\" pulumi-lang-python=\"`username`\" pulumi-lang-yaml=\"`username`\" pulumi-lang-java=\"`username`\"\u003e`username`\u003c/span\u003e: try to find the matching Consumer by \u003cspan pulumi-lang-nodejs=\"`username`\" pulumi-lang-dotnet=\"`Username`\" pulumi-lang-go=\"`username`\" pulumi-lang-python=\"`username`\" pulumi-lang-yaml=\"`username`\" pulumi-lang-java=\"`username`\"\u003e`username`\u003c/span\u003e - \u003cspan pulumi-lang-nodejs=\"`customId`\" pulumi-lang-dotnet=\"`CustomId`\" pulumi-lang-go=\"`customId`\" pulumi-lang-python=\"`custom_id`\" pulumi-lang-yaml=\"`customId`\" pulumi-lang-java=\"`customId`\"\u003e`custom_id`\u003c/span\u003e: try to find the matching Consumer by \u003cspan pulumi-lang-nodejs=\"`customId`\" pulumi-lang-dotnet=\"`CustomId`\" pulumi-lang-go=\"`customId`\" pulumi-lang-python=\"`custom_id`\" pulumi-lang-yaml=\"`customId`\" pulumi-lang-java=\"`customId`\"\u003e`custom_id`\u003c/span\u003e. Default: [\u003cspan pulumi-lang-nodejs=\"\"customId\"\" pulumi-lang-dotnet=\"\"CustomId\"\" pulumi-lang-go=\"\"customId\"\" pulumi-lang-python=\"\"custom_id\"\" pulumi-lang-yaml=\"\"customId\"\" pulumi-lang-java=\"\"customId\"\"\u003e\"custom_id\"\u003c/span\u003e,\"username\"]\n"},"consumerClaims":{"type":"array","items":{"type":"string"},"description":"The claim used for consumer mapping. If multiple values are set, it means the claim is inside a nested object of the token payload.\n"},"consumerGroupsClaims":{"type":"array","items":{"type":"string"},"description":"The claim used for consumer groups mapping. If multiple values are set, it means the claim is inside a nested object of the token payload.\n"},"consumerGroupsOptional":{"type":"boolean","description":"Do not terminate the request if consumer groups mapping fails. Default: false\n"},"consumerOptional":{"type":"boolean","description":"Do not terminate the request if consumer mapping fails. Default: false\n"},"credentialClaims":{"type":"array","items":{"type":"string"},"description":"The claim used to derive virtual credentials (e.g. to be consumed by the rate-limiting plugin), in case the consumer mapping is not used. If multiple values are set, it means the claim is inside a nested object of the token payload. Default: [\"sub\"]\n"},"disableSessions":{"type":"array","items":{"type":"string"},"description":"Disable issuing the session cookie with the specified grants.\n"},"discoveryHeadersNames":{"type":"array","items":{"type":"string"},"description":"Extra header names passed to the discovery endpoint.\n"},"discoveryHeadersValues":{"type":"array","items":{"type":"string"},"description":"Extra header values passed to the discovery endpoint.\n"},"displayErrors":{"type":"boolean","description":"Display errors on failure responses. Default: false\n"},"domains":{"type":"array","items":{"type":"string"},"description":"The allowed values for the \u003cspan pulumi-lang-nodejs=\"`hd`\" pulumi-lang-dotnet=\"`Hd`\" pulumi-lang-go=\"`hd`\" pulumi-lang-python=\"`hd`\" pulumi-lang-yaml=\"`hd`\" pulumi-lang-java=\"`hd`\"\u003e`hd`\u003c/span\u003e claim.\n"},"downstreamAccessTokenHeader":{"type":"string","description":"The downstream access token header.\n"},"downstreamAccessTokenJwkHeader":{"type":"string","description":"The downstream access token JWK header.\n"},"downstreamHeadersClaims":{"type":"array","items":{"type":"string"},"description":"The downstream header claims. If multiple values are set, it means the claim is inside a nested object of the token payload.\n"},"downstreamHeadersNames":{"type":"array","items":{"type":"string"},"description":"The downstream header names for the claim values.\n"},"downstreamIdTokenHeader":{"type":"string","description":"The downstream id token header.\n"},"downstreamIdTokenJwkHeader":{"type":"string","description":"The downstream id token JWK header.\n"},"downstreamIntrospectionHeader":{"type":"string","description":"The downstream introspection header.\n"},"downstreamIntrospectionJwtHeader":{"type":"string","description":"The downstream introspection JWT header.\n"},"downstreamRefreshTokenHeader":{"type":"string","description":"The downstream refresh token header.\n"},"downstreamSessionIdHeader":{"type":"string","description":"The downstream session id header.\n"},"downstreamUserInfoHeader":{"type":"string","description":"The downstream user info header.\n"},"downstreamUserInfoJwtHeader":{"type":"string","description":"The downstream user info JWT header (in case the user info returns a JWT response).\n"},"dpopProofLifetime":{"type":"number","description":"Specifies the lifetime in seconds of the DPoP proof. It determines how long the same proof can be used after creation. The creation time is determined by the nonce creation time if a nonce is used, and the iat claim otherwise. Default: 300\n"},"dpopUseNonce":{"type":"boolean","description":"Specifies whether to challenge the client with a nonce value for DPoP proof. When enabled it will also be used to calculate the DPoP proof lifetime. Default: false\n"},"enableHsSignatures":{"type":"boolean","description":"Enable shared secret, for example, HS256, signatures (when disabled they will not be accepted). Default: false\n"},"endSessionEndpoint":{"type":"string","description":"The end session endpoint. If set it overrides the value in \u003cspan pulumi-lang-nodejs=\"`endSessionEndpoint`\" pulumi-lang-dotnet=\"`EndSessionEndpoint`\" pulumi-lang-go=\"`endSessionEndpoint`\" pulumi-lang-python=\"`end_session_endpoint`\" pulumi-lang-yaml=\"`endSessionEndpoint`\" pulumi-lang-java=\"`endSessionEndpoint`\"\u003e`end_session_endpoint`\u003c/span\u003e returned by the discovery endpoint.\n"},"exposeErrorCode":{"type":"boolean","description":"Specifies whether to expose the error code header, as defined in RFC 6750. If an authorization request fails, this header is sent in the response. Set to \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e to disable. Default: true\n"},"extraJwksUris":{"type":"array","items":{"type":"string"},"description":"JWKS URIs whose public keys are trusted (in addition to the keys found with the discovery).\n"},"forbiddenDestroySession":{"type":"boolean","description":"Destroy any active session for the forbidden requests. Default: true\n"},"forbiddenErrorMessage":{"type":"string","description":"The error message for the forbidden requests (when not using the redirection). Default: \"Forbidden\"\n"},"forbiddenRedirectUris":{"type":"array","items":{"type":"string"},"description":"Where to redirect the client on forbidden requests.\n"},"groupsClaims":{"type":"array","items":{"type":"string"},"description":"The claim that contains the groups. If multiple values are set, it means the claim is inside a nested object of the token payload. Default: [\"groups\"]\n"},"groupsRequireds":{"type":"array","items":{"type":"string"},"description":"The groups (\u003cspan pulumi-lang-nodejs=\"`groupsClaim`\" pulumi-lang-dotnet=\"`GroupsClaim`\" pulumi-lang-go=\"`groupsClaim`\" pulumi-lang-python=\"`groups_claim`\" pulumi-lang-yaml=\"`groupsClaim`\" pulumi-lang-java=\"`groupsClaim`\"\u003e`groups_claim`\u003c/span\u003e claim) required to be present in the access token (or introspection results) for successful authorization. This config parameter works in both **AND** / **OR** cases.\n"},"hideCredentials":{"type":"boolean","description":"Remove the credentials used for authentication from the request. If multiple credentials are sent with the same request, the plugin will remove those that were used for successful authentication. Default: false\n"},"httpProxy":{"type":"string","description":"The HTTP proxy.\n"},"httpProxyAuthorization":{"type":"string","description":"The HTTP proxy authorization.\n"},"httpVersion":{"type":"number","description":"The HTTP version used for the requests by this plugin: - `1.1`: HTTP 1.1 (the default) - `1.0`: HTTP 1.0.\n"},"httpsProxy":{"type":"string","description":"The HTTPS proxy.\n"},"httpsProxyAuthorization":{"type":"string","description":"The HTTPS proxy authorization.\n"},"idTokenParamName":{"type":"string","description":"The name of the parameter used to pass the id token.\n"},"idTokenParamTypes":{"type":"array","items":{"type":"string"},"description":"Where to look for the id token: - \u003cspan pulumi-lang-nodejs=\"`header`\" pulumi-lang-dotnet=\"`Header`\" pulumi-lang-go=\"`header`\" pulumi-lang-python=\"`header`\" pulumi-lang-yaml=\"`header`\" pulumi-lang-java=\"`header`\"\u003e`header`\u003c/span\u003e: search the HTTP headers - \u003cspan pulumi-lang-nodejs=\"`query`\" pulumi-lang-dotnet=\"`Query`\" pulumi-lang-go=\"`query`\" pulumi-lang-python=\"`query`\" pulumi-lang-yaml=\"`query`\" pulumi-lang-java=\"`query`\"\u003e`query`\u003c/span\u003e: search the URL's query string - \u003cspan pulumi-lang-nodejs=\"`body`\" pulumi-lang-dotnet=\"`Body`\" pulumi-lang-go=\"`body`\" pulumi-lang-python=\"`body`\" pulumi-lang-yaml=\"`body`\" pulumi-lang-java=\"`body`\"\u003e`body`\u003c/span\u003e: search the HTTP request body. Default: [\"body\",\"header\",\"query\"]\n"},"ignoreSignatures":{"type":"array","items":{"type":"string"},"description":"Skip the token signature verification on certain grants: - \u003cspan pulumi-lang-nodejs=\"`password`\" pulumi-lang-dotnet=\"`Password`\" pulumi-lang-go=\"`password`\" pulumi-lang-python=\"`password`\" pulumi-lang-yaml=\"`password`\" pulumi-lang-java=\"`password`\"\u003e`password`\u003c/span\u003e: OAuth password grant - \u003cspan pulumi-lang-nodejs=\"`clientCredentials`\" pulumi-lang-dotnet=\"`ClientCredentials`\" pulumi-lang-go=\"`clientCredentials`\" pulumi-lang-python=\"`client_credentials`\" pulumi-lang-yaml=\"`clientCredentials`\" pulumi-lang-java=\"`clientCredentials`\"\u003e`client_credentials`\u003c/span\u003e: OAuth client credentials grant - \u003cspan pulumi-lang-nodejs=\"`authorizationCode`\" pulumi-lang-dotnet=\"`AuthorizationCode`\" pulumi-lang-go=\"`authorizationCode`\" pulumi-lang-python=\"`authorization_code`\" pulumi-lang-yaml=\"`authorizationCode`\" pulumi-lang-java=\"`authorizationCode`\"\u003e`authorization_code`\u003c/span\u003e: authorization code flow - \u003cspan pulumi-lang-nodejs=\"`refreshToken`\" pulumi-lang-dotnet=\"`RefreshToken`\" pulumi-lang-go=\"`refreshToken`\" pulumi-lang-python=\"`refresh_token`\" pulumi-lang-yaml=\"`refreshToken`\" pulumi-lang-java=\"`refreshToken`\"\u003e`refresh_token`\u003c/span\u003e: OAuth refresh token grant - \u003cspan pulumi-lang-nodejs=\"`session`\" pulumi-lang-dotnet=\"`Session`\" pulumi-lang-go=\"`session`\" pulumi-lang-python=\"`session`\" pulumi-lang-yaml=\"`session`\" pulumi-lang-java=\"`session`\"\u003e`session`\u003c/span\u003e: session cookie authentication - \u003cspan pulumi-lang-nodejs=\"`introspection`\" pulumi-lang-dotnet=\"`Introspection`\" pulumi-lang-go=\"`introspection`\" pulumi-lang-python=\"`introspection`\" pulumi-lang-yaml=\"`introspection`\" pulumi-lang-java=\"`introspection`\"\u003e`introspection`\u003c/span\u003e: OAuth introspection - \u003cspan pulumi-lang-nodejs=\"`userinfo`\" pulumi-lang-dotnet=\"`Userinfo`\" pulumi-lang-go=\"`userinfo`\" pulumi-lang-python=\"`userinfo`\" pulumi-lang-yaml=\"`userinfo`\" pulumi-lang-java=\"`userinfo`\"\u003e`userinfo`\u003c/span\u003e: OpenID Connect user info endpoint authentication. Default: []\n"},"introspectJwtTokens":{"type":"boolean","description":"Specifies whether to introspect the JWT access tokens (can be used to check for revocations). Default: false\n"},"introspectionAccept":{"type":"string","description":"The value of `Accept` header for introspection requests: - `application/json`: introspection response as JSON - `application/token-introspection+jwt`: introspection response as JWT (from the current IETF draft document) - `application/jwt`: introspection response as JWT (from the obsolete IETF draft document). Default: \"application/json\"; must be one of [\"application/json\", \"application/jwt\", \"application/token-introspection+jwt\"]\n"},"introspectionCheckActive":{"type":"boolean","description":"Check that the introspection response has an \u003cspan pulumi-lang-nodejs=\"`active`\" pulumi-lang-dotnet=\"`Active`\" pulumi-lang-go=\"`active`\" pulumi-lang-python=\"`active`\" pulumi-lang-yaml=\"`active`\" pulumi-lang-java=\"`active`\"\u003e`active`\u003c/span\u003e claim with a value of \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e. Default: true\n"},"introspectionEndpoint":{"type":"string","description":"The introspection endpoint. If set it overrides the value in \u003cspan pulumi-lang-nodejs=\"`introspectionEndpoint`\" pulumi-lang-dotnet=\"`IntrospectionEndpoint`\" pulumi-lang-go=\"`introspectionEndpoint`\" pulumi-lang-python=\"`introspection_endpoint`\" pulumi-lang-yaml=\"`introspectionEndpoint`\" pulumi-lang-java=\"`introspectionEndpoint`\"\u003e`introspection_endpoint`\u003c/span\u003e returned by the discovery endpoint.\n"},"introspectionEndpointAuthMethod":{"type":"string","description":"The introspection endpoint authentication method: : \u003cspan pulumi-lang-nodejs=\"`clientSecretBasic`\" pulumi-lang-dotnet=\"`ClientSecretBasic`\" pulumi-lang-go=\"`clientSecretBasic`\" pulumi-lang-python=\"`client_secret_basic`\" pulumi-lang-yaml=\"`clientSecretBasic`\" pulumi-lang-java=\"`clientSecretBasic`\"\u003e`client_secret_basic`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`clientSecretPost`\" pulumi-lang-dotnet=\"`ClientSecretPost`\" pulumi-lang-go=\"`clientSecretPost`\" pulumi-lang-python=\"`client_secret_post`\" pulumi-lang-yaml=\"`clientSecretPost`\" pulumi-lang-java=\"`clientSecretPost`\"\u003e`client_secret_post`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`clientSecretJwt`\" pulumi-lang-dotnet=\"`ClientSecretJwt`\" pulumi-lang-go=\"`clientSecretJwt`\" pulumi-lang-python=\"`client_secret_jwt`\" pulumi-lang-yaml=\"`clientSecretJwt`\" pulumi-lang-java=\"`clientSecretJwt`\"\u003e`client_secret_jwt`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`privateKeyJwt`\" pulumi-lang-dotnet=\"`PrivateKeyJwt`\" pulumi-lang-go=\"`privateKeyJwt`\" pulumi-lang-python=\"`private_key_jwt`\" pulumi-lang-yaml=\"`privateKeyJwt`\" pulumi-lang-java=\"`privateKeyJwt`\"\u003e`private_key_jwt`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`tlsClientAuth`\" pulumi-lang-dotnet=\"`TlsClientAuth`\" pulumi-lang-go=\"`tlsClientAuth`\" pulumi-lang-python=\"`tls_client_auth`\" pulumi-lang-yaml=\"`tlsClientAuth`\" pulumi-lang-java=\"`tlsClientAuth`\"\u003e`tls_client_auth`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`selfSignedTlsClientAuth`\" pulumi-lang-dotnet=\"`SelfSignedTlsClientAuth`\" pulumi-lang-go=\"`selfSignedTlsClientAuth`\" pulumi-lang-python=\"`self_signed_tls_client_auth`\" pulumi-lang-yaml=\"`selfSignedTlsClientAuth`\" pulumi-lang-java=\"`selfSignedTlsClientAuth`\"\u003e`self_signed_tls_client_auth`\u003c/span\u003e, or \u003cspan pulumi-lang-nodejs=\"`none`\" pulumi-lang-dotnet=\"`None`\" pulumi-lang-go=\"`none`\" pulumi-lang-python=\"`none`\" pulumi-lang-yaml=\"`none`\" pulumi-lang-java=\"`none`\"\u003e`none`\u003c/span\u003e: do not authenticate. must be one of [\"client*secret*basic\", \"client*secret*jwt\", \"client*secret*post\", \"none\", \"private*key*jwt\", \"self*signed*tls*client*auth\", \"tls*client*auth\"]\n"},"introspectionHeadersClients":{"type":"array","items":{"type":"string"},"description":"Extra headers passed from the client to the introspection endpoint.\n"},"introspectionHeadersNames":{"type":"array","items":{"type":"string"},"description":"Extra header names passed to the introspection endpoint.\n"},"introspectionHeadersValues":{"type":"array","items":{"type":"string"},"description":"Extra header values passed to the introspection endpoint.\n"},"introspectionHint":{"type":"string","description":"Introspection hint parameter value passed to the introspection endpoint. Default: \u003cspan pulumi-lang-nodejs=\"\"accessToken\"\" pulumi-lang-dotnet=\"\"AccessToken\"\" pulumi-lang-go=\"\"accessToken\"\" pulumi-lang-python=\"\"access_token\"\" pulumi-lang-yaml=\"\"accessToken\"\" pulumi-lang-java=\"\"accessToken\"\"\u003e\"access_token\"\u003c/span\u003e\n"},"introspectionPostArgsClientHeaders":{"type":"array","items":{"type":"string"},"description":"Extra post arguments passed from the client headers to the introspection endpoint.\n"},"introspectionPostArgsClients":{"type":"array","items":{"type":"string"},"description":"Extra post arguments passed from the client to the introspection endpoint.\n"},"introspectionPostArgsNames":{"type":"array","items":{"type":"string"},"description":"Extra post argument names passed to the introspection endpoint.\n"},"introspectionPostArgsValues":{"type":"array","items":{"type":"string"},"description":"Extra post argument values passed to the introspection endpoint.\n"},"introspectionTokenParamName":{"type":"string","description":"Designate token's parameter name for introspection. Default: \"token\"\n"},"issuer":{"type":"string","description":"The discovery endpoint (or the issuer identifier). When there is no discovery endpoint, please also configure `config.using_pseudo_issuer=true`.\n"},"issuersAlloweds":{"type":"array","items":{"type":"string"},"description":"The issuers allowed to be present in the tokens (\u003cspan pulumi-lang-nodejs=\"`iss`\" pulumi-lang-dotnet=\"`Iss`\" pulumi-lang-go=\"`iss`\" pulumi-lang-python=\"`iss`\" pulumi-lang-yaml=\"`iss`\" pulumi-lang-java=\"`iss`\"\u003e`iss`\u003c/span\u003e claim).\n"},"jwtSessionClaim":{"type":"string","description":"The claim to match against the JWT session cookie. Default: \"sid\"\n"},"jwtSessionCookie":{"type":"string","description":"The name of the JWT session cookie.\n"},"keepalive":{"type":"boolean","description":"Use keepalive with the HTTP client. Default: true\n"},"leeway":{"type":"number","description":"Defines leeway time (in seconds) for \u003cspan pulumi-lang-nodejs=\"`authTime`\" pulumi-lang-dotnet=\"`AuthTime`\" pulumi-lang-go=\"`authTime`\" pulumi-lang-python=\"`auth_time`\" pulumi-lang-yaml=\"`authTime`\" pulumi-lang-java=\"`authTime`\"\u003e`auth_time`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`exp`\" pulumi-lang-dotnet=\"`Exp`\" pulumi-lang-go=\"`exp`\" pulumi-lang-python=\"`exp`\" pulumi-lang-yaml=\"`exp`\" pulumi-lang-java=\"`exp`\"\u003e`exp`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`iat`\" pulumi-lang-dotnet=\"`Iat`\" pulumi-lang-go=\"`iat`\" pulumi-lang-python=\"`iat`\" pulumi-lang-yaml=\"`iat`\" pulumi-lang-java=\"`iat`\"\u003e`iat`\u003c/span\u003e, and \u003cspan pulumi-lang-nodejs=\"`nbf`\" pulumi-lang-dotnet=\"`Nbf`\" pulumi-lang-go=\"`nbf`\" pulumi-lang-python=\"`nbf`\" pulumi-lang-yaml=\"`nbf`\" pulumi-lang-java=\"`nbf`\"\u003e`nbf`\u003c/span\u003e claims. Default: 0\n"},"loginAction":{"type":"string","description":"What to do after successful login: - \u003cspan pulumi-lang-nodejs=\"`upstream`\" pulumi-lang-dotnet=\"`Upstream`\" pulumi-lang-go=\"`upstream`\" pulumi-lang-python=\"`upstream`\" pulumi-lang-yaml=\"`upstream`\" pulumi-lang-java=\"`upstream`\"\u003e`upstream`\u003c/span\u003e: proxy request to upstream service - \u003cspan pulumi-lang-nodejs=\"`response`\" pulumi-lang-dotnet=\"`Response`\" pulumi-lang-go=\"`response`\" pulumi-lang-python=\"`response`\" pulumi-lang-yaml=\"`response`\" pulumi-lang-java=\"`response`\"\u003e`response`\u003c/span\u003e: terminate request with a response - \u003cspan pulumi-lang-nodejs=\"`redirect`\" pulumi-lang-dotnet=\"`Redirect`\" pulumi-lang-go=\"`redirect`\" pulumi-lang-python=\"`redirect`\" pulumi-lang-yaml=\"`redirect`\" pulumi-lang-java=\"`redirect`\"\u003e`redirect`\u003c/span\u003e: redirect to a different location. Default: \"upstream\"; must be one of [\"redirect\", \"response\", \"upstream\"]\n"},"loginMethods":{"type":"array","items":{"type":"string"},"description":"Enable login functionality with specified grants. Default: [\u003cspan pulumi-lang-nodejs=\"\"authorizationCode\"\" pulumi-lang-dotnet=\"\"AuthorizationCode\"\" pulumi-lang-go=\"\"authorizationCode\"\" pulumi-lang-python=\"\"authorization_code\"\" pulumi-lang-yaml=\"\"authorizationCode\"\" pulumi-lang-java=\"\"authorizationCode\"\"\u003e\"authorization_code\"\u003c/span\u003e]\n"},"loginRedirectMode":{"type":"string","description":"Where to place \u003cspan pulumi-lang-nodejs=\"`loginTokens`\" pulumi-lang-dotnet=\"`LoginTokens`\" pulumi-lang-go=\"`loginTokens`\" pulumi-lang-python=\"`login_tokens`\" pulumi-lang-yaml=\"`loginTokens`\" pulumi-lang-java=\"`loginTokens`\"\u003e`login_tokens`\u003c/span\u003e when using \u003cspan pulumi-lang-nodejs=\"`redirect`\" pulumi-lang-dotnet=\"`Redirect`\" pulumi-lang-go=\"`redirect`\" pulumi-lang-python=\"`redirect`\" pulumi-lang-yaml=\"`redirect`\" pulumi-lang-java=\"`redirect`\"\u003e`redirect`\u003c/span\u003e \u003cspan pulumi-lang-nodejs=\"`loginAction`\" pulumi-lang-dotnet=\"`LoginAction`\" pulumi-lang-go=\"`loginAction`\" pulumi-lang-python=\"`login_action`\" pulumi-lang-yaml=\"`loginAction`\" pulumi-lang-java=\"`loginAction`\"\u003e`login_action`\u003c/span\u003e: - \u003cspan pulumi-lang-nodejs=\"`query`\" pulumi-lang-dotnet=\"`Query`\" pulumi-lang-go=\"`query`\" pulumi-lang-python=\"`query`\" pulumi-lang-yaml=\"`query`\" pulumi-lang-java=\"`query`\"\u003e`query`\u003c/span\u003e: place tokens in query string - \u003cspan pulumi-lang-nodejs=\"`fragment`\" pulumi-lang-dotnet=\"`Fragment`\" pulumi-lang-go=\"`fragment`\" pulumi-lang-python=\"`fragment`\" pulumi-lang-yaml=\"`fragment`\" pulumi-lang-java=\"`fragment`\"\u003e`fragment`\u003c/span\u003e: place tokens in url fragment (not readable by servers). Default: \"fragment\"; must be one of [\"fragment\", \"query\"]\n"},"loginRedirectUris":{"type":"array","items":{"type":"string"},"description":"Where to redirect the client when \u003cspan pulumi-lang-nodejs=\"`loginAction`\" pulumi-lang-dotnet=\"`LoginAction`\" pulumi-lang-go=\"`loginAction`\" pulumi-lang-python=\"`login_action`\" pulumi-lang-yaml=\"`loginAction`\" pulumi-lang-java=\"`loginAction`\"\u003e`login_action`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`redirect`\" pulumi-lang-dotnet=\"`Redirect`\" pulumi-lang-go=\"`redirect`\" pulumi-lang-python=\"`redirect`\" pulumi-lang-yaml=\"`redirect`\" pulumi-lang-java=\"`redirect`\"\u003e`redirect`\u003c/span\u003e.\n"},"loginTokens":{"type":"array","items":{"type":"string"},"description":"What tokens to include in \u003cspan pulumi-lang-nodejs=\"`response`\" pulumi-lang-dotnet=\"`Response`\" pulumi-lang-go=\"`response`\" pulumi-lang-python=\"`response`\" pulumi-lang-yaml=\"`response`\" pulumi-lang-java=\"`response`\"\u003e`response`\u003c/span\u003e body or \u003cspan pulumi-lang-nodejs=\"`redirect`\" pulumi-lang-dotnet=\"`Redirect`\" pulumi-lang-go=\"`redirect`\" pulumi-lang-python=\"`redirect`\" pulumi-lang-yaml=\"`redirect`\" pulumi-lang-java=\"`redirect`\"\u003e`redirect`\u003c/span\u003e query string or fragment: - \u003cspan pulumi-lang-nodejs=\"`idToken`\" pulumi-lang-dotnet=\"`IdToken`\" pulumi-lang-go=\"`idToken`\" pulumi-lang-python=\"`id_token`\" pulumi-lang-yaml=\"`idToken`\" pulumi-lang-java=\"`idToken`\"\u003e`id_token`\u003c/span\u003e: include id token - \u003cspan pulumi-lang-nodejs=\"`accessToken`\" pulumi-lang-dotnet=\"`AccessToken`\" pulumi-lang-go=\"`accessToken`\" pulumi-lang-python=\"`access_token`\" pulumi-lang-yaml=\"`accessToken`\" pulumi-lang-java=\"`accessToken`\"\u003e`access_token`\u003c/span\u003e: include access token - \u003cspan pulumi-lang-nodejs=\"`refreshToken`\" pulumi-lang-dotnet=\"`RefreshToken`\" pulumi-lang-go=\"`refreshToken`\" pulumi-lang-python=\"`refresh_token`\" pulumi-lang-yaml=\"`refreshToken`\" pulumi-lang-java=\"`refreshToken`\"\u003e`refresh_token`\u003c/span\u003e: include refresh token - \u003cspan pulumi-lang-nodejs=\"`tokens`\" pulumi-lang-dotnet=\"`Tokens`\" pulumi-lang-go=\"`tokens`\" pulumi-lang-python=\"`tokens`\" pulumi-lang-yaml=\"`tokens`\" pulumi-lang-java=\"`tokens`\"\u003e`tokens`\u003c/span\u003e: include the full token endpoint response - \u003cspan pulumi-lang-nodejs=\"`introspection`\" pulumi-lang-dotnet=\"`Introspection`\" pulumi-lang-go=\"`introspection`\" pulumi-lang-python=\"`introspection`\" pulumi-lang-yaml=\"`introspection`\" pulumi-lang-java=\"`introspection`\"\u003e`introspection`\u003c/span\u003e: include introspection response. Default: [\u003cspan pulumi-lang-nodejs=\"\"idToken\"\" pulumi-lang-dotnet=\"\"IdToken\"\" pulumi-lang-go=\"\"idToken\"\" pulumi-lang-python=\"\"id_token\"\" pulumi-lang-yaml=\"\"idToken\"\" pulumi-lang-java=\"\"idToken\"\"\u003e\"id_token\"\u003c/span\u003e]\n"},"logoutMethods":{"type":"array","items":{"type":"string"},"description":"The request methods that can activate the logout: - `POST`: HTTP POST method - `GET`: HTTP GET method - `DELETE`: HTTP DELETE method. Default: [\"DELETE\",\"POST\"]\n"},"logoutPostArg":{"type":"string","description":"The request body argument that activates the logout.\n"},"logoutQueryArg":{"type":"string","description":"The request query argument that activates the logout.\n"},"logoutRedirectUris":{"type":"array","items":{"type":"string"},"description":"Where to redirect the client after the logout.\n"},"logoutRevoke":{"type":"boolean","description":"Revoke tokens as part of the logout.\n"},"logoutRevokeAccessToken":{"type":"boolean","description":"Revoke the access token as part of the logout. Requires \u003cspan pulumi-lang-nodejs=\"`logoutRevoke`\" pulumi-lang-dotnet=\"`LogoutRevoke`\" pulumi-lang-go=\"`logoutRevoke`\" pulumi-lang-python=\"`logout_revoke`\" pulumi-lang-yaml=\"`logoutRevoke`\" pulumi-lang-java=\"`logoutRevoke`\"\u003e`logout_revoke`\u003c/span\u003e to be set to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e. Default: true\n"},"logoutRevokeRefreshToken":{"type":"boolean","description":"Revoke the refresh token as part of the logout. Requires \u003cspan pulumi-lang-nodejs=\"`logoutRevoke`\" pulumi-lang-dotnet=\"`LogoutRevoke`\" pulumi-lang-go=\"`logoutRevoke`\" pulumi-lang-python=\"`logout_revoke`\" pulumi-lang-yaml=\"`logoutRevoke`\" pulumi-lang-java=\"`logoutRevoke`\"\u003e`logout_revoke`\u003c/span\u003e to be set to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e. Default: true\n"},"logoutUriSuffix":{"type":"string","description":"The request URI suffix that activates the logout.\n"},"maxAge":{"type":"number","description":"The maximum age (in seconds) compared to the \u003cspan pulumi-lang-nodejs=\"`authTime`\" pulumi-lang-dotnet=\"`AuthTime`\" pulumi-lang-go=\"`authTime`\" pulumi-lang-python=\"`auth_time`\" pulumi-lang-yaml=\"`authTime`\" pulumi-lang-java=\"`authTime`\"\u003e`auth_time`\u003c/span\u003e claim.\n"},"mtlsIntrospectionEndpoint":{"type":"string","description":"Alias for the introspection endpoint to be used for mTLS client authentication. If set it overrides the value in \u003cspan pulumi-lang-nodejs=\"`mtlsEndpointAliases`\" pulumi-lang-dotnet=\"`MtlsEndpointAliases`\" pulumi-lang-go=\"`mtlsEndpointAliases`\" pulumi-lang-python=\"`mtls_endpoint_aliases`\" pulumi-lang-yaml=\"`mtlsEndpointAliases`\" pulumi-lang-java=\"`mtlsEndpointAliases`\"\u003e`mtls_endpoint_aliases`\u003c/span\u003e returned by the discovery endpoint.\n"},"mtlsRevocationEndpoint":{"type":"string","description":"Alias for the introspection endpoint to be used for mTLS client authentication. If set it overrides the value in \u003cspan pulumi-lang-nodejs=\"`mtlsEndpointAliases`\" pulumi-lang-dotnet=\"`MtlsEndpointAliases`\" pulumi-lang-go=\"`mtlsEndpointAliases`\" pulumi-lang-python=\"`mtls_endpoint_aliases`\" pulumi-lang-yaml=\"`mtlsEndpointAliases`\" pulumi-lang-java=\"`mtlsEndpointAliases`\"\u003e`mtls_endpoint_aliases`\u003c/span\u003e returned by the discovery endpoint.\n"},"mtlsTokenEndpoint":{"type":"string","description":"Alias for the token endpoint to be used for mTLS client authentication. If set it overrides the value in \u003cspan pulumi-lang-nodejs=\"`mtlsEndpointAliases`\" pulumi-lang-dotnet=\"`MtlsEndpointAliases`\" pulumi-lang-go=\"`mtlsEndpointAliases`\" pulumi-lang-python=\"`mtls_endpoint_aliases`\" pulumi-lang-yaml=\"`mtlsEndpointAliases`\" pulumi-lang-java=\"`mtlsEndpointAliases`\"\u003e`mtls_endpoint_aliases`\u003c/span\u003e returned by the discovery endpoint.\n"},"noProxy":{"type":"string","description":"Do not use proxy with these hosts.\n"},"passwordParamTypes":{"type":"array","items":{"type":"string"},"description":"Where to look for the username and password: - \u003cspan pulumi-lang-nodejs=\"`header`\" pulumi-lang-dotnet=\"`Header`\" pulumi-lang-go=\"`header`\" pulumi-lang-python=\"`header`\" pulumi-lang-yaml=\"`header`\" pulumi-lang-java=\"`header`\"\u003e`header`\u003c/span\u003e: search the HTTP headers - \u003cspan pulumi-lang-nodejs=\"`query`\" pulumi-lang-dotnet=\"`Query`\" pulumi-lang-go=\"`query`\" pulumi-lang-python=\"`query`\" pulumi-lang-yaml=\"`query`\" pulumi-lang-java=\"`query`\"\u003e`query`\u003c/span\u003e: search the URL's query string - \u003cspan pulumi-lang-nodejs=\"`body`\" pulumi-lang-dotnet=\"`Body`\" pulumi-lang-go=\"`body`\" pulumi-lang-python=\"`body`\" pulumi-lang-yaml=\"`body`\" pulumi-lang-java=\"`body`\"\u003e`body`\u003c/span\u003e: search the HTTP request body. Default: [\"body\",\"header\",\"query\"]\n"},"preserveQueryArgs":{"type":"boolean","description":"With this parameter, you can preserve request query arguments even when doing authorization code flow. Default: false\n"},"proofOfPossessionAuthMethodsValidation":{"type":"boolean","description":"If set to true, only the\u003cspan pulumi-lang-nodejs=\" authMethods \" pulumi-lang-dotnet=\" AuthMethods \" pulumi-lang-go=\" authMethods \" pulumi-lang-python=\" auth_methods \" pulumi-lang-yaml=\" authMethods \" pulumi-lang-java=\" authMethods \"\u003e auth_methods \u003c/span\u003ethat are compatible with Proof of Possession (PoP) can be configured when PoP is enabled. If set to false, all\u003cspan pulumi-lang-nodejs=\" authMethods \" pulumi-lang-dotnet=\" AuthMethods \" pulumi-lang-go=\" authMethods \" pulumi-lang-python=\" auth_methods \" pulumi-lang-yaml=\" authMethods \" pulumi-lang-java=\" authMethods \"\u003e auth_methods \u003c/span\u003ewill be configurable and PoP checks will be silently skipped for those\u003cspan pulumi-lang-nodejs=\" authMethods \" pulumi-lang-dotnet=\" AuthMethods \" pulumi-lang-go=\" authMethods \" pulumi-lang-python=\" auth_methods \" pulumi-lang-yaml=\" authMethods \" pulumi-lang-java=\" authMethods \"\u003e auth_methods \u003c/span\u003ethat are not compatible with PoP. Default: true\n"},"proofOfPossessionDpop":{"type":"string","description":"Enable Demonstrating Proof-of-Possession (DPoP). If set to strict, all request are verified despite the presence of the DPoP key claim (cnf.jkt). If set to optional, only tokens bound with DPoP's key are verified with the proof. Default: \"off\"; must be one of [\"off\", \"optional\", \"strict\"]\n"},"proofOfPossessionMtls":{"type":"string","description":"Enable mtls proof of possession. If set to strict, all tokens (from supported auth_methods: bearer, introspection, and session granted with bearer or introspection) are verified, if set to optional, only tokens that contain the certificate hash claim are verified. If the verification fails, the request will be rejected with 401. Default: \"off\"; must be one of [\"off\", \"optional\", \"strict\"]\n"},"pushedAuthorizationRequestEndpoint":{"type":"string","description":"The pushed authorization endpoint. If set it overrides the value in \u003cspan pulumi-lang-nodejs=\"`pushedAuthorizationRequestEndpoint`\" pulumi-lang-dotnet=\"`PushedAuthorizationRequestEndpoint`\" pulumi-lang-go=\"`pushedAuthorizationRequestEndpoint`\" pulumi-lang-python=\"`pushed_authorization_request_endpoint`\" pulumi-lang-yaml=\"`pushedAuthorizationRequestEndpoint`\" pulumi-lang-java=\"`pushedAuthorizationRequestEndpoint`\"\u003e`pushed_authorization_request_endpoint`\u003c/span\u003e returned by the discovery endpoint.\n"},"pushedAuthorizationRequestEndpointAuthMethod":{"type":"string","description":"The pushed authorization request endpoint authentication method: \u003cspan pulumi-lang-nodejs=\"`clientSecretBasic`\" pulumi-lang-dotnet=\"`ClientSecretBasic`\" pulumi-lang-go=\"`clientSecretBasic`\" pulumi-lang-python=\"`client_secret_basic`\" pulumi-lang-yaml=\"`clientSecretBasic`\" pulumi-lang-java=\"`clientSecretBasic`\"\u003e`client_secret_basic`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`clientSecretPost`\" pulumi-lang-dotnet=\"`ClientSecretPost`\" pulumi-lang-go=\"`clientSecretPost`\" pulumi-lang-python=\"`client_secret_post`\" pulumi-lang-yaml=\"`clientSecretPost`\" pulumi-lang-java=\"`clientSecretPost`\"\u003e`client_secret_post`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`clientSecretJwt`\" pulumi-lang-dotnet=\"`ClientSecretJwt`\" pulumi-lang-go=\"`clientSecretJwt`\" pulumi-lang-python=\"`client_secret_jwt`\" pulumi-lang-yaml=\"`clientSecretJwt`\" pulumi-lang-java=\"`clientSecretJwt`\"\u003e`client_secret_jwt`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`privateKeyJwt`\" pulumi-lang-dotnet=\"`PrivateKeyJwt`\" pulumi-lang-go=\"`privateKeyJwt`\" pulumi-lang-python=\"`private_key_jwt`\" pulumi-lang-yaml=\"`privateKeyJwt`\" pulumi-lang-java=\"`privateKeyJwt`\"\u003e`private_key_jwt`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`tlsClientAuth`\" pulumi-lang-dotnet=\"`TlsClientAuth`\" pulumi-lang-go=\"`tlsClientAuth`\" pulumi-lang-python=\"`tls_client_auth`\" pulumi-lang-yaml=\"`tlsClientAuth`\" pulumi-lang-java=\"`tlsClientAuth`\"\u003e`tls_client_auth`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`selfSignedTlsClientAuth`\" pulumi-lang-dotnet=\"`SelfSignedTlsClientAuth`\" pulumi-lang-go=\"`selfSignedTlsClientAuth`\" pulumi-lang-python=\"`self_signed_tls_client_auth`\" pulumi-lang-yaml=\"`selfSignedTlsClientAuth`\" pulumi-lang-java=\"`selfSignedTlsClientAuth`\"\u003e`self_signed_tls_client_auth`\u003c/span\u003e, or \u003cspan pulumi-lang-nodejs=\"`none`\" pulumi-lang-dotnet=\"`None`\" pulumi-lang-go=\"`none`\" pulumi-lang-python=\"`none`\" pulumi-lang-yaml=\"`none`\" pulumi-lang-java=\"`none`\"\u003e`none`\u003c/span\u003e: do not authenticate. must be one of [\u003cspan pulumi-lang-nodejs=\"\"clientSecretBasic\"\" pulumi-lang-dotnet=\"\"ClientSecretBasic\"\" pulumi-lang-go=\"\"clientSecretBasic\"\" pulumi-lang-python=\"\"client_secret_basic\"\" pulumi-lang-yaml=\"\"clientSecretBasic\"\" pulumi-lang-java=\"\"clientSecretBasic\"\"\u003e\"client_secret_basic\"\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"\"clientSecretJwt\"\" pulumi-lang-dotnet=\"\"ClientSecretJwt\"\" pulumi-lang-go=\"\"clientSecretJwt\"\" pulumi-lang-python=\"\"client_secret_jwt\"\" pulumi-lang-yaml=\"\"clientSecretJwt\"\" pulumi-lang-java=\"\"clientSecretJwt\"\"\u003e\"client_secret_jwt\"\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"\"clientSecretPost\"\" pulumi-lang-dotnet=\"\"ClientSecretPost\"\" pulumi-lang-go=\"\"clientSecretPost\"\" pulumi-lang-python=\"\"client_secret_post\"\" pulumi-lang-yaml=\"\"clientSecretPost\"\" pulumi-lang-java=\"\"clientSecretPost\"\"\u003e\"client_secret_post\"\u003c/span\u003e, \"none\", \u003cspan pulumi-lang-nodejs=\"\"privateKeyJwt\"\" pulumi-lang-dotnet=\"\"PrivateKeyJwt\"\" pulumi-lang-go=\"\"privateKeyJwt\"\" pulumi-lang-python=\"\"private_key_jwt\"\" pulumi-lang-yaml=\"\"privateKeyJwt\"\" pulumi-lang-java=\"\"privateKeyJwt\"\"\u003e\"private_key_jwt\"\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"\"selfSignedTlsClientAuth\"\" pulumi-lang-dotnet=\"\"SelfSignedTlsClientAuth\"\" pulumi-lang-go=\"\"selfSignedTlsClientAuth\"\" pulumi-lang-python=\"\"self_signed_tls_client_auth\"\" pulumi-lang-yaml=\"\"selfSignedTlsClientAuth\"\" pulumi-lang-java=\"\"selfSignedTlsClientAuth\"\"\u003e\"self_signed_tls_client_auth\"\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"\"tlsClientAuth\"\" pulumi-lang-dotnet=\"\"TlsClientAuth\"\" pulumi-lang-go=\"\"tlsClientAuth\"\" pulumi-lang-python=\"\"tls_client_auth\"\" pulumi-lang-yaml=\"\"tlsClientAuth\"\" pulumi-lang-java=\"\"tlsClientAuth\"\"\u003e\"tls_client_auth\"\u003c/span\u003e]\n"},"redirectUris":{"type":"array","items":{"type":"string"},"description":"The redirect URI passed to the authorization and token endpoints.\n"},"redis":{"$ref":"#/types/konnect:index%2FGatewayPluginOpenidConnectConfigRedis:GatewayPluginOpenidConnectConfigRedis"},"rediscoveryLifetime":{"type":"number","description":"Specifies how long (in seconds) the plugin waits between discovery attempts. Discovery is still triggered on an as-needed basis. Default: 30\n"},"refreshTokenParamName":{"type":"string","description":"The name of the parameter used to pass the refresh token.\n"},"refreshTokenParamTypes":{"type":"array","items":{"type":"string"},"description":"Where to look for the refresh token: - \u003cspan pulumi-lang-nodejs=\"`header`\" pulumi-lang-dotnet=\"`Header`\" pulumi-lang-go=\"`header`\" pulumi-lang-python=\"`header`\" pulumi-lang-yaml=\"`header`\" pulumi-lang-java=\"`header`\"\u003e`header`\u003c/span\u003e: search the HTTP headers - \u003cspan pulumi-lang-nodejs=\"`query`\" pulumi-lang-dotnet=\"`Query`\" pulumi-lang-go=\"`query`\" pulumi-lang-python=\"`query`\" pulumi-lang-yaml=\"`query`\" pulumi-lang-java=\"`query`\"\u003e`query`\u003c/span\u003e: search the URL's query string - \u003cspan pulumi-lang-nodejs=\"`body`\" pulumi-lang-dotnet=\"`Body`\" pulumi-lang-go=\"`body`\" pulumi-lang-python=\"`body`\" pulumi-lang-yaml=\"`body`\" pulumi-lang-java=\"`body`\"\u003e`body`\u003c/span\u003e: search the HTTP request body. Default: [\"body\",\"header\",\"query\"]\n"},"refreshTokens":{"type":"boolean","description":"Specifies whether the plugin should try to refresh (soon to be) expired access tokens if the plugin has a \u003cspan pulumi-lang-nodejs=\"`refreshToken`\" pulumi-lang-dotnet=\"`RefreshToken`\" pulumi-lang-go=\"`refreshToken`\" pulumi-lang-python=\"`refresh_token`\" pulumi-lang-yaml=\"`refreshToken`\" pulumi-lang-java=\"`refreshToken`\"\u003e`refresh_token`\u003c/span\u003e available. Default: true\n"},"requireProofKeyForCodeExchange":{"type":"boolean","description":"Forcibly enable or disable the proof key for code exchange. When not set the value is determined through the discovery using the value of \u003cspan pulumi-lang-nodejs=\"`codeChallengeMethodsSupported`\" pulumi-lang-dotnet=\"`CodeChallengeMethodsSupported`\" pulumi-lang-go=\"`codeChallengeMethodsSupported`\" pulumi-lang-python=\"`code_challenge_methods_supported`\" pulumi-lang-yaml=\"`codeChallengeMethodsSupported`\" pulumi-lang-java=\"`codeChallengeMethodsSupported`\"\u003e`code_challenge_methods_supported`\u003c/span\u003e, and enabled automatically (in case the \u003cspan pulumi-lang-nodejs=\"`codeChallengeMethodsSupported`\" pulumi-lang-dotnet=\"`CodeChallengeMethodsSupported`\" pulumi-lang-go=\"`codeChallengeMethodsSupported`\" pulumi-lang-python=\"`code_challenge_methods_supported`\" pulumi-lang-yaml=\"`codeChallengeMethodsSupported`\" pulumi-lang-java=\"`codeChallengeMethodsSupported`\"\u003e`code_challenge_methods_supported`\u003c/span\u003e is missing, the PKCE will not be enabled).\n"},"requirePushedAuthorizationRequests":{"type":"boolean","description":"Forcibly enable or disable the pushed authorization requests. When not set the value is determined through the discovery using the value of \u003cspan pulumi-lang-nodejs=\"`requirePushedAuthorizationRequests`\" pulumi-lang-dotnet=\"`RequirePushedAuthorizationRequests`\" pulumi-lang-go=\"`requirePushedAuthorizationRequests`\" pulumi-lang-python=\"`require_pushed_authorization_requests`\" pulumi-lang-yaml=\"`requirePushedAuthorizationRequests`\" pulumi-lang-java=\"`requirePushedAuthorizationRequests`\"\u003e`require_pushed_authorization_requests`\u003c/span\u003e (which defaults to \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e).\n"},"requireSignedRequestObject":{"type":"boolean","description":"Forcibly enable or disable the usage of signed request object on authorization or pushed authorization endpoint. When not set the value is determined through the discovery using the value of \u003cspan pulumi-lang-nodejs=\"`requireSignedRequestObject`\" pulumi-lang-dotnet=\"`RequireSignedRequestObject`\" pulumi-lang-go=\"`requireSignedRequestObject`\" pulumi-lang-python=\"`require_signed_request_object`\" pulumi-lang-yaml=\"`requireSignedRequestObject`\" pulumi-lang-java=\"`requireSignedRequestObject`\"\u003e`require_signed_request_object`\u003c/span\u003e, and enabled automatically (in case the \u003cspan pulumi-lang-nodejs=\"`requireSignedRequestObject`\" pulumi-lang-dotnet=\"`RequireSignedRequestObject`\" pulumi-lang-go=\"`requireSignedRequestObject`\" pulumi-lang-python=\"`require_signed_request_object`\" pulumi-lang-yaml=\"`requireSignedRequestObject`\" pulumi-lang-java=\"`requireSignedRequestObject`\"\u003e`require_signed_request_object`\u003c/span\u003e is missing, the feature will not be enabled).\n"},"resolveDistributedClaims":{"type":"boolean","description":"Distributed claims are represented by the `_claim_names` and `_claim_sources` members of the JSON object containing the claims. If this parameter is set to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, the plugin explicitly resolves these distributed claims. Default: false\n"},"responseMode":{"type":"string","description":"Response mode passed to the authorization endpoint: - \u003cspan pulumi-lang-nodejs=\"`query`\" pulumi-lang-dotnet=\"`Query`\" pulumi-lang-go=\"`query`\" pulumi-lang-python=\"`query`\" pulumi-lang-yaml=\"`query`\" pulumi-lang-java=\"`query`\"\u003e`query`\u003c/span\u003e: for parameters in query string - \u003cspan pulumi-lang-nodejs=\"`formPost`\" pulumi-lang-dotnet=\"`FormPost`\" pulumi-lang-go=\"`formPost`\" pulumi-lang-python=\"`form_post`\" pulumi-lang-yaml=\"`formPost`\" pulumi-lang-java=\"`formPost`\"\u003e`form_post`\u003c/span\u003e: for parameters in request body - \u003cspan pulumi-lang-nodejs=\"`fragment`\" pulumi-lang-dotnet=\"`Fragment`\" pulumi-lang-go=\"`fragment`\" pulumi-lang-python=\"`fragment`\" pulumi-lang-yaml=\"`fragment`\" pulumi-lang-java=\"`fragment`\"\u003e`fragment`\u003c/span\u003e: for parameters in uri fragment (rarely useful as the plugin itself cannot read it) - `query.jwt`, `form_post.jwt`, `fragment.jwt`: similar to \u003cspan pulumi-lang-nodejs=\"`query`\" pulumi-lang-dotnet=\"`Query`\" pulumi-lang-go=\"`query`\" pulumi-lang-python=\"`query`\" pulumi-lang-yaml=\"`query`\" pulumi-lang-java=\"`query`\"\u003e`query`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`formPost`\" pulumi-lang-dotnet=\"`FormPost`\" pulumi-lang-go=\"`formPost`\" pulumi-lang-python=\"`form_post`\" pulumi-lang-yaml=\"`formPost`\" pulumi-lang-java=\"`formPost`\"\u003e`form_post`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`fragment`\" pulumi-lang-dotnet=\"`Fragment`\" pulumi-lang-go=\"`fragment`\" pulumi-lang-python=\"`fragment`\" pulumi-lang-yaml=\"`fragment`\" pulumi-lang-java=\"`fragment`\"\u003e`fragment`\u003c/span\u003e but the parameters are encoded in a JWT - \u003cspan pulumi-lang-nodejs=\"`jwt`\" pulumi-lang-dotnet=\"`Jwt`\" pulumi-lang-go=\"`jwt`\" pulumi-lang-python=\"`jwt`\" pulumi-lang-yaml=\"`jwt`\" pulumi-lang-java=\"`jwt`\"\u003e`jwt`\u003c/span\u003e: shortcut that indicates the default encoding for the requested response type. Default: \"query\"; must be one of [\u003cspan pulumi-lang-nodejs=\"\"formPost\"\" pulumi-lang-dotnet=\"\"FormPost\"\" pulumi-lang-go=\"\"formPost\"\" pulumi-lang-python=\"\"form_post\"\" pulumi-lang-yaml=\"\"formPost\"\" pulumi-lang-java=\"\"formPost\"\"\u003e\"form_post\"\u003c/span\u003e, \"form_post.jwt\", \"fragment\", \"fragment.jwt\", \"jwt\", \"query\", \"query.jwt\"]\n"},"responseTypes":{"type":"array","items":{"type":"string"},"description":"The response type passed to the authorization endpoint. Default: [\"code\"]\n"},"reverify":{"type":"boolean","description":"Specifies whether to always verify tokens stored in the session. Default: false\n"},"revocationEndpoint":{"type":"string","description":"The revocation endpoint. If set it overrides the value in \u003cspan pulumi-lang-nodejs=\"`revocationEndpoint`\" pulumi-lang-dotnet=\"`RevocationEndpoint`\" pulumi-lang-go=\"`revocationEndpoint`\" pulumi-lang-python=\"`revocation_endpoint`\" pulumi-lang-yaml=\"`revocationEndpoint`\" pulumi-lang-java=\"`revocationEndpoint`\"\u003e`revocation_endpoint`\u003c/span\u003e returned by the discovery endpoint.\n"},"revocationEndpointAuthMethod":{"type":"string","description":"The revocation endpoint authentication method: : \u003cspan pulumi-lang-nodejs=\"`clientSecretBasic`\" pulumi-lang-dotnet=\"`ClientSecretBasic`\" pulumi-lang-go=\"`clientSecretBasic`\" pulumi-lang-python=\"`client_secret_basic`\" pulumi-lang-yaml=\"`clientSecretBasic`\" pulumi-lang-java=\"`clientSecretBasic`\"\u003e`client_secret_basic`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`clientSecretPost`\" pulumi-lang-dotnet=\"`ClientSecretPost`\" pulumi-lang-go=\"`clientSecretPost`\" pulumi-lang-python=\"`client_secret_post`\" pulumi-lang-yaml=\"`clientSecretPost`\" pulumi-lang-java=\"`clientSecretPost`\"\u003e`client_secret_post`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`clientSecretJwt`\" pulumi-lang-dotnet=\"`ClientSecretJwt`\" pulumi-lang-go=\"`clientSecretJwt`\" pulumi-lang-python=\"`client_secret_jwt`\" pulumi-lang-yaml=\"`clientSecretJwt`\" pulumi-lang-java=\"`clientSecretJwt`\"\u003e`client_secret_jwt`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`privateKeyJwt`\" pulumi-lang-dotnet=\"`PrivateKeyJwt`\" pulumi-lang-go=\"`privateKeyJwt`\" pulumi-lang-python=\"`private_key_jwt`\" pulumi-lang-yaml=\"`privateKeyJwt`\" pulumi-lang-java=\"`privateKeyJwt`\"\u003e`private_key_jwt`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`tlsClientAuth`\" pulumi-lang-dotnet=\"`TlsClientAuth`\" pulumi-lang-go=\"`tlsClientAuth`\" pulumi-lang-python=\"`tls_client_auth`\" pulumi-lang-yaml=\"`tlsClientAuth`\" pulumi-lang-java=\"`tlsClientAuth`\"\u003e`tls_client_auth`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`selfSignedTlsClientAuth`\" pulumi-lang-dotnet=\"`SelfSignedTlsClientAuth`\" pulumi-lang-go=\"`selfSignedTlsClientAuth`\" pulumi-lang-python=\"`self_signed_tls_client_auth`\" pulumi-lang-yaml=\"`selfSignedTlsClientAuth`\" pulumi-lang-java=\"`selfSignedTlsClientAuth`\"\u003e`self_signed_tls_client_auth`\u003c/span\u003e, or \u003cspan pulumi-lang-nodejs=\"`none`\" pulumi-lang-dotnet=\"`None`\" pulumi-lang-go=\"`none`\" pulumi-lang-python=\"`none`\" pulumi-lang-yaml=\"`none`\" pulumi-lang-java=\"`none`\"\u003e`none`\u003c/span\u003e: do not authenticate. must be one of [\u003cspan pulumi-lang-nodejs=\"\"clientSecretBasic\"\" pulumi-lang-dotnet=\"\"ClientSecretBasic\"\" pulumi-lang-go=\"\"clientSecretBasic\"\" pulumi-lang-python=\"\"client_secret_basic\"\" pulumi-lang-yaml=\"\"clientSecretBasic\"\" pulumi-lang-java=\"\"clientSecretBasic\"\"\u003e\"client_secret_basic\"\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"\"clientSecretJwt\"\" pulumi-lang-dotnet=\"\"ClientSecretJwt\"\" pulumi-lang-go=\"\"clientSecretJwt\"\" pulumi-lang-python=\"\"client_secret_jwt\"\" pulumi-lang-yaml=\"\"clientSecretJwt\"\" pulumi-lang-java=\"\"clientSecretJwt\"\"\u003e\"client_secret_jwt\"\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"\"clientSecretPost\"\" pulumi-lang-dotnet=\"\"ClientSecretPost\"\" pulumi-lang-go=\"\"clientSecretPost\"\" pulumi-lang-python=\"\"client_secret_post\"\" pulumi-lang-yaml=\"\"clientSecretPost\"\" pulumi-lang-java=\"\"clientSecretPost\"\"\u003e\"client_secret_post\"\u003c/span\u003e, \"none\", \u003cspan pulumi-lang-nodejs=\"\"privateKeyJwt\"\" pulumi-lang-dotnet=\"\"PrivateKeyJwt\"\" pulumi-lang-go=\"\"privateKeyJwt\"\" pulumi-lang-python=\"\"private_key_jwt\"\" pulumi-lang-yaml=\"\"privateKeyJwt\"\" pulumi-lang-java=\"\"privateKeyJwt\"\"\u003e\"private_key_jwt\"\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"\"selfSignedTlsClientAuth\"\" pulumi-lang-dotnet=\"\"SelfSignedTlsClientAuth\"\" pulumi-lang-go=\"\"selfSignedTlsClientAuth\"\" pulumi-lang-python=\"\"self_signed_tls_client_auth\"\" pulumi-lang-yaml=\"\"selfSignedTlsClientAuth\"\" pulumi-lang-java=\"\"selfSignedTlsClientAuth\"\"\u003e\"self_signed_tls_client_auth\"\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"\"tlsClientAuth\"\" pulumi-lang-dotnet=\"\"TlsClientAuth\"\" pulumi-lang-go=\"\"tlsClientAuth\"\" pulumi-lang-python=\"\"tls_client_auth\"\" pulumi-lang-yaml=\"\"tlsClientAuth\"\" pulumi-lang-java=\"\"tlsClientAuth\"\"\u003e\"tls_client_auth\"\u003c/span\u003e]\n"},"revocationTokenParamName":{"type":"string","description":"Designate token's parameter name for revocation. Default: \"token\"\n"},"rolesClaims":{"type":"array","items":{"type":"string"},"description":"The claim that contains the roles. If multiple values are set, it means the claim is inside a nested object of the token payload. Default: [\"roles\"]\n"},"rolesRequireds":{"type":"array","items":{"type":"string"},"description":"The roles (\u003cspan pulumi-lang-nodejs=\"`rolesClaim`\" pulumi-lang-dotnet=\"`RolesClaim`\" pulumi-lang-go=\"`rolesClaim`\" pulumi-lang-python=\"`roles_claim`\" pulumi-lang-yaml=\"`rolesClaim`\" pulumi-lang-java=\"`rolesClaim`\"\u003e`roles_claim`\u003c/span\u003e claim) required to be present in the access token (or introspection results) for successful authorization. This config parameter works in both **AND** / **OR** cases.\n"},"runOnPreflight":{"type":"boolean","description":"Specifies whether to run this plugin on pre-flight (`OPTIONS`) requests. Default: true\n"},"scopes":{"type":"array","items":{"type":"string"},"description":"The scopes passed to the authorization and token endpoints. Default: []\n"},"scopesClaims":{"type":"array","items":{"type":"string"},"description":"The claim that contains the scopes. If multiple values are set, it means the claim is inside a nested object of the token payload. Default: [\"scope\"]\n"},"scopesRequireds":{"type":"array","items":{"type":"string"},"description":"The scopes (\u003cspan pulumi-lang-nodejs=\"`scopesClaim`\" pulumi-lang-dotnet=\"`ScopesClaim`\" pulumi-lang-go=\"`scopesClaim`\" pulumi-lang-python=\"`scopes_claim`\" pulumi-lang-yaml=\"`scopesClaim`\" pulumi-lang-java=\"`scopesClaim`\"\u003e`scopes_claim`\u003c/span\u003e claim) required to be present in the access token (or introspection results) for successful authorization. This config parameter works in both **AND** / **OR** cases.\n"},"searchUserInfo":{"type":"boolean","description":"Specify whether to use the user info endpoint to get additional claims for consumer mapping, credential mapping, authenticated groups, and upstream and downstream headers. Default: false\n"},"sessionAbsoluteTimeout":{"type":"number","description":"Limits how long the session can be renewed in seconds, until re-authentication is required. 0 disables the checks. Default: 86400\n"},"sessionAudience":{"type":"string","description":"The session audience, which is the intended target application. For example `\"my-application\"`. Default: \"default\"\n"},"sessionBinds":{"type":"array","items":{"type":"string"},"description":"Bind the session to data acquired from the HTTP request or connection.\n"},"sessionCookieDomain":{"type":"string","description":"The session cookie Domain flag.\n"},"sessionCookieHttpOnly":{"type":"boolean","description":"Forbids JavaScript from accessing the cookie, for example, through the `Document.cookie` property. Default: true\n"},"sessionCookieName":{"type":"string","description":"The session cookie name. Default: \"session\"\n"},"sessionCookiePath":{"type":"string","description":"The session cookie Path flag. Default: \"/\"\n"},"sessionCookieSameSite":{"type":"string","description":"Controls whether a cookie is sent with cross-origin requests, providing some protection against cross-site request forgery attacks. Default: \"Lax\"; must be one of [\"Default\", \"Lax\", \"None\", \"Strict\"]\n"},"sessionCookieSecure":{"type":"boolean","description":"Cookie is only sent to the server when a request is made with the https: scheme (except on localhost), and therefore is more resistant to man-in-the-middle attacks.\n"},"sessionEnforceSameSubject":{"type":"boolean","description":"When set to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, audiences are forced to share the same subject. Default: false\n"},"sessionHashStorageKey":{"type":"boolean","description":"When set to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, the storage key (session ID) is hashed for extra security. Hashing the storage key means it is impossible to decrypt data from the storage without a cookie. Default: false\n"},"sessionHashSubject":{"type":"boolean","description":"When set to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, the value of subject is hashed before being stored. Only applies when \u003cspan pulumi-lang-nodejs=\"`sessionStoreMetadata`\" pulumi-lang-dotnet=\"`SessionStoreMetadata`\" pulumi-lang-go=\"`sessionStoreMetadata`\" pulumi-lang-python=\"`session_store_metadata`\" pulumi-lang-yaml=\"`sessionStoreMetadata`\" pulumi-lang-java=\"`sessionStoreMetadata`\"\u003e`session_store_metadata`\u003c/span\u003e is enabled. Default: false\n"},"sessionIdlingTimeout":{"type":"number","description":"Specifies how long the session can be inactive until it is considered invalid in seconds. 0 disables the checks and touching. Default: 900\n"},"sessionMemcachedHost":{"type":"string","description":"The memcached host. Default: \"127.0.0.1\"\n"},"sessionMemcachedPort":{"type":"number","description":"The memcached port. Default: 11211\n"},"sessionMemcachedPrefix":{"type":"string","description":"The memcached session key prefix.\n"},"sessionMemcachedSocket":{"type":"string","description":"The memcached unix socket path.\n"},"sessionMemcachedSsl":{"type":"boolean","description":"If set to true, uses SSL to connect to memcached. Default: false\n"},"sessionMemcachedSslVerify":{"type":"boolean","description":"If set to true, verifies the validity of the memcached server SSL certificate. Default: false\n"},"sessionRemember":{"type":"boolean","description":"Enables or disables persistent sessions. Default: false\n"},"sessionRememberAbsoluteTimeout":{"type":"number","description":"Limits how long the persistent session can be renewed in seconds, until re-authentication is required. 0 disables the checks. Default: 2592000\n"},"sessionRememberCookieName":{"type":"string","description":"Persistent session cookie name. Use with the \u003cspan pulumi-lang-nodejs=\"`remember`\" pulumi-lang-dotnet=\"`Remember`\" pulumi-lang-go=\"`remember`\" pulumi-lang-python=\"`remember`\" pulumi-lang-yaml=\"`remember`\" pulumi-lang-java=\"`remember`\"\u003e`remember`\u003c/span\u003e configuration parameter. Default: \"remember\"\n"},"sessionRememberRollingTimeout":{"type":"number","description":"Specifies how long the persistent session is considered valid in seconds. 0 disables the checks and rolling. Default: 604800\n"},"sessionRequestHeaders":{"type":"array","items":{"type":"string"},"description":"Set of headers to send to upstream, use id, audience, subject, timeout, idling-timeout, rolling-timeout, absolute-timeout. E.g. `[ \"id\", \"timeout\" ]` will set Session-Id and Session-Timeout request headers.\n"},"sessionResponseHeaders":{"type":"array","items":{"type":"string"},"description":"Set of headers to send to downstream, use id, audience, subject, timeout, idling-timeout, rolling-timeout, absolute-timeout. E.g. `[ \"id\", \"timeout\" ]` will set Session-Id and Session-Timeout response headers.\n"},"sessionRollingTimeout":{"type":"number","description":"Specifies how long the session can be used in seconds until it needs to be renewed. 0 disables the checks and rolling. Default: 3600\n"},"sessionSecret":{"type":"string","description":"The session secret.\n"},"sessionStorage":{"type":"string","description":"The session storage for session data: - \u003cspan pulumi-lang-nodejs=\"`cookie`\" pulumi-lang-dotnet=\"`Cookie`\" pulumi-lang-go=\"`cookie`\" pulumi-lang-python=\"`cookie`\" pulumi-lang-yaml=\"`cookie`\" pulumi-lang-java=\"`cookie`\"\u003e`cookie`\u003c/span\u003e: stores session data with the session cookie (the session cannot be invalidated or revoked without changing session secret, but is stateless, and doesn't require a database) - \u003cspan pulumi-lang-nodejs=\"`memcache`\" pulumi-lang-dotnet=\"`Memcache`\" pulumi-lang-go=\"`memcache`\" pulumi-lang-python=\"`memcache`\" pulumi-lang-yaml=\"`memcache`\" pulumi-lang-java=\"`memcache`\"\u003e`memcache`\u003c/span\u003e: stores session data in memcached - \u003cspan pulumi-lang-nodejs=\"`redis`\" pulumi-lang-dotnet=\"`Redis`\" pulumi-lang-go=\"`redis`\" pulumi-lang-python=\"`redis`\" pulumi-lang-yaml=\"`redis`\" pulumi-lang-java=\"`redis`\"\u003e`redis`\u003c/span\u003e: stores session data in Redis. Default: \"cookie\"; must be one of [\"cookie\", \"memcache\", \"memcached\", \"redis\"]\n"},"sessionStoreMetadata":{"type":"boolean","description":"Configures whether or not session metadata should be stored. This metadata includes information about the active sessions for a specific audience belonging to a specific subject. Default: false\n"},"sslVerify":{"type":"boolean","description":"Verify identity provider server certificate. If set to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, the plugin uses the CA certificate set in the `kong.conf` config parameter \u003cspan pulumi-lang-nodejs=\"`luaSslTrustedCertificate`\" pulumi-lang-dotnet=\"`LuaSslTrustedCertificate`\" pulumi-lang-go=\"`luaSslTrustedCertificate`\" pulumi-lang-python=\"`lua_ssl_trusted_certificate`\" pulumi-lang-yaml=\"`luaSslTrustedCertificate`\" pulumi-lang-java=\"`luaSslTrustedCertificate`\"\u003e`lua_ssl_trusted_certificate`\u003c/span\u003e. Default: false\n"},"timeout":{"type":"number","description":"Network IO timeout in milliseconds. Default: 10000\n"},"tlsClientAuthCertId":{"type":"string","description":"ID of the Certificate entity representing the client certificate to use for mTLS client authentication for connections between Kong and the Auth Server.\n"},"tlsClientAuthSslVerify":{"type":"boolean","description":"Verify identity provider server certificate during mTLS client authentication. Default: true\n"},"tokenCacheKeyIncludeScope":{"type":"boolean","description":"Include the scope in the token cache key, so token with different scopes are considered diffrent tokens. Default: false\n"},"tokenEndpoint":{"type":"string","description":"The token endpoint. If set it overrides the value in \u003cspan pulumi-lang-nodejs=\"`tokenEndpoint`\" pulumi-lang-dotnet=\"`TokenEndpoint`\" pulumi-lang-go=\"`tokenEndpoint`\" pulumi-lang-python=\"`token_endpoint`\" pulumi-lang-yaml=\"`tokenEndpoint`\" pulumi-lang-java=\"`tokenEndpoint`\"\u003e`token_endpoint`\u003c/span\u003e returned by the discovery endpoint.\n"},"tokenEndpointAuthMethod":{"type":"string","description":"The token endpoint authentication method: \u003cspan pulumi-lang-nodejs=\"`clientSecretBasic`\" pulumi-lang-dotnet=\"`ClientSecretBasic`\" pulumi-lang-go=\"`clientSecretBasic`\" pulumi-lang-python=\"`client_secret_basic`\" pulumi-lang-yaml=\"`clientSecretBasic`\" pulumi-lang-java=\"`clientSecretBasic`\"\u003e`client_secret_basic`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`clientSecretPost`\" pulumi-lang-dotnet=\"`ClientSecretPost`\" pulumi-lang-go=\"`clientSecretPost`\" pulumi-lang-python=\"`client_secret_post`\" pulumi-lang-yaml=\"`clientSecretPost`\" pulumi-lang-java=\"`clientSecretPost`\"\u003e`client_secret_post`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`clientSecretJwt`\" pulumi-lang-dotnet=\"`ClientSecretJwt`\" pulumi-lang-go=\"`clientSecretJwt`\" pulumi-lang-python=\"`client_secret_jwt`\" pulumi-lang-yaml=\"`clientSecretJwt`\" pulumi-lang-java=\"`clientSecretJwt`\"\u003e`client_secret_jwt`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`privateKeyJwt`\" pulumi-lang-dotnet=\"`PrivateKeyJwt`\" pulumi-lang-go=\"`privateKeyJwt`\" pulumi-lang-python=\"`private_key_jwt`\" pulumi-lang-yaml=\"`privateKeyJwt`\" pulumi-lang-java=\"`privateKeyJwt`\"\u003e`private_key_jwt`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`tlsClientAuth`\" pulumi-lang-dotnet=\"`TlsClientAuth`\" pulumi-lang-go=\"`tlsClientAuth`\" pulumi-lang-python=\"`tls_client_auth`\" pulumi-lang-yaml=\"`tlsClientAuth`\" pulumi-lang-java=\"`tlsClientAuth`\"\u003e`tls_client_auth`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`selfSignedTlsClientAuth`\" pulumi-lang-dotnet=\"`SelfSignedTlsClientAuth`\" pulumi-lang-go=\"`selfSignedTlsClientAuth`\" pulumi-lang-python=\"`self_signed_tls_client_auth`\" pulumi-lang-yaml=\"`selfSignedTlsClientAuth`\" pulumi-lang-java=\"`selfSignedTlsClientAuth`\"\u003e`self_signed_tls_client_auth`\u003c/span\u003e, or \u003cspan pulumi-lang-nodejs=\"`none`\" pulumi-lang-dotnet=\"`None`\" pulumi-lang-go=\"`none`\" pulumi-lang-python=\"`none`\" pulumi-lang-yaml=\"`none`\" pulumi-lang-java=\"`none`\"\u003e`none`\u003c/span\u003e: do not authenticate. must be one of [\u003cspan pulumi-lang-nodejs=\"\"clientSecretBasic\"\" pulumi-lang-dotnet=\"\"ClientSecretBasic\"\" pulumi-lang-go=\"\"clientSecretBasic\"\" pulumi-lang-python=\"\"client_secret_basic\"\" pulumi-lang-yaml=\"\"clientSecretBasic\"\" pulumi-lang-java=\"\"clientSecretBasic\"\"\u003e\"client_secret_basic\"\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"\"clientSecretJwt\"\" pulumi-lang-dotnet=\"\"ClientSecretJwt\"\" pulumi-lang-go=\"\"clientSecretJwt\"\" pulumi-lang-python=\"\"client_secret_jwt\"\" pulumi-lang-yaml=\"\"clientSecretJwt\"\" pulumi-lang-java=\"\"clientSecretJwt\"\"\u003e\"client_secret_jwt\"\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"\"clientSecretPost\"\" pulumi-lang-dotnet=\"\"ClientSecretPost\"\" pulumi-lang-go=\"\"clientSecretPost\"\" pulumi-lang-python=\"\"client_secret_post\"\" pulumi-lang-yaml=\"\"clientSecretPost\"\" pulumi-lang-java=\"\"clientSecretPost\"\"\u003e\"client_secret_post\"\u003c/span\u003e, \"none\", \u003cspan pulumi-lang-nodejs=\"\"privateKeyJwt\"\" pulumi-lang-dotnet=\"\"PrivateKeyJwt\"\" pulumi-lang-go=\"\"privateKeyJwt\"\" pulumi-lang-python=\"\"private_key_jwt\"\" pulumi-lang-yaml=\"\"privateKeyJwt\"\" pulumi-lang-java=\"\"privateKeyJwt\"\"\u003e\"private_key_jwt\"\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"\"selfSignedTlsClientAuth\"\" pulumi-lang-dotnet=\"\"SelfSignedTlsClientAuth\"\" pulumi-lang-go=\"\"selfSignedTlsClientAuth\"\" pulumi-lang-python=\"\"self_signed_tls_client_auth\"\" pulumi-lang-yaml=\"\"selfSignedTlsClientAuth\"\" pulumi-lang-java=\"\"selfSignedTlsClientAuth\"\"\u003e\"self_signed_tls_client_auth\"\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"\"tlsClientAuth\"\" pulumi-lang-dotnet=\"\"TlsClientAuth\"\" pulumi-lang-go=\"\"tlsClientAuth\"\" pulumi-lang-python=\"\"tls_client_auth\"\" pulumi-lang-yaml=\"\"tlsClientAuth\"\" pulumi-lang-java=\"\"tlsClientAuth\"\"\u003e\"tls_client_auth\"\u003c/span\u003e]\n"},"tokenExchangeEndpoint":{"type":"string","description":"The token exchange endpoint.\n"},"tokenHeadersClients":{"type":"array","items":{"type":"string"},"description":"Extra headers passed from the client to the token endpoint.\n"},"tokenHeadersGrants":{"type":"array","items":{"type":"string"},"description":"Enable the sending of the token endpoint response headers only with certain grants: - \u003cspan pulumi-lang-nodejs=\"`password`\" pulumi-lang-dotnet=\"`Password`\" pulumi-lang-go=\"`password`\" pulumi-lang-python=\"`password`\" pulumi-lang-yaml=\"`password`\" pulumi-lang-java=\"`password`\"\u003e`password`\u003c/span\u003e: with OAuth password grant - \u003cspan pulumi-lang-nodejs=\"`clientCredentials`\" pulumi-lang-dotnet=\"`ClientCredentials`\" pulumi-lang-go=\"`clientCredentials`\" pulumi-lang-python=\"`client_credentials`\" pulumi-lang-yaml=\"`clientCredentials`\" pulumi-lang-java=\"`clientCredentials`\"\u003e`client_credentials`\u003c/span\u003e: with OAuth client credentials grant - \u003cspan pulumi-lang-nodejs=\"`authorizationCode`\" pulumi-lang-dotnet=\"`AuthorizationCode`\" pulumi-lang-go=\"`authorizationCode`\" pulumi-lang-python=\"`authorization_code`\" pulumi-lang-yaml=\"`authorizationCode`\" pulumi-lang-java=\"`authorizationCode`\"\u003e`authorization_code`\u003c/span\u003e: with authorization code flow - \u003cspan pulumi-lang-nodejs=\"`refreshToken`\" pulumi-lang-dotnet=\"`RefreshToken`\" pulumi-lang-go=\"`refreshToken`\" pulumi-lang-python=\"`refresh_token`\" pulumi-lang-yaml=\"`refreshToken`\" pulumi-lang-java=\"`refreshToken`\"\u003e`refresh_token`\u003c/span\u003e with refresh token grant.\n"},"tokenHeadersNames":{"type":"array","items":{"type":"string"},"description":"Extra header names passed to the token endpoint.\n"},"tokenHeadersPrefix":{"type":"string","description":"Add a prefix to the token endpoint response headers before forwarding them to the downstream client.\n"},"tokenHeadersReplays":{"type":"array","items":{"type":"string"},"description":"The names of token endpoint response headers to forward to the downstream client.\n"},"tokenHeadersValues":{"type":"array","items":{"type":"string"},"description":"Extra header values passed to the token endpoint.\n"},"tokenPostArgsClients":{"type":"array","items":{"type":"string"},"description":"Pass extra arguments from the client to the OpenID-Connect plugin. If arguments exist, the client can pass them using: - Query parameters - Request Body - Request Header  This parameter can be used with \u003cspan pulumi-lang-nodejs=\"`scope`\" pulumi-lang-dotnet=\"`Scope`\" pulumi-lang-go=\"`scope`\" pulumi-lang-python=\"`scope`\" pulumi-lang-yaml=\"`scope`\" pulumi-lang-java=\"`scope`\"\u003e`scope`\u003c/span\u003e values, like this:  `config.token_post_args_client=scope`  In this case, the token would take the \u003cspan pulumi-lang-nodejs=\"`scope`\" pulumi-lang-dotnet=\"`Scope`\" pulumi-lang-go=\"`scope`\" pulumi-lang-python=\"`scope`\" pulumi-lang-yaml=\"`scope`\" pulumi-lang-java=\"`scope`\"\u003e`scope`\u003c/span\u003e value from the query parameter or from the request body or from the header and send it to the token endpoint.\n"},"tokenPostArgsNames":{"type":"array","items":{"type":"string"},"description":"Extra post argument names passed to the token endpoint.\n"},"tokenPostArgsValues":{"type":"array","items":{"type":"string"},"description":"Extra post argument values passed to the token endpoint.\n"},"unauthorizedDestroySession":{"type":"boolean","description":"Destroy any active session for the unauthorized requests. Default: true\n"},"unauthorizedErrorMessage":{"type":"string","description":"The error message for the unauthorized requests (when not using the redirection). Default: \"Unauthorized\"\n"},"unauthorizedRedirectUris":{"type":"array","items":{"type":"string"},"description":"Where to redirect the client on unauthorized requests.\n"},"unexpectedRedirectUris":{"type":"array","items":{"type":"string"},"description":"Where to redirect the client when unexpected errors happen with the requests.\n"},"upstreamAccessTokenHeader":{"type":"string","description":"The upstream access token header. Default: \"authorization:bearer\"\n"},"upstreamAccessTokenJwkHeader":{"type":"string","description":"The upstream access token JWK header.\n"},"upstreamHeadersClaims":{"type":"array","items":{"type":"string"},"description":"The upstream header claims. Only top level claims are supported.\n"},"upstreamHeadersNames":{"type":"array","items":{"type":"string"},"description":"The upstream header names for the claim values.\n"},"upstreamIdTokenHeader":{"type":"string","description":"The upstream id token header.\n"},"upstreamIdTokenJwkHeader":{"type":"string","description":"The upstream id token JWK header.\n"},"upstreamIntrospectionHeader":{"type":"string","description":"The upstream introspection header.\n"},"upstreamIntrospectionJwtHeader":{"type":"string","description":"The upstream introspection JWT header.\n"},"upstreamRefreshTokenHeader":{"type":"string","description":"The upstream refresh token header.\n"},"upstreamSessionIdHeader":{"type":"string","description":"The upstream session id header.\n"},"upstreamUserInfoHeader":{"type":"string","description":"The upstream user info header.\n"},"upstreamUserInfoJwtHeader":{"type":"string","description":"The upstream user info JWT header (in case the user info returns a JWT response).\n"},"userinfoAccept":{"type":"string","description":"The value of `Accept` header for user info requests: - `application/json`: user info response as JSON - `application/jwt`: user info response as JWT (from the obsolete IETF draft document). Default: \"application/json\"; must be one of [\"application/json\", \"application/jwt\"]\n"},"userinfoEndpoint":{"type":"string","description":"The user info endpoint. If set it overrides the value in \u003cspan pulumi-lang-nodejs=\"`userinfoEndpoint`\" pulumi-lang-dotnet=\"`UserinfoEndpoint`\" pulumi-lang-go=\"`userinfoEndpoint`\" pulumi-lang-python=\"`userinfo_endpoint`\" pulumi-lang-yaml=\"`userinfoEndpoint`\" pulumi-lang-java=\"`userinfoEndpoint`\"\u003e`userinfo_endpoint`\u003c/span\u003e returned by the discovery endpoint.\n"},"userinfoHeadersClients":{"type":"array","items":{"type":"string"},"description":"Extra headers passed from the client to the user info endpoint.\n"},"userinfoHeadersNames":{"type":"array","items":{"type":"string"},"description":"Extra header names passed to the user info endpoint.\n"},"userinfoHeadersValues":{"type":"array","items":{"type":"string"},"description":"Extra header values passed to the user info endpoint.\n"},"userinfoQueryArgsClients":{"type":"array","items":{"type":"string"},"description":"Extra query arguments passed from the client to the user info endpoint.\n"},"userinfoQueryArgsNames":{"type":"array","items":{"type":"string"},"description":"Extra query argument names passed to the user info endpoint.\n"},"userinfoQueryArgsValues":{"type":"array","items":{"type":"string"},"description":"Extra query argument values passed to the user info endpoint.\n"},"usingPseudoIssuer":{"type":"boolean","description":"If the plugin uses a pseudo issuer. When set to true, the plugin will not discover the configuration from the issuer URL specified with `config.issuer`. Default: false\n"},"verifyClaims":{"type":"boolean","description":"Verify tokens for standard claims. Default: true\n"},"verifyNonce":{"type":"boolean","description":"Verify nonce on authorization code flow. Default: true\n"},"verifyParameters":{"type":"boolean","description":"Verify plugin configuration against discovery. Default: false\n"},"verifySignature":{"type":"boolean","description":"Verify signature of tokens. Default: true\n"}},"type":"object","required":["issuer"],"language":{"nodejs":{"requiredOutputs":["audienceClaims","authMethods","authorizationCookieHttpOnly","authorizationCookieName","authorizationCookiePath","authorizationCookieSameSite","authorizationRollingTimeout","bearerTokenParamTypes","byUsernameIgnoreCase","cacheIntrospection","cacheTokenExchange","cacheTokens","cacheTokensSalt","cacheTtl","cacheUserInfo","clientArg","clientCredentialsParamTypes","clusterCacheRedis","clusterCacheStrategy","consumerBies","consumerGroupsOptional","consumerOptional","credentialClaims","displayErrors","dpopProofLifetime","dpopUseNonce","enableHsSignatures","exposeErrorCode","forbiddenDestroySession","forbiddenErrorMessage","groupsClaims","hideCredentials","httpVersion","idTokenParamTypes","ignoreSignatures","introspectJwtTokens","introspectionAccept","introspectionCheckActive","introspectionEndpointAuthMethod","introspectionHint","introspectionTokenParamName","issuer","jwtSessionClaim","keepalive","leeway","loginAction","loginMethods","loginRedirectMode","loginTokens","logoutMethods","logoutRevoke","logoutRevokeAccessToken","logoutRevokeRefreshToken","passwordParamTypes","preserveQueryArgs","proofOfPossessionAuthMethodsValidation","proofOfPossessionDpop","proofOfPossessionMtls","pushedAuthorizationRequestEndpointAuthMethod","redis","rediscoveryLifetime","refreshTokenParamTypes","refreshTokens","resolveDistributedClaims","responseMode","responseTypes","reverify","revocationEndpointAuthMethod","revocationTokenParamName","rolesClaims","runOnPreflight","scopes","scopesClaims","searchUserInfo","sessionAbsoluteTimeout","sessionAudience","sessionCookieHttpOnly","sessionCookieName","sessionCookiePath","sessionCookieSameSite","sessionEnforceSameSubject","sessionHashStorageKey","sessionHashSubject","sessionIdlingTimeout","sessionMemcachedHost","sessionMemcachedPort","sessionMemcachedSsl","sessionMemcachedSslVerify","sessionRemember","sessionRememberAbsoluteTimeout","sessionRememberCookieName","sessionRememberRollingTimeout","sessionRollingTimeout","sessionStorage","sessionStoreMetadata","sslVerify","timeout","tlsClientAuthSslVerify","tokenCacheKeyIncludeScope","tokenEndpointAuthMethod","unauthorizedDestroySession","unauthorizedErrorMessage","upstreamAccessTokenHeader","userinfoAccept","usingPseudoIssuer","verifyClaims","verifyNonce","verifyParameters","verifySignature"]}}},"konnect:index/GatewayPluginOpenidConnectConfigClientJwk:GatewayPluginOpenidConnectConfigClientJwk":{"properties":{"alg":{"type":"string"},"crv":{"type":"string"},"d":{"type":"string"},"dp":{"type":"string"},"dq":{"type":"string"},"e":{"type":"string"},"issuer":{"type":"string"},"k":{"type":"string"},"keyOps":{"type":"array","items":{"type":"string"}},"kid":{"type":"string"},"kty":{"type":"string"},"n":{"type":"string"},"oth":{"type":"string"},"p":{"type":"string"},"q":{"type":"string"},"qi":{"type":"string"},"r":{"type":"string"},"t":{"type":"string"},"use":{"type":"string"},"x":{"type":"string"},"x5cs":{"type":"array","items":{"type":"string"}},"x5t":{"type":"string"},"x5tNumberS256":{"type":"string"},"x5u":{"type":"string"},"y":{"type":"string"}},"type":"object"},"konnect:index/GatewayPluginOpenidConnectConfigClusterCacheRedis:GatewayPluginOpenidConnectConfigClusterCacheRedis":{"properties":{"cloudAuthentication":{"$ref":"#/types/konnect:index%2FGatewayPluginOpenidConnectConfigClusterCacheRedisCloudAuthentication:GatewayPluginOpenidConnectConfigClusterCacheRedisCloudAuthentication","description":"Cloud auth related configs for connecting to a Cloud Provider's Redis instance.\n"},"clusterMaxRedirections":{"type":"number","description":"Maximum retry attempts for redirection. Default: 5\n"},"clusterNodes":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginOpenidConnectConfigClusterCacheRedisClusterNode:GatewayPluginOpenidConnectConfigClusterCacheRedisClusterNode"},"description":"Cluster addresses to use for Redis connections when the \u003cspan pulumi-lang-nodejs=\"`redis`\" pulumi-lang-dotnet=\"`Redis`\" pulumi-lang-go=\"`redis`\" pulumi-lang-python=\"`redis`\" pulumi-lang-yaml=\"`redis`\" pulumi-lang-java=\"`redis`\"\u003e`redis`\u003c/span\u003e strategy is defined. Defining this field implies using a Redis Cluster. The minimum length of the array is 1 element.\n"},"connectTimeout":{"type":"number","description":"An integer representing a timeout in milliseconds. Must be between 0 and 2^31-2. Default: 2000\n"},"connectionIsProxied":{"type":"boolean","description":"If the connection to Redis is proxied (e.g. Envoy), set it \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e. Set the \u003cspan pulumi-lang-nodejs=\"`host`\" pulumi-lang-dotnet=\"`Host`\" pulumi-lang-go=\"`host`\" pulumi-lang-python=\"`host`\" pulumi-lang-yaml=\"`host`\" pulumi-lang-java=\"`host`\"\u003e`host`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`port`\" pulumi-lang-dotnet=\"`Port`\" pulumi-lang-go=\"`port`\" pulumi-lang-python=\"`port`\" pulumi-lang-yaml=\"`port`\" pulumi-lang-java=\"`port`\"\u003e`port`\u003c/span\u003e to point to the proxy address. Default: false\n"},"database":{"type":"number","description":"Database to use for the Redis connection when using the \u003cspan pulumi-lang-nodejs=\"`redis`\" pulumi-lang-dotnet=\"`Redis`\" pulumi-lang-go=\"`redis`\" pulumi-lang-python=\"`redis`\" pulumi-lang-yaml=\"`redis`\" pulumi-lang-java=\"`redis`\"\u003e`redis`\u003c/span\u003e strategy. Default: 0\n"},"host":{"type":"string","description":"A string representing a host name, such as example.com. Default: \"127.0.0.1\"\n"},"keepaliveBacklog":{"type":"number","description":"Limits the total number of opened connections for a pool. If the connection pool is full, connection queues above the limit go into the backlog queue. If the backlog queue is full, subsequent connect operations fail and return \u003cspan pulumi-lang-nodejs=\"`nil`\" pulumi-lang-dotnet=\"`Nil`\" pulumi-lang-go=\"`nil`\" pulumi-lang-python=\"`nil`\" pulumi-lang-yaml=\"`nil`\" pulumi-lang-java=\"`nil`\"\u003e`nil`\u003c/span\u003e. Queued operations (subject to set timeouts) resume once the number of connections in the pool is less than \u003cspan pulumi-lang-nodejs=\"`keepalivePoolSize`\" pulumi-lang-dotnet=\"`KeepalivePoolSize`\" pulumi-lang-go=\"`keepalivePoolSize`\" pulumi-lang-python=\"`keepalive_pool_size`\" pulumi-lang-yaml=\"`keepalivePoolSize`\" pulumi-lang-java=\"`keepalivePoolSize`\"\u003e`keepalive_pool_size`\u003c/span\u003e. If latency is high or throughput is low, try increasing this value. Empirically, this value is larger than \u003cspan pulumi-lang-nodejs=\"`keepalivePoolSize`\" pulumi-lang-dotnet=\"`KeepalivePoolSize`\" pulumi-lang-go=\"`keepalivePoolSize`\" pulumi-lang-python=\"`keepalive_pool_size`\" pulumi-lang-yaml=\"`keepalivePoolSize`\" pulumi-lang-java=\"`keepalivePoolSize`\"\u003e`keepalive_pool_size`\u003c/span\u003e.\n"},"keepalivePoolSize":{"type":"number","description":"The size limit for every cosocket connection pool associated with every remote server, per worker process. If neither \u003cspan pulumi-lang-nodejs=\"`keepalivePoolSize`\" pulumi-lang-dotnet=\"`KeepalivePoolSize`\" pulumi-lang-go=\"`keepalivePoolSize`\" pulumi-lang-python=\"`keepalive_pool_size`\" pulumi-lang-yaml=\"`keepalivePoolSize`\" pulumi-lang-java=\"`keepalivePoolSize`\"\u003e`keepalive_pool_size`\u003c/span\u003e nor \u003cspan pulumi-lang-nodejs=\"`keepaliveBacklog`\" pulumi-lang-dotnet=\"`KeepaliveBacklog`\" pulumi-lang-go=\"`keepaliveBacklog`\" pulumi-lang-python=\"`keepalive_backlog`\" pulumi-lang-yaml=\"`keepaliveBacklog`\" pulumi-lang-java=\"`keepaliveBacklog`\"\u003e`keepalive_backlog`\u003c/span\u003e is specified, no pool is created. If \u003cspan pulumi-lang-nodejs=\"`keepalivePoolSize`\" pulumi-lang-dotnet=\"`KeepalivePoolSize`\" pulumi-lang-go=\"`keepalivePoolSize`\" pulumi-lang-python=\"`keepalive_pool_size`\" pulumi-lang-yaml=\"`keepalivePoolSize`\" pulumi-lang-java=\"`keepalivePoolSize`\"\u003e`keepalive_pool_size`\u003c/span\u003e isn't specified but \u003cspan pulumi-lang-nodejs=\"`keepaliveBacklog`\" pulumi-lang-dotnet=\"`KeepaliveBacklog`\" pulumi-lang-go=\"`keepaliveBacklog`\" pulumi-lang-python=\"`keepalive_backlog`\" pulumi-lang-yaml=\"`keepaliveBacklog`\" pulumi-lang-java=\"`keepaliveBacklog`\"\u003e`keepalive_backlog`\u003c/span\u003e is specified, then the pool uses the default value. Try to increase (e.g. 512) this value if latency is high or throughput is low. Default: 256\n"},"password":{"type":"string","description":"Password to use for Redis connections. If undefined, no AUTH commands are sent to Redis.\n"},"port":{"type":"number","description":"An integer representing a port number between 0 and 65535, inclusive. Default: 6379\n"},"readTimeout":{"type":"number","description":"An integer representing a timeout in milliseconds. Must be between 0 and 2^31-2. Default: 2000\n"},"sendTimeout":{"type":"number","description":"An integer representing a timeout in milliseconds. Must be between 0 and 2^31-2. Default: 2000\n"},"sentinelMaster":{"type":"string","description":"Sentinel master to use for Redis connections. Defining this value implies using Redis Sentinel.\n"},"sentinelNodes":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginOpenidConnectConfigClusterCacheRedisSentinelNode:GatewayPluginOpenidConnectConfigClusterCacheRedisSentinelNode"},"description":"Sentinel node addresses to use for Redis connections when the \u003cspan pulumi-lang-nodejs=\"`redis`\" pulumi-lang-dotnet=\"`Redis`\" pulumi-lang-go=\"`redis`\" pulumi-lang-python=\"`redis`\" pulumi-lang-yaml=\"`redis`\" pulumi-lang-java=\"`redis`\"\u003e`redis`\u003c/span\u003e strategy is defined. Defining this field implies using a Redis Sentinel. The minimum length of the array is 1 element.\n"},"sentinelPassword":{"type":"string","description":"Sentinel password to authenticate with a Redis Sentinel instance. If undefined, no AUTH commands are sent to Redis Sentinels.\n"},"sentinelRole":{"type":"string","description":"Sentinel role to use for Redis connections when the \u003cspan pulumi-lang-nodejs=\"`redis`\" pulumi-lang-dotnet=\"`Redis`\" pulumi-lang-go=\"`redis`\" pulumi-lang-python=\"`redis`\" pulumi-lang-yaml=\"`redis`\" pulumi-lang-java=\"`redis`\"\u003e`redis`\u003c/span\u003e strategy is defined. Defining this value implies using Redis Sentinel. must be one of [\"any\", \"master\", \"slave\"]\n"},"sentinelUsername":{"type":"string","description":"Sentinel username to authenticate with a Redis Sentinel instance. If undefined, ACL authentication won't be performed. This requires Redis v6.2.0+.\n"},"serverName":{"type":"string","description":"A string representing an SNI (server name indication) value for TLS.\n"},"ssl":{"type":"boolean","description":"If set to true, uses SSL to connect to Redis. Default: false\n"},"sslVerify":{"type":"boolean","description":"If set to true, verifies the validity of the server SSL certificate. If setting this parameter, also configure \u003cspan pulumi-lang-nodejs=\"`luaSslTrustedCertificate`\" pulumi-lang-dotnet=\"`LuaSslTrustedCertificate`\" pulumi-lang-go=\"`luaSslTrustedCertificate`\" pulumi-lang-python=\"`lua_ssl_trusted_certificate`\" pulumi-lang-yaml=\"`luaSslTrustedCertificate`\" pulumi-lang-java=\"`luaSslTrustedCertificate`\"\u003e`lua_ssl_trusted_certificate`\u003c/span\u003e in `kong.conf` to specify the CA (or server) certificate used by your Redis server. You may also need to configure \u003cspan pulumi-lang-nodejs=\"`luaSslVerifyDepth`\" pulumi-lang-dotnet=\"`LuaSslVerifyDepth`\" pulumi-lang-go=\"`luaSslVerifyDepth`\" pulumi-lang-python=\"`lua_ssl_verify_depth`\" pulumi-lang-yaml=\"`luaSslVerifyDepth`\" pulumi-lang-java=\"`luaSslVerifyDepth`\"\u003e`lua_ssl_verify_depth`\u003c/span\u003e accordingly. Default: false\n"},"username":{"type":"string","description":"Username to use for Redis connections. If undefined, ACL authentication won't be performed. This requires Redis v6.0.0+. To be compatible with Redis v5.x.y, you can set it to \u003cspan pulumi-lang-nodejs=\"`default`\" pulumi-lang-dotnet=\"`Default`\" pulumi-lang-go=\"`default`\" pulumi-lang-python=\"`default`\" pulumi-lang-yaml=\"`default`\" pulumi-lang-java=\"`default`\"\u003e`default`\u003c/span\u003e.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["cloudAuthentication","clusterMaxRedirections","connectTimeout","connectionIsProxied","database","host","keepalivePoolSize","port","readTimeout","sendTimeout","sentinelRole","ssl","sslVerify"]}}},"konnect:index/GatewayPluginOpenidConnectConfigClusterCacheRedisCloudAuthentication:GatewayPluginOpenidConnectConfigClusterCacheRedisCloudAuthentication":{"properties":{"authProvider":{"type":"string","description":"Auth providers to be used to authenticate to a Cloud Provider's Redis instance. must be one of [\"aws\", \"azure\", \"gcp\"]\n"},"awsAccessKeyId":{"type":"string","description":"AWS Access Key ID to be used for authentication when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e.\n"},"awsAssumeRoleArn":{"type":"string","description":"The ARN of the IAM role to assume for generating ElastiCache IAM authentication tokens.\n"},"awsCacheName":{"type":"string","description":"The name of the AWS Elasticache cluster when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e.\n"},"awsIsServerless":{"type":"boolean","description":"This flag specifies whether the cluster is serverless when\u003cspan pulumi-lang-nodejs=\" authProvider \" pulumi-lang-dotnet=\" AuthProvider \" pulumi-lang-go=\" authProvider \" pulumi-lang-python=\" auth_provider \" pulumi-lang-yaml=\" authProvider \" pulumi-lang-java=\" authProvider \"\u003e auth_provider \u003c/span\u003eis set to \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e. Default: true\n"},"awsRegion":{"type":"string","description":"The region of the AWS ElastiCache cluster when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e.\n"},"awsRoleSessionName":{"type":"string","description":"The session name for the temporary credentials when assuming the IAM role.\n"},"awsSecretAccessKey":{"type":"string","description":"AWS Secret Access Key to be used for authentication when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e.\n"},"azureClientId":{"type":"string","description":"Azure Client ID to be used for authentication when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`azure`\" pulumi-lang-dotnet=\"`Azure`\" pulumi-lang-go=\"`azure`\" pulumi-lang-python=\"`azure`\" pulumi-lang-yaml=\"`azure`\" pulumi-lang-java=\"`azure`\"\u003e`azure`\u003c/span\u003e.\n"},"azureClientSecret":{"type":"string","description":"Azure Client Secret to be used for authentication when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`azure`\" pulumi-lang-dotnet=\"`Azure`\" pulumi-lang-go=\"`azure`\" pulumi-lang-python=\"`azure`\" pulumi-lang-yaml=\"`azure`\" pulumi-lang-java=\"`azure`\"\u003e`azure`\u003c/span\u003e.\n"},"azureTenantId":{"type":"string","description":"Azure Tenant ID to be used for authentication when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`azure`\" pulumi-lang-dotnet=\"`Azure`\" pulumi-lang-go=\"`azure`\" pulumi-lang-python=\"`azure`\" pulumi-lang-yaml=\"`azure`\" pulumi-lang-java=\"`azure`\"\u003e`azure`\u003c/span\u003e.\n"},"gcpServiceAccountJson":{"type":"string","description":"GCP Service Account JSON to be used for authentication when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`gcp`\" pulumi-lang-dotnet=\"`Gcp`\" pulumi-lang-go=\"`gcp`\" pulumi-lang-python=\"`gcp`\" pulumi-lang-yaml=\"`gcp`\" pulumi-lang-java=\"`gcp`\"\u003e`gcp`\u003c/span\u003e.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["authProvider","awsIsServerless"]}}},"konnect:index/GatewayPluginOpenidConnectConfigClusterCacheRedisClusterNode:GatewayPluginOpenidConnectConfigClusterCacheRedisClusterNode":{"properties":{"ip":{"type":"string","description":"A string representing a host name, such as example.com. Default: \"127.0.0.1\"\n"},"port":{"type":"number","description":"An integer representing a port number between 0 and 65535, inclusive. Default: 6379\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["ip","port"]}}},"konnect:index/GatewayPluginOpenidConnectConfigClusterCacheRedisSentinelNode:GatewayPluginOpenidConnectConfigClusterCacheRedisSentinelNode":{"properties":{"host":{"type":"string","description":"A string representing a host name, such as example.com. Default: \"127.0.0.1\"\n"},"port":{"type":"number","description":"An integer representing a port number between 0 and 65535, inclusive. Default: 6379\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["host","port"]}}},"konnect:index/GatewayPluginOpenidConnectConfigRedis:GatewayPluginOpenidConnectConfigRedis":{"properties":{"cloudAuthentication":{"$ref":"#/types/konnect:index%2FGatewayPluginOpenidConnectConfigRedisCloudAuthentication:GatewayPluginOpenidConnectConfigRedisCloudAuthentication","description":"Cloud auth related configs for connecting to a Cloud Provider's Redis instance.\n"},"clusterMaxRedirections":{"type":"number","description":"Maximum retry attempts for redirection. Default: 5\n"},"clusterNodes":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginOpenidConnectConfigRedisClusterNode:GatewayPluginOpenidConnectConfigRedisClusterNode"},"description":"Cluster addresses to use for Redis connections when the \u003cspan pulumi-lang-nodejs=\"`redis`\" pulumi-lang-dotnet=\"`Redis`\" pulumi-lang-go=\"`redis`\" pulumi-lang-python=\"`redis`\" pulumi-lang-yaml=\"`redis`\" pulumi-lang-java=\"`redis`\"\u003e`redis`\u003c/span\u003e strategy is defined. Defining this field implies using a Redis Cluster. The minimum length of the array is 1 element.\n"},"connectTimeout":{"type":"number","description":"An integer representing a timeout in milliseconds. Must be between 0 and 2^31-2. Default: 2000\n"},"connectionIsProxied":{"type":"boolean","description":"If the connection to Redis is proxied (e.g. Envoy), set it \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e. Set the \u003cspan pulumi-lang-nodejs=\"`host`\" pulumi-lang-dotnet=\"`Host`\" pulumi-lang-go=\"`host`\" pulumi-lang-python=\"`host`\" pulumi-lang-yaml=\"`host`\" pulumi-lang-java=\"`host`\"\u003e`host`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`port`\" pulumi-lang-dotnet=\"`Port`\" pulumi-lang-go=\"`port`\" pulumi-lang-python=\"`port`\" pulumi-lang-yaml=\"`port`\" pulumi-lang-java=\"`port`\"\u003e`port`\u003c/span\u003e to point to the proxy address. Default: false\n"},"database":{"type":"number","description":"Database to use for the Redis connection when using the \u003cspan pulumi-lang-nodejs=\"`redis`\" pulumi-lang-dotnet=\"`Redis`\" pulumi-lang-go=\"`redis`\" pulumi-lang-python=\"`redis`\" pulumi-lang-yaml=\"`redis`\" pulumi-lang-java=\"`redis`\"\u003e`redis`\u003c/span\u003e strategy. Default: 0\n"},"host":{"type":"string","description":"A string representing a host name, such as example.com. Default: \"127.0.0.1\"\n"},"keepaliveBacklog":{"type":"number","description":"Limits the total number of opened connections for a pool. If the connection pool is full, connection queues above the limit go into the backlog queue. If the backlog queue is full, subsequent connect operations fail and return \u003cspan pulumi-lang-nodejs=\"`nil`\" pulumi-lang-dotnet=\"`Nil`\" pulumi-lang-go=\"`nil`\" pulumi-lang-python=\"`nil`\" pulumi-lang-yaml=\"`nil`\" pulumi-lang-java=\"`nil`\"\u003e`nil`\u003c/span\u003e. Queued operations (subject to set timeouts) resume once the number of connections in the pool is less than \u003cspan pulumi-lang-nodejs=\"`keepalivePoolSize`\" pulumi-lang-dotnet=\"`KeepalivePoolSize`\" pulumi-lang-go=\"`keepalivePoolSize`\" pulumi-lang-python=\"`keepalive_pool_size`\" pulumi-lang-yaml=\"`keepalivePoolSize`\" pulumi-lang-java=\"`keepalivePoolSize`\"\u003e`keepalive_pool_size`\u003c/span\u003e. If latency is high or throughput is low, try increasing this value. Empirically, this value is larger than \u003cspan pulumi-lang-nodejs=\"`keepalivePoolSize`\" pulumi-lang-dotnet=\"`KeepalivePoolSize`\" pulumi-lang-go=\"`keepalivePoolSize`\" pulumi-lang-python=\"`keepalive_pool_size`\" pulumi-lang-yaml=\"`keepalivePoolSize`\" pulumi-lang-java=\"`keepalivePoolSize`\"\u003e`keepalive_pool_size`\u003c/span\u003e.\n"},"keepalivePoolSize":{"type":"number","description":"The size limit for every cosocket connection pool associated with every remote server, per worker process. If neither \u003cspan pulumi-lang-nodejs=\"`keepalivePoolSize`\" pulumi-lang-dotnet=\"`KeepalivePoolSize`\" pulumi-lang-go=\"`keepalivePoolSize`\" pulumi-lang-python=\"`keepalive_pool_size`\" pulumi-lang-yaml=\"`keepalivePoolSize`\" pulumi-lang-java=\"`keepalivePoolSize`\"\u003e`keepalive_pool_size`\u003c/span\u003e nor \u003cspan pulumi-lang-nodejs=\"`keepaliveBacklog`\" pulumi-lang-dotnet=\"`KeepaliveBacklog`\" pulumi-lang-go=\"`keepaliveBacklog`\" pulumi-lang-python=\"`keepalive_backlog`\" pulumi-lang-yaml=\"`keepaliveBacklog`\" pulumi-lang-java=\"`keepaliveBacklog`\"\u003e`keepalive_backlog`\u003c/span\u003e is specified, no pool is created. If \u003cspan pulumi-lang-nodejs=\"`keepalivePoolSize`\" pulumi-lang-dotnet=\"`KeepalivePoolSize`\" pulumi-lang-go=\"`keepalivePoolSize`\" pulumi-lang-python=\"`keepalive_pool_size`\" pulumi-lang-yaml=\"`keepalivePoolSize`\" pulumi-lang-java=\"`keepalivePoolSize`\"\u003e`keepalive_pool_size`\u003c/span\u003e isn't specified but \u003cspan pulumi-lang-nodejs=\"`keepaliveBacklog`\" pulumi-lang-dotnet=\"`KeepaliveBacklog`\" pulumi-lang-go=\"`keepaliveBacklog`\" pulumi-lang-python=\"`keepalive_backlog`\" pulumi-lang-yaml=\"`keepaliveBacklog`\" pulumi-lang-java=\"`keepaliveBacklog`\"\u003e`keepalive_backlog`\u003c/span\u003e is specified, then the pool uses the default value. Try to increase (e.g. 512) this value if latency is high or throughput is low. Default: 256\n"},"password":{"type":"string","description":"Password to use for Redis connections. If undefined, no AUTH commands are sent to Redis.\n"},"port":{"type":"number","description":"An integer representing a port number between 0 and 65535, inclusive. Default: 6379\n"},"prefix":{"type":"string","description":"The Redis session key prefix.\n"},"readTimeout":{"type":"number","description":"An integer representing a timeout in milliseconds. Must be between 0 and 2^31-2. Default: 2000\n"},"sendTimeout":{"type":"number","description":"An integer representing a timeout in milliseconds. Must be between 0 and 2^31-2. Default: 2000\n"},"sentinelMaster":{"type":"string","description":"Sentinel master to use for Redis connections. Defining this value implies using Redis Sentinel.\n"},"sentinelNodes":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginOpenidConnectConfigRedisSentinelNode:GatewayPluginOpenidConnectConfigRedisSentinelNode"},"description":"Sentinel node addresses to use for Redis connections when the \u003cspan pulumi-lang-nodejs=\"`redis`\" pulumi-lang-dotnet=\"`Redis`\" pulumi-lang-go=\"`redis`\" pulumi-lang-python=\"`redis`\" pulumi-lang-yaml=\"`redis`\" pulumi-lang-java=\"`redis`\"\u003e`redis`\u003c/span\u003e strategy is defined. Defining this field implies using a Redis Sentinel. The minimum length of the array is 1 element.\n"},"sentinelPassword":{"type":"string","description":"Sentinel password to authenticate with a Redis Sentinel instance. If undefined, no AUTH commands are sent to Redis Sentinels.\n"},"sentinelRole":{"type":"string","description":"Sentinel role to use for Redis connections when the \u003cspan pulumi-lang-nodejs=\"`redis`\" pulumi-lang-dotnet=\"`Redis`\" pulumi-lang-go=\"`redis`\" pulumi-lang-python=\"`redis`\" pulumi-lang-yaml=\"`redis`\" pulumi-lang-java=\"`redis`\"\u003e`redis`\u003c/span\u003e strategy is defined. Defining this value implies using Redis Sentinel. must be one of [\"any\", \"master\", \"slave\"]\n"},"sentinelUsername":{"type":"string","description":"Sentinel username to authenticate with a Redis Sentinel instance. If undefined, ACL authentication won't be performed. This requires Redis v6.2.0+.\n"},"serverName":{"type":"string","description":"A string representing an SNI (server name indication) value for TLS.\n"},"socket":{"type":"string","description":"The Redis unix socket path.\n"},"ssl":{"type":"boolean","description":"If set to true, uses SSL to connect to Redis. Default: false\n"},"sslVerify":{"type":"boolean","description":"If set to true, verifies the validity of the server SSL certificate. If setting this parameter, also configure \u003cspan pulumi-lang-nodejs=\"`luaSslTrustedCertificate`\" pulumi-lang-dotnet=\"`LuaSslTrustedCertificate`\" pulumi-lang-go=\"`luaSslTrustedCertificate`\" pulumi-lang-python=\"`lua_ssl_trusted_certificate`\" pulumi-lang-yaml=\"`luaSslTrustedCertificate`\" pulumi-lang-java=\"`luaSslTrustedCertificate`\"\u003e`lua_ssl_trusted_certificate`\u003c/span\u003e in `kong.conf` to specify the CA (or server) certificate used by your Redis server. You may also need to configure \u003cspan pulumi-lang-nodejs=\"`luaSslVerifyDepth`\" pulumi-lang-dotnet=\"`LuaSslVerifyDepth`\" pulumi-lang-go=\"`luaSslVerifyDepth`\" pulumi-lang-python=\"`lua_ssl_verify_depth`\" pulumi-lang-yaml=\"`luaSslVerifyDepth`\" pulumi-lang-java=\"`luaSslVerifyDepth`\"\u003e`lua_ssl_verify_depth`\u003c/span\u003e accordingly. Default: false\n"},"username":{"type":"string","description":"Username to use for Redis connections. If undefined, ACL authentication won't be performed. This requires Redis v6.0.0+. To be compatible with Redis v5.x.y, you can set it to \u003cspan pulumi-lang-nodejs=\"`default`\" pulumi-lang-dotnet=\"`Default`\" pulumi-lang-go=\"`default`\" pulumi-lang-python=\"`default`\" pulumi-lang-yaml=\"`default`\" pulumi-lang-java=\"`default`\"\u003e`default`\u003c/span\u003e.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["cloudAuthentication","clusterMaxRedirections","connectTimeout","connectionIsProxied","database","host","keepalivePoolSize","port","readTimeout","sendTimeout","sentinelRole","ssl","sslVerify"]}}},"konnect:index/GatewayPluginOpenidConnectConfigRedisCloudAuthentication:GatewayPluginOpenidConnectConfigRedisCloudAuthentication":{"properties":{"authProvider":{"type":"string","description":"Auth providers to be used to authenticate to a Cloud Provider's Redis instance. must be one of [\"aws\", \"azure\", \"gcp\"]\n"},"awsAccessKeyId":{"type":"string","description":"AWS Access Key ID to be used for authentication when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e.\n"},"awsAssumeRoleArn":{"type":"string","description":"The ARN of the IAM role to assume for generating ElastiCache IAM authentication tokens.\n"},"awsCacheName":{"type":"string","description":"The name of the AWS Elasticache cluster when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e.\n"},"awsIsServerless":{"type":"boolean","description":"This flag specifies whether the cluster is serverless when\u003cspan pulumi-lang-nodejs=\" authProvider \" pulumi-lang-dotnet=\" AuthProvider \" pulumi-lang-go=\" authProvider \" pulumi-lang-python=\" auth_provider \" pulumi-lang-yaml=\" authProvider \" pulumi-lang-java=\" authProvider \"\u003e auth_provider \u003c/span\u003eis set to \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e. Default: true\n"},"awsRegion":{"type":"string","description":"The region of the AWS ElastiCache cluster when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e.\n"},"awsRoleSessionName":{"type":"string","description":"The session name for the temporary credentials when assuming the IAM role.\n"},"awsSecretAccessKey":{"type":"string","description":"AWS Secret Access Key to be used for authentication when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e.\n"},"azureClientId":{"type":"string","description":"Azure Client ID to be used for authentication when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`azure`\" pulumi-lang-dotnet=\"`Azure`\" pulumi-lang-go=\"`azure`\" pulumi-lang-python=\"`azure`\" pulumi-lang-yaml=\"`azure`\" pulumi-lang-java=\"`azure`\"\u003e`azure`\u003c/span\u003e.\n"},"azureClientSecret":{"type":"string","description":"Azure Client Secret to be used for authentication when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`azure`\" pulumi-lang-dotnet=\"`Azure`\" pulumi-lang-go=\"`azure`\" pulumi-lang-python=\"`azure`\" pulumi-lang-yaml=\"`azure`\" pulumi-lang-java=\"`azure`\"\u003e`azure`\u003c/span\u003e.\n"},"azureTenantId":{"type":"string","description":"Azure Tenant ID to be used for authentication when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`azure`\" pulumi-lang-dotnet=\"`Azure`\" pulumi-lang-go=\"`azure`\" pulumi-lang-python=\"`azure`\" pulumi-lang-yaml=\"`azure`\" pulumi-lang-java=\"`azure`\"\u003e`azure`\u003c/span\u003e.\n"},"gcpServiceAccountJson":{"type":"string","description":"GCP Service Account JSON to be used for authentication when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`gcp`\" pulumi-lang-dotnet=\"`Gcp`\" pulumi-lang-go=\"`gcp`\" pulumi-lang-python=\"`gcp`\" pulumi-lang-yaml=\"`gcp`\" pulumi-lang-java=\"`gcp`\"\u003e`gcp`\u003c/span\u003e.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["authProvider","awsIsServerless"]}}},"konnect:index/GatewayPluginOpenidConnectConfigRedisClusterNode:GatewayPluginOpenidConnectConfigRedisClusterNode":{"properties":{"ip":{"type":"string","description":"A string representing a host name, such as example.com. Default: \"127.0.0.1\"\n"},"port":{"type":"number","description":"An integer representing a port number between 0 and 65535, inclusive. Default: 6379\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["ip","port"]}}},"konnect:index/GatewayPluginOpenidConnectConfigRedisSentinelNode:GatewayPluginOpenidConnectConfigRedisSentinelNode":{"properties":{"host":{"type":"string","description":"A string representing a host name, such as example.com. Default: \"127.0.0.1\"\n"},"port":{"type":"number","description":"An integer representing a port number between 0 and 65535, inclusive. Default: 6379\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["host","port"]}}},"konnect:index/GatewayPluginOpenidConnectOrdering:GatewayPluginOpenidConnectOrdering":{"properties":{"after":{"$ref":"#/types/konnect:index%2FGatewayPluginOpenidConnectOrderingAfter:GatewayPluginOpenidConnectOrderingAfter"},"before":{"$ref":"#/types/konnect:index%2FGatewayPluginOpenidConnectOrderingBefore:GatewayPluginOpenidConnectOrderingBefore"}},"type":"object","language":{"nodejs":{"requiredOutputs":["after","before"]}}},"konnect:index/GatewayPluginOpenidConnectOrderingAfter:GatewayPluginOpenidConnectOrderingAfter":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginOpenidConnectOrderingBefore:GatewayPluginOpenidConnectOrderingBefore":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginOpenidConnectPartial:GatewayPluginOpenidConnectPartial":{"properties":{"id":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"name":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"path":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id","name","path"]}}},"konnect:index/GatewayPluginOpenidConnectRoute:GatewayPluginOpenidConnectRoute":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginOpenidConnectService:GatewayPluginOpenidConnectService":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginOpentelemetryConfig:GatewayPluginOpentelemetryConfig":{"properties":{"accessLogsEndpoint":{"type":"string","description":"An HTTP URL endpoint where access logs (e.g. request/response, route/service, latency, etc.) are exported.\n"},"batchFlushDelay":{"type":"number","description":"The delay, in seconds, between two consecutive batches.\n"},"batchSpanCount":{"type":"number","description":"The number of spans to be sent in a single batch.\n"},"connectTimeout":{"type":"number","description":"An integer representing a timeout in milliseconds. Must be between 0 and 2^31-2. Default: 1000\n"},"headerType":{"type":"string","description":"Default: \"preserve\"; must be one of [\"aws\", \"b3\", \"b3-single\", \"datadog\", \"gcp\", \"ignore\", \"instana\", \"jaeger\", \"ot\", \"preserve\", \"w3c\"]\n"},"headers":{"type":"object","additionalProperties":{"type":"string"},"description":"The custom headers to be added in the HTTP request sent to the OTLP server. This setting is useful for adding the authentication headers (token) for the APM backend.\n"},"httpResponseHeaderForTraceid":{"type":"string"},"logsEndpoint":{"type":"string","description":"An HTTP URL endpoint where internal logs are exported.\n"},"metrics":{"$ref":"#/types/konnect:index%2FGatewayPluginOpentelemetryConfigMetrics:GatewayPluginOpentelemetryConfigMetrics"},"propagation":{"$ref":"#/types/konnect:index%2FGatewayPluginOpentelemetryConfigPropagation:GatewayPluginOpentelemetryConfigPropagation"},"queue":{"$ref":"#/types/konnect:index%2FGatewayPluginOpentelemetryConfigQueue:GatewayPluginOpentelemetryConfigQueue"},"readTimeout":{"type":"number","description":"An integer representing a timeout in milliseconds. Must be between 0 and 2^31-2. Default: 5000\n"},"resourceAttributes":{"type":"object","additionalProperties":{"type":"string"}},"samplingRate":{"type":"number","description":"Tracing sampling rate for configuring the probability-based sampler. When set, this value supersedes the global \u003cspan pulumi-lang-nodejs=\"`tracingSamplingRate`\" pulumi-lang-dotnet=\"`TracingSamplingRate`\" pulumi-lang-go=\"`tracingSamplingRate`\" pulumi-lang-python=\"`tracing_sampling_rate`\" pulumi-lang-yaml=\"`tracingSamplingRate`\" pulumi-lang-java=\"`tracingSamplingRate`\"\u003e`tracing_sampling_rate`\u003c/span\u003e setting from kong.conf.\n"},"samplingStrategy":{"type":"string","description":"The sampling strategy to use for OTLP \u003cspan pulumi-lang-nodejs=\"`traces`\" pulumi-lang-dotnet=\"`Traces`\" pulumi-lang-go=\"`traces`\" pulumi-lang-python=\"`traces`\" pulumi-lang-yaml=\"`traces`\" pulumi-lang-java=\"`traces`\"\u003e`traces`\u003c/span\u003e. Set \u003cspan pulumi-lang-nodejs=\"`parentDropProbabilityFallback`\" pulumi-lang-dotnet=\"`ParentDropProbabilityFallback`\" pulumi-lang-go=\"`parentDropProbabilityFallback`\" pulumi-lang-python=\"`parent_drop_probability_fallback`\" pulumi-lang-yaml=\"`parentDropProbabilityFallback`\" pulumi-lang-java=\"`parentDropProbabilityFallback`\"\u003e`parent_drop_probability_fallback`\u003c/span\u003e if you want parent-based sampling when the parent span contains a \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e sampled flag, and fallback to probability-based sampling otherwise. Set \u003cspan pulumi-lang-nodejs=\"`parentProbabilityFallback`\" pulumi-lang-dotnet=\"`ParentProbabilityFallback`\" pulumi-lang-go=\"`parentProbabilityFallback`\" pulumi-lang-python=\"`parent_probability_fallback`\" pulumi-lang-yaml=\"`parentProbabilityFallback`\" pulumi-lang-java=\"`parentProbabilityFallback`\"\u003e`parent_probability_fallback`\u003c/span\u003e if you want parent-based sampling when the parent span contains a valid sampled flag (\u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e), and fallback to probability-based sampling otherwise. Default: \"parent*drop*probability*fallback\"; must be one of [\"parent*drop*probability*fallback\", \"parent*probability*fallback\"]\n"},"sendTimeout":{"type":"number","description":"An integer representing a timeout in milliseconds. Must be between 0 and 2^31-2. Default: 5000\n"},"tracesEndpoint":{"type":"string","description":"A string representing a URL, such as https://example.com/path/to/resource?q=search.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["connectTimeout","headerType","metrics","propagation","queue","readTimeout","resourceAttributes","samplingStrategy","sendTimeout"]}}},"konnect:index/GatewayPluginOpentelemetryConfigMetrics:GatewayPluginOpentelemetryConfigMetrics":{"properties":{"enableBandwidthMetrics":{"type":"boolean","description":"A boolean value that determines if bandwidth metrics should be collected. If enabled, `http.server.request.size` and `http.server.response.size` metrics will be exported. Default: false\n"},"enableConsumerAttribute":{"type":"boolean","description":"A boolean value that determines if `http.server.request.count`, `http.server.request.size` and `http.server.response.size` metrics should fill in the consumer attribute when available. Default: false\n"},"enableLatencyMetrics":{"type":"boolean","description":"A boolean value that determines if latency metrics should be collected. If enabled, `kong.latency.total`, `kong.latency.internal` and `kong.latency.upstream` metrics will be exported. Default: false\n"},"enableRequestMetrics":{"type":"boolean","description":"A boolean value that determines if request count metrics should be collected. If enabled, `http.server.request.count` metrics will be exported. Default: false\n"},"enableUpstreamHealthMetrics":{"type":"boolean","description":"A boolean value that determines if upstream health metrics should be collected. If enabled, `kong.upstream.target.status` metrics will be exported. Default: false\n"},"endpoint":{"type":"string","description":"An HTTP URL endpoint where metrics are exported.\n"},"pushInterval":{"type":"number","description":"The interval in seconds at which metrics are pushed to the OTLP server. This setting is only applicable when \u003cspan pulumi-lang-nodejs=\"`endpoint`\" pulumi-lang-dotnet=\"`Endpoint`\" pulumi-lang-go=\"`endpoint`\" pulumi-lang-python=\"`endpoint`\" pulumi-lang-yaml=\"`endpoint`\" pulumi-lang-java=\"`endpoint`\"\u003e`endpoint`\u003c/span\u003e is set. Default: 60\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["enableBandwidthMetrics","enableConsumerAttribute","enableLatencyMetrics","enableRequestMetrics","enableUpstreamHealthMetrics","pushInterval"]}}},"konnect:index/GatewayPluginOpentelemetryConfigPropagation:GatewayPluginOpentelemetryConfigPropagation":{"properties":{"clears":{"type":"array","items":{"type":"string"},"description":"Header names to clear after context extraction. This allows to extract the context from a certain header and then remove it from the request, useful when extraction and injection are performed on different header formats and the original header should not be sent to the upstream. If left empty, no headers are cleared.\n"},"defaultFormat":{"type":"string","description":"The default header format to use when extractors did not match any format in the incoming headers and \u003cspan pulumi-lang-nodejs=\"`inject`\" pulumi-lang-dotnet=\"`Inject`\" pulumi-lang-go=\"`inject`\" pulumi-lang-python=\"`inject`\" pulumi-lang-yaml=\"`inject`\" pulumi-lang-java=\"`inject`\"\u003e`inject`\u003c/span\u003e is configured with the value: \u003cspan pulumi-lang-nodejs=\"`preserve`\" pulumi-lang-dotnet=\"`Preserve`\" pulumi-lang-go=\"`preserve`\" pulumi-lang-python=\"`preserve`\" pulumi-lang-yaml=\"`preserve`\" pulumi-lang-java=\"`preserve`\"\u003e`preserve`\u003c/span\u003e. This can happen when no tracing header was found in the request, or the incoming tracing header formats were not included in \u003cspan pulumi-lang-nodejs=\"`extract`\" pulumi-lang-dotnet=\"`Extract`\" pulumi-lang-go=\"`extract`\" pulumi-lang-python=\"`extract`\" pulumi-lang-yaml=\"`extract`\" pulumi-lang-java=\"`extract`\"\u003e`extract`\u003c/span\u003e. Default: \"w3c\"; must be one of [\"aws\", \"b3\", \"b3-single\", \"datadog\", \"gcp\", \"instana\", \"jaeger\", \"ot\", \"w3c\"]\n"},"extracts":{"type":"array","items":{"type":"string"},"description":"Header formats used to extract tracing context from incoming requests. If multiple values are specified, the first one found will be used for extraction. If left empty, Kong will not extract any tracing context information from incoming requests and generate a trace with no parent and a new trace ID.\n"},"injects":{"type":"array","items":{"type":"string"},"description":"Header formats used to inject tracing context. The value \u003cspan pulumi-lang-nodejs=\"`preserve`\" pulumi-lang-dotnet=\"`Preserve`\" pulumi-lang-go=\"`preserve`\" pulumi-lang-python=\"`preserve`\" pulumi-lang-yaml=\"`preserve`\" pulumi-lang-java=\"`preserve`\"\u003e`preserve`\u003c/span\u003e will use the same header format as the incoming request. If multiple values are specified, all of them will be used during injection. If left empty, Kong will not inject any tracing context information in outgoing requests.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["defaultFormat"]}}},"konnect:index/GatewayPluginOpentelemetryConfigQueue:GatewayPluginOpentelemetryConfigQueue":{"properties":{"concurrencyLimit":{"type":"number","description":"The number of of queue delivery timers. -1 indicates unlimited. Default: 1; must be one of [\"-1\", \"1\"]\n"},"initialRetryDelay":{"type":"number","description":"Time in seconds before the initial retry is made for a failing batch.\n"},"maxBatchSize":{"type":"number","description":"Maximum number of entries that can be processed at a time. Default: 200\n"},"maxBytes":{"type":"number","description":"Maximum number of bytes that can be waiting on a queue, requires string content.\n"},"maxCoalescingDelay":{"type":"number","description":"Maximum number of (fractional) seconds to elapse after the first entry was queued before the queue starts calling the handler. Default: 1\n"},"maxEntries":{"type":"number","description":"Maximum number of entries that can be waiting on the queue. Default: 10000\n"},"maxRetryDelay":{"type":"number","description":"Maximum time in seconds between retries, caps exponential backoff. Default: 60\n"},"maxRetryTime":{"type":"number","description":"Time in seconds before the queue gives up calling a failed handler for a batch. Default: 60\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["concurrencyLimit","initialRetryDelay","maxBatchSize","maxCoalescingDelay","maxEntries","maxRetryDelay","maxRetryTime"]}}},"konnect:index/GatewayPluginOpentelemetryConsumer:GatewayPluginOpentelemetryConsumer":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginOpentelemetryOrdering:GatewayPluginOpentelemetryOrdering":{"properties":{"after":{"$ref":"#/types/konnect:index%2FGatewayPluginOpentelemetryOrderingAfter:GatewayPluginOpentelemetryOrderingAfter"},"before":{"$ref":"#/types/konnect:index%2FGatewayPluginOpentelemetryOrderingBefore:GatewayPluginOpentelemetryOrderingBefore"}},"type":"object","language":{"nodejs":{"requiredOutputs":["after","before"]}}},"konnect:index/GatewayPluginOpentelemetryOrderingAfter:GatewayPluginOpentelemetryOrderingAfter":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginOpentelemetryOrderingBefore:GatewayPluginOpentelemetryOrderingBefore":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginOpentelemetryPartial:GatewayPluginOpentelemetryPartial":{"properties":{"id":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"name":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"path":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id","name","path"]}}},"konnect:index/GatewayPluginOpentelemetryRoute:GatewayPluginOpentelemetryRoute":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginOpentelemetryService:GatewayPluginOpentelemetryService":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginPostFunctionConfig:GatewayPluginPostFunctionConfig":{"properties":{"accesses":{"type":"array","items":{"type":"string"},"description":"Default: []\n"},"bodyFilters":{"type":"array","items":{"type":"string"},"description":"Default: []\n"},"certificates":{"type":"array","items":{"type":"string"},"description":"Default: []\n"},"headerFilters":{"type":"array","items":{"type":"string"},"description":"Default: []\n"},"logs":{"type":"array","items":{"type":"string"},"description":"Default: []\n"},"rewrites":{"type":"array","items":{"type":"string"},"description":"Default: []\n"},"wsClientFrames":{"type":"array","items":{"type":"string"},"description":"Default: []\n"},"wsCloses":{"type":"array","items":{"type":"string"},"description":"Default: []\n"},"wsHandshakes":{"type":"array","items":{"type":"string"},"description":"Default: []\n"},"wsUpstreamFrames":{"type":"array","items":{"type":"string"},"description":"Default: []\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses","bodyFilters","certificates","headerFilters","logs","rewrites","wsClientFrames","wsCloses","wsHandshakes","wsUpstreamFrames"]}}},"konnect:index/GatewayPluginPostFunctionOrdering:GatewayPluginPostFunctionOrdering":{"properties":{"after":{"$ref":"#/types/konnect:index%2FGatewayPluginPostFunctionOrderingAfter:GatewayPluginPostFunctionOrderingAfter"},"before":{"$ref":"#/types/konnect:index%2FGatewayPluginPostFunctionOrderingBefore:GatewayPluginPostFunctionOrderingBefore"}},"type":"object","language":{"nodejs":{"requiredOutputs":["after","before"]}}},"konnect:index/GatewayPluginPostFunctionOrderingAfter:GatewayPluginPostFunctionOrderingAfter":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginPostFunctionOrderingBefore:GatewayPluginPostFunctionOrderingBefore":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginPostFunctionPartial:GatewayPluginPostFunctionPartial":{"properties":{"id":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"name":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"path":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id","name","path"]}}},"konnect:index/GatewayPluginPostFunctionRoute:GatewayPluginPostFunctionRoute":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginPostFunctionService:GatewayPluginPostFunctionService":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginPreFunctionConfig:GatewayPluginPreFunctionConfig":{"properties":{"accesses":{"type":"array","items":{"type":"string"},"description":"Default: []\n"},"bodyFilters":{"type":"array","items":{"type":"string"},"description":"Default: []\n"},"certificates":{"type":"array","items":{"type":"string"},"description":"Default: []\n"},"headerFilters":{"type":"array","items":{"type":"string"},"description":"Default: []\n"},"logs":{"type":"array","items":{"type":"string"},"description":"Default: []\n"},"rewrites":{"type":"array","items":{"type":"string"},"description":"Default: []\n"},"wsClientFrames":{"type":"array","items":{"type":"string"},"description":"Default: []\n"},"wsCloses":{"type":"array","items":{"type":"string"},"description":"Default: []\n"},"wsHandshakes":{"type":"array","items":{"type":"string"},"description":"Default: []\n"},"wsUpstreamFrames":{"type":"array","items":{"type":"string"},"description":"Default: []\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses","bodyFilters","certificates","headerFilters","logs","rewrites","wsClientFrames","wsCloses","wsHandshakes","wsUpstreamFrames"]}}},"konnect:index/GatewayPluginPreFunctionOrdering:GatewayPluginPreFunctionOrdering":{"properties":{"after":{"$ref":"#/types/konnect:index%2FGatewayPluginPreFunctionOrderingAfter:GatewayPluginPreFunctionOrderingAfter"},"before":{"$ref":"#/types/konnect:index%2FGatewayPluginPreFunctionOrderingBefore:GatewayPluginPreFunctionOrderingBefore"}},"type":"object","language":{"nodejs":{"requiredOutputs":["after","before"]}}},"konnect:index/GatewayPluginPreFunctionOrderingAfter:GatewayPluginPreFunctionOrderingAfter":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginPreFunctionOrderingBefore:GatewayPluginPreFunctionOrderingBefore":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginPreFunctionPartial:GatewayPluginPreFunctionPartial":{"properties":{"id":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"name":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"path":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id","name","path"]}}},"konnect:index/GatewayPluginPreFunctionRoute:GatewayPluginPreFunctionRoute":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginPreFunctionService:GatewayPluginPreFunctionService":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginPrometheusConfig:GatewayPluginPrometheusConfig":{"properties":{"aiMetrics":{"type":"boolean","description":"A boolean value that determines if ai metrics should be collected. If enabled, the \u003cspan pulumi-lang-nodejs=\"`aiLlmRequestsTotal`\" pulumi-lang-dotnet=\"`AiLlmRequestsTotal`\" pulumi-lang-go=\"`aiLlmRequestsTotal`\" pulumi-lang-python=\"`ai_llm_requests_total`\" pulumi-lang-yaml=\"`aiLlmRequestsTotal`\" pulumi-lang-java=\"`aiLlmRequestsTotal`\"\u003e`ai_llm_requests_total`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`aiLlmCostTotal`\" pulumi-lang-dotnet=\"`AiLlmCostTotal`\" pulumi-lang-go=\"`aiLlmCostTotal`\" pulumi-lang-python=\"`ai_llm_cost_total`\" pulumi-lang-yaml=\"`aiLlmCostTotal`\" pulumi-lang-java=\"`aiLlmCostTotal`\"\u003e`ai_llm_cost_total`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`aiLlmTokensTotal`\" pulumi-lang-dotnet=\"`AiLlmTokensTotal`\" pulumi-lang-go=\"`aiLlmTokensTotal`\" pulumi-lang-python=\"`ai_llm_tokens_total`\" pulumi-lang-yaml=\"`aiLlmTokensTotal`\" pulumi-lang-java=\"`aiLlmTokensTotal`\"\u003e`ai_llm_tokens_total`\u003c/span\u003e metrics will be exported. Default: false\n"},"bandwidthMetrics":{"type":"boolean","description":"A boolean value that determines if bandwidth metrics should be collected. If enabled, \u003cspan pulumi-lang-nodejs=\"`bandwidthBytes`\" pulumi-lang-dotnet=\"`BandwidthBytes`\" pulumi-lang-go=\"`bandwidthBytes`\" pulumi-lang-python=\"`bandwidth_bytes`\" pulumi-lang-yaml=\"`bandwidthBytes`\" pulumi-lang-java=\"`bandwidthBytes`\"\u003e`bandwidth_bytes`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`streamSessionsTotal`\" pulumi-lang-dotnet=\"`StreamSessionsTotal`\" pulumi-lang-go=\"`streamSessionsTotal`\" pulumi-lang-python=\"`stream_sessions_total`\" pulumi-lang-yaml=\"`streamSessionsTotal`\" pulumi-lang-java=\"`streamSessionsTotal`\"\u003e`stream_sessions_total`\u003c/span\u003e metrics will be exported. Default: false\n"},"latencyMetrics":{"type":"boolean","description":"A boolean value that determines if latency metrics should be collected. If enabled, \u003cspan pulumi-lang-nodejs=\"`kongLatencyMs`\" pulumi-lang-dotnet=\"`KongLatencyMs`\" pulumi-lang-go=\"`kongLatencyMs`\" pulumi-lang-python=\"`kong_latency_ms`\" pulumi-lang-yaml=\"`kongLatencyMs`\" pulumi-lang-java=\"`kongLatencyMs`\"\u003e`kong_latency_ms`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`upstreamLatencyMs`\" pulumi-lang-dotnet=\"`UpstreamLatencyMs`\" pulumi-lang-go=\"`upstreamLatencyMs`\" pulumi-lang-python=\"`upstream_latency_ms`\" pulumi-lang-yaml=\"`upstreamLatencyMs`\" pulumi-lang-java=\"`upstreamLatencyMs`\"\u003e`upstream_latency_ms`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`requestLatencyMs`\" pulumi-lang-dotnet=\"`RequestLatencyMs`\" pulumi-lang-go=\"`requestLatencyMs`\" pulumi-lang-python=\"`request_latency_ms`\" pulumi-lang-yaml=\"`requestLatencyMs`\" pulumi-lang-java=\"`requestLatencyMs`\"\u003e`request_latency_ms`\u003c/span\u003e metrics will be exported. Default: false\n"},"perConsumer":{"type":"boolean","description":"A boolean value that determines if per-consumer metrics should be collected. If enabled, the \u003cspan pulumi-lang-nodejs=\"`kongHttpRequestsTotal`\" pulumi-lang-dotnet=\"`KongHttpRequestsTotal`\" pulumi-lang-go=\"`kongHttpRequestsTotal`\" pulumi-lang-python=\"`kong_http_requests_total`\" pulumi-lang-yaml=\"`kongHttpRequestsTotal`\" pulumi-lang-java=\"`kongHttpRequestsTotal`\"\u003e`kong_http_requests_total`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`kongBandwidthBytes`\" pulumi-lang-dotnet=\"`KongBandwidthBytes`\" pulumi-lang-go=\"`kongBandwidthBytes`\" pulumi-lang-python=\"`kong_bandwidth_bytes`\" pulumi-lang-yaml=\"`kongBandwidthBytes`\" pulumi-lang-java=\"`kongBandwidthBytes`\"\u003e`kong_bandwidth_bytes`\u003c/span\u003e metrics fill in the consumer label when available. Default: false\n"},"statusCodeMetrics":{"type":"boolean","description":"A boolean value that determines if status code metrics should be collected. If enabled, \u003cspan pulumi-lang-nodejs=\"`httpRequestsTotal`\" pulumi-lang-dotnet=\"`HttpRequestsTotal`\" pulumi-lang-go=\"`httpRequestsTotal`\" pulumi-lang-python=\"`http_requests_total`\" pulumi-lang-yaml=\"`httpRequestsTotal`\" pulumi-lang-java=\"`httpRequestsTotal`\"\u003e`http_requests_total`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`streamSessionsTotal`\" pulumi-lang-dotnet=\"`StreamSessionsTotal`\" pulumi-lang-go=\"`streamSessionsTotal`\" pulumi-lang-python=\"`stream_sessions_total`\" pulumi-lang-yaml=\"`streamSessionsTotal`\" pulumi-lang-java=\"`streamSessionsTotal`\"\u003e`stream_sessions_total`\u003c/span\u003e metrics will be exported. Default: false\n"},"upstreamHealthMetrics":{"type":"boolean","description":"A boolean value that determines if upstream metrics should be collected. If enabled, \u003cspan pulumi-lang-nodejs=\"`upstreamTargetHealth`\" pulumi-lang-dotnet=\"`UpstreamTargetHealth`\" pulumi-lang-go=\"`upstreamTargetHealth`\" pulumi-lang-python=\"`upstream_target_health`\" pulumi-lang-yaml=\"`upstreamTargetHealth`\" pulumi-lang-java=\"`upstreamTargetHealth`\"\u003e`upstream_target_health`\u003c/span\u003e metric will be exported. Default: false\n"},"wasmMetrics":{"type":"boolean"}},"type":"object","language":{"nodejs":{"requiredOutputs":["aiMetrics","bandwidthMetrics","latencyMetrics","perConsumer","statusCodeMetrics","upstreamHealthMetrics"]}}},"konnect:index/GatewayPluginPrometheusConsumer:GatewayPluginPrometheusConsumer":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginPrometheusOrdering:GatewayPluginPrometheusOrdering":{"properties":{"after":{"$ref":"#/types/konnect:index%2FGatewayPluginPrometheusOrderingAfter:GatewayPluginPrometheusOrderingAfter"},"before":{"$ref":"#/types/konnect:index%2FGatewayPluginPrometheusOrderingBefore:GatewayPluginPrometheusOrderingBefore"}},"type":"object","language":{"nodejs":{"requiredOutputs":["after","before"]}}},"konnect:index/GatewayPluginPrometheusOrderingAfter:GatewayPluginPrometheusOrderingAfter":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginPrometheusOrderingBefore:GatewayPluginPrometheusOrderingBefore":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginPrometheusPartial:GatewayPluginPrometheusPartial":{"properties":{"id":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"name":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"path":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id","name","path"]}}},"konnect:index/GatewayPluginPrometheusRoute:GatewayPluginPrometheusRoute":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginPrometheusService:GatewayPluginPrometheusService":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginProxyCacheAdvancedConfig:GatewayPluginProxyCacheAdvancedConfig":{"properties":{"bypassOnErr":{"type":"boolean","description":"Unhandled errors while trying to retrieve a cache entry (such as redis down) are resolved with `Bypass`, with the request going upstream. Default: false\n"},"cacheControl":{"type":"boolean","description":"When enabled, respect the Cache-Control behaviors defined in RFC7234. Default: false\n"},"cacheTtl":{"type":"number","description":"TTL in seconds of cache entities. Default: 300\n"},"contentTypes":{"type":"array","items":{"type":"string"},"description":"Upstream response content types considered cacheable. The plugin performs an **exact match** against each specified value; for example, if the upstream is expected to respond with a `application/json; charset=utf-8` content-type, the plugin configuration must contain said value or a `Bypass` cache status is returned. Default: [\"application/json\",\"text/plain\"]\n"},"ignoreUriCase":{"type":"boolean","description":"Determines whether to treat URIs as case sensitive. By default, case sensitivity is enabled. If set to true, requests are cached while ignoring case sensitivity in the URI. Default: false\n"},"memory":{"$ref":"#/types/konnect:index%2FGatewayPluginProxyCacheAdvancedConfigMemory:GatewayPluginProxyCacheAdvancedConfigMemory"},"redis":{"$ref":"#/types/konnect:index%2FGatewayPluginProxyCacheAdvancedConfigRedis:GatewayPluginProxyCacheAdvancedConfigRedis"},"requestMethods":{"type":"array","items":{"type":"string"},"description":"Downstream request methods considered cacheable. Available options: `HEAD`, `GET`, `POST`, `PATCH`, `PUT`. Default: [\"GET\",\"HEAD\"]\n"},"responseCodes":{"type":"array","items":{"type":"number"},"description":"Upstream response status code considered cacheable. The integers must be a value between 100 and 900. Default: [200,301,404]\n"},"responseHeaders":{"$ref":"#/types/konnect:index%2FGatewayPluginProxyCacheAdvancedConfigResponseHeaders:GatewayPluginProxyCacheAdvancedConfigResponseHeaders","description":"Caching related diagnostic headers that should be included in cached responses\n"},"storageTtl":{"type":"number","description":"Number of seconds to keep resources in the storage backend. This value is independent of \u003cspan pulumi-lang-nodejs=\"`cacheTtl`\" pulumi-lang-dotnet=\"`CacheTtl`\" pulumi-lang-go=\"`cacheTtl`\" pulumi-lang-python=\"`cache_ttl`\" pulumi-lang-yaml=\"`cacheTtl`\" pulumi-lang-java=\"`cacheTtl`\"\u003e`cache_ttl`\u003c/span\u003e or resource TTLs defined by Cache-Control behaviors.\n"},"strategy":{"type":"string","description":"The backing data store in which to hold cache entities. Accepted values are: \u003cspan pulumi-lang-nodejs=\"`memory`\" pulumi-lang-dotnet=\"`Memory`\" pulumi-lang-go=\"`memory`\" pulumi-lang-python=\"`memory`\" pulumi-lang-yaml=\"`memory`\" pulumi-lang-java=\"`memory`\"\u003e`memory`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`redis`\" pulumi-lang-dotnet=\"`Redis`\" pulumi-lang-go=\"`redis`\" pulumi-lang-python=\"`redis`\" pulumi-lang-yaml=\"`redis`\" pulumi-lang-java=\"`redis`\"\u003e`redis`\u003c/span\u003e. must be one of [\"memory\", \"redis\"]\n"},"varyHeaders":{"type":"array","items":{"type":"string"},"description":"Relevant headers considered for the cache key. If undefined, none of the headers are taken into consideration.\n"},"varyQueryParams":{"type":"array","items":{"type":"string"},"description":"Relevant query parameters considered for the cache key. If undefined, all params are taken into consideration. By default, the max number of params accepted is 100. You can change this value via the \u003cspan pulumi-lang-nodejs=\"`luaMaxPostArgs`\" pulumi-lang-dotnet=\"`LuaMaxPostArgs`\" pulumi-lang-go=\"`luaMaxPostArgs`\" pulumi-lang-python=\"`lua_max_post_args`\" pulumi-lang-yaml=\"`luaMaxPostArgs`\" pulumi-lang-java=\"`luaMaxPostArgs`\"\u003e`lua_max_post_args`\u003c/span\u003e in `kong.conf`.\n"}},"type":"object","required":["strategy"],"language":{"nodejs":{"requiredOutputs":["bypassOnErr","cacheControl","cacheTtl","contentTypes","ignoreUriCase","memory","redis","requestMethods","responseCodes","responseHeaders","strategy"]}}},"konnect:index/GatewayPluginProxyCacheAdvancedConfigMemory:GatewayPluginProxyCacheAdvancedConfigMemory":{"properties":{"dictionaryName":{"type":"string","description":"The name of the shared dictionary in which to hold cache entities when the memory strategy is selected. Note that this dictionary currently must be defined manually in the Kong Nginx template. Default: \"kong*db*cache\"\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["dictionaryName"]}}},"konnect:index/GatewayPluginProxyCacheAdvancedConfigRedis:GatewayPluginProxyCacheAdvancedConfigRedis":{"properties":{"cloudAuthentication":{"$ref":"#/types/konnect:index%2FGatewayPluginProxyCacheAdvancedConfigRedisCloudAuthentication:GatewayPluginProxyCacheAdvancedConfigRedisCloudAuthentication","description":"Cloud auth related configs for connecting to a Cloud Provider's Redis instance.\n"},"clusterMaxRedirections":{"type":"number","description":"Maximum retry attempts for redirection. Default: 5\n"},"clusterNodes":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginProxyCacheAdvancedConfigRedisClusterNode:GatewayPluginProxyCacheAdvancedConfigRedisClusterNode"},"description":"Cluster addresses to use for Redis connections when the \u003cspan pulumi-lang-nodejs=\"`redis`\" pulumi-lang-dotnet=\"`Redis`\" pulumi-lang-go=\"`redis`\" pulumi-lang-python=\"`redis`\" pulumi-lang-yaml=\"`redis`\" pulumi-lang-java=\"`redis`\"\u003e`redis`\u003c/span\u003e strategy is defined. Defining this field implies using a Redis Cluster. The minimum length of the array is 1 element.\n"},"connectTimeout":{"type":"number","description":"An integer representing a timeout in milliseconds. Must be between 0 and 2^31-2. Default: 2000\n"},"connectionIsProxied":{"type":"boolean","description":"If the connection to Redis is proxied (e.g. Envoy), set it \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e. Set the \u003cspan pulumi-lang-nodejs=\"`host`\" pulumi-lang-dotnet=\"`Host`\" pulumi-lang-go=\"`host`\" pulumi-lang-python=\"`host`\" pulumi-lang-yaml=\"`host`\" pulumi-lang-java=\"`host`\"\u003e`host`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`port`\" pulumi-lang-dotnet=\"`Port`\" pulumi-lang-go=\"`port`\" pulumi-lang-python=\"`port`\" pulumi-lang-yaml=\"`port`\" pulumi-lang-java=\"`port`\"\u003e`port`\u003c/span\u003e to point to the proxy address. Default: false\n"},"database":{"type":"number","description":"Database to use for the Redis connection when using the \u003cspan pulumi-lang-nodejs=\"`redis`\" pulumi-lang-dotnet=\"`Redis`\" pulumi-lang-go=\"`redis`\" pulumi-lang-python=\"`redis`\" pulumi-lang-yaml=\"`redis`\" pulumi-lang-java=\"`redis`\"\u003e`redis`\u003c/span\u003e strategy. Default: 0\n"},"host":{"type":"string","description":"A string representing a host name, such as example.com. Default: \"127.0.0.1\"\n"},"keepaliveBacklog":{"type":"number","description":"Limits the total number of opened connections for a pool. If the connection pool is full, connection queues above the limit go into the backlog queue. If the backlog queue is full, subsequent connect operations fail and return \u003cspan pulumi-lang-nodejs=\"`nil`\" pulumi-lang-dotnet=\"`Nil`\" pulumi-lang-go=\"`nil`\" pulumi-lang-python=\"`nil`\" pulumi-lang-yaml=\"`nil`\" pulumi-lang-java=\"`nil`\"\u003e`nil`\u003c/span\u003e. Queued operations (subject to set timeouts) resume once the number of connections in the pool is less than \u003cspan pulumi-lang-nodejs=\"`keepalivePoolSize`\" pulumi-lang-dotnet=\"`KeepalivePoolSize`\" pulumi-lang-go=\"`keepalivePoolSize`\" pulumi-lang-python=\"`keepalive_pool_size`\" pulumi-lang-yaml=\"`keepalivePoolSize`\" pulumi-lang-java=\"`keepalivePoolSize`\"\u003e`keepalive_pool_size`\u003c/span\u003e. If latency is high or throughput is low, try increasing this value. Empirically, this value is larger than \u003cspan pulumi-lang-nodejs=\"`keepalivePoolSize`\" pulumi-lang-dotnet=\"`KeepalivePoolSize`\" pulumi-lang-go=\"`keepalivePoolSize`\" pulumi-lang-python=\"`keepalive_pool_size`\" pulumi-lang-yaml=\"`keepalivePoolSize`\" pulumi-lang-java=\"`keepalivePoolSize`\"\u003e`keepalive_pool_size`\u003c/span\u003e.\n"},"keepalivePoolSize":{"type":"number","description":"The size limit for every cosocket connection pool associated with every remote server, per worker process. If neither \u003cspan pulumi-lang-nodejs=\"`keepalivePoolSize`\" pulumi-lang-dotnet=\"`KeepalivePoolSize`\" pulumi-lang-go=\"`keepalivePoolSize`\" pulumi-lang-python=\"`keepalive_pool_size`\" pulumi-lang-yaml=\"`keepalivePoolSize`\" pulumi-lang-java=\"`keepalivePoolSize`\"\u003e`keepalive_pool_size`\u003c/span\u003e nor \u003cspan pulumi-lang-nodejs=\"`keepaliveBacklog`\" pulumi-lang-dotnet=\"`KeepaliveBacklog`\" pulumi-lang-go=\"`keepaliveBacklog`\" pulumi-lang-python=\"`keepalive_backlog`\" pulumi-lang-yaml=\"`keepaliveBacklog`\" pulumi-lang-java=\"`keepaliveBacklog`\"\u003e`keepalive_backlog`\u003c/span\u003e is specified, no pool is created. If \u003cspan pulumi-lang-nodejs=\"`keepalivePoolSize`\" pulumi-lang-dotnet=\"`KeepalivePoolSize`\" pulumi-lang-go=\"`keepalivePoolSize`\" pulumi-lang-python=\"`keepalive_pool_size`\" pulumi-lang-yaml=\"`keepalivePoolSize`\" pulumi-lang-java=\"`keepalivePoolSize`\"\u003e`keepalive_pool_size`\u003c/span\u003e isn't specified but \u003cspan pulumi-lang-nodejs=\"`keepaliveBacklog`\" pulumi-lang-dotnet=\"`KeepaliveBacklog`\" pulumi-lang-go=\"`keepaliveBacklog`\" pulumi-lang-python=\"`keepalive_backlog`\" pulumi-lang-yaml=\"`keepaliveBacklog`\" pulumi-lang-java=\"`keepaliveBacklog`\"\u003e`keepalive_backlog`\u003c/span\u003e is specified, then the pool uses the default value. Try to increase (e.g. 512) this value if latency is high or throughput is low. Default: 256\n"},"password":{"type":"string","description":"Password to use for Redis connections. If undefined, no AUTH commands are sent to Redis.\n"},"port":{"type":"number","description":"An integer representing a port number between 0 and 65535, inclusive. Default: 6379\n"},"readTimeout":{"type":"number","description":"An integer representing a timeout in milliseconds. Must be between 0 and 2^31-2. Default: 2000\n"},"sendTimeout":{"type":"number","description":"An integer representing a timeout in milliseconds. Must be between 0 and 2^31-2. Default: 2000\n"},"sentinelMaster":{"type":"string","description":"Sentinel master to use for Redis connections. Defining this value implies using Redis Sentinel.\n"},"sentinelNodes":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginProxyCacheAdvancedConfigRedisSentinelNode:GatewayPluginProxyCacheAdvancedConfigRedisSentinelNode"},"description":"Sentinel node addresses to use for Redis connections when the \u003cspan pulumi-lang-nodejs=\"`redis`\" pulumi-lang-dotnet=\"`Redis`\" pulumi-lang-go=\"`redis`\" pulumi-lang-python=\"`redis`\" pulumi-lang-yaml=\"`redis`\" pulumi-lang-java=\"`redis`\"\u003e`redis`\u003c/span\u003e strategy is defined. Defining this field implies using a Redis Sentinel. The minimum length of the array is 1 element.\n"},"sentinelPassword":{"type":"string","description":"Sentinel password to authenticate with a Redis Sentinel instance. If undefined, no AUTH commands are sent to Redis Sentinels.\n"},"sentinelRole":{"type":"string","description":"Sentinel role to use for Redis connections when the \u003cspan pulumi-lang-nodejs=\"`redis`\" pulumi-lang-dotnet=\"`Redis`\" pulumi-lang-go=\"`redis`\" pulumi-lang-python=\"`redis`\" pulumi-lang-yaml=\"`redis`\" pulumi-lang-java=\"`redis`\"\u003e`redis`\u003c/span\u003e strategy is defined. Defining this value implies using Redis Sentinel. must be one of [\"any\", \"master\", \"slave\"]\n"},"sentinelUsername":{"type":"string","description":"Sentinel username to authenticate with a Redis Sentinel instance. If undefined, ACL authentication won't be performed. This requires Redis v6.2.0+.\n"},"serverName":{"type":"string","description":"A string representing an SNI (server name indication) value for TLS.\n"},"ssl":{"type":"boolean","description":"If set to true, uses SSL to connect to Redis. Default: false\n"},"sslVerify":{"type":"boolean","description":"If set to true, verifies the validity of the server SSL certificate. If setting this parameter, also configure \u003cspan pulumi-lang-nodejs=\"`luaSslTrustedCertificate`\" pulumi-lang-dotnet=\"`LuaSslTrustedCertificate`\" pulumi-lang-go=\"`luaSslTrustedCertificate`\" pulumi-lang-python=\"`lua_ssl_trusted_certificate`\" pulumi-lang-yaml=\"`luaSslTrustedCertificate`\" pulumi-lang-java=\"`luaSslTrustedCertificate`\"\u003e`lua_ssl_trusted_certificate`\u003c/span\u003e in `kong.conf` to specify the CA (or server) certificate used by your Redis server. You may also need to configure \u003cspan pulumi-lang-nodejs=\"`luaSslVerifyDepth`\" pulumi-lang-dotnet=\"`LuaSslVerifyDepth`\" pulumi-lang-go=\"`luaSslVerifyDepth`\" pulumi-lang-python=\"`lua_ssl_verify_depth`\" pulumi-lang-yaml=\"`luaSslVerifyDepth`\" pulumi-lang-java=\"`luaSslVerifyDepth`\"\u003e`lua_ssl_verify_depth`\u003c/span\u003e accordingly. Default: false\n"},"username":{"type":"string","description":"Username to use for Redis connections. If undefined, ACL authentication won't be performed. This requires Redis v6.0.0+. To be compatible with Redis v5.x.y, you can set it to \u003cspan pulumi-lang-nodejs=\"`default`\" pulumi-lang-dotnet=\"`Default`\" pulumi-lang-go=\"`default`\" pulumi-lang-python=\"`default`\" pulumi-lang-yaml=\"`default`\" pulumi-lang-java=\"`default`\"\u003e`default`\u003c/span\u003e.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["cloudAuthentication","clusterMaxRedirections","connectTimeout","connectionIsProxied","database","host","keepalivePoolSize","port","readTimeout","sendTimeout","sentinelRole","ssl","sslVerify"]}}},"konnect:index/GatewayPluginProxyCacheAdvancedConfigRedisCloudAuthentication:GatewayPluginProxyCacheAdvancedConfigRedisCloudAuthentication":{"properties":{"authProvider":{"type":"string","description":"Auth providers to be used to authenticate to a Cloud Provider's Redis instance. must be one of [\"aws\", \"azure\", \"gcp\"]\n"},"awsAccessKeyId":{"type":"string","description":"AWS Access Key ID to be used for authentication when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e.\n"},"awsAssumeRoleArn":{"type":"string","description":"The ARN of the IAM role to assume for generating ElastiCache IAM authentication tokens.\n"},"awsCacheName":{"type":"string","description":"The name of the AWS Elasticache cluster when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e.\n"},"awsIsServerless":{"type":"boolean","description":"This flag specifies whether the cluster is serverless when\u003cspan pulumi-lang-nodejs=\" authProvider \" pulumi-lang-dotnet=\" AuthProvider \" pulumi-lang-go=\" authProvider \" pulumi-lang-python=\" auth_provider \" pulumi-lang-yaml=\" authProvider \" pulumi-lang-java=\" authProvider \"\u003e auth_provider \u003c/span\u003eis set to \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e. Default: true\n"},"awsRegion":{"type":"string","description":"The region of the AWS ElastiCache cluster when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e.\n"},"awsRoleSessionName":{"type":"string","description":"The session name for the temporary credentials when assuming the IAM role.\n"},"awsSecretAccessKey":{"type":"string","description":"AWS Secret Access Key to be used for authentication when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e.\n"},"azureClientId":{"type":"string","description":"Azure Client ID to be used for authentication when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`azure`\" pulumi-lang-dotnet=\"`Azure`\" pulumi-lang-go=\"`azure`\" pulumi-lang-python=\"`azure`\" pulumi-lang-yaml=\"`azure`\" pulumi-lang-java=\"`azure`\"\u003e`azure`\u003c/span\u003e.\n"},"azureClientSecret":{"type":"string","description":"Azure Client Secret to be used for authentication when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`azure`\" pulumi-lang-dotnet=\"`Azure`\" pulumi-lang-go=\"`azure`\" pulumi-lang-python=\"`azure`\" pulumi-lang-yaml=\"`azure`\" pulumi-lang-java=\"`azure`\"\u003e`azure`\u003c/span\u003e.\n"},"azureTenantId":{"type":"string","description":"Azure Tenant ID to be used for authentication when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`azure`\" pulumi-lang-dotnet=\"`Azure`\" pulumi-lang-go=\"`azure`\" pulumi-lang-python=\"`azure`\" pulumi-lang-yaml=\"`azure`\" pulumi-lang-java=\"`azure`\"\u003e`azure`\u003c/span\u003e.\n"},"gcpServiceAccountJson":{"type":"string","description":"GCP Service Account JSON to be used for authentication when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`gcp`\" pulumi-lang-dotnet=\"`Gcp`\" pulumi-lang-go=\"`gcp`\" pulumi-lang-python=\"`gcp`\" pulumi-lang-yaml=\"`gcp`\" pulumi-lang-java=\"`gcp`\"\u003e`gcp`\u003c/span\u003e.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["authProvider","awsIsServerless"]}}},"konnect:index/GatewayPluginProxyCacheAdvancedConfigRedisClusterNode:GatewayPluginProxyCacheAdvancedConfigRedisClusterNode":{"properties":{"ip":{"type":"string","description":"A string representing a host name, such as example.com. Default: \"127.0.0.1\"\n"},"port":{"type":"number","description":"An integer representing a port number between 0 and 65535, inclusive. Default: 6379\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["ip","port"]}}},"konnect:index/GatewayPluginProxyCacheAdvancedConfigRedisSentinelNode:GatewayPluginProxyCacheAdvancedConfigRedisSentinelNode":{"properties":{"host":{"type":"string","description":"A string representing a host name, such as example.com. Default: \"127.0.0.1\"\n"},"port":{"type":"number","description":"An integer representing a port number between 0 and 65535, inclusive. Default: 6379\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["host","port"]}}},"konnect:index/GatewayPluginProxyCacheAdvancedConfigResponseHeaders:GatewayPluginProxyCacheAdvancedConfigResponseHeaders":{"properties":{"age":{"type":"boolean","description":"Default: true\n"},"xCacheKey":{"type":"boolean","description":"Default: true\n"},"xCacheStatus":{"type":"boolean","description":"Default: true\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["age","xCacheKey","xCacheStatus"]}}},"konnect:index/GatewayPluginProxyCacheAdvancedConsumer:GatewayPluginProxyCacheAdvancedConsumer":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginProxyCacheAdvancedConsumerGroup:GatewayPluginProxyCacheAdvancedConsumerGroup":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginProxyCacheAdvancedOrdering:GatewayPluginProxyCacheAdvancedOrdering":{"properties":{"after":{"$ref":"#/types/konnect:index%2FGatewayPluginProxyCacheAdvancedOrderingAfter:GatewayPluginProxyCacheAdvancedOrderingAfter"},"before":{"$ref":"#/types/konnect:index%2FGatewayPluginProxyCacheAdvancedOrderingBefore:GatewayPluginProxyCacheAdvancedOrderingBefore"}},"type":"object","language":{"nodejs":{"requiredOutputs":["after","before"]}}},"konnect:index/GatewayPluginProxyCacheAdvancedOrderingAfter:GatewayPluginProxyCacheAdvancedOrderingAfter":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginProxyCacheAdvancedOrderingBefore:GatewayPluginProxyCacheAdvancedOrderingBefore":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginProxyCacheAdvancedPartial:GatewayPluginProxyCacheAdvancedPartial":{"properties":{"id":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"name":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"path":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id","name","path"]}}},"konnect:index/GatewayPluginProxyCacheAdvancedRoute:GatewayPluginProxyCacheAdvancedRoute":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginProxyCacheAdvancedService:GatewayPluginProxyCacheAdvancedService":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginProxyCacheConfig:GatewayPluginProxyCacheConfig":{"properties":{"cacheControl":{"type":"boolean","description":"When enabled, respect the Cache-Control behaviors defined in RFC7234. Default: false\n"},"cacheTtl":{"type":"number","description":"TTL, in seconds, of cache entities. Default: 300\n"},"contentTypes":{"type":"array","items":{"type":"string"},"description":"Upstream response content types considered cacheable. The plugin performs an **exact match** against each specified value. Default: [\"application/json\",\"text/plain\"]\n"},"ignoreUriCase":{"type":"boolean","description":"Default: false\n"},"memory":{"$ref":"#/types/konnect:index%2FGatewayPluginProxyCacheConfigMemory:GatewayPluginProxyCacheConfigMemory"},"requestMethods":{"type":"array","items":{"type":"string"},"description":"Downstream request methods considered cacheable. Default: [\"GET\",\"HEAD\"]\n"},"responseCodes":{"type":"array","items":{"type":"number"},"description":"Upstream response status code considered cacheable. Default: [200,301,404]\n"},"responseHeaders":{"$ref":"#/types/konnect:index%2FGatewayPluginProxyCacheConfigResponseHeaders:GatewayPluginProxyCacheConfigResponseHeaders","description":"Caching related diagnostic headers that should be included in cached responses\n"},"storageTtl":{"type":"number","description":"Number of seconds to keep resources in the storage backend. This value is independent of \u003cspan pulumi-lang-nodejs=\"`cacheTtl`\" pulumi-lang-dotnet=\"`CacheTtl`\" pulumi-lang-go=\"`cacheTtl`\" pulumi-lang-python=\"`cache_ttl`\" pulumi-lang-yaml=\"`cacheTtl`\" pulumi-lang-java=\"`cacheTtl`\"\u003e`cache_ttl`\u003c/span\u003e or resource TTLs defined by Cache-Control behaviors.\n"},"strategy":{"type":"string","description":"The backing data store in which to hold cache entities. must be \"memory\"\n"},"varyHeaders":{"type":"array","items":{"type":"string"},"description":"Relevant headers considered for the cache key. If undefined, none of the headers are taken into consideration.\n"},"varyQueryParams":{"type":"array","items":{"type":"string"},"description":"Relevant query parameters considered for the cache key. If undefined, all params are taken into consideration.\n"}},"type":"object","required":["strategy"],"language":{"nodejs":{"requiredOutputs":["cacheControl","cacheTtl","contentTypes","ignoreUriCase","memory","requestMethods","responseCodes","responseHeaders","strategy"]}}},"konnect:index/GatewayPluginProxyCacheConfigMemory:GatewayPluginProxyCacheConfigMemory":{"properties":{"dictionaryName":{"type":"string","description":"The name of the shared dictionary in which to hold cache entities when the memory strategy is selected. Note that this dictionary currently must be defined manually in the Kong Nginx template. Default: \"kong*db*cache\"\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["dictionaryName"]}}},"konnect:index/GatewayPluginProxyCacheConfigResponseHeaders:GatewayPluginProxyCacheConfigResponseHeaders":{"properties":{"age":{"type":"boolean","description":"Default: true\n"},"xCacheKey":{"type":"boolean","description":"Default: true\n"},"xCacheStatus":{"type":"boolean","description":"Default: true\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["age","xCacheKey","xCacheStatus"]}}},"konnect:index/GatewayPluginProxyCacheConsumer:GatewayPluginProxyCacheConsumer":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginProxyCacheConsumerGroup:GatewayPluginProxyCacheConsumerGroup":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginProxyCacheOrdering:GatewayPluginProxyCacheOrdering":{"properties":{"after":{"$ref":"#/types/konnect:index%2FGatewayPluginProxyCacheOrderingAfter:GatewayPluginProxyCacheOrderingAfter"},"before":{"$ref":"#/types/konnect:index%2FGatewayPluginProxyCacheOrderingBefore:GatewayPluginProxyCacheOrderingBefore"}},"type":"object","language":{"nodejs":{"requiredOutputs":["after","before"]}}},"konnect:index/GatewayPluginProxyCacheOrderingAfter:GatewayPluginProxyCacheOrderingAfter":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginProxyCacheOrderingBefore:GatewayPluginProxyCacheOrderingBefore":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginProxyCachePartial:GatewayPluginProxyCachePartial":{"properties":{"id":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"name":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"path":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id","name","path"]}}},"konnect:index/GatewayPluginProxyCacheRoute:GatewayPluginProxyCacheRoute":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginProxyCacheService:GatewayPluginProxyCacheService":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginRateLimitingAdvancedConfig:GatewayPluginRateLimitingAdvancedConfig":{"properties":{"compoundIdentifiers":{"type":"array","items":{"type":"string"},"description":"Similar to \u003cspan pulumi-lang-nodejs=\"`identifer`\" pulumi-lang-dotnet=\"`Identifer`\" pulumi-lang-go=\"`identifer`\" pulumi-lang-python=\"`identifer`\" pulumi-lang-yaml=\"`identifer`\" pulumi-lang-java=\"`identifer`\"\u003e`identifer`\u003c/span\u003e, but supports combining multiple items. The priority of \u003cspan pulumi-lang-nodejs=\"`compoundIdentifier`\" pulumi-lang-dotnet=\"`CompoundIdentifier`\" pulumi-lang-go=\"`compoundIdentifier`\" pulumi-lang-python=\"`compound_identifier`\" pulumi-lang-yaml=\"`compoundIdentifier`\" pulumi-lang-java=\"`compoundIdentifier`\"\u003e`compound_identifier`\u003c/span\u003e is higher than \u003cspan pulumi-lang-nodejs=\"`identifier`\" pulumi-lang-dotnet=\"`Identifier`\" pulumi-lang-go=\"`identifier`\" pulumi-lang-python=\"`identifier`\" pulumi-lang-yaml=\"`identifier`\" pulumi-lang-java=\"`identifier`\"\u003e`identifier`\u003c/span\u003e, which means if \u003cspan pulumi-lang-nodejs=\"`compoundIdentifer`\" pulumi-lang-dotnet=\"`CompoundIdentifer`\" pulumi-lang-go=\"`compoundIdentifer`\" pulumi-lang-python=\"`compound_identifer`\" pulumi-lang-yaml=\"`compoundIdentifer`\" pulumi-lang-java=\"`compoundIdentifer`\"\u003e`compound_identifer`\u003c/span\u003e is set, it will be used, otherwise \u003cspan pulumi-lang-nodejs=\"`identifier`\" pulumi-lang-dotnet=\"`Identifier`\" pulumi-lang-go=\"`identifier`\" pulumi-lang-python=\"`identifier`\" pulumi-lang-yaml=\"`identifier`\" pulumi-lang-java=\"`identifier`\"\u003e`identifier`\u003c/span\u003e will be used.\n"},"consumerGroups":{"type":"array","items":{"type":"string"},"description":"List of consumer groups allowed to override the rate limiting settings for the given Route or Service. Required if \u003cspan pulumi-lang-nodejs=\"`enforceConsumerGroups`\" pulumi-lang-dotnet=\"`EnforceConsumerGroups`\" pulumi-lang-go=\"`enforceConsumerGroups`\" pulumi-lang-python=\"`enforce_consumer_groups`\" pulumi-lang-yaml=\"`enforceConsumerGroups`\" pulumi-lang-java=\"`enforceConsumerGroups`\"\u003e`enforce_consumer_groups`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e.\n"},"dictionaryName":{"type":"string","description":"The shared dictionary where counters are stored. When the plugin is configured to synchronize counter data externally (that is `config.strategy` is \u003cspan pulumi-lang-nodejs=\"`cluster`\" pulumi-lang-dotnet=\"`Cluster`\" pulumi-lang-go=\"`cluster`\" pulumi-lang-python=\"`cluster`\" pulumi-lang-yaml=\"`cluster`\" pulumi-lang-java=\"`cluster`\"\u003e`cluster`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`redis`\" pulumi-lang-dotnet=\"`Redis`\" pulumi-lang-go=\"`redis`\" pulumi-lang-python=\"`redis`\" pulumi-lang-yaml=\"`redis`\" pulumi-lang-java=\"`redis`\"\u003e`redis`\u003c/span\u003e and `config.sync_rate` isn't `-1`), this dictionary serves as a buffer to populate counters in the data store on each synchronization cycle. Default: \"kong*rate*limiting_counters\"\n"},"disablePenalty":{"type":"boolean","description":"If set to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, this doesn't count denied requests (status = \u003cspan pulumi-lang-nodejs=\"`429`\" pulumi-lang-dotnet=\"`429`\" pulumi-lang-go=\"`429`\" pulumi-lang-python=\"`429`\" pulumi-lang-yaml=\"`429`\" pulumi-lang-java=\"`429`\"\u003e`429`\u003c/span\u003e). If set to \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e, all requests, including denied ones, are counted. This parameter only affects the \u003cspan pulumi-lang-nodejs=\"`sliding`\" pulumi-lang-dotnet=\"`Sliding`\" pulumi-lang-go=\"`sliding`\" pulumi-lang-python=\"`sliding`\" pulumi-lang-yaml=\"`sliding`\" pulumi-lang-java=\"`sliding`\"\u003e`sliding`\u003c/span\u003e window_type. Default: false\n"},"enforceConsumerGroups":{"type":"boolean","description":"Determines if consumer groups are allowed to override the rate limiting settings for the given Route or Service. Flipping \u003cspan pulumi-lang-nodejs=\"`enforceConsumerGroups`\" pulumi-lang-dotnet=\"`EnforceConsumerGroups`\" pulumi-lang-go=\"`enforceConsumerGroups`\" pulumi-lang-python=\"`enforce_consumer_groups`\" pulumi-lang-yaml=\"`enforceConsumerGroups`\" pulumi-lang-java=\"`enforceConsumerGroups`\"\u003e`enforce_consumer_groups`\u003c/span\u003e from \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e to \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e disables the group override, but does not clear the list of consumer groups. You can then flip \u003cspan pulumi-lang-nodejs=\"`enforceConsumerGroups`\" pulumi-lang-dotnet=\"`EnforceConsumerGroups`\" pulumi-lang-go=\"`enforceConsumerGroups`\" pulumi-lang-python=\"`enforce_consumer_groups`\" pulumi-lang-yaml=\"`enforceConsumerGroups`\" pulumi-lang-java=\"`enforceConsumerGroups`\"\u003e`enforce_consumer_groups`\u003c/span\u003e to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e to re-enforce the groups. Default: false\n"},"errorCode":{"type":"number","description":"Set a custom error code to return when the rate limit is exceeded. Default: 429\n"},"errorMessage":{"type":"string","description":"Set a custom error message to return when the rate limit is exceeded. Default: \"API rate limit exceeded\"\n"},"headerName":{"type":"string","description":"A string representing an HTTP header name.\n"},"hideClientHeaders":{"type":"boolean","description":"Optionally hide informative response headers that would otherwise provide information about the current status of limits and counters. Default: false\n"},"identifier":{"type":"string","description":"The type of identifier used to generate the rate limit key. Defines the scope used to increment the rate limiting counters. Note if \u003cspan pulumi-lang-nodejs=\"`identifier`\" pulumi-lang-dotnet=\"`Identifier`\" pulumi-lang-go=\"`identifier`\" pulumi-lang-python=\"`identifier`\" pulumi-lang-yaml=\"`identifier`\" pulumi-lang-java=\"`identifier`\"\u003e`identifier`\u003c/span\u003e is `consumer-group`, the plugin must be applied on a consumer group entity. Because a consumer may belong to multiple consumer groups, the plugin needs to know explicitly which consumer group to limit the rate. Default: \"consumer\"; must be one of [\"consumer\", \"consumer-group\", \"credential\", \"header\", \"ip\", \"path\", \"route\", \"service\"]\n"},"limits":{"type":"array","items":{"type":"number"},"description":"One or more requests-per-window limits to apply. There must be a matching number of window limits and sizes specified.\n"},"lockDictionaryName":{"type":"string","description":"The shared dictionary where concurrency control locks are stored. The default shared dictionary is \u003cspan pulumi-lang-nodejs=\"`kongLocks`\" pulumi-lang-dotnet=\"`KongLocks`\" pulumi-lang-go=\"`kongLocks`\" pulumi-lang-python=\"`kong_locks`\" pulumi-lang-yaml=\"`kongLocks`\" pulumi-lang-java=\"`kongLocks`\"\u003e`kong_locks`\u003c/span\u003e. The shared dictionary should be declare in nginx-kong.conf. Default: \u003cspan pulumi-lang-nodejs=\"\"kongLocks\"\" pulumi-lang-dotnet=\"\"KongLocks\"\" pulumi-lang-go=\"\"kongLocks\"\" pulumi-lang-python=\"\"kong_locks\"\" pulumi-lang-yaml=\"\"kongLocks\"\" pulumi-lang-java=\"\"kongLocks\"\"\u003e\"kong_locks\"\u003c/span\u003e\n"},"namespace":{"type":"string","description":"Specifies the rate-limiting namespace for this plugin instance. A namespace acts as a logical grouping for configuration and counter data used by the rate-limiting algorithm. Namespaces define how and where counter data is stored and synchronized. When multiple plugin instances share the same namespace, they also share the same rate-limiting counters and synchronization configuration. Conversely, using different namespaces ensures that each plugin instance maintains its own independent counters.\n"},"path":{"type":"string","description":"A string representing a URL path, such as /path/to/resource. Must start with a forward slash (/) and must not contain empty segments (i.e., two consecutive forward slashes).\n"},"redis":{"$ref":"#/types/konnect:index%2FGatewayPluginRateLimitingAdvancedConfigRedis:GatewayPluginRateLimitingAdvancedConfigRedis"},"retryAfterJitterMax":{"type":"number","description":"The upper bound of a jitter (random delay) in seconds to be added to the `Retry-After` header of denied requests (status = \u003cspan pulumi-lang-nodejs=\"`429`\" pulumi-lang-dotnet=\"`429`\" pulumi-lang-go=\"`429`\" pulumi-lang-python=\"`429`\" pulumi-lang-yaml=\"`429`\" pulumi-lang-java=\"`429`\"\u003e`429`\u003c/span\u003e) in order to prevent all the clients from coming back at the same time. The lower bound of the jitter is \u003cspan pulumi-lang-nodejs=\"`0`\" pulumi-lang-dotnet=\"`0`\" pulumi-lang-go=\"`0`\" pulumi-lang-python=\"`0`\" pulumi-lang-yaml=\"`0`\" pulumi-lang-java=\"`0`\"\u003e`0`\u003c/span\u003e; in this case, the `Retry-After` header is equal to the `RateLimit-Reset` header. Default: 0\n"},"strategy":{"type":"string","description":"The rate-limiting strategy to use for retrieving and incrementing the limits. Available values are: \u003cspan pulumi-lang-nodejs=\"`local`\" pulumi-lang-dotnet=\"`Local`\" pulumi-lang-go=\"`local`\" pulumi-lang-python=\"`local`\" pulumi-lang-yaml=\"`local`\" pulumi-lang-java=\"`local`\"\u003e`local`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`redis`\" pulumi-lang-dotnet=\"`Redis`\" pulumi-lang-go=\"`redis`\" pulumi-lang-python=\"`redis`\" pulumi-lang-yaml=\"`redis`\" pulumi-lang-java=\"`redis`\"\u003e`redis`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`cluster`\" pulumi-lang-dotnet=\"`Cluster`\" pulumi-lang-go=\"`cluster`\" pulumi-lang-python=\"`cluster`\" pulumi-lang-yaml=\"`cluster`\" pulumi-lang-java=\"`cluster`\"\u003e`cluster`\u003c/span\u003e. Default: \"local\"; must be one of [\"cluster\", \"local\", \"redis\"]\n"},"syncRate":{"type":"number","description":"How often to sync counter data to the central data store. A value of 0 results in synchronous behavior; a value of -1 ignores sync behavior entirely and only stores counters in node memory. A value greater than 0 will sync the counters in the specified number of seconds. The minimum allowed interval is 0.02 seconds (20ms).\n"},"throttling":{"$ref":"#/types/konnect:index%2FGatewayPluginRateLimitingAdvancedConfigThrottling:GatewayPluginRateLimitingAdvancedConfigThrottling"},"windowSizes":{"type":"array","items":{"type":"number"},"description":"One or more window sizes to apply a limit to (defined in seconds). There must be a matching number of window limits and sizes specified.\n"},"windowType":{"type":"string","description":"Sets the time window type to either \u003cspan pulumi-lang-nodejs=\"`sliding`\" pulumi-lang-dotnet=\"`Sliding`\" pulumi-lang-go=\"`sliding`\" pulumi-lang-python=\"`sliding`\" pulumi-lang-yaml=\"`sliding`\" pulumi-lang-java=\"`sliding`\"\u003e`sliding`\u003c/span\u003e (default) or \u003cspan pulumi-lang-nodejs=\"`fixed`\" pulumi-lang-dotnet=\"`Fixed`\" pulumi-lang-go=\"`fixed`\" pulumi-lang-python=\"`fixed`\" pulumi-lang-yaml=\"`fixed`\" pulumi-lang-java=\"`fixed`\"\u003e`fixed`\u003c/span\u003e. Sliding windows apply the rate limiting logic while taking into account previous hit rates (from the window that immediately precedes the current) using a dynamic weight. Fixed windows consist of buckets that are statically assigned to a definitive time range, each request is mapped to only one fixed window based on its timestamp and will affect only that window's counters. Default: \"sliding\"; must be one of [\"fixed\", \"sliding\"]\n"}},"type":"object","required":["limits","windowSizes"],"language":{"nodejs":{"requiredOutputs":["dictionaryName","disablePenalty","enforceConsumerGroups","errorCode","errorMessage","hideClientHeaders","identifier","limits","lockDictionaryName","redis","retryAfterJitterMax","strategy","throttling","windowSizes","windowType"]}}},"konnect:index/GatewayPluginRateLimitingAdvancedConfigRedis:GatewayPluginRateLimitingAdvancedConfigRedis":{"properties":{"cloudAuthentication":{"$ref":"#/types/konnect:index%2FGatewayPluginRateLimitingAdvancedConfigRedisCloudAuthentication:GatewayPluginRateLimitingAdvancedConfigRedisCloudAuthentication","description":"Cloud auth related configs for connecting to a Cloud Provider's Redis instance.\n"},"clusterMaxRedirections":{"type":"number","description":"Maximum retry attempts for redirection. Default: 5\n"},"clusterNodes":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginRateLimitingAdvancedConfigRedisClusterNode:GatewayPluginRateLimitingAdvancedConfigRedisClusterNode"},"description":"Cluster addresses to use for Redis connections when the \u003cspan pulumi-lang-nodejs=\"`redis`\" pulumi-lang-dotnet=\"`Redis`\" pulumi-lang-go=\"`redis`\" pulumi-lang-python=\"`redis`\" pulumi-lang-yaml=\"`redis`\" pulumi-lang-java=\"`redis`\"\u003e`redis`\u003c/span\u003e strategy is defined. Defining this field implies using a Redis Cluster. The minimum length of the array is 1 element.\n"},"connectTimeout":{"type":"number","description":"An integer representing a timeout in milliseconds. Must be between 0 and 2^31-2. Default: 2000\n"},"connectionIsProxied":{"type":"boolean","description":"If the connection to Redis is proxied (e.g. Envoy), set it \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e. Set the \u003cspan pulumi-lang-nodejs=\"`host`\" pulumi-lang-dotnet=\"`Host`\" pulumi-lang-go=\"`host`\" pulumi-lang-python=\"`host`\" pulumi-lang-yaml=\"`host`\" pulumi-lang-java=\"`host`\"\u003e`host`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`port`\" pulumi-lang-dotnet=\"`Port`\" pulumi-lang-go=\"`port`\" pulumi-lang-python=\"`port`\" pulumi-lang-yaml=\"`port`\" pulumi-lang-java=\"`port`\"\u003e`port`\u003c/span\u003e to point to the proxy address. Default: false\n"},"database":{"type":"number","description":"Database to use for the Redis connection when using the \u003cspan pulumi-lang-nodejs=\"`redis`\" pulumi-lang-dotnet=\"`Redis`\" pulumi-lang-go=\"`redis`\" pulumi-lang-python=\"`redis`\" pulumi-lang-yaml=\"`redis`\" pulumi-lang-java=\"`redis`\"\u003e`redis`\u003c/span\u003e strategy. Default: 0\n"},"host":{"type":"string","description":"A string representing a host name, such as example.com. Default: \"127.0.0.1\"\n"},"keepaliveBacklog":{"type":"number","description":"Limits the total number of opened connections for a pool. If the connection pool is full, connection queues above the limit go into the backlog queue. If the backlog queue is full, subsequent connect operations fail and return \u003cspan pulumi-lang-nodejs=\"`nil`\" pulumi-lang-dotnet=\"`Nil`\" pulumi-lang-go=\"`nil`\" pulumi-lang-python=\"`nil`\" pulumi-lang-yaml=\"`nil`\" pulumi-lang-java=\"`nil`\"\u003e`nil`\u003c/span\u003e. Queued operations (subject to set timeouts) resume once the number of connections in the pool is less than \u003cspan pulumi-lang-nodejs=\"`keepalivePoolSize`\" pulumi-lang-dotnet=\"`KeepalivePoolSize`\" pulumi-lang-go=\"`keepalivePoolSize`\" pulumi-lang-python=\"`keepalive_pool_size`\" pulumi-lang-yaml=\"`keepalivePoolSize`\" pulumi-lang-java=\"`keepalivePoolSize`\"\u003e`keepalive_pool_size`\u003c/span\u003e. If latency is high or throughput is low, try increasing this value. Empirically, this value is larger than \u003cspan pulumi-lang-nodejs=\"`keepalivePoolSize`\" pulumi-lang-dotnet=\"`KeepalivePoolSize`\" pulumi-lang-go=\"`keepalivePoolSize`\" pulumi-lang-python=\"`keepalive_pool_size`\" pulumi-lang-yaml=\"`keepalivePoolSize`\" pulumi-lang-java=\"`keepalivePoolSize`\"\u003e`keepalive_pool_size`\u003c/span\u003e.\n"},"keepalivePoolSize":{"type":"number","description":"The size limit for every cosocket connection pool associated with every remote server, per worker process. If neither \u003cspan pulumi-lang-nodejs=\"`keepalivePoolSize`\" pulumi-lang-dotnet=\"`KeepalivePoolSize`\" pulumi-lang-go=\"`keepalivePoolSize`\" pulumi-lang-python=\"`keepalive_pool_size`\" pulumi-lang-yaml=\"`keepalivePoolSize`\" pulumi-lang-java=\"`keepalivePoolSize`\"\u003e`keepalive_pool_size`\u003c/span\u003e nor \u003cspan pulumi-lang-nodejs=\"`keepaliveBacklog`\" pulumi-lang-dotnet=\"`KeepaliveBacklog`\" pulumi-lang-go=\"`keepaliveBacklog`\" pulumi-lang-python=\"`keepalive_backlog`\" pulumi-lang-yaml=\"`keepaliveBacklog`\" pulumi-lang-java=\"`keepaliveBacklog`\"\u003e`keepalive_backlog`\u003c/span\u003e is specified, no pool is created. If \u003cspan pulumi-lang-nodejs=\"`keepalivePoolSize`\" pulumi-lang-dotnet=\"`KeepalivePoolSize`\" pulumi-lang-go=\"`keepalivePoolSize`\" pulumi-lang-python=\"`keepalive_pool_size`\" pulumi-lang-yaml=\"`keepalivePoolSize`\" pulumi-lang-java=\"`keepalivePoolSize`\"\u003e`keepalive_pool_size`\u003c/span\u003e isn't specified but \u003cspan pulumi-lang-nodejs=\"`keepaliveBacklog`\" pulumi-lang-dotnet=\"`KeepaliveBacklog`\" pulumi-lang-go=\"`keepaliveBacklog`\" pulumi-lang-python=\"`keepalive_backlog`\" pulumi-lang-yaml=\"`keepaliveBacklog`\" pulumi-lang-java=\"`keepaliveBacklog`\"\u003e`keepalive_backlog`\u003c/span\u003e is specified, then the pool uses the default value. Try to increase (e.g. 512) this value if latency is high or throughput is low. Default: 256\n"},"password":{"type":"string","description":"Password to use for Redis connections. If undefined, no AUTH commands are sent to Redis.\n"},"port":{"type":"number","description":"An integer representing a port number between 0 and 65535, inclusive. Default: 6379\n"},"readTimeout":{"type":"number","description":"An integer representing a timeout in milliseconds. Must be between 0 and 2^31-2. Default: 2000\n"},"redisProxyType":{"type":"string","description":"If the \u003cspan pulumi-lang-nodejs=\"`connectionIsProxied`\" pulumi-lang-dotnet=\"`ConnectionIsProxied`\" pulumi-lang-go=\"`connectionIsProxied`\" pulumi-lang-python=\"`connection_is_proxied`\" pulumi-lang-yaml=\"`connectionIsProxied`\" pulumi-lang-java=\"`connectionIsProxied`\"\u003e`connection_is_proxied`\u003c/span\u003e is enabled, this field indicates the proxy type and version you are using. For example, you can enable this optioin when you want authentication between Kong and Envoy proxy. must be \"envoy_v1.31\"\n"},"sendTimeout":{"type":"number","description":"An integer representing a timeout in milliseconds. Must be between 0 and 2^31-2. Default: 2000\n"},"sentinelMaster":{"type":"string","description":"Sentinel master to use for Redis connections. Defining this value implies using Redis Sentinel.\n"},"sentinelNodes":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginRateLimitingAdvancedConfigRedisSentinelNode:GatewayPluginRateLimitingAdvancedConfigRedisSentinelNode"},"description":"Sentinel node addresses to use for Redis connections when the \u003cspan pulumi-lang-nodejs=\"`redis`\" pulumi-lang-dotnet=\"`Redis`\" pulumi-lang-go=\"`redis`\" pulumi-lang-python=\"`redis`\" pulumi-lang-yaml=\"`redis`\" pulumi-lang-java=\"`redis`\"\u003e`redis`\u003c/span\u003e strategy is defined. Defining this field implies using a Redis Sentinel. The minimum length of the array is 1 element.\n"},"sentinelPassword":{"type":"string","description":"Sentinel password to authenticate with a Redis Sentinel instance. If undefined, no AUTH commands are sent to Redis Sentinels.\n"},"sentinelRole":{"type":"string","description":"Sentinel role to use for Redis connections when the \u003cspan pulumi-lang-nodejs=\"`redis`\" pulumi-lang-dotnet=\"`Redis`\" pulumi-lang-go=\"`redis`\" pulumi-lang-python=\"`redis`\" pulumi-lang-yaml=\"`redis`\" pulumi-lang-java=\"`redis`\"\u003e`redis`\u003c/span\u003e strategy is defined. Defining this value implies using Redis Sentinel. must be one of [\"any\", \"master\", \"slave\"]\n"},"sentinelUsername":{"type":"string","description":"Sentinel username to authenticate with a Redis Sentinel instance. If undefined, ACL authentication won't be performed. This requires Redis v6.2.0+.\n"},"serverName":{"type":"string","description":"A string representing an SNI (server name indication) value for TLS.\n"},"ssl":{"type":"boolean","description":"If set to true, uses SSL to connect to Redis. Default: false\n"},"sslVerify":{"type":"boolean","description":"If set to true, verifies the validity of the server SSL certificate. If setting this parameter, also configure \u003cspan pulumi-lang-nodejs=\"`luaSslTrustedCertificate`\" pulumi-lang-dotnet=\"`LuaSslTrustedCertificate`\" pulumi-lang-go=\"`luaSslTrustedCertificate`\" pulumi-lang-python=\"`lua_ssl_trusted_certificate`\" pulumi-lang-yaml=\"`luaSslTrustedCertificate`\" pulumi-lang-java=\"`luaSslTrustedCertificate`\"\u003e`lua_ssl_trusted_certificate`\u003c/span\u003e in `kong.conf` to specify the CA (or server) certificate used by your Redis server. You may also need to configure \u003cspan pulumi-lang-nodejs=\"`luaSslVerifyDepth`\" pulumi-lang-dotnet=\"`LuaSslVerifyDepth`\" pulumi-lang-go=\"`luaSslVerifyDepth`\" pulumi-lang-python=\"`lua_ssl_verify_depth`\" pulumi-lang-yaml=\"`luaSslVerifyDepth`\" pulumi-lang-java=\"`luaSslVerifyDepth`\"\u003e`lua_ssl_verify_depth`\u003c/span\u003e accordingly. Default: false\n"},"username":{"type":"string","description":"Username to use for Redis connections. If undefined, ACL authentication won't be performed. This requires Redis v6.0.0+. To be compatible with Redis v5.x.y, you can set it to \u003cspan pulumi-lang-nodejs=\"`default`\" pulumi-lang-dotnet=\"`Default`\" pulumi-lang-go=\"`default`\" pulumi-lang-python=\"`default`\" pulumi-lang-yaml=\"`default`\" pulumi-lang-java=\"`default`\"\u003e`default`\u003c/span\u003e.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["cloudAuthentication","clusterMaxRedirections","connectTimeout","connectionIsProxied","database","host","keepalivePoolSize","port","readTimeout","redisProxyType","sendTimeout","sentinelRole","ssl","sslVerify"]}}},"konnect:index/GatewayPluginRateLimitingAdvancedConfigRedisCloudAuthentication:GatewayPluginRateLimitingAdvancedConfigRedisCloudAuthentication":{"properties":{"authProvider":{"type":"string","description":"Auth providers to be used to authenticate to a Cloud Provider's Redis instance. must be one of [\"aws\", \"azure\", \"gcp\"]\n"},"awsAccessKeyId":{"type":"string","description":"AWS Access Key ID to be used for authentication when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e.\n"},"awsAssumeRoleArn":{"type":"string","description":"The ARN of the IAM role to assume for generating ElastiCache IAM authentication tokens.\n"},"awsCacheName":{"type":"string","description":"The name of the AWS Elasticache cluster when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e.\n"},"awsIsServerless":{"type":"boolean","description":"This flag specifies whether the cluster is serverless when\u003cspan pulumi-lang-nodejs=\" authProvider \" pulumi-lang-dotnet=\" AuthProvider \" pulumi-lang-go=\" authProvider \" pulumi-lang-python=\" auth_provider \" pulumi-lang-yaml=\" authProvider \" pulumi-lang-java=\" authProvider \"\u003e auth_provider \u003c/span\u003eis set to \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e. Default: true\n"},"awsRegion":{"type":"string","description":"The region of the AWS ElastiCache cluster when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e.\n"},"awsRoleSessionName":{"type":"string","description":"The session name for the temporary credentials when assuming the IAM role.\n"},"awsSecretAccessKey":{"type":"string","description":"AWS Secret Access Key to be used for authentication when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e.\n"},"azureClientId":{"type":"string","description":"Azure Client ID to be used for authentication when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`azure`\" pulumi-lang-dotnet=\"`Azure`\" pulumi-lang-go=\"`azure`\" pulumi-lang-python=\"`azure`\" pulumi-lang-yaml=\"`azure`\" pulumi-lang-java=\"`azure`\"\u003e`azure`\u003c/span\u003e.\n"},"azureClientSecret":{"type":"string","description":"Azure Client Secret to be used for authentication when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`azure`\" pulumi-lang-dotnet=\"`Azure`\" pulumi-lang-go=\"`azure`\" pulumi-lang-python=\"`azure`\" pulumi-lang-yaml=\"`azure`\" pulumi-lang-java=\"`azure`\"\u003e`azure`\u003c/span\u003e.\n"},"azureTenantId":{"type":"string","description":"Azure Tenant ID to be used for authentication when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`azure`\" pulumi-lang-dotnet=\"`Azure`\" pulumi-lang-go=\"`azure`\" pulumi-lang-python=\"`azure`\" pulumi-lang-yaml=\"`azure`\" pulumi-lang-java=\"`azure`\"\u003e`azure`\u003c/span\u003e.\n"},"gcpServiceAccountJson":{"type":"string","description":"GCP Service Account JSON to be used for authentication when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`gcp`\" pulumi-lang-dotnet=\"`Gcp`\" pulumi-lang-go=\"`gcp`\" pulumi-lang-python=\"`gcp`\" pulumi-lang-yaml=\"`gcp`\" pulumi-lang-java=\"`gcp`\"\u003e`gcp`\u003c/span\u003e.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["authProvider","awsIsServerless"]}}},"konnect:index/GatewayPluginRateLimitingAdvancedConfigRedisClusterNode:GatewayPluginRateLimitingAdvancedConfigRedisClusterNode":{"properties":{"ip":{"type":"string","description":"A string representing a host name, such as example.com. Default: \"127.0.0.1\"\n"},"port":{"type":"number","description":"An integer representing a port number between 0 and 65535, inclusive. Default: 6379\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["ip","port"]}}},"konnect:index/GatewayPluginRateLimitingAdvancedConfigRedisSentinelNode:GatewayPluginRateLimitingAdvancedConfigRedisSentinelNode":{"properties":{"host":{"type":"string","description":"A string representing a host name, such as example.com. Default: \"127.0.0.1\"\n"},"port":{"type":"number","description":"An integer representing a port number between 0 and 65535, inclusive. Default: 6379\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["host","port"]}}},"konnect:index/GatewayPluginRateLimitingAdvancedConfigThrottling:GatewayPluginRateLimitingAdvancedConfigThrottling":{"properties":{"enabled":{"type":"boolean","description":"Determines if the throttling feature is enabled or not. Default: false\n"},"interval":{"type":"number","description":"The period between two successive retries for an individual request (in seconds). Default: 5\n"},"queueLimit":{"type":"number","description":"The maximum number of requests allowed for throttling. Default: 5\n"},"retryTimes":{"type":"number","description":"The maximum number of retries for an individual request. Default: 3\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["enabled","interval","queueLimit","retryTimes"]}}},"konnect:index/GatewayPluginRateLimitingAdvancedConsumer:GatewayPluginRateLimitingAdvancedConsumer":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginRateLimitingAdvancedConsumerGroup:GatewayPluginRateLimitingAdvancedConsumerGroup":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginRateLimitingAdvancedOrdering:GatewayPluginRateLimitingAdvancedOrdering":{"properties":{"after":{"$ref":"#/types/konnect:index%2FGatewayPluginRateLimitingAdvancedOrderingAfter:GatewayPluginRateLimitingAdvancedOrderingAfter"},"before":{"$ref":"#/types/konnect:index%2FGatewayPluginRateLimitingAdvancedOrderingBefore:GatewayPluginRateLimitingAdvancedOrderingBefore"}},"type":"object","language":{"nodejs":{"requiredOutputs":["after","before"]}}},"konnect:index/GatewayPluginRateLimitingAdvancedOrderingAfter:GatewayPluginRateLimitingAdvancedOrderingAfter":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginRateLimitingAdvancedOrderingBefore:GatewayPluginRateLimitingAdvancedOrderingBefore":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginRateLimitingAdvancedPartial:GatewayPluginRateLimitingAdvancedPartial":{"properties":{"id":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"name":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"path":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id","name","path"]}}},"konnect:index/GatewayPluginRateLimitingAdvancedRoute:GatewayPluginRateLimitingAdvancedRoute":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginRateLimitingAdvancedService:GatewayPluginRateLimitingAdvancedService":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginRateLimitingConfig:GatewayPluginRateLimitingConfig":{"properties":{"day":{"type":"number","description":"The number of HTTP requests that can be made per day.\n"},"errorCode":{"type":"number","description":"Set a custom error code to return when the rate limit is exceeded. Default: 429\n"},"errorMessage":{"type":"string","description":"Set a custom error message to return when the rate limit is exceeded. Default: \"API rate limit exceeded\"\n"},"faultTolerant":{"type":"boolean","description":"A boolean value that determines if the requests should be proxied even if Kong has troubles connecting a third-party data store. If \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, requests will be proxied anyway, effectively disabling the rate-limiting function until the data store is working again. If \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e, then the clients will see \u003cspan pulumi-lang-nodejs=\"`500`\" pulumi-lang-dotnet=\"`500`\" pulumi-lang-go=\"`500`\" pulumi-lang-python=\"`500`\" pulumi-lang-yaml=\"`500`\" pulumi-lang-java=\"`500`\"\u003e`500`\u003c/span\u003e errors. Default: true\n"},"headerName":{"type":"string","description":"A string representing an HTTP header name.\n"},"hideClientHeaders":{"type":"boolean","description":"Optionally hide informative response headers. Default: false\n"},"hour":{"type":"number","description":"The number of HTTP requests that can be made per hour.\n"},"limitBy":{"type":"string","description":"The entity that is used when aggregating the limits. Default: \"consumer\"; must be one of [\"consumer\", \"consumer-group\", \"credential\", \"header\", \"ip\", \"path\", \"service\"]\n"},"minute":{"type":"number","description":"The number of HTTP requests that can be made per minute.\n"},"month":{"type":"number","description":"The number of HTTP requests that can be made per month.\n"},"path":{"type":"string","description":"A string representing a URL path, such as /path/to/resource. Must start with a forward slash (/) and must not contain empty segments (i.e., two consecutive forward slashes).\n"},"policy":{"type":"string","description":"The rate-limiting policies to use for retrieving and incrementing the limits. Default: \"local\"; must be one of [\"cluster\", \"local\", \"redis\"]\n"},"redis":{"$ref":"#/types/konnect:index%2FGatewayPluginRateLimitingConfigRedis:GatewayPluginRateLimitingConfigRedis","description":"Redis configuration\n"},"second":{"type":"number","description":"The number of HTTP requests that can be made per second.\n"},"syncRate":{"type":"number","description":"How often to sync counter data to the central data store. A value of -1 results in synchronous behavior. Default: -1\n"},"year":{"type":"number","description":"The number of HTTP requests that can be made per year.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["errorCode","errorMessage","faultTolerant","hideClientHeaders","limitBy","policy","redis","syncRate"]}}},"konnect:index/GatewayPluginRateLimitingConfigRedis:GatewayPluginRateLimitingConfigRedis":{"properties":{"cloudAuthentication":{"$ref":"#/types/konnect:index%2FGatewayPluginRateLimitingConfigRedisCloudAuthentication:GatewayPluginRateLimitingConfigRedisCloudAuthentication","description":"Cloud auth related configs for connecting to a Cloud Provider's Redis instance.\n"},"database":{"type":"number","description":"Database to use for the Redis connection when using the \u003cspan pulumi-lang-nodejs=\"`redis`\" pulumi-lang-dotnet=\"`Redis`\" pulumi-lang-go=\"`redis`\" pulumi-lang-python=\"`redis`\" pulumi-lang-yaml=\"`redis`\" pulumi-lang-java=\"`redis`\"\u003e`redis`\u003c/span\u003e strategy. Default: 0\n"},"host":{"type":"string","description":"A string representing a host name, such as example.com.\n"},"password":{"type":"string","description":"Password to use for Redis connections. If undefined, no AUTH commands are sent to Redis.\n"},"port":{"type":"number","description":"An integer representing a port number between 0 and 65535, inclusive. Default: 6379\n"},"serverName":{"type":"string","description":"A string representing an SNI (server name indication) value for TLS.\n"},"ssl":{"type":"boolean","description":"If set to true, uses SSL to connect to Redis. Default: false\n"},"sslVerify":{"type":"boolean","description":"If set to true, verifies the validity of the server SSL certificate. If setting this parameter, also configure \u003cspan pulumi-lang-nodejs=\"`luaSslTrustedCertificate`\" pulumi-lang-dotnet=\"`LuaSslTrustedCertificate`\" pulumi-lang-go=\"`luaSslTrustedCertificate`\" pulumi-lang-python=\"`lua_ssl_trusted_certificate`\" pulumi-lang-yaml=\"`luaSslTrustedCertificate`\" pulumi-lang-java=\"`luaSslTrustedCertificate`\"\u003e`lua_ssl_trusted_certificate`\u003c/span\u003e in `kong.conf` to specify the CA (or server) certificate used by your Redis server. You may also need to configure \u003cspan pulumi-lang-nodejs=\"`luaSslVerifyDepth`\" pulumi-lang-dotnet=\"`LuaSslVerifyDepth`\" pulumi-lang-go=\"`luaSslVerifyDepth`\" pulumi-lang-python=\"`lua_ssl_verify_depth`\" pulumi-lang-yaml=\"`luaSslVerifyDepth`\" pulumi-lang-java=\"`luaSslVerifyDepth`\"\u003e`lua_ssl_verify_depth`\u003c/span\u003e accordingly. Default: false\n"},"timeout":{"type":"number","description":"An integer representing a timeout in milliseconds. Must be between 0 and 2^31-2. Default: 2000\n"},"username":{"type":"string","description":"Username to use for Redis connections. If undefined, ACL authentication won't be performed. This requires Redis v6.0.0+. To be compatible with Redis v5.x.y, you can set it to \u003cspan pulumi-lang-nodejs=\"`default`\" pulumi-lang-dotnet=\"`Default`\" pulumi-lang-go=\"`default`\" pulumi-lang-python=\"`default`\" pulumi-lang-yaml=\"`default`\" pulumi-lang-java=\"`default`\"\u003e`default`\u003c/span\u003e.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["cloudAuthentication","database","port","ssl","sslVerify","timeout"]}}},"konnect:index/GatewayPluginRateLimitingConfigRedisCloudAuthentication:GatewayPluginRateLimitingConfigRedisCloudAuthentication":{"properties":{"authProvider":{"type":"string","description":"Auth providers to be used to authenticate to a Cloud Provider's Redis instance. must be one of [\"aws\", \"azure\", \"gcp\"]\n"},"awsAccessKeyId":{"type":"string","description":"AWS Access Key ID to be used for authentication when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e.\n"},"awsAssumeRoleArn":{"type":"string","description":"The ARN of the IAM role to assume for generating ElastiCache IAM authentication tokens.\n"},"awsCacheName":{"type":"string","description":"The name of the AWS Elasticache cluster when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e.\n"},"awsIsServerless":{"type":"boolean","description":"This flag specifies whether the cluster is serverless when\u003cspan pulumi-lang-nodejs=\" authProvider \" pulumi-lang-dotnet=\" AuthProvider \" pulumi-lang-go=\" authProvider \" pulumi-lang-python=\" auth_provider \" pulumi-lang-yaml=\" authProvider \" pulumi-lang-java=\" authProvider \"\u003e auth_provider \u003c/span\u003eis set to \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e. Default: true\n"},"awsRegion":{"type":"string","description":"The region of the AWS ElastiCache cluster when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e.\n"},"awsRoleSessionName":{"type":"string","description":"The session name for the temporary credentials when assuming the IAM role.\n"},"awsSecretAccessKey":{"type":"string","description":"AWS Secret Access Key to be used for authentication when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e.\n"},"azureClientId":{"type":"string","description":"Azure Client ID to be used for authentication when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`azure`\" pulumi-lang-dotnet=\"`Azure`\" pulumi-lang-go=\"`azure`\" pulumi-lang-python=\"`azure`\" pulumi-lang-yaml=\"`azure`\" pulumi-lang-java=\"`azure`\"\u003e`azure`\u003c/span\u003e.\n"},"azureClientSecret":{"type":"string","description":"Azure Client Secret to be used for authentication when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`azure`\" pulumi-lang-dotnet=\"`Azure`\" pulumi-lang-go=\"`azure`\" pulumi-lang-python=\"`azure`\" pulumi-lang-yaml=\"`azure`\" pulumi-lang-java=\"`azure`\"\u003e`azure`\u003c/span\u003e.\n"},"azureTenantId":{"type":"string","description":"Azure Tenant ID to be used for authentication when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`azure`\" pulumi-lang-dotnet=\"`Azure`\" pulumi-lang-go=\"`azure`\" pulumi-lang-python=\"`azure`\" pulumi-lang-yaml=\"`azure`\" pulumi-lang-java=\"`azure`\"\u003e`azure`\u003c/span\u003e.\n"},"gcpServiceAccountJson":{"type":"string","description":"GCP Service Account JSON to be used for authentication when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`gcp`\" pulumi-lang-dotnet=\"`Gcp`\" pulumi-lang-go=\"`gcp`\" pulumi-lang-python=\"`gcp`\" pulumi-lang-yaml=\"`gcp`\" pulumi-lang-java=\"`gcp`\"\u003e`gcp`\u003c/span\u003e.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["authProvider","awsIsServerless"]}}},"konnect:index/GatewayPluginRateLimitingConsumer:GatewayPluginRateLimitingConsumer":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginRateLimitingConsumerGroup:GatewayPluginRateLimitingConsumerGroup":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginRateLimitingOrdering:GatewayPluginRateLimitingOrdering":{"properties":{"after":{"$ref":"#/types/konnect:index%2FGatewayPluginRateLimitingOrderingAfter:GatewayPluginRateLimitingOrderingAfter"},"before":{"$ref":"#/types/konnect:index%2FGatewayPluginRateLimitingOrderingBefore:GatewayPluginRateLimitingOrderingBefore"}},"type":"object","language":{"nodejs":{"requiredOutputs":["after","before"]}}},"konnect:index/GatewayPluginRateLimitingOrderingAfter:GatewayPluginRateLimitingOrderingAfter":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginRateLimitingOrderingBefore:GatewayPluginRateLimitingOrderingBefore":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginRateLimitingPartial:GatewayPluginRateLimitingPartial":{"properties":{"id":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"name":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"path":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id","name","path"]}}},"konnect:index/GatewayPluginRateLimitingRoute:GatewayPluginRateLimitingRoute":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginRateLimitingService:GatewayPluginRateLimitingService":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginRedirectConfig:GatewayPluginRedirectConfig":{"properties":{"keepIncomingPath":{"type":"boolean","description":"Use the incoming request's path and query string in the redirect URL. Default: false\n"},"location":{"type":"string","description":"The URL to redirect to\n"},"statusCode":{"type":"number","description":"The response code to send. Must be an integer between 100 and 599. Default: 301\n"}},"type":"object","required":["location"],"language":{"nodejs":{"requiredOutputs":["keepIncomingPath","location","statusCode"]}}},"konnect:index/GatewayPluginRedirectConsumer:GatewayPluginRedirectConsumer":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginRedirectConsumerGroup:GatewayPluginRedirectConsumerGroup":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginRedirectOrdering:GatewayPluginRedirectOrdering":{"properties":{"after":{"$ref":"#/types/konnect:index%2FGatewayPluginRedirectOrderingAfter:GatewayPluginRedirectOrderingAfter"},"before":{"$ref":"#/types/konnect:index%2FGatewayPluginRedirectOrderingBefore:GatewayPluginRedirectOrderingBefore"}},"type":"object","language":{"nodejs":{"requiredOutputs":["after","before"]}}},"konnect:index/GatewayPluginRedirectOrderingAfter:GatewayPluginRedirectOrderingAfter":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginRedirectOrderingBefore:GatewayPluginRedirectOrderingBefore":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginRedirectPartial:GatewayPluginRedirectPartial":{"properties":{"id":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"name":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"path":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id","name","path"]}}},"konnect:index/GatewayPluginRedirectRoute:GatewayPluginRedirectRoute":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginRedirectService:GatewayPluginRedirectService":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginRequestCalloutConfig:GatewayPluginRequestCalloutConfig":{"properties":{"cache":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestCalloutConfigCache:GatewayPluginRequestCalloutConfigCache","description":"Plugin global caching configuration.\n"},"callouts":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestCalloutConfigCallout:GatewayPluginRequestCalloutConfigCallout"},"description":"A collection of callout objects, where each object represents an HTTP request made in the context of a proxy request.\n"},"upstream":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestCalloutConfigUpstream:GatewayPluginRequestCalloutConfigUpstream","description":"Customizations to the upstream request.\n"}},"type":"object","required":["callouts"],"language":{"nodejs":{"requiredOutputs":["cache","callouts","upstream"]}}},"konnect:index/GatewayPluginRequestCalloutConfigCache:GatewayPluginRequestCalloutConfigCache":{"properties":{"cacheTtl":{"type":"number","description":"TTL in seconds of cache entities. Default: 300\n"},"memory":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestCalloutConfigCacheMemory:GatewayPluginRequestCalloutConfigCacheMemory"},"redis":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestCalloutConfigCacheRedis:GatewayPluginRequestCalloutConfigCacheRedis"},"strategy":{"type":"string","description":"The backing data store in which to hold cache entities. Accepted values are: \u003cspan pulumi-lang-nodejs=\"`off`\" pulumi-lang-dotnet=\"`Off`\" pulumi-lang-go=\"`off`\" pulumi-lang-python=\"`off`\" pulumi-lang-yaml=\"`off`\" pulumi-lang-java=\"`off`\"\u003e`off`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`memory`\" pulumi-lang-dotnet=\"`Memory`\" pulumi-lang-go=\"`memory`\" pulumi-lang-python=\"`memory`\" pulumi-lang-yaml=\"`memory`\" pulumi-lang-java=\"`memory`\"\u003e`memory`\u003c/span\u003e, and \u003cspan pulumi-lang-nodejs=\"`redis`\" pulumi-lang-dotnet=\"`Redis`\" pulumi-lang-go=\"`redis`\" pulumi-lang-python=\"`redis`\" pulumi-lang-yaml=\"`redis`\" pulumi-lang-java=\"`redis`\"\u003e`redis`\u003c/span\u003e. Default: \"off\"; must be one of [\"memory\", \"off\", \"redis\"]\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["cacheTtl","memory","redis","strategy"]}}},"konnect:index/GatewayPluginRequestCalloutConfigCacheMemory:GatewayPluginRequestCalloutConfigCacheMemory":{"properties":{"dictionaryName":{"type":"string","description":"The name of the shared dictionary in which to hold cache entities when the memory strategy is selected. Note that this dictionary currently must be defined manually in the Kong Nginx template. Default: \"kong*db*cache\"\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["dictionaryName"]}}},"konnect:index/GatewayPluginRequestCalloutConfigCacheRedis:GatewayPluginRequestCalloutConfigCacheRedis":{"properties":{"cloudAuthentication":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestCalloutConfigCacheRedisCloudAuthentication:GatewayPluginRequestCalloutConfigCacheRedisCloudAuthentication","description":"Cloud auth related configs for connecting to a Cloud Provider's Redis instance.\n"},"clusterMaxRedirections":{"type":"number","description":"Maximum retry attempts for redirection. Default: 5\n"},"clusterNodes":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestCalloutConfigCacheRedisClusterNode:GatewayPluginRequestCalloutConfigCacheRedisClusterNode"},"description":"Cluster addresses to use for Redis connections when the \u003cspan pulumi-lang-nodejs=\"`redis`\" pulumi-lang-dotnet=\"`Redis`\" pulumi-lang-go=\"`redis`\" pulumi-lang-python=\"`redis`\" pulumi-lang-yaml=\"`redis`\" pulumi-lang-java=\"`redis`\"\u003e`redis`\u003c/span\u003e strategy is defined. Defining this field implies using a Redis Cluster. The minimum length of the array is 1 element.\n"},"connectTimeout":{"type":"number","description":"An integer representing a timeout in milliseconds. Must be between 0 and 2^31-2. Default: 2000\n"},"connectionIsProxied":{"type":"boolean","description":"If the connection to Redis is proxied (e.g. Envoy), set it \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e. Set the \u003cspan pulumi-lang-nodejs=\"`host`\" pulumi-lang-dotnet=\"`Host`\" pulumi-lang-go=\"`host`\" pulumi-lang-python=\"`host`\" pulumi-lang-yaml=\"`host`\" pulumi-lang-java=\"`host`\"\u003e`host`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`port`\" pulumi-lang-dotnet=\"`Port`\" pulumi-lang-go=\"`port`\" pulumi-lang-python=\"`port`\" pulumi-lang-yaml=\"`port`\" pulumi-lang-java=\"`port`\"\u003e`port`\u003c/span\u003e to point to the proxy address. Default: false\n"},"database":{"type":"number","description":"Database to use for the Redis connection when using the \u003cspan pulumi-lang-nodejs=\"`redis`\" pulumi-lang-dotnet=\"`Redis`\" pulumi-lang-go=\"`redis`\" pulumi-lang-python=\"`redis`\" pulumi-lang-yaml=\"`redis`\" pulumi-lang-java=\"`redis`\"\u003e`redis`\u003c/span\u003e strategy. Default: 0\n"},"host":{"type":"string","description":"A string representing a host name, such as example.com. Default: \"127.0.0.1\"\n"},"keepaliveBacklog":{"type":"number","description":"Limits the total number of opened connections for a pool. If the connection pool is full, connection queues above the limit go into the backlog queue. If the backlog queue is full, subsequent connect operations fail and return \u003cspan pulumi-lang-nodejs=\"`nil`\" pulumi-lang-dotnet=\"`Nil`\" pulumi-lang-go=\"`nil`\" pulumi-lang-python=\"`nil`\" pulumi-lang-yaml=\"`nil`\" pulumi-lang-java=\"`nil`\"\u003e`nil`\u003c/span\u003e. Queued operations (subject to set timeouts) resume once the number of connections in the pool is less than \u003cspan pulumi-lang-nodejs=\"`keepalivePoolSize`\" pulumi-lang-dotnet=\"`KeepalivePoolSize`\" pulumi-lang-go=\"`keepalivePoolSize`\" pulumi-lang-python=\"`keepalive_pool_size`\" pulumi-lang-yaml=\"`keepalivePoolSize`\" pulumi-lang-java=\"`keepalivePoolSize`\"\u003e`keepalive_pool_size`\u003c/span\u003e. If latency is high or throughput is low, try increasing this value. Empirically, this value is larger than \u003cspan pulumi-lang-nodejs=\"`keepalivePoolSize`\" pulumi-lang-dotnet=\"`KeepalivePoolSize`\" pulumi-lang-go=\"`keepalivePoolSize`\" pulumi-lang-python=\"`keepalive_pool_size`\" pulumi-lang-yaml=\"`keepalivePoolSize`\" pulumi-lang-java=\"`keepalivePoolSize`\"\u003e`keepalive_pool_size`\u003c/span\u003e.\n"},"keepalivePoolSize":{"type":"number","description":"The size limit for every cosocket connection pool associated with every remote server, per worker process. If neither \u003cspan pulumi-lang-nodejs=\"`keepalivePoolSize`\" pulumi-lang-dotnet=\"`KeepalivePoolSize`\" pulumi-lang-go=\"`keepalivePoolSize`\" pulumi-lang-python=\"`keepalive_pool_size`\" pulumi-lang-yaml=\"`keepalivePoolSize`\" pulumi-lang-java=\"`keepalivePoolSize`\"\u003e`keepalive_pool_size`\u003c/span\u003e nor \u003cspan pulumi-lang-nodejs=\"`keepaliveBacklog`\" pulumi-lang-dotnet=\"`KeepaliveBacklog`\" pulumi-lang-go=\"`keepaliveBacklog`\" pulumi-lang-python=\"`keepalive_backlog`\" pulumi-lang-yaml=\"`keepaliveBacklog`\" pulumi-lang-java=\"`keepaliveBacklog`\"\u003e`keepalive_backlog`\u003c/span\u003e is specified, no pool is created. If \u003cspan pulumi-lang-nodejs=\"`keepalivePoolSize`\" pulumi-lang-dotnet=\"`KeepalivePoolSize`\" pulumi-lang-go=\"`keepalivePoolSize`\" pulumi-lang-python=\"`keepalive_pool_size`\" pulumi-lang-yaml=\"`keepalivePoolSize`\" pulumi-lang-java=\"`keepalivePoolSize`\"\u003e`keepalive_pool_size`\u003c/span\u003e isn't specified but \u003cspan pulumi-lang-nodejs=\"`keepaliveBacklog`\" pulumi-lang-dotnet=\"`KeepaliveBacklog`\" pulumi-lang-go=\"`keepaliveBacklog`\" pulumi-lang-python=\"`keepalive_backlog`\" pulumi-lang-yaml=\"`keepaliveBacklog`\" pulumi-lang-java=\"`keepaliveBacklog`\"\u003e`keepalive_backlog`\u003c/span\u003e is specified, then the pool uses the default value. Try to increase (e.g. 512) this value if latency is high or throughput is low. Default: 256\n"},"password":{"type":"string","description":"Password to use for Redis connections. If undefined, no AUTH commands are sent to Redis.\n"},"port":{"type":"number","description":"An integer representing a port number between 0 and 65535, inclusive. Default: 6379\n"},"readTimeout":{"type":"number","description":"An integer representing a timeout in milliseconds. Must be between 0 and 2^31-2. Default: 2000\n"},"sendTimeout":{"type":"number","description":"An integer representing a timeout in milliseconds. Must be between 0 and 2^31-2. Default: 2000\n"},"sentinelMaster":{"type":"string","description":"Sentinel master to use for Redis connections. Defining this value implies using Redis Sentinel.\n"},"sentinelNodes":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestCalloutConfigCacheRedisSentinelNode:GatewayPluginRequestCalloutConfigCacheRedisSentinelNode"},"description":"Sentinel node addresses to use for Redis connections when the \u003cspan pulumi-lang-nodejs=\"`redis`\" pulumi-lang-dotnet=\"`Redis`\" pulumi-lang-go=\"`redis`\" pulumi-lang-python=\"`redis`\" pulumi-lang-yaml=\"`redis`\" pulumi-lang-java=\"`redis`\"\u003e`redis`\u003c/span\u003e strategy is defined. Defining this field implies using a Redis Sentinel. The minimum length of the array is 1 element.\n"},"sentinelPassword":{"type":"string","description":"Sentinel password to authenticate with a Redis Sentinel instance. If undefined, no AUTH commands are sent to Redis Sentinels.\n"},"sentinelRole":{"type":"string","description":"Sentinel role to use for Redis connections when the \u003cspan pulumi-lang-nodejs=\"`redis`\" pulumi-lang-dotnet=\"`Redis`\" pulumi-lang-go=\"`redis`\" pulumi-lang-python=\"`redis`\" pulumi-lang-yaml=\"`redis`\" pulumi-lang-java=\"`redis`\"\u003e`redis`\u003c/span\u003e strategy is defined. Defining this value implies using Redis Sentinel. must be one of [\"any\", \"master\", \"slave\"]\n"},"sentinelUsername":{"type":"string","description":"Sentinel username to authenticate with a Redis Sentinel instance. If undefined, ACL authentication won't be performed. This requires Redis v6.2.0+.\n"},"serverName":{"type":"string","description":"A string representing an SNI (server name indication) value for TLS.\n"},"ssl":{"type":"boolean","description":"If set to true, uses SSL to connect to Redis. Default: false\n"},"sslVerify":{"type":"boolean","description":"If set to true, verifies the validity of the server SSL certificate. If setting this parameter, also configure \u003cspan pulumi-lang-nodejs=\"`luaSslTrustedCertificate`\" pulumi-lang-dotnet=\"`LuaSslTrustedCertificate`\" pulumi-lang-go=\"`luaSslTrustedCertificate`\" pulumi-lang-python=\"`lua_ssl_trusted_certificate`\" pulumi-lang-yaml=\"`luaSslTrustedCertificate`\" pulumi-lang-java=\"`luaSslTrustedCertificate`\"\u003e`lua_ssl_trusted_certificate`\u003c/span\u003e in `kong.conf` to specify the CA (or server) certificate used by your Redis server. You may also need to configure \u003cspan pulumi-lang-nodejs=\"`luaSslVerifyDepth`\" pulumi-lang-dotnet=\"`LuaSslVerifyDepth`\" pulumi-lang-go=\"`luaSslVerifyDepth`\" pulumi-lang-python=\"`lua_ssl_verify_depth`\" pulumi-lang-yaml=\"`luaSslVerifyDepth`\" pulumi-lang-java=\"`luaSslVerifyDepth`\"\u003e`lua_ssl_verify_depth`\u003c/span\u003e accordingly. Default: false\n"},"username":{"type":"string","description":"Username to use for Redis connections. If undefined, ACL authentication won't be performed. This requires Redis v6.0.0+. To be compatible with Redis v5.x.y, you can set it to \u003cspan pulumi-lang-nodejs=\"`default`\" pulumi-lang-dotnet=\"`Default`\" pulumi-lang-go=\"`default`\" pulumi-lang-python=\"`default`\" pulumi-lang-yaml=\"`default`\" pulumi-lang-java=\"`default`\"\u003e`default`\u003c/span\u003e.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["cloudAuthentication","clusterMaxRedirections","connectTimeout","connectionIsProxied","database","host","keepalivePoolSize","port","readTimeout","sendTimeout","sentinelRole","ssl","sslVerify"]}}},"konnect:index/GatewayPluginRequestCalloutConfigCacheRedisCloudAuthentication:GatewayPluginRequestCalloutConfigCacheRedisCloudAuthentication":{"properties":{"authProvider":{"type":"string","description":"Auth providers to be used to authenticate to a Cloud Provider's Redis instance. must be one of [\"aws\", \"azure\", \"gcp\"]\n"},"awsAccessKeyId":{"type":"string","description":"AWS Access Key ID to be used for authentication when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e.\n"},"awsAssumeRoleArn":{"type":"string","description":"The ARN of the IAM role to assume for generating ElastiCache IAM authentication tokens.\n"},"awsCacheName":{"type":"string","description":"The name of the AWS Elasticache cluster when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e.\n"},"awsIsServerless":{"type":"boolean","description":"This flag specifies whether the cluster is serverless when\u003cspan pulumi-lang-nodejs=\" authProvider \" pulumi-lang-dotnet=\" AuthProvider \" pulumi-lang-go=\" authProvider \" pulumi-lang-python=\" auth_provider \" pulumi-lang-yaml=\" authProvider \" pulumi-lang-java=\" authProvider \"\u003e auth_provider \u003c/span\u003eis set to \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e. Default: true\n"},"awsRegion":{"type":"string","description":"The region of the AWS ElastiCache cluster when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e.\n"},"awsRoleSessionName":{"type":"string","description":"The session name for the temporary credentials when assuming the IAM role.\n"},"awsSecretAccessKey":{"type":"string","description":"AWS Secret Access Key to be used for authentication when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e.\n"},"azureClientId":{"type":"string","description":"Azure Client ID to be used for authentication when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`azure`\" pulumi-lang-dotnet=\"`Azure`\" pulumi-lang-go=\"`azure`\" pulumi-lang-python=\"`azure`\" pulumi-lang-yaml=\"`azure`\" pulumi-lang-java=\"`azure`\"\u003e`azure`\u003c/span\u003e.\n"},"azureClientSecret":{"type":"string","description":"Azure Client Secret to be used for authentication when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`azure`\" pulumi-lang-dotnet=\"`Azure`\" pulumi-lang-go=\"`azure`\" pulumi-lang-python=\"`azure`\" pulumi-lang-yaml=\"`azure`\" pulumi-lang-java=\"`azure`\"\u003e`azure`\u003c/span\u003e.\n"},"azureTenantId":{"type":"string","description":"Azure Tenant ID to be used for authentication when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`azure`\" pulumi-lang-dotnet=\"`Azure`\" pulumi-lang-go=\"`azure`\" pulumi-lang-python=\"`azure`\" pulumi-lang-yaml=\"`azure`\" pulumi-lang-java=\"`azure`\"\u003e`azure`\u003c/span\u003e.\n"},"gcpServiceAccountJson":{"type":"string","description":"GCP Service Account JSON to be used for authentication when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`gcp`\" pulumi-lang-dotnet=\"`Gcp`\" pulumi-lang-go=\"`gcp`\" pulumi-lang-python=\"`gcp`\" pulumi-lang-yaml=\"`gcp`\" pulumi-lang-java=\"`gcp`\"\u003e`gcp`\u003c/span\u003e.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["authProvider","awsIsServerless"]}}},"konnect:index/GatewayPluginRequestCalloutConfigCacheRedisClusterNode:GatewayPluginRequestCalloutConfigCacheRedisClusterNode":{"properties":{"ip":{"type":"string","description":"A string representing a host name, such as example.com. Default: \"127.0.0.1\"\n"},"port":{"type":"number","description":"An integer representing a port number between 0 and 65535, inclusive. Default: 6379\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["ip","port"]}}},"konnect:index/GatewayPluginRequestCalloutConfigCacheRedisSentinelNode:GatewayPluginRequestCalloutConfigCacheRedisSentinelNode":{"properties":{"host":{"type":"string","description":"A string representing a host name, such as example.com. Default: \"127.0.0.1\"\n"},"port":{"type":"number","description":"An integer representing a port number between 0 and 65535, inclusive. Default: 6379\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["host","port"]}}},"konnect:index/GatewayPluginRequestCalloutConfigCallout:GatewayPluginRequestCalloutConfigCallout":{"properties":{"cache":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestCalloutConfigCalloutCache:GatewayPluginRequestCalloutConfigCalloutCache","description":"Callout caching configuration.\n"},"dependsOns":{"type":"array","items":{"type":"string"},"description":"An array of callout names the current callout depends on. This dependency list determines the callout execution order via a topological sorting algorithm. Default: []\n"},"name":{"type":"string","description":"A string identifier for a callout. A callout object is referenceable via its name in the `kong.ctx.shared.callouts.\u003cname\u003e`. Not Null\n"},"request":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestCalloutConfigCalloutRequest:GatewayPluginRequestCalloutConfigCalloutRequest","description":"The customizations for the callout request. Not Null\n"},"response":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestCalloutConfigCalloutResponse:GatewayPluginRequestCalloutConfigCalloutResponse","description":"Configurations of callout response handling.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["cache","dependsOns","name","request","response"]}}},"konnect:index/GatewayPluginRequestCalloutConfigCalloutCache:GatewayPluginRequestCalloutConfigCalloutCache":{"properties":{"bypass":{"type":"boolean","description":"If \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, skips caching the callout response. Default: false\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["bypass"]}}},"konnect:index/GatewayPluginRequestCalloutConfigCalloutRequest:GatewayPluginRequestCalloutConfigCalloutRequest":{"properties":{"body":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestCalloutConfigCalloutRequestBody:GatewayPluginRequestCalloutConfigCalloutRequestBody","description":"Callout request body customizations.\n"},"byLua":{"type":"string","description":"Lua code that executes before the callout request is made. **Warning** can impact system behavior. Standard Lua sandboxing restrictions apply.\n"},"error":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestCalloutConfigCalloutRequestError:GatewayPluginRequestCalloutConfigCalloutRequestError","description":"The error handling policy the plugin will apply to TCP and HTTP errors.\n"},"headers":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestCalloutConfigCalloutRequestHeaders:GatewayPluginRequestCalloutConfigCalloutRequestHeaders","description":"Callout request header customizations.\n"},"httpOpts":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestCalloutConfigCalloutRequestHttpOpts:GatewayPluginRequestCalloutConfigCalloutRequestHttpOpts","description":"HTTP connection parameters.\n"},"method":{"type":"string","description":"The HTTP method that will be requested. Default: \"GET\"\n"},"query":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestCalloutConfigCalloutRequestQuery:GatewayPluginRequestCalloutConfigCalloutRequestQuery","description":"Callout request query param customizations.\n"},"url":{"type":"string","description":"The URL that will be requested. Values can contain Lua expressions in the form `$(some_lua_expression)`. The syntax is based on `request-transformer-advanced` templates. Not Null\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["body","error","headers","httpOpts","method","query","url"]}}},"konnect:index/GatewayPluginRequestCalloutConfigCalloutRequestBody:GatewayPluginRequestCalloutConfigCalloutRequestBody":{"properties":{"custom":{"type":"object","additionalProperties":{"type":"string"},"description":"The custom body fields to be added to the callout HTTP request. Values can contain Lua expressions in the form $(some*lua*expression). The syntax is based on `request-transformer-advanced` templates.\n"},"decode":{"type":"boolean","description":"If \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, decodes the request's body and make it available for customizations. Only JSON content type is supported. Default: false\n"},"forward":{"type":"boolean","description":"If \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, forwards the incoming request's body to the callout request. Default: false\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["decode","forward"]}}},"konnect:index/GatewayPluginRequestCalloutConfigCalloutRequestError:GatewayPluginRequestCalloutConfigCalloutRequestError":{"properties":{"errorResponseCode":{"type":"number","description":"The error code to respond with if \u003cspan pulumi-lang-nodejs=\"`onError`\" pulumi-lang-dotnet=\"`OnError`\" pulumi-lang-go=\"`onError`\" pulumi-lang-python=\"`on_error`\" pulumi-lang-yaml=\"`onError`\" pulumi-lang-java=\"`onError`\"\u003e`on_error`\u003c/span\u003e is \u003cspan pulumi-lang-nodejs=\"`fail`\" pulumi-lang-dotnet=\"`Fail`\" pulumi-lang-go=\"`fail`\" pulumi-lang-python=\"`fail`\" pulumi-lang-yaml=\"`fail`\" pulumi-lang-java=\"`fail`\"\u003e`fail`\u003c/span\u003e or if \u003cspan pulumi-lang-nodejs=\"`retries`\" pulumi-lang-dotnet=\"`Retries`\" pulumi-lang-go=\"`retries`\" pulumi-lang-python=\"`retries`\" pulumi-lang-yaml=\"`retries`\" pulumi-lang-java=\"`retries`\"\u003e`retries`\u003c/span\u003e is achieved. Default: 400\n"},"errorResponseMsg":{"type":"string","description":"The error mesasge to respond with if \u003cspan pulumi-lang-nodejs=\"`onError`\" pulumi-lang-dotnet=\"`OnError`\" pulumi-lang-go=\"`onError`\" pulumi-lang-python=\"`on_error`\" pulumi-lang-yaml=\"`onError`\" pulumi-lang-java=\"`onError`\"\u003e`on_error`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`fail`\" pulumi-lang-dotnet=\"`Fail`\" pulumi-lang-go=\"`fail`\" pulumi-lang-python=\"`fail`\" pulumi-lang-yaml=\"`fail`\" pulumi-lang-java=\"`fail`\"\u003e`fail`\u003c/span\u003e or if \u003cspan pulumi-lang-nodejs=\"`retries`\" pulumi-lang-dotnet=\"`Retries`\" pulumi-lang-go=\"`retries`\" pulumi-lang-python=\"`retries`\" pulumi-lang-yaml=\"`retries`\" pulumi-lang-java=\"`retries`\"\u003e`retries`\u003c/span\u003e is achieved. Templating with Lua expressions is supported. Default: \"service callout error\"\n"},"httpStatuses":{"type":"array","items":{"type":"number"},"description":"The list of HTTP status codes considered errors under the error handling policy.\n"},"onError":{"type":"string","description":"Default: \"fail\"; must be one of [\"continue\", \"fail\", \"retry\"]\n"},"retries":{"type":"number","description":"The number of retries the plugin will attempt on TCP and HTTP errors if \u003cspan pulumi-lang-nodejs=\"`onError`\" pulumi-lang-dotnet=\"`OnError`\" pulumi-lang-go=\"`onError`\" pulumi-lang-python=\"`on_error`\" pulumi-lang-yaml=\"`onError`\" pulumi-lang-java=\"`onError`\"\u003e`on_error`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`retry`\" pulumi-lang-dotnet=\"`Retry`\" pulumi-lang-go=\"`retry`\" pulumi-lang-python=\"`retry`\" pulumi-lang-yaml=\"`retry`\" pulumi-lang-java=\"`retry`\"\u003e`retry`\u003c/span\u003e. Default: 2\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["errorResponseCode","errorResponseMsg","onError","retries"]}}},"konnect:index/GatewayPluginRequestCalloutConfigCalloutRequestHeaders:GatewayPluginRequestCalloutConfigCalloutRequestHeaders":{"properties":{"custom":{"type":"object","additionalProperties":{"type":"string"},"description":"The custom headers to be added in the callout HTTP request. Values can contain Lua expressions in the form `$(some_lua_expression)`. The syntax is based on `request-transformer-advanced` templates.\n"},"forward":{"type":"boolean","description":"If \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, forwards the incoming request's headers to the callout request. Default: false\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["forward"]}}},"konnect:index/GatewayPluginRequestCalloutConfigCalloutRequestHttpOpts:GatewayPluginRequestCalloutConfigCalloutRequestHttpOpts":{"properties":{"proxy":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestCalloutConfigCalloutRequestHttpOptsProxy:GatewayPluginRequestCalloutConfigCalloutRequestHttpOptsProxy","description":"Proxy settings.\n"},"sslServerName":{"type":"string","description":"The SNI used in the callout request. Defaults to host if omitted.\n"},"sslVerify":{"type":"boolean","description":"If set to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, verifies the validity of the server SSL certificate. If setting this parameter, also configure \u003cspan pulumi-lang-nodejs=\"`luaSslTrustedCertificate`\" pulumi-lang-dotnet=\"`LuaSslTrustedCertificate`\" pulumi-lang-go=\"`luaSslTrustedCertificate`\" pulumi-lang-python=\"`lua_ssl_trusted_certificate`\" pulumi-lang-yaml=\"`luaSslTrustedCertificate`\" pulumi-lang-java=\"`luaSslTrustedCertificate`\"\u003e`lua_ssl_trusted_certificate`\u003c/span\u003e in `kong.conf` to specify the CA (or server) certificate used by your callout API. You may also need to configure \u003cspan pulumi-lang-nodejs=\"`luaSslVerifyDepth`\" pulumi-lang-dotnet=\"`LuaSslVerifyDepth`\" pulumi-lang-go=\"`luaSslVerifyDepth`\" pulumi-lang-python=\"`lua_ssl_verify_depth`\" pulumi-lang-yaml=\"`luaSslVerifyDepth`\" pulumi-lang-java=\"`luaSslVerifyDepth`\"\u003e`lua_ssl_verify_depth`\u003c/span\u003e accordingly. Default: false\n"},"timeouts":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestCalloutConfigCalloutRequestHttpOptsTimeouts:GatewayPluginRequestCalloutConfigCalloutRequestHttpOptsTimeouts","description":"Socket timeouts in milliseconds. All or none must be set.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["proxy","sslVerify","timeouts"]}}},"konnect:index/GatewayPluginRequestCalloutConfigCalloutRequestHttpOptsProxy:GatewayPluginRequestCalloutConfigCalloutRequestHttpOptsProxy":{"properties":{"authPassword":{"type":"string","description":"The password to authenticate with, if the forward proxy is protected by basic authentication.\n"},"authUsername":{"type":"string","description":"The username to authenticate with, if the forward proxy is protected by basic authentication.\n"},"httpProxy":{"type":"string","description":"The HTTP proxy URL. This proxy server will be used for HTTP requests.\n"},"httpsProxy":{"type":"string","description":"The HTTPS proxy URL. This proxy server will be used for HTTPS requests.\n"}},"type":"object"},"konnect:index/GatewayPluginRequestCalloutConfigCalloutRequestHttpOptsTimeouts:GatewayPluginRequestCalloutConfigCalloutRequestHttpOptsTimeouts":{"properties":{"connect":{"type":"number","description":"The socket connect timeout.\n"},"read":{"type":"number","description":"The socket read timeout.\n"},"write":{"type":"number","description":"The socket write timeout.\n"}},"type":"object"},"konnect:index/GatewayPluginRequestCalloutConfigCalloutRequestQuery:GatewayPluginRequestCalloutConfigCalloutRequestQuery":{"properties":{"custom":{"type":"object","additionalProperties":{"type":"string"},"description":"The custom query params to be added in the callout HTTP request. Values can contain Lua expressions in the form `$(some_lua_expression)`. The syntax is based on `request-transformer-advanced` templates.\n"},"forward":{"type":"boolean","description":"If \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, forwards the incoming request's query params to the callout request. Default: false\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["forward"]}}},"konnect:index/GatewayPluginRequestCalloutConfigCalloutResponse:GatewayPluginRequestCalloutConfigCalloutResponse":{"properties":{"body":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestCalloutConfigCalloutResponseBody:GatewayPluginRequestCalloutConfigCalloutResponseBody"},"byLua":{"type":"string","description":"Lua code that executes after the callout response is received, before caching takes place. Can produce side effects. Standard Lua sandboxing restrictions apply.\n"},"headers":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestCalloutConfigCalloutResponseHeaders:GatewayPluginRequestCalloutConfigCalloutResponseHeaders","description":"Callout response header customizations.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["body","headers"]}}},"konnect:index/GatewayPluginRequestCalloutConfigCalloutResponseBody:GatewayPluginRequestCalloutConfigCalloutResponseBody":{"properties":{"decode":{"type":"boolean","description":"If \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, decodes the response body before storing into the context. Only JSON is supported. Default: false\n"},"store":{"type":"boolean","description":"If \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e, skips storing the callout response body into kong.ctx.shared.callouts.\\n\\n.response.body. Default: true\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["decode","store"]}}},"konnect:index/GatewayPluginRequestCalloutConfigCalloutResponseHeaders:GatewayPluginRequestCalloutConfigCalloutResponseHeaders":{"properties":{"store":{"type":"boolean","description":"If \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e, skips storing the callout response headers into kong.ctx.shared.callouts.\\n\\n.response.headers. Default: true\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["store"]}}},"konnect:index/GatewayPluginRequestCalloutConfigUpstream:GatewayPluginRequestCalloutConfigUpstream":{"properties":{"body":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestCalloutConfigUpstreamBody:GatewayPluginRequestCalloutConfigUpstreamBody","description":"Callout request body customizations.\n"},"byLua":{"type":"string","description":"Lua code that executes before the upstream request is made. Can produce side effects. Standard Lua sandboxing restrictions apply.\n"},"headers":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestCalloutConfigUpstreamHeaders:GatewayPluginRequestCalloutConfigUpstreamHeaders","description":"Callout request header customizations.\n"},"query":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestCalloutConfigUpstreamQuery:GatewayPluginRequestCalloutConfigUpstreamQuery","description":"Upstream request query param customizations.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["body","headers","query"]}}},"konnect:index/GatewayPluginRequestCalloutConfigUpstreamBody:GatewayPluginRequestCalloutConfigUpstreamBody":{"properties":{"custom":{"type":"object","additionalProperties":{"type":"string"},"description":"The custom body fields to be added in the upstream request body. Values can contain Lua expressions in the form $(some*lua*expression). The syntax is based on `request-transformer-advanced` templates.\n"},"decode":{"type":"boolean","description":"If \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, decodes the request's body to make it available for upstream\u003cspan pulumi-lang-nodejs=\" byLua \" pulumi-lang-dotnet=\" ByLua \" pulumi-lang-go=\" byLua \" pulumi-lang-python=\" by_lua \" pulumi-lang-yaml=\" byLua \" pulumi-lang-java=\" byLua \"\u003e by_lua \u003c/span\u003ecustomizations. Only JSON content type is supported. Default: true\n"},"forward":{"type":"boolean","description":"If \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e, skips forwarding the incoming request's body to the upstream request. Default: true\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["decode","forward"]}}},"konnect:index/GatewayPluginRequestCalloutConfigUpstreamHeaders:GatewayPluginRequestCalloutConfigUpstreamHeaders":{"properties":{"custom":{"type":"object","additionalProperties":{"type":"string"},"description":"The custom headers to be added in the upstream HTTP request. Values can contain Lua expressions in the form $(some*lua*expression). The syntax is based on `request-transformer-advanced` templates.\n"},"forward":{"type":"boolean","description":"If \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e, does not forward request headers to upstream request. Default: true\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["forward"]}}},"konnect:index/GatewayPluginRequestCalloutConfigUpstreamQuery:GatewayPluginRequestCalloutConfigUpstreamQuery":{"properties":{"custom":{"type":"object","additionalProperties":{"type":"string"},"description":"The custom query params to be added in the upstream HTTP request. Values can contain Lua expressions in the form `$(some_lua_expression)`. The syntax is based on `request-transformer-advanced` templates.\n"},"forward":{"type":"boolean","description":"If \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e, does not forward request query params to upstream request. Default: true\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["forward"]}}},"konnect:index/GatewayPluginRequestCalloutConsumer:GatewayPluginRequestCalloutConsumer":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginRequestCalloutConsumerGroup:GatewayPluginRequestCalloutConsumerGroup":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginRequestCalloutOrdering:GatewayPluginRequestCalloutOrdering":{"properties":{"after":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestCalloutOrderingAfter:GatewayPluginRequestCalloutOrderingAfter"},"before":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestCalloutOrderingBefore:GatewayPluginRequestCalloutOrderingBefore"}},"type":"object","language":{"nodejs":{"requiredOutputs":["after","before"]}}},"konnect:index/GatewayPluginRequestCalloutOrderingAfter:GatewayPluginRequestCalloutOrderingAfter":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginRequestCalloutOrderingBefore:GatewayPluginRequestCalloutOrderingBefore":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginRequestCalloutPartial:GatewayPluginRequestCalloutPartial":{"properties":{"id":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"name":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"path":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id","name","path"]}}},"konnect:index/GatewayPluginRequestCalloutRoute:GatewayPluginRequestCalloutRoute":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginRequestCalloutService:GatewayPluginRequestCalloutService":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginRequestSizeLimitingConfig:GatewayPluginRequestSizeLimitingConfig":{"properties":{"allowedPayloadSize":{"type":"number","description":"Allowed request payload size in megabytes. Default is \u003cspan pulumi-lang-nodejs=\"`128`\" pulumi-lang-dotnet=\"`128`\" pulumi-lang-go=\"`128`\" pulumi-lang-python=\"`128`\" pulumi-lang-yaml=\"`128`\" pulumi-lang-java=\"`128`\"\u003e`128`\u003c/span\u003e megabytes (128000000 bytes). Default: 128\n"},"requireContentLength":{"type":"boolean","description":"Set to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e to ensure a valid `Content-Length` header exists before reading the request body. Default: false\n"},"sizeUnit":{"type":"string","description":"Size unit can be set either in \u003cspan pulumi-lang-nodejs=\"`bytes`\" pulumi-lang-dotnet=\"`Bytes`\" pulumi-lang-go=\"`bytes`\" pulumi-lang-python=\"`bytes`\" pulumi-lang-yaml=\"`bytes`\" pulumi-lang-java=\"`bytes`\"\u003e`bytes`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`kilobytes`\" pulumi-lang-dotnet=\"`Kilobytes`\" pulumi-lang-go=\"`kilobytes`\" pulumi-lang-python=\"`kilobytes`\" pulumi-lang-yaml=\"`kilobytes`\" pulumi-lang-java=\"`kilobytes`\"\u003e`kilobytes`\u003c/span\u003e, or \u003cspan pulumi-lang-nodejs=\"`megabytes`\" pulumi-lang-dotnet=\"`Megabytes`\" pulumi-lang-go=\"`megabytes`\" pulumi-lang-python=\"`megabytes`\" pulumi-lang-yaml=\"`megabytes`\" pulumi-lang-java=\"`megabytes`\"\u003e`megabytes`\u003c/span\u003e (default). This configuration is not available in versions prior to Kong Gateway 1.3 and Kong Gateway (OSS) 2.0. Default: \"megabytes\"; must be one of [\"bytes\", \"kilobytes\", \"megabytes\"]\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["allowedPayloadSize","requireContentLength","sizeUnit"]}}},"konnect:index/GatewayPluginRequestSizeLimitingConsumer:GatewayPluginRequestSizeLimitingConsumer":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginRequestSizeLimitingOrdering:GatewayPluginRequestSizeLimitingOrdering":{"properties":{"after":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestSizeLimitingOrderingAfter:GatewayPluginRequestSizeLimitingOrderingAfter"},"before":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestSizeLimitingOrderingBefore:GatewayPluginRequestSizeLimitingOrderingBefore"}},"type":"object","language":{"nodejs":{"requiredOutputs":["after","before"]}}},"konnect:index/GatewayPluginRequestSizeLimitingOrderingAfter:GatewayPluginRequestSizeLimitingOrderingAfter":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginRequestSizeLimitingOrderingBefore:GatewayPluginRequestSizeLimitingOrderingBefore":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginRequestSizeLimitingPartial:GatewayPluginRequestSizeLimitingPartial":{"properties":{"id":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"name":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"path":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id","name","path"]}}},"konnect:index/GatewayPluginRequestSizeLimitingRoute:GatewayPluginRequestSizeLimitingRoute":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginRequestSizeLimitingService:GatewayPluginRequestSizeLimitingService":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginRequestTerminationConfig:GatewayPluginRequestTerminationConfig":{"properties":{"body":{"type":"string","description":"The raw response body to send. This is mutually exclusive with the `config.message` field.\n"},"contentType":{"type":"string","description":"Content type of the raw response configured with `config.body`.\n"},"echo":{"type":"boolean","description":"When set, the plugin will echo a copy of the request back to the client. The main usecase for this is debugging. It can be combined with \u003cspan pulumi-lang-nodejs=\"`trigger`\" pulumi-lang-dotnet=\"`Trigger`\" pulumi-lang-go=\"`trigger`\" pulumi-lang-python=\"`trigger`\" pulumi-lang-yaml=\"`trigger`\" pulumi-lang-java=\"`trigger`\"\u003e`trigger`\u003c/span\u003e in order to debug requests on live systems without disturbing real traffic. Default: false\n"},"message":{"type":"string","description":"The message to send, if using the default response generator.\n"},"statusCode":{"type":"number","description":"The response code to send. Must be an integer between 100 and 599. Default: 503\n"},"trigger":{"type":"string","description":"A string representing an HTTP header name.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["echo","statusCode"]}}},"konnect:index/GatewayPluginRequestTerminationConsumer:GatewayPluginRequestTerminationConsumer":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginRequestTerminationConsumerGroup:GatewayPluginRequestTerminationConsumerGroup":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginRequestTerminationOrdering:GatewayPluginRequestTerminationOrdering":{"properties":{"after":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestTerminationOrderingAfter:GatewayPluginRequestTerminationOrderingAfter"},"before":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestTerminationOrderingBefore:GatewayPluginRequestTerminationOrderingBefore"}},"type":"object","language":{"nodejs":{"requiredOutputs":["after","before"]}}},"konnect:index/GatewayPluginRequestTerminationOrderingAfter:GatewayPluginRequestTerminationOrderingAfter":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginRequestTerminationOrderingBefore:GatewayPluginRequestTerminationOrderingBefore":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginRequestTerminationPartial:GatewayPluginRequestTerminationPartial":{"properties":{"id":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"name":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"path":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id","name","path"]}}},"konnect:index/GatewayPluginRequestTerminationRoute:GatewayPluginRequestTerminationRoute":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginRequestTerminationService:GatewayPluginRequestTerminationService":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginRequestTransformerAdvancedConfig:GatewayPluginRequestTransformerAdvancedConfig":{"properties":{"add":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestTransformerAdvancedConfigAdd:GatewayPluginRequestTransformerAdvancedConfigAdd"},"allow":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestTransformerAdvancedConfigAllow:GatewayPluginRequestTransformerAdvancedConfigAllow"},"append":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestTransformerAdvancedConfigAppend:GatewayPluginRequestTransformerAdvancedConfigAppend"},"dotsInKeys":{"type":"boolean","description":"Specify whether dots (for example, `customers.info.phone`) should be treated as part of a property name or used to descend into nested JSON objects. Default: true\n"},"httpMethod":{"type":"string","description":"A string representing an HTTP method, such as GET, POST, PUT, or DELETE. The string must contain only uppercase letters.\n"},"remove":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestTransformerAdvancedConfigRemove:GatewayPluginRequestTransformerAdvancedConfigRemove"},"rename":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestTransformerAdvancedConfigRename:GatewayPluginRequestTransformerAdvancedConfigRename"},"replace":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestTransformerAdvancedConfigReplace:GatewayPluginRequestTransformerAdvancedConfigReplace"}},"type":"object","language":{"nodejs":{"requiredOutputs":["add","allow","append","dotsInKeys","remove","rename","replace"]}}},"konnect:index/GatewayPluginRequestTransformerAdvancedConfigAdd:GatewayPluginRequestTransformerAdvancedConfigAdd":{"properties":{"bodies":{"type":"array","items":{"type":"string"},"description":"Default: []\n"},"headers":{"type":"array","items":{"type":"string"},"description":"Default: []\n"},"jsonTypes":{"type":"array","items":{"type":"string"},"description":"Default: []\n"},"querystrings":{"type":"array","items":{"type":"string"},"description":"Default: []\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["bodies","headers","jsonTypes","querystrings"]}}},"konnect:index/GatewayPluginRequestTransformerAdvancedConfigAllow:GatewayPluginRequestTransformerAdvancedConfigAllow":{"properties":{"bodies":{"type":"array","items":{"type":"string"}}},"type":"object"},"konnect:index/GatewayPluginRequestTransformerAdvancedConfigAppend:GatewayPluginRequestTransformerAdvancedConfigAppend":{"properties":{"bodies":{"type":"array","items":{"type":"string"},"description":"Default: []\n"},"headers":{"type":"array","items":{"type":"string"},"description":"Default: []\n"},"jsonTypes":{"type":"array","items":{"type":"string"},"description":"Default: []\n"},"querystrings":{"type":"array","items":{"type":"string"},"description":"Default: []\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["bodies","headers","jsonTypes","querystrings"]}}},"konnect:index/GatewayPluginRequestTransformerAdvancedConfigRemove:GatewayPluginRequestTransformerAdvancedConfigRemove":{"properties":{"bodies":{"type":"array","items":{"type":"string"},"description":"Default: []\n"},"headers":{"type":"array","items":{"type":"string"},"description":"Default: []\n"},"querystrings":{"type":"array","items":{"type":"string"},"description":"Default: []\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["bodies","headers","querystrings"]}}},"konnect:index/GatewayPluginRequestTransformerAdvancedConfigRename:GatewayPluginRequestTransformerAdvancedConfigRename":{"properties":{"bodies":{"type":"array","items":{"type":"string"},"description":"Default: []\n"},"headers":{"type":"array","items":{"type":"string"},"description":"Default: []\n"},"querystrings":{"type":"array","items":{"type":"string"},"description":"Default: []\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["bodies","headers","querystrings"]}}},"konnect:index/GatewayPluginRequestTransformerAdvancedConfigReplace:GatewayPluginRequestTransformerAdvancedConfigReplace":{"properties":{"bodies":{"type":"array","items":{"type":"string"},"description":"Default: []\n"},"headers":{"type":"array","items":{"type":"string"},"description":"Default: []\n"},"jsonTypes":{"type":"array","items":{"type":"string"},"description":"Default: []\n"},"querystrings":{"type":"array","items":{"type":"string"},"description":"Default: []\n"},"uri":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["bodies","headers","jsonTypes","querystrings"]}}},"konnect:index/GatewayPluginRequestTransformerAdvancedConsumer:GatewayPluginRequestTransformerAdvancedConsumer":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginRequestTransformerAdvancedConsumerGroup:GatewayPluginRequestTransformerAdvancedConsumerGroup":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginRequestTransformerAdvancedOrdering:GatewayPluginRequestTransformerAdvancedOrdering":{"properties":{"after":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestTransformerAdvancedOrderingAfter:GatewayPluginRequestTransformerAdvancedOrderingAfter"},"before":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestTransformerAdvancedOrderingBefore:GatewayPluginRequestTransformerAdvancedOrderingBefore"}},"type":"object","language":{"nodejs":{"requiredOutputs":["after","before"]}}},"konnect:index/GatewayPluginRequestTransformerAdvancedOrderingAfter:GatewayPluginRequestTransformerAdvancedOrderingAfter":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginRequestTransformerAdvancedOrderingBefore:GatewayPluginRequestTransformerAdvancedOrderingBefore":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginRequestTransformerAdvancedPartial:GatewayPluginRequestTransformerAdvancedPartial":{"properties":{"id":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"name":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"path":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id","name","path"]}}},"konnect:index/GatewayPluginRequestTransformerAdvancedRoute:GatewayPluginRequestTransformerAdvancedRoute":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginRequestTransformerAdvancedService:GatewayPluginRequestTransformerAdvancedService":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginRequestTransformerConfig:GatewayPluginRequestTransformerConfig":{"properties":{"add":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestTransformerConfigAdd:GatewayPluginRequestTransformerConfigAdd"},"append":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestTransformerConfigAppend:GatewayPluginRequestTransformerConfigAppend"},"httpMethod":{"type":"string","description":"A string representing an HTTP method, such as GET, POST, PUT, or DELETE. The string must contain only uppercase letters.\n"},"remove":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestTransformerConfigRemove:GatewayPluginRequestTransformerConfigRemove"},"rename":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestTransformerConfigRename:GatewayPluginRequestTransformerConfigRename"},"replace":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestTransformerConfigReplace:GatewayPluginRequestTransformerConfigReplace"}},"type":"object","language":{"nodejs":{"requiredOutputs":["add","append","remove","rename","replace"]}}},"konnect:index/GatewayPluginRequestTransformerConfigAdd:GatewayPluginRequestTransformerConfigAdd":{"properties":{"bodies":{"type":"array","items":{"type":"string"},"description":"Default: []\n"},"headers":{"type":"array","items":{"type":"string"},"description":"Default: []\n"},"querystrings":{"type":"array","items":{"type":"string"},"description":"Default: []\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["bodies","headers","querystrings"]}}},"konnect:index/GatewayPluginRequestTransformerConfigAppend:GatewayPluginRequestTransformerConfigAppend":{"properties":{"bodies":{"type":"array","items":{"type":"string"},"description":"Default: []\n"},"headers":{"type":"array","items":{"type":"string"},"description":"Default: []\n"},"querystrings":{"type":"array","items":{"type":"string"},"description":"Default: []\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["bodies","headers","querystrings"]}}},"konnect:index/GatewayPluginRequestTransformerConfigRemove:GatewayPluginRequestTransformerConfigRemove":{"properties":{"bodies":{"type":"array","items":{"type":"string"},"description":"Default: []\n"},"headers":{"type":"array","items":{"type":"string"},"description":"Default: []\n"},"querystrings":{"type":"array","items":{"type":"string"},"description":"Default: []\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["bodies","headers","querystrings"]}}},"konnect:index/GatewayPluginRequestTransformerConfigRename:GatewayPluginRequestTransformerConfigRename":{"properties":{"bodies":{"type":"array","items":{"type":"string"},"description":"Default: []\n"},"headers":{"type":"array","items":{"type":"string"},"description":"Default: []\n"},"querystrings":{"type":"array","items":{"type":"string"},"description":"Default: []\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["bodies","headers","querystrings"]}}},"konnect:index/GatewayPluginRequestTransformerConfigReplace:GatewayPluginRequestTransformerConfigReplace":{"properties":{"bodies":{"type":"array","items":{"type":"string"},"description":"Default: []\n"},"headers":{"type":"array","items":{"type":"string"},"description":"Default: []\n"},"querystrings":{"type":"array","items":{"type":"string"},"description":"Default: []\n"},"uri":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["bodies","headers","querystrings"]}}},"konnect:index/GatewayPluginRequestTransformerConsumer:GatewayPluginRequestTransformerConsumer":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginRequestTransformerConsumerGroup:GatewayPluginRequestTransformerConsumerGroup":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginRequestTransformerOrdering:GatewayPluginRequestTransformerOrdering":{"properties":{"after":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestTransformerOrderingAfter:GatewayPluginRequestTransformerOrderingAfter"},"before":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestTransformerOrderingBefore:GatewayPluginRequestTransformerOrderingBefore"}},"type":"object","language":{"nodejs":{"requiredOutputs":["after","before"]}}},"konnect:index/GatewayPluginRequestTransformerOrderingAfter:GatewayPluginRequestTransformerOrderingAfter":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginRequestTransformerOrderingBefore:GatewayPluginRequestTransformerOrderingBefore":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginRequestTransformerPartial:GatewayPluginRequestTransformerPartial":{"properties":{"id":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"name":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"path":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id","name","path"]}}},"konnect:index/GatewayPluginRequestTransformerRoute:GatewayPluginRequestTransformerRoute":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginRequestTransformerService:GatewayPluginRequestTransformerService":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginRequestValidatorConfig:GatewayPluginRequestValidatorConfig":{"properties":{"allowedContentTypes":{"type":"array","items":{"type":"string"},"description":"List of allowed content types. The value can be configured with the \u003cspan pulumi-lang-nodejs=\"`charset`\" pulumi-lang-dotnet=\"`Charset`\" pulumi-lang-go=\"`charset`\" pulumi-lang-python=\"`charset`\" pulumi-lang-yaml=\"`charset`\" pulumi-lang-java=\"`charset`\"\u003e`charset`\u003c/span\u003e parameter. For example, `application/json; charset=UTF-8`. Default: [\"application/json\"]\n"},"bodySchema":{"type":"string","description":"The request body schema specification. One of \u003cspan pulumi-lang-nodejs=\"`bodySchema`\" pulumi-lang-dotnet=\"`BodySchema`\" pulumi-lang-go=\"`bodySchema`\" pulumi-lang-python=\"`body_schema`\" pulumi-lang-yaml=\"`bodySchema`\" pulumi-lang-java=\"`bodySchema`\"\u003e`body_schema`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`parameterSchema`\" pulumi-lang-dotnet=\"`ParameterSchema`\" pulumi-lang-go=\"`parameterSchema`\" pulumi-lang-python=\"`parameter_schema`\" pulumi-lang-yaml=\"`parameterSchema`\" pulumi-lang-java=\"`parameterSchema`\"\u003e`parameter_schema`\u003c/span\u003e must be specified.\n"},"contentTypeParameterValidation":{"type":"boolean","description":"Determines whether to enable parameters validation of request content-type. Default: true\n"},"parameterSchemas":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestValidatorConfigParameterSchema:GatewayPluginRequestValidatorConfigParameterSchema"},"description":"Array of parameter validator specification. One of \u003cspan pulumi-lang-nodejs=\"`bodySchema`\" pulumi-lang-dotnet=\"`BodySchema`\" pulumi-lang-go=\"`bodySchema`\" pulumi-lang-python=\"`body_schema`\" pulumi-lang-yaml=\"`bodySchema`\" pulumi-lang-java=\"`bodySchema`\"\u003e`body_schema`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`parameterSchema`\" pulumi-lang-dotnet=\"`ParameterSchema`\" pulumi-lang-go=\"`parameterSchema`\" pulumi-lang-python=\"`parameter_schema`\" pulumi-lang-yaml=\"`parameterSchema`\" pulumi-lang-java=\"`parameterSchema`\"\u003e`parameter_schema`\u003c/span\u003e must be specified.\n"},"verboseResponse":{"type":"boolean","description":"If enabled, the plugin returns more verbose and detailed validation errors. Default: false\n"},"version":{"type":"string","description":"Which validator to use. Supported values are \u003cspan pulumi-lang-nodejs=\"`kong`\" pulumi-lang-dotnet=\"`Kong`\" pulumi-lang-go=\"`kong`\" pulumi-lang-python=\"`kong`\" pulumi-lang-yaml=\"`kong`\" pulumi-lang-java=\"`kong`\"\u003e`kong`\u003c/span\u003e (default) for using Kong's own schema validator, or \u003cspan pulumi-lang-nodejs=\"`draft4`\" pulumi-lang-dotnet=\"`Draft4`\" pulumi-lang-go=\"`draft4`\" pulumi-lang-python=\"`draft4`\" pulumi-lang-yaml=\"`draft4`\" pulumi-lang-java=\"`draft4`\"\u003e`draft4`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`draft7`\" pulumi-lang-dotnet=\"`Draft7`\" pulumi-lang-go=\"`draft7`\" pulumi-lang-python=\"`draft7`\" pulumi-lang-yaml=\"`draft7`\" pulumi-lang-java=\"`draft7`\"\u003e`draft7`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`draft201909`\" pulumi-lang-dotnet=\"`Draft201909`\" pulumi-lang-go=\"`draft201909`\" pulumi-lang-python=\"`draft201909`\" pulumi-lang-yaml=\"`draft201909`\" pulumi-lang-java=\"`draft201909`\"\u003e`draft201909`\u003c/span\u003e, and \u003cspan pulumi-lang-nodejs=\"`draft202012`\" pulumi-lang-dotnet=\"`Draft202012`\" pulumi-lang-go=\"`draft202012`\" pulumi-lang-python=\"`draft202012`\" pulumi-lang-yaml=\"`draft202012`\" pulumi-lang-java=\"`draft202012`\"\u003e`draft202012`\u003c/span\u003e for using their respective JSON Schema Draft compliant validators. Default: \"kong\"; must be one of [\"draft201909\", \"draft202012\", \"draft4\", \"draft6\", \"draft7\", \"kong\"]\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["allowedContentTypes","contentTypeParameterValidation","verboseResponse","version"]}}},"konnect:index/GatewayPluginRequestValidatorConfigParameterSchema:GatewayPluginRequestValidatorConfigParameterSchema":{"properties":{"explode":{"type":"boolean","description":"Required when \u003cspan pulumi-lang-nodejs=\"`schema`\" pulumi-lang-dotnet=\"`Schema`\" pulumi-lang-go=\"`schema`\" pulumi-lang-python=\"`schema`\" pulumi-lang-yaml=\"`schema`\" pulumi-lang-java=\"`schema`\"\u003e`schema`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`style`\" pulumi-lang-dotnet=\"`Style`\" pulumi-lang-go=\"`style`\" pulumi-lang-python=\"`style`\" pulumi-lang-yaml=\"`style`\" pulumi-lang-java=\"`style`\"\u003e`style`\u003c/span\u003e are set. When \u003cspan pulumi-lang-nodejs=\"`explode`\" pulumi-lang-dotnet=\"`Explode`\" pulumi-lang-go=\"`explode`\" pulumi-lang-python=\"`explode`\" pulumi-lang-yaml=\"`explode`\" pulumi-lang-java=\"`explode`\"\u003e`explode`\u003c/span\u003e is \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, parameter values of type \u003cspan pulumi-lang-nodejs=\"`array`\" pulumi-lang-dotnet=\"`Array`\" pulumi-lang-go=\"`array`\" pulumi-lang-python=\"`array`\" pulumi-lang-yaml=\"`array`\" pulumi-lang-java=\"`array`\"\u003e`array`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`object`\" pulumi-lang-dotnet=\"`Object`\" pulumi-lang-go=\"`object`\" pulumi-lang-python=\"`object`\" pulumi-lang-yaml=\"`object`\" pulumi-lang-java=\"`object`\"\u003e`object`\u003c/span\u003e generate separate parameters for each value of the array or key-value pair of the map. For other types of parameters, this property has no effect.\n"},"in":{"type":"string","description":"The location of the parameter. Not Null; must be one of [\"header\", \"path\", \"query\"]\n"},"name":{"type":"string","description":"The name of the parameter. Parameter names are case-sensitive, and correspond to the parameter name used by the \u003cspan pulumi-lang-nodejs=\"`in`\" pulumi-lang-dotnet=\"`In`\" pulumi-lang-go=\"`in`\" pulumi-lang-python=\"`in`\" pulumi-lang-yaml=\"`in`\" pulumi-lang-java=\"`in`\"\u003e`in`\u003c/span\u003e property. If \u003cspan pulumi-lang-nodejs=\"`in`\" pulumi-lang-dotnet=\"`In`\" pulumi-lang-go=\"`in`\" pulumi-lang-python=\"`in`\" pulumi-lang-yaml=\"`in`\" pulumi-lang-java=\"`in`\"\u003e`in`\u003c/span\u003e is \u003cspan pulumi-lang-nodejs=\"`path`\" pulumi-lang-dotnet=\"`Path`\" pulumi-lang-go=\"`path`\" pulumi-lang-python=\"`path`\" pulumi-lang-yaml=\"`path`\" pulumi-lang-java=\"`path`\"\u003e`path`\u003c/span\u003e, the \u003cspan pulumi-lang-nodejs=\"`name`\" pulumi-lang-dotnet=\"`Name`\" pulumi-lang-go=\"`name`\" pulumi-lang-python=\"`name`\" pulumi-lang-yaml=\"`name`\" pulumi-lang-java=\"`name`\"\u003e`name`\u003c/span\u003e field MUST correspond to the named capture group from the configured \u003cspan pulumi-lang-nodejs=\"`route`\" pulumi-lang-dotnet=\"`Route`\" pulumi-lang-go=\"`route`\" pulumi-lang-python=\"`route`\" pulumi-lang-yaml=\"`route`\" pulumi-lang-java=\"`route`\"\u003e`route`\u003c/span\u003e. Not Null\n"},"required":{"type":"boolean","description":"Determines whether this parameter is mandatory. Not Null\n"},"schema":{"type":"string","description":"Required when \u003cspan pulumi-lang-nodejs=\"`style`\" pulumi-lang-dotnet=\"`Style`\" pulumi-lang-go=\"`style`\" pulumi-lang-python=\"`style`\" pulumi-lang-yaml=\"`style`\" pulumi-lang-java=\"`style`\"\u003e`style`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`explode`\" pulumi-lang-dotnet=\"`Explode`\" pulumi-lang-go=\"`explode`\" pulumi-lang-python=\"`explode`\" pulumi-lang-yaml=\"`explode`\" pulumi-lang-java=\"`explode`\"\u003e`explode`\u003c/span\u003e are set. This is the schema defining the type used for the parameter. It is validated using \u003cspan pulumi-lang-nodejs=\"`draft4`\" pulumi-lang-dotnet=\"`Draft4`\" pulumi-lang-go=\"`draft4`\" pulumi-lang-python=\"`draft4`\" pulumi-lang-yaml=\"`draft4`\" pulumi-lang-java=\"`draft4`\"\u003e`draft4`\u003c/span\u003e for JSON Schema draft 4 compliant validator. In addition to being a valid JSON Schema, the parameter schema MUST have a top-level \u003cspan pulumi-lang-nodejs=\"`type`\" pulumi-lang-dotnet=\"`Type`\" pulumi-lang-go=\"`type`\" pulumi-lang-python=\"`type`\" pulumi-lang-yaml=\"`type`\" pulumi-lang-java=\"`type`\"\u003e`type`\u003c/span\u003e property to enable proper deserialization before validating.\n"},"style":{"type":"string","description":"Required when \u003cspan pulumi-lang-nodejs=\"`schema`\" pulumi-lang-dotnet=\"`Schema`\" pulumi-lang-go=\"`schema`\" pulumi-lang-python=\"`schema`\" pulumi-lang-yaml=\"`schema`\" pulumi-lang-java=\"`schema`\"\u003e`schema`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`explode`\" pulumi-lang-dotnet=\"`Explode`\" pulumi-lang-go=\"`explode`\" pulumi-lang-python=\"`explode`\" pulumi-lang-yaml=\"`explode`\" pulumi-lang-java=\"`explode`\"\u003e`explode`\u003c/span\u003e are set. Describes how the parameter value will be deserialized depending on the type of the parameter value. must be one of [\"deepObject\", \"form\", \"label\", \"matrix\", \"pipeDelimited\", \"simple\", \"spaceDelimited\"]\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["in","name","required","style"]}}},"konnect:index/GatewayPluginRequestValidatorConsumer:GatewayPluginRequestValidatorConsumer":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginRequestValidatorOrdering:GatewayPluginRequestValidatorOrdering":{"properties":{"after":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestValidatorOrderingAfter:GatewayPluginRequestValidatorOrderingAfter"},"before":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestValidatorOrderingBefore:GatewayPluginRequestValidatorOrderingBefore"}},"type":"object","language":{"nodejs":{"requiredOutputs":["after","before"]}}},"konnect:index/GatewayPluginRequestValidatorOrderingAfter:GatewayPluginRequestValidatorOrderingAfter":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginRequestValidatorOrderingBefore:GatewayPluginRequestValidatorOrderingBefore":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginRequestValidatorPartial:GatewayPluginRequestValidatorPartial":{"properties":{"id":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"name":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"path":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id","name","path"]}}},"konnect:index/GatewayPluginRequestValidatorRoute:GatewayPluginRequestValidatorRoute":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginRequestValidatorService:GatewayPluginRequestValidatorService":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginResponseRatelimitingConfig:GatewayPluginResponseRatelimitingConfig":{"properties":{"blockOnFirstViolation":{"type":"boolean","description":"A boolean value that determines if the requests should be blocked as soon as one limit is being exceeded. This will block requests that are supposed to consume other limits too. Default: false\n"},"faultTolerant":{"type":"boolean","description":"A boolean value that determines if the requests should be proxied even if Kong has troubles connecting a third-party datastore. If \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, requests will be proxied anyway, effectively disabling the rate-limiting function until the datastore is working again. If \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e, then the clients will see \u003cspan pulumi-lang-nodejs=\"`500`\" pulumi-lang-dotnet=\"`500`\" pulumi-lang-go=\"`500`\" pulumi-lang-python=\"`500`\" pulumi-lang-yaml=\"`500`\" pulumi-lang-java=\"`500`\"\u003e`500`\u003c/span\u003e errors. Default: true\n"},"headerName":{"type":"string","description":"The name of the response header used to increment the counters. Default: \"x-kong-limit\"\n"},"hideClientHeaders":{"type":"boolean","description":"Optionally hide informative response headers. Default: false\n"},"limitBy":{"type":"string","description":"The entity that will be used when aggregating the limits: \u003cspan pulumi-lang-nodejs=\"`consumer`\" pulumi-lang-dotnet=\"`Consumer`\" pulumi-lang-go=\"`consumer`\" pulumi-lang-python=\"`consumer`\" pulumi-lang-yaml=\"`consumer`\" pulumi-lang-java=\"`consumer`\"\u003e`consumer`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`credential`\" pulumi-lang-dotnet=\"`Credential`\" pulumi-lang-go=\"`credential`\" pulumi-lang-python=\"`credential`\" pulumi-lang-yaml=\"`credential`\" pulumi-lang-java=\"`credential`\"\u003e`credential`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`ip`\" pulumi-lang-dotnet=\"`Ip`\" pulumi-lang-go=\"`ip`\" pulumi-lang-python=\"`ip`\" pulumi-lang-yaml=\"`ip`\" pulumi-lang-java=\"`ip`\"\u003e`ip`\u003c/span\u003e. If the \u003cspan pulumi-lang-nodejs=\"`consumer`\" pulumi-lang-dotnet=\"`Consumer`\" pulumi-lang-go=\"`consumer`\" pulumi-lang-python=\"`consumer`\" pulumi-lang-yaml=\"`consumer`\" pulumi-lang-java=\"`consumer`\"\u003e`consumer`\u003c/span\u003e or the \u003cspan pulumi-lang-nodejs=\"`credential`\" pulumi-lang-dotnet=\"`Credential`\" pulumi-lang-go=\"`credential`\" pulumi-lang-python=\"`credential`\" pulumi-lang-yaml=\"`credential`\" pulumi-lang-java=\"`credential`\"\u003e`credential`\u003c/span\u003e cannot be determined, the system will always fallback to \u003cspan pulumi-lang-nodejs=\"`ip`\" pulumi-lang-dotnet=\"`Ip`\" pulumi-lang-go=\"`ip`\" pulumi-lang-python=\"`ip`\" pulumi-lang-yaml=\"`ip`\" pulumi-lang-java=\"`ip`\"\u003e`ip`\u003c/span\u003e. Default: \"consumer\"; must be one of [\"consumer\", \"credential\", \"ip\"]\n"},"limits":{"type":"object","additionalProperties":{"$ref":"#/types/konnect:index%2FGatewayPluginResponseRatelimitingConfigLimits:GatewayPluginResponseRatelimitingConfigLimits"},"description":"A map that defines rate limits for the plugin.\n"},"policy":{"type":"string","description":"The rate-limiting policies to use for retrieving and incrementing the limits. Default: \"local\"; must be one of [\"cluster\", \"local\", \"redis\"]\n"},"redis":{"$ref":"#/types/konnect:index%2FGatewayPluginResponseRatelimitingConfigRedis:GatewayPluginResponseRatelimitingConfigRedis","description":"Redis configuration\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["blockOnFirstViolation","faultTolerant","headerName","hideClientHeaders","limitBy","policy","redis"]}}},"konnect:index/GatewayPluginResponseRatelimitingConfigLimits:GatewayPluginResponseRatelimitingConfigLimits":{"properties":{"day":{"type":"number"},"hour":{"type":"number"},"minute":{"type":"number"},"month":{"type":"number"},"second":{"type":"number"},"year":{"type":"number"}},"type":"object"},"konnect:index/GatewayPluginResponseRatelimitingConfigRedis:GatewayPluginResponseRatelimitingConfigRedis":{"properties":{"cloudAuthentication":{"$ref":"#/types/konnect:index%2FGatewayPluginResponseRatelimitingConfigRedisCloudAuthentication:GatewayPluginResponseRatelimitingConfigRedisCloudAuthentication","description":"Cloud auth related configs for connecting to a Cloud Provider's Redis instance.\n"},"database":{"type":"number","description":"Database to use for the Redis connection when using the \u003cspan pulumi-lang-nodejs=\"`redis`\" pulumi-lang-dotnet=\"`Redis`\" pulumi-lang-go=\"`redis`\" pulumi-lang-python=\"`redis`\" pulumi-lang-yaml=\"`redis`\" pulumi-lang-java=\"`redis`\"\u003e`redis`\u003c/span\u003e strategy. Default: 0\n"},"host":{"type":"string","description":"A string representing a host name, such as example.com.\n"},"password":{"type":"string","description":"Password to use for Redis connections. If undefined, no AUTH commands are sent to Redis.\n"},"port":{"type":"number","description":"An integer representing a port number between 0 and 65535, inclusive. Default: 6379\n"},"serverName":{"type":"string","description":"A string representing an SNI (server name indication) value for TLS.\n"},"ssl":{"type":"boolean","description":"If set to true, uses SSL to connect to Redis. Default: false\n"},"sslVerify":{"type":"boolean","description":"If set to true, verifies the validity of the server SSL certificate. If setting this parameter, also configure \u003cspan pulumi-lang-nodejs=\"`luaSslTrustedCertificate`\" pulumi-lang-dotnet=\"`LuaSslTrustedCertificate`\" pulumi-lang-go=\"`luaSslTrustedCertificate`\" pulumi-lang-python=\"`lua_ssl_trusted_certificate`\" pulumi-lang-yaml=\"`luaSslTrustedCertificate`\" pulumi-lang-java=\"`luaSslTrustedCertificate`\"\u003e`lua_ssl_trusted_certificate`\u003c/span\u003e in `kong.conf` to specify the CA (or server) certificate used by your Redis server. You may also need to configure \u003cspan pulumi-lang-nodejs=\"`luaSslVerifyDepth`\" pulumi-lang-dotnet=\"`LuaSslVerifyDepth`\" pulumi-lang-go=\"`luaSslVerifyDepth`\" pulumi-lang-python=\"`lua_ssl_verify_depth`\" pulumi-lang-yaml=\"`luaSslVerifyDepth`\" pulumi-lang-java=\"`luaSslVerifyDepth`\"\u003e`lua_ssl_verify_depth`\u003c/span\u003e accordingly. Default: false\n"},"timeout":{"type":"number","description":"An integer representing a timeout in milliseconds. Must be between 0 and 2^31-2. Default: 2000\n"},"username":{"type":"string","description":"Username to use for Redis connections. If undefined, ACL authentication won't be performed. This requires Redis v6.0.0+. To be compatible with Redis v5.x.y, you can set it to \u003cspan pulumi-lang-nodejs=\"`default`\" pulumi-lang-dotnet=\"`Default`\" pulumi-lang-go=\"`default`\" pulumi-lang-python=\"`default`\" pulumi-lang-yaml=\"`default`\" pulumi-lang-java=\"`default`\"\u003e`default`\u003c/span\u003e.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["cloudAuthentication","database","port","ssl","sslVerify","timeout"]}}},"konnect:index/GatewayPluginResponseRatelimitingConfigRedisCloudAuthentication:GatewayPluginResponseRatelimitingConfigRedisCloudAuthentication":{"properties":{"authProvider":{"type":"string","description":"Auth providers to be used to authenticate to a Cloud Provider's Redis instance. must be one of [\"aws\", \"azure\", \"gcp\"]\n"},"awsAccessKeyId":{"type":"string","description":"AWS Access Key ID to be used for authentication when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e.\n"},"awsAssumeRoleArn":{"type":"string","description":"The ARN of the IAM role to assume for generating ElastiCache IAM authentication tokens.\n"},"awsCacheName":{"type":"string","description":"The name of the AWS Elasticache cluster when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e.\n"},"awsIsServerless":{"type":"boolean","description":"This flag specifies whether the cluster is serverless when\u003cspan pulumi-lang-nodejs=\" authProvider \" pulumi-lang-dotnet=\" AuthProvider \" pulumi-lang-go=\" authProvider \" pulumi-lang-python=\" auth_provider \" pulumi-lang-yaml=\" authProvider \" pulumi-lang-java=\" authProvider \"\u003e auth_provider \u003c/span\u003eis set to \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e. Default: true\n"},"awsRegion":{"type":"string","description":"The region of the AWS ElastiCache cluster when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e.\n"},"awsRoleSessionName":{"type":"string","description":"The session name for the temporary credentials when assuming the IAM role.\n"},"awsSecretAccessKey":{"type":"string","description":"AWS Secret Access Key to be used for authentication when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e.\n"},"azureClientId":{"type":"string","description":"Azure Client ID to be used for authentication when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`azure`\" pulumi-lang-dotnet=\"`Azure`\" pulumi-lang-go=\"`azure`\" pulumi-lang-python=\"`azure`\" pulumi-lang-yaml=\"`azure`\" pulumi-lang-java=\"`azure`\"\u003e`azure`\u003c/span\u003e.\n"},"azureClientSecret":{"type":"string","description":"Azure Client Secret to be used for authentication when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`azure`\" pulumi-lang-dotnet=\"`Azure`\" pulumi-lang-go=\"`azure`\" pulumi-lang-python=\"`azure`\" pulumi-lang-yaml=\"`azure`\" pulumi-lang-java=\"`azure`\"\u003e`azure`\u003c/span\u003e.\n"},"azureTenantId":{"type":"string","description":"Azure Tenant ID to be used for authentication when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`azure`\" pulumi-lang-dotnet=\"`Azure`\" pulumi-lang-go=\"`azure`\" pulumi-lang-python=\"`azure`\" pulumi-lang-yaml=\"`azure`\" pulumi-lang-java=\"`azure`\"\u003e`azure`\u003c/span\u003e.\n"},"gcpServiceAccountJson":{"type":"string","description":"GCP Service Account JSON to be used for authentication when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`gcp`\" pulumi-lang-dotnet=\"`Gcp`\" pulumi-lang-go=\"`gcp`\" pulumi-lang-python=\"`gcp`\" pulumi-lang-yaml=\"`gcp`\" pulumi-lang-java=\"`gcp`\"\u003e`gcp`\u003c/span\u003e.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["authProvider","awsIsServerless"]}}},"konnect:index/GatewayPluginResponseRatelimitingConsumer:GatewayPluginResponseRatelimitingConsumer":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginResponseRatelimitingOrdering:GatewayPluginResponseRatelimitingOrdering":{"properties":{"after":{"$ref":"#/types/konnect:index%2FGatewayPluginResponseRatelimitingOrderingAfter:GatewayPluginResponseRatelimitingOrderingAfter"},"before":{"$ref":"#/types/konnect:index%2FGatewayPluginResponseRatelimitingOrderingBefore:GatewayPluginResponseRatelimitingOrderingBefore"}},"type":"object","language":{"nodejs":{"requiredOutputs":["after","before"]}}},"konnect:index/GatewayPluginResponseRatelimitingOrderingAfter:GatewayPluginResponseRatelimitingOrderingAfter":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginResponseRatelimitingOrderingBefore:GatewayPluginResponseRatelimitingOrderingBefore":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginResponseRatelimitingPartial:GatewayPluginResponseRatelimitingPartial":{"properties":{"id":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"name":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"path":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id","name","path"]}}},"konnect:index/GatewayPluginResponseRatelimitingRoute:GatewayPluginResponseRatelimitingRoute":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginResponseRatelimitingService:GatewayPluginResponseRatelimitingService":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginResponseTransformerAdvancedConfig:GatewayPluginResponseTransformerAdvancedConfig":{"properties":{"add":{"$ref":"#/types/konnect:index%2FGatewayPluginResponseTransformerAdvancedConfigAdd:GatewayPluginResponseTransformerAdvancedConfigAdd"},"allow":{"$ref":"#/types/konnect:index%2FGatewayPluginResponseTransformerAdvancedConfigAllow:GatewayPluginResponseTransformerAdvancedConfigAllow"},"append":{"$ref":"#/types/konnect:index%2FGatewayPluginResponseTransformerAdvancedConfigAppend:GatewayPluginResponseTransformerAdvancedConfigAppend"},"dotsInKeys":{"type":"boolean","description":"Whether dots (for example, `customers.info.phone`) should be treated as part of a property name or used to descend into nested JSON objects.. Default: true\n"},"remove":{"$ref":"#/types/konnect:index%2FGatewayPluginResponseTransformerAdvancedConfigRemove:GatewayPluginResponseTransformerAdvancedConfigRemove"},"rename":{"$ref":"#/types/konnect:index%2FGatewayPluginResponseTransformerAdvancedConfigRename:GatewayPluginResponseTransformerAdvancedConfigRename"},"replace":{"$ref":"#/types/konnect:index%2FGatewayPluginResponseTransformerAdvancedConfigReplace:GatewayPluginResponseTransformerAdvancedConfigReplace"},"transform":{"$ref":"#/types/konnect:index%2FGatewayPluginResponseTransformerAdvancedConfigTransform:GatewayPluginResponseTransformerAdvancedConfigTransform"}},"type":"object","language":{"nodejs":{"requiredOutputs":["add","allow","append","dotsInKeys","remove","rename","replace","transform"]}}},"konnect:index/GatewayPluginResponseTransformerAdvancedConfigAdd:GatewayPluginResponseTransformerAdvancedConfigAdd":{"properties":{"headers":{"type":"array","items":{"type":"string"},"description":"Default: []\n"},"ifStatuses":{"type":"array","items":{"type":"string"},"description":"Default: []\n"},"jsonTypes":{"type":"array","items":{"type":"string"},"description":"Default: []\n"},"jsons":{"type":"array","items":{"type":"string"},"description":"Default: []\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["headers","ifStatuses","jsonTypes","jsons"]}}},"konnect:index/GatewayPluginResponseTransformerAdvancedConfigAllow:GatewayPluginResponseTransformerAdvancedConfigAllow":{"properties":{"jsons":{"type":"array","items":{"type":"string"}}},"type":"object"},"konnect:index/GatewayPluginResponseTransformerAdvancedConfigAppend:GatewayPluginResponseTransformerAdvancedConfigAppend":{"properties":{"headers":{"type":"array","items":{"type":"string"},"description":"Default: []\n"},"ifStatuses":{"type":"array","items":{"type":"string"},"description":"Default: []\n"},"jsonTypes":{"type":"array","items":{"type":"string"},"description":"Default: []\n"},"jsons":{"type":"array","items":{"type":"string"},"description":"Default: []\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["headers","ifStatuses","jsonTypes","jsons"]}}},"konnect:index/GatewayPluginResponseTransformerAdvancedConfigRemove:GatewayPluginResponseTransformerAdvancedConfigRemove":{"properties":{"headers":{"type":"array","items":{"type":"string"},"description":"Default: []\n"},"ifStatuses":{"type":"array","items":{"type":"string"},"description":"Default: []\n"},"jsons":{"type":"array","items":{"type":"string"},"description":"Default: []\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["headers","ifStatuses","jsons"]}}},"konnect:index/GatewayPluginResponseTransformerAdvancedConfigRename:GatewayPluginResponseTransformerAdvancedConfigRename":{"properties":{"headers":{"type":"array","items":{"type":"string"},"description":"Default: []\n"},"ifStatuses":{"type":"array","items":{"type":"string"},"description":"Default: []\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["headers","ifStatuses"]}}},"konnect:index/GatewayPluginResponseTransformerAdvancedConfigReplace:GatewayPluginResponseTransformerAdvancedConfigReplace":{"properties":{"body":{"type":"string","description":"String with which to replace the entire response body.\n"},"headers":{"type":"array","items":{"type":"string"},"description":"Default: []\n"},"ifStatuses":{"type":"array","items":{"type":"string"},"description":"Default: []\n"},"jsonTypes":{"type":"array","items":{"type":"string"},"description":"Default: []\n"},"jsons":{"type":"array","items":{"type":"string"},"description":"Default: []\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["headers","ifStatuses","jsonTypes","jsons"]}}},"konnect:index/GatewayPluginResponseTransformerAdvancedConfigTransform:GatewayPluginResponseTransformerAdvancedConfigTransform":{"properties":{"functions":{"type":"array","items":{"type":"string"},"description":"Default: []\n"},"ifStatuses":{"type":"array","items":{"type":"string"},"description":"Default: []\n"},"jsons":{"type":"array","items":{"type":"string"},"description":"Default: []\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["functions","ifStatuses","jsons"]}}},"konnect:index/GatewayPluginResponseTransformerAdvancedConsumer:GatewayPluginResponseTransformerAdvancedConsumer":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginResponseTransformerAdvancedConsumerGroup:GatewayPluginResponseTransformerAdvancedConsumerGroup":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginResponseTransformerAdvancedOrdering:GatewayPluginResponseTransformerAdvancedOrdering":{"properties":{"after":{"$ref":"#/types/konnect:index%2FGatewayPluginResponseTransformerAdvancedOrderingAfter:GatewayPluginResponseTransformerAdvancedOrderingAfter"},"before":{"$ref":"#/types/konnect:index%2FGatewayPluginResponseTransformerAdvancedOrderingBefore:GatewayPluginResponseTransformerAdvancedOrderingBefore"}},"type":"object","language":{"nodejs":{"requiredOutputs":["after","before"]}}},"konnect:index/GatewayPluginResponseTransformerAdvancedOrderingAfter:GatewayPluginResponseTransformerAdvancedOrderingAfter":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginResponseTransformerAdvancedOrderingBefore:GatewayPluginResponseTransformerAdvancedOrderingBefore":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginResponseTransformerAdvancedPartial:GatewayPluginResponseTransformerAdvancedPartial":{"properties":{"id":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"name":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"path":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id","name","path"]}}},"konnect:index/GatewayPluginResponseTransformerAdvancedRoute:GatewayPluginResponseTransformerAdvancedRoute":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginResponseTransformerAdvancedService:GatewayPluginResponseTransformerAdvancedService":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginResponseTransformerConfig:GatewayPluginResponseTransformerConfig":{"properties":{"add":{"$ref":"#/types/konnect:index%2FGatewayPluginResponseTransformerConfigAdd:GatewayPluginResponseTransformerConfigAdd"},"append":{"$ref":"#/types/konnect:index%2FGatewayPluginResponseTransformerConfigAppend:GatewayPluginResponseTransformerConfigAppend"},"remove":{"$ref":"#/types/konnect:index%2FGatewayPluginResponseTransformerConfigRemove:GatewayPluginResponseTransformerConfigRemove"},"rename":{"$ref":"#/types/konnect:index%2FGatewayPluginResponseTransformerConfigRename:GatewayPluginResponseTransformerConfigRename"},"replace":{"$ref":"#/types/konnect:index%2FGatewayPluginResponseTransformerConfigReplace:GatewayPluginResponseTransformerConfigReplace"}},"type":"object","language":{"nodejs":{"requiredOutputs":["add","append","remove","rename","replace"]}}},"konnect:index/GatewayPluginResponseTransformerConfigAdd:GatewayPluginResponseTransformerConfigAdd":{"properties":{"headers":{"type":"array","items":{"type":"string"},"description":"Default: []\n"},"jsonTypes":{"type":"array","items":{"type":"string"},"description":"List of JSON type names. Specify the types of the JSON values returned when appending\nJSON properties. Each string element can be one of: boolean, number, or string.\nDefault: []\n"},"jsons":{"type":"array","items":{"type":"string"},"description":"Default: []\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["headers","jsonTypes","jsons"]}}},"konnect:index/GatewayPluginResponseTransformerConfigAppend:GatewayPluginResponseTransformerConfigAppend":{"properties":{"headers":{"type":"array","items":{"type":"string"},"description":"Default: []\n"},"jsonTypes":{"type":"array","items":{"type":"string"},"description":"List of JSON type names. Specify the types of the JSON values returned when appending\nJSON properties. Each string element can be one of: boolean, number, or string.\nDefault: []\n"},"jsons":{"type":"array","items":{"type":"string"},"description":"Default: []\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["headers","jsonTypes","jsons"]}}},"konnect:index/GatewayPluginResponseTransformerConfigRemove:GatewayPluginResponseTransformerConfigRemove":{"properties":{"headers":{"type":"array","items":{"type":"string"},"description":"Default: []\n"},"jsons":{"type":"array","items":{"type":"string"},"description":"Default: []\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["headers","jsons"]}}},"konnect:index/GatewayPluginResponseTransformerConfigRename:GatewayPluginResponseTransformerConfigRename":{"properties":{"headers":{"type":"array","items":{"type":"string"},"description":"Default: []\n"},"jsons":{"type":"array","items":{"type":"string"},"description":"Default: []\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["headers","jsons"]}}},"konnect:index/GatewayPluginResponseTransformerConfigReplace:GatewayPluginResponseTransformerConfigReplace":{"properties":{"headers":{"type":"array","items":{"type":"string"},"description":"Default: []\n"},"jsonTypes":{"type":"array","items":{"type":"string"},"description":"List of JSON type names. Specify the types of the JSON values returned when appending\nJSON properties. Each string element can be one of: boolean, number, or string.\nDefault: []\n"},"jsons":{"type":"array","items":{"type":"string"},"description":"Default: []\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["headers","jsonTypes","jsons"]}}},"konnect:index/GatewayPluginResponseTransformerConsumer:GatewayPluginResponseTransformerConsumer":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginResponseTransformerConsumerGroup:GatewayPluginResponseTransformerConsumerGroup":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginResponseTransformerOrdering:GatewayPluginResponseTransformerOrdering":{"properties":{"after":{"$ref":"#/types/konnect:index%2FGatewayPluginResponseTransformerOrderingAfter:GatewayPluginResponseTransformerOrderingAfter"},"before":{"$ref":"#/types/konnect:index%2FGatewayPluginResponseTransformerOrderingBefore:GatewayPluginResponseTransformerOrderingBefore"}},"type":"object","language":{"nodejs":{"requiredOutputs":["after","before"]}}},"konnect:index/GatewayPluginResponseTransformerOrderingAfter:GatewayPluginResponseTransformerOrderingAfter":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginResponseTransformerOrderingBefore:GatewayPluginResponseTransformerOrderingBefore":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginResponseTransformerPartial:GatewayPluginResponseTransformerPartial":{"properties":{"id":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"name":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"path":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id","name","path"]}}},"konnect:index/GatewayPluginResponseTransformerRoute:GatewayPluginResponseTransformerRoute":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginResponseTransformerService:GatewayPluginResponseTransformerService":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginRouteByHeaderConfig:GatewayPluginRouteByHeaderConfig":{"properties":{"rules":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginRouteByHeaderConfigRule:GatewayPluginRouteByHeaderConfigRule"},"description":"Route by header rules.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["rules"]}}},"konnect:index/GatewayPluginRouteByHeaderConfigRule:GatewayPluginRouteByHeaderConfigRule":{"properties":{"condition":{"type":"object","additionalProperties":{"type":"string"}},"upstreamName":{"type":"string","description":"Not Null\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["upstreamName"]}}},"konnect:index/GatewayPluginRouteByHeaderConsumer:GatewayPluginRouteByHeaderConsumer":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginRouteByHeaderOrdering:GatewayPluginRouteByHeaderOrdering":{"properties":{"after":{"$ref":"#/types/konnect:index%2FGatewayPluginRouteByHeaderOrderingAfter:GatewayPluginRouteByHeaderOrderingAfter"},"before":{"$ref":"#/types/konnect:index%2FGatewayPluginRouteByHeaderOrderingBefore:GatewayPluginRouteByHeaderOrderingBefore"}},"type":"object","language":{"nodejs":{"requiredOutputs":["after","before"]}}},"konnect:index/GatewayPluginRouteByHeaderOrderingAfter:GatewayPluginRouteByHeaderOrderingAfter":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginRouteByHeaderOrderingBefore:GatewayPluginRouteByHeaderOrderingBefore":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginRouteByHeaderPartial:GatewayPluginRouteByHeaderPartial":{"properties":{"id":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"name":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"path":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id","name","path"]}}},"konnect:index/GatewayPluginRouteByHeaderRoute:GatewayPluginRouteByHeaderRoute":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginRouteByHeaderService:GatewayPluginRouteByHeaderService":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginRouteTransformerAdvancedConfig:GatewayPluginRouteTransformerAdvancedConfig":{"properties":{"escapePath":{"type":"boolean","description":"Default: false\n"},"host":{"type":"string"},"path":{"type":"string"},"port":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["escapePath"]}}},"konnect:index/GatewayPluginRouteTransformerAdvancedConsumer:GatewayPluginRouteTransformerAdvancedConsumer":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginRouteTransformerAdvancedOrdering:GatewayPluginRouteTransformerAdvancedOrdering":{"properties":{"after":{"$ref":"#/types/konnect:index%2FGatewayPluginRouteTransformerAdvancedOrderingAfter:GatewayPluginRouteTransformerAdvancedOrderingAfter"},"before":{"$ref":"#/types/konnect:index%2FGatewayPluginRouteTransformerAdvancedOrderingBefore:GatewayPluginRouteTransformerAdvancedOrderingBefore"}},"type":"object","language":{"nodejs":{"requiredOutputs":["after","before"]}}},"konnect:index/GatewayPluginRouteTransformerAdvancedOrderingAfter:GatewayPluginRouteTransformerAdvancedOrderingAfter":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginRouteTransformerAdvancedOrderingBefore:GatewayPluginRouteTransformerAdvancedOrderingBefore":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginRouteTransformerAdvancedPartial:GatewayPluginRouteTransformerAdvancedPartial":{"properties":{"id":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"name":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"path":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id","name","path"]}}},"konnect:index/GatewayPluginRouteTransformerAdvancedRoute:GatewayPluginRouteTransformerAdvancedRoute":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginRouteTransformerAdvancedService:GatewayPluginRouteTransformerAdvancedService":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginSamlConfig:GatewayPluginSamlConfig":{"properties":{"anonymous":{"type":"string","description":"An optional string (consumer UUID or username) value to use as an “anonymous” consumer. If not set, a Kong Consumer must exist for the SAML IdP user credentials, mapping the username format to the Kong Consumer username.\n"},"assertionConsumerPath":{"type":"string","description":"A string representing a URL path, such as /path/to/resource. Must start with a forward slash (/) and must not contain empty segments (i.e., two consecutive forward slashes).\n"},"idpCertificate":{"type":"string","description":"The public certificate provided by the IdP. This is used to validate responses from the IdP.  Only include the contents of the certificate. Do not include the header (`BEGIN CERTIFICATE`) and footer (`END CERTIFICATE`) lines.\n"},"idpSsoUrl":{"type":"string","description":"A string representing a URL, such as https://example.com/path/to/resource?q=search.\n"},"issuer":{"type":"string","description":"The unique identifier of the IdP application. Formatted as a URL containing information about the IdP so the SP can validate that the SAML assertions it receives are issued from the correct IdP.\n"},"nameidFormat":{"type":"string","description":"The requested `NameId` format. Options available are: - `Unspecified` - `EmailAddress` - `Persistent` - `Transient`. Default: \"EmailAddress\"; must be one of [\"EmailAddress\", \"Persistent\", \"Transient\", \"Unspecified\"]\n"},"redis":{"$ref":"#/types/konnect:index%2FGatewayPluginSamlConfigRedis:GatewayPluginSamlConfigRedis"},"requestDigestAlgorithm":{"type":"string","description":"The digest algorithm for Authn requests: - `SHA256` - `SHA1`. Default: \"SHA256\"; must be one of [\"SHA1\", \"SHA256\"]\n"},"requestSignatureAlgorithm":{"type":"string","description":"The signature algorithm for signing Authn requests. Options available are: - `SHA256` - `SHA384` - `SHA512`. Default: \"SHA256\"; must be one of [\"SHA256\", \"SHA384\", \"SHA512\"]\n"},"requestSigningCertificate":{"type":"string","description":"The certificate for signing requests.\n"},"requestSigningKey":{"type":"string","description":"The private key for signing requests.  If this parameter is set, requests sent to the IdP are signed.  The \u003cspan pulumi-lang-nodejs=\"`requestSigningCertificate`\" pulumi-lang-dotnet=\"`RequestSigningCertificate`\" pulumi-lang-go=\"`requestSigningCertificate`\" pulumi-lang-python=\"`request_signing_certificate`\" pulumi-lang-yaml=\"`requestSigningCertificate`\" pulumi-lang-java=\"`requestSigningCertificate`\"\u003e`request_signing_certificate`\u003c/span\u003e parameter must be set as well.\n"},"responseDigestAlgorithm":{"type":"string","description":"The algorithm for verifying digest in SAML responses: - `SHA256` - `SHA1`. Default: \"SHA256\"; must be one of [\"SHA1\", \"SHA256\"]\n"},"responseEncryptionKey":{"type":"string","description":"The private encryption key required to decrypt encrypted assertions.\n"},"responseSignatureAlgorithm":{"type":"string","description":"The algorithm for validating signatures in SAML responses. Options available are: - `SHA256` - `SHA384` - `SHA512`. Default: \"SHA256\"; must be one of [\"SHA256\", \"SHA384\", \"SHA512\"]\n"},"sessionAbsoluteTimeout":{"type":"number","description":"The session cookie absolute timeout in seconds. Specifies how long the session can be used until it is no longer valid. Default: 86400\n"},"sessionAudience":{"type":"string","description":"The session audience, for example \"my-application\". Default: \"default\"\n"},"sessionCookieDomain":{"type":"string","description":"The session cookie domain flag.\n"},"sessionCookieHttpOnly":{"type":"boolean","description":"Forbids JavaScript from accessing the cookie, for example, through the `Document.cookie` property. Default: true\n"},"sessionCookieName":{"type":"string","description":"The session cookie name. Default: \"session\"\n"},"sessionCookiePath":{"type":"string","description":"A string representing a URL path, such as /path/to/resource. Must start with a forward slash (/) and must not contain empty segments (i.e., two consecutive forward slashes). Default: \"/\"\n"},"sessionCookieSameSite":{"type":"string","description":"Controls whether a cookie is sent with cross-origin requests, providing some protection against cross-site request forgery attacks. Default: \"Lax\"; must be one of [\"Default\", \"Lax\", \"None\", \"Strict\"]\n"},"sessionCookieSecure":{"type":"boolean","description":"The cookie is only sent to the server when a request is made with the https:scheme (except on localhost), and therefore is more resistant to man-in-the-middle attacks.\n"},"sessionEnforceSameSubject":{"type":"boolean","description":"When set to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, audiences are forced to share the same subject. Default: false\n"},"sessionHashStorageKey":{"type":"boolean","description":"When set to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, the storage key (session ID) is hashed for extra security. Hashing the storage key means it is impossible to decrypt data from the storage without a cookie. Default: false\n"},"sessionHashSubject":{"type":"boolean","description":"When set to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, the value of subject is hashed before being stored. Only applies when \u003cspan pulumi-lang-nodejs=\"`sessionStoreMetadata`\" pulumi-lang-dotnet=\"`SessionStoreMetadata`\" pulumi-lang-go=\"`sessionStoreMetadata`\" pulumi-lang-python=\"`session_store_metadata`\" pulumi-lang-yaml=\"`sessionStoreMetadata`\" pulumi-lang-java=\"`sessionStoreMetadata`\"\u003e`session_store_metadata`\u003c/span\u003e is enabled. Default: false\n"},"sessionIdlingTimeout":{"type":"number","description":"The session cookie idle time in seconds. Default: 900\n"},"sessionMemcachedHost":{"type":"string","description":"The memcached host. Default: \"127.0.0.1\"\n"},"sessionMemcachedPort":{"type":"number","description":"An integer representing a port number between 0 and 65535, inclusive. Default: 11211\n"},"sessionMemcachedPrefix":{"type":"string","description":"The memcached session key prefix.\n"},"sessionMemcachedSocket":{"type":"string","description":"The memcached unix socket path.\n"},"sessionRemember":{"type":"boolean","description":"Enables or disables persistent sessions. Default: false\n"},"sessionRememberAbsoluteTimeout":{"type":"number","description":"Persistent session absolute timeout in seconds. Default: 2592000\n"},"sessionRememberCookieName":{"type":"string","description":"Persistent session cookie name. Default: \"remember\"\n"},"sessionRememberRollingTimeout":{"type":"number","description":"Persistent session rolling timeout in seconds. Default: 604800\n"},"sessionRequestHeaders":{"type":"array","items":{"type":"string"}},"sessionResponseHeaders":{"type":"array","items":{"type":"string"}},"sessionRollingTimeout":{"type":"number","description":"The session cookie absolute timeout in seconds. Specifies how long the session can be used until it is no longer valid. Default: 3600\n"},"sessionSecret":{"type":"string","description":"The session secret. This must be a random string of 32 characters from the base64 alphabet (letters, numbers, `/`, `_` and `+`). It is used as the secret key for encrypting session data as well as state information that is sent to the IdP in the authentication exchange.\n"},"sessionStorage":{"type":"string","description":"The session storage for session data: - \u003cspan pulumi-lang-nodejs=\"`cookie`\" pulumi-lang-dotnet=\"`Cookie`\" pulumi-lang-go=\"`cookie`\" pulumi-lang-python=\"`cookie`\" pulumi-lang-yaml=\"`cookie`\" pulumi-lang-java=\"`cookie`\"\u003e`cookie`\u003c/span\u003e: stores session data with the session cookie. The session cannot be invalidated or revoked without changing the session secret, but is stateless, and doesn't require a database. - \u003cspan pulumi-lang-nodejs=\"`memcached`\" pulumi-lang-dotnet=\"`Memcached`\" pulumi-lang-go=\"`memcached`\" pulumi-lang-python=\"`memcached`\" pulumi-lang-yaml=\"`memcached`\" pulumi-lang-java=\"`memcached`\"\u003e`memcached`\u003c/span\u003e: stores session data in memcached - \u003cspan pulumi-lang-nodejs=\"`redis`\" pulumi-lang-dotnet=\"`Redis`\" pulumi-lang-go=\"`redis`\" pulumi-lang-python=\"`redis`\" pulumi-lang-yaml=\"`redis`\" pulumi-lang-java=\"`redis`\"\u003e`redis`\u003c/span\u003e: stores session data in Redis. Default: \"cookie\"; must be one of [\"cookie\", \"memcache\", \"memcached\", \"redis\"]\n"},"sessionStoreMetadata":{"type":"boolean","description":"Configures whether or not session metadata should be stored. This includes information about the active sessions for the \u003cspan pulumi-lang-nodejs=\"`specificAudience`\" pulumi-lang-dotnet=\"`SpecificAudience`\" pulumi-lang-go=\"`specificAudience`\" pulumi-lang-python=\"`specific_audience`\" pulumi-lang-yaml=\"`specificAudience`\" pulumi-lang-java=\"`specificAudience`\"\u003e`specific_audience`\u003c/span\u003e belonging to a specific subject. Default: false\n"},"validateAssertionSignature":{"type":"boolean","description":"Enable signature validation for SAML responses. Default: true\n"}},"type":"object","required":["assertionConsumerPath","idpSsoUrl","issuer","sessionSecret"],"language":{"nodejs":{"requiredOutputs":["assertionConsumerPath","idpSsoUrl","issuer","nameidFormat","redis","requestDigestAlgorithm","requestSignatureAlgorithm","responseDigestAlgorithm","responseSignatureAlgorithm","sessionAbsoluteTimeout","sessionAudience","sessionCookieHttpOnly","sessionCookieName","sessionCookiePath","sessionCookieSameSite","sessionEnforceSameSubject","sessionHashStorageKey","sessionHashSubject","sessionIdlingTimeout","sessionMemcachedHost","sessionMemcachedPort","sessionRemember","sessionRememberAbsoluteTimeout","sessionRememberCookieName","sessionRememberRollingTimeout","sessionRollingTimeout","sessionSecret","sessionStorage","sessionStoreMetadata","validateAssertionSignature"]}}},"konnect:index/GatewayPluginSamlConfigRedis:GatewayPluginSamlConfigRedis":{"properties":{"cloudAuthentication":{"$ref":"#/types/konnect:index%2FGatewayPluginSamlConfigRedisCloudAuthentication:GatewayPluginSamlConfigRedisCloudAuthentication","description":"Cloud auth related configs for connecting to a Cloud Provider's Redis instance.\n"},"clusterMaxRedirections":{"type":"number","description":"Maximum retry attempts for redirection. Default: 5\n"},"clusterNodes":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginSamlConfigRedisClusterNode:GatewayPluginSamlConfigRedisClusterNode"},"description":"Cluster addresses to use for Redis connections when the \u003cspan pulumi-lang-nodejs=\"`redis`\" pulumi-lang-dotnet=\"`Redis`\" pulumi-lang-go=\"`redis`\" pulumi-lang-python=\"`redis`\" pulumi-lang-yaml=\"`redis`\" pulumi-lang-java=\"`redis`\"\u003e`redis`\u003c/span\u003e strategy is defined. Defining this field implies using a Redis Cluster. The minimum length of the array is 1 element.\n"},"connectTimeout":{"type":"number","description":"An integer representing a timeout in milliseconds. Must be between 0 and 2^31-2. Default: 2000\n"},"connectionIsProxied":{"type":"boolean","description":"If the connection to Redis is proxied (e.g. Envoy), set it \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e. Set the \u003cspan pulumi-lang-nodejs=\"`host`\" pulumi-lang-dotnet=\"`Host`\" pulumi-lang-go=\"`host`\" pulumi-lang-python=\"`host`\" pulumi-lang-yaml=\"`host`\" pulumi-lang-java=\"`host`\"\u003e`host`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`port`\" pulumi-lang-dotnet=\"`Port`\" pulumi-lang-go=\"`port`\" pulumi-lang-python=\"`port`\" pulumi-lang-yaml=\"`port`\" pulumi-lang-java=\"`port`\"\u003e`port`\u003c/span\u003e to point to the proxy address. Default: false\n"},"database":{"type":"number","description":"Database to use for the Redis connection when using the \u003cspan pulumi-lang-nodejs=\"`redis`\" pulumi-lang-dotnet=\"`Redis`\" pulumi-lang-go=\"`redis`\" pulumi-lang-python=\"`redis`\" pulumi-lang-yaml=\"`redis`\" pulumi-lang-java=\"`redis`\"\u003e`redis`\u003c/span\u003e strategy. Default: 0\n"},"host":{"type":"string","description":"A string representing a host name, such as example.com. Default: \"127.0.0.1\"\n"},"keepaliveBacklog":{"type":"number","description":"Limits the total number of opened connections for a pool. If the connection pool is full, connection queues above the limit go into the backlog queue. If the backlog queue is full, subsequent connect operations fail and return \u003cspan pulumi-lang-nodejs=\"`nil`\" pulumi-lang-dotnet=\"`Nil`\" pulumi-lang-go=\"`nil`\" pulumi-lang-python=\"`nil`\" pulumi-lang-yaml=\"`nil`\" pulumi-lang-java=\"`nil`\"\u003e`nil`\u003c/span\u003e. Queued operations (subject to set timeouts) resume once the number of connections in the pool is less than \u003cspan pulumi-lang-nodejs=\"`keepalivePoolSize`\" pulumi-lang-dotnet=\"`KeepalivePoolSize`\" pulumi-lang-go=\"`keepalivePoolSize`\" pulumi-lang-python=\"`keepalive_pool_size`\" pulumi-lang-yaml=\"`keepalivePoolSize`\" pulumi-lang-java=\"`keepalivePoolSize`\"\u003e`keepalive_pool_size`\u003c/span\u003e. If latency is high or throughput is low, try increasing this value. Empirically, this value is larger than \u003cspan pulumi-lang-nodejs=\"`keepalivePoolSize`\" pulumi-lang-dotnet=\"`KeepalivePoolSize`\" pulumi-lang-go=\"`keepalivePoolSize`\" pulumi-lang-python=\"`keepalive_pool_size`\" pulumi-lang-yaml=\"`keepalivePoolSize`\" pulumi-lang-java=\"`keepalivePoolSize`\"\u003e`keepalive_pool_size`\u003c/span\u003e.\n"},"keepalivePoolSize":{"type":"number","description":"The size limit for every cosocket connection pool associated with every remote server, per worker process. If neither \u003cspan pulumi-lang-nodejs=\"`keepalivePoolSize`\" pulumi-lang-dotnet=\"`KeepalivePoolSize`\" pulumi-lang-go=\"`keepalivePoolSize`\" pulumi-lang-python=\"`keepalive_pool_size`\" pulumi-lang-yaml=\"`keepalivePoolSize`\" pulumi-lang-java=\"`keepalivePoolSize`\"\u003e`keepalive_pool_size`\u003c/span\u003e nor \u003cspan pulumi-lang-nodejs=\"`keepaliveBacklog`\" pulumi-lang-dotnet=\"`KeepaliveBacklog`\" pulumi-lang-go=\"`keepaliveBacklog`\" pulumi-lang-python=\"`keepalive_backlog`\" pulumi-lang-yaml=\"`keepaliveBacklog`\" pulumi-lang-java=\"`keepaliveBacklog`\"\u003e`keepalive_backlog`\u003c/span\u003e is specified, no pool is created. If \u003cspan pulumi-lang-nodejs=\"`keepalivePoolSize`\" pulumi-lang-dotnet=\"`KeepalivePoolSize`\" pulumi-lang-go=\"`keepalivePoolSize`\" pulumi-lang-python=\"`keepalive_pool_size`\" pulumi-lang-yaml=\"`keepalivePoolSize`\" pulumi-lang-java=\"`keepalivePoolSize`\"\u003e`keepalive_pool_size`\u003c/span\u003e isn't specified but \u003cspan pulumi-lang-nodejs=\"`keepaliveBacklog`\" pulumi-lang-dotnet=\"`KeepaliveBacklog`\" pulumi-lang-go=\"`keepaliveBacklog`\" pulumi-lang-python=\"`keepalive_backlog`\" pulumi-lang-yaml=\"`keepaliveBacklog`\" pulumi-lang-java=\"`keepaliveBacklog`\"\u003e`keepalive_backlog`\u003c/span\u003e is specified, then the pool uses the default value. Try to increase (e.g. 512) this value if latency is high or throughput is low. Default: 256\n"},"password":{"type":"string","description":"Password to use for Redis connections. If undefined, no AUTH commands are sent to Redis.\n"},"port":{"type":"number","description":"An integer representing a port number between 0 and 65535, inclusive. Default: 6379\n"},"prefix":{"type":"string","description":"The Redis session key prefix.\n"},"readTimeout":{"type":"number","description":"An integer representing a timeout in milliseconds. Must be between 0 and 2^31-2. Default: 2000\n"},"sendTimeout":{"type":"number","description":"An integer representing a timeout in milliseconds. Must be between 0 and 2^31-2. Default: 2000\n"},"sentinelMaster":{"type":"string","description":"Sentinel master to use for Redis connections. Defining this value implies using Redis Sentinel.\n"},"sentinelNodes":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginSamlConfigRedisSentinelNode:GatewayPluginSamlConfigRedisSentinelNode"},"description":"Sentinel node addresses to use for Redis connections when the \u003cspan pulumi-lang-nodejs=\"`redis`\" pulumi-lang-dotnet=\"`Redis`\" pulumi-lang-go=\"`redis`\" pulumi-lang-python=\"`redis`\" pulumi-lang-yaml=\"`redis`\" pulumi-lang-java=\"`redis`\"\u003e`redis`\u003c/span\u003e strategy is defined. Defining this field implies using a Redis Sentinel. The minimum length of the array is 1 element.\n"},"sentinelPassword":{"type":"string","description":"Sentinel password to authenticate with a Redis Sentinel instance. If undefined, no AUTH commands are sent to Redis Sentinels.\n"},"sentinelRole":{"type":"string","description":"Sentinel role to use for Redis connections when the \u003cspan pulumi-lang-nodejs=\"`redis`\" pulumi-lang-dotnet=\"`Redis`\" pulumi-lang-go=\"`redis`\" pulumi-lang-python=\"`redis`\" pulumi-lang-yaml=\"`redis`\" pulumi-lang-java=\"`redis`\"\u003e`redis`\u003c/span\u003e strategy is defined. Defining this value implies using Redis Sentinel. must be one of [\"any\", \"master\", \"slave\"]\n"},"sentinelUsername":{"type":"string","description":"Sentinel username to authenticate with a Redis Sentinel instance. If undefined, ACL authentication won't be performed. This requires Redis v6.2.0+.\n"},"serverName":{"type":"string","description":"A string representing an SNI (server name indication) value for TLS.\n"},"socket":{"type":"string","description":"The Redis unix socket path.\n"},"ssl":{"type":"boolean","description":"If set to true, uses SSL to connect to Redis. Default: false\n"},"sslVerify":{"type":"boolean","description":"If set to true, verifies the validity of the server SSL certificate. If setting this parameter, also configure \u003cspan pulumi-lang-nodejs=\"`luaSslTrustedCertificate`\" pulumi-lang-dotnet=\"`LuaSslTrustedCertificate`\" pulumi-lang-go=\"`luaSslTrustedCertificate`\" pulumi-lang-python=\"`lua_ssl_trusted_certificate`\" pulumi-lang-yaml=\"`luaSslTrustedCertificate`\" pulumi-lang-java=\"`luaSslTrustedCertificate`\"\u003e`lua_ssl_trusted_certificate`\u003c/span\u003e in `kong.conf` to specify the CA (or server) certificate used by your Redis server. You may also need to configure \u003cspan pulumi-lang-nodejs=\"`luaSslVerifyDepth`\" pulumi-lang-dotnet=\"`LuaSslVerifyDepth`\" pulumi-lang-go=\"`luaSslVerifyDepth`\" pulumi-lang-python=\"`lua_ssl_verify_depth`\" pulumi-lang-yaml=\"`luaSslVerifyDepth`\" pulumi-lang-java=\"`luaSslVerifyDepth`\"\u003e`lua_ssl_verify_depth`\u003c/span\u003e accordingly. Default: false\n"},"username":{"type":"string","description":"Username to use for Redis connections. If undefined, ACL authentication won't be performed. This requires Redis v6.0.0+. To be compatible with Redis v5.x.y, you can set it to \u003cspan pulumi-lang-nodejs=\"`default`\" pulumi-lang-dotnet=\"`Default`\" pulumi-lang-go=\"`default`\" pulumi-lang-python=\"`default`\" pulumi-lang-yaml=\"`default`\" pulumi-lang-java=\"`default`\"\u003e`default`\u003c/span\u003e.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["cloudAuthentication","clusterMaxRedirections","connectTimeout","connectionIsProxied","database","host","keepalivePoolSize","port","readTimeout","sendTimeout","sentinelRole","ssl","sslVerify"]}}},"konnect:index/GatewayPluginSamlConfigRedisCloudAuthentication:GatewayPluginSamlConfigRedisCloudAuthentication":{"properties":{"authProvider":{"type":"string","description":"Auth providers to be used to authenticate to a Cloud Provider's Redis instance. must be one of [\"aws\", \"azure\", \"gcp\"]\n"},"awsAccessKeyId":{"type":"string","description":"AWS Access Key ID to be used for authentication when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e.\n"},"awsAssumeRoleArn":{"type":"string","description":"The ARN of the IAM role to assume for generating ElastiCache IAM authentication tokens.\n"},"awsCacheName":{"type":"string","description":"The name of the AWS Elasticache cluster when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e.\n"},"awsIsServerless":{"type":"boolean","description":"This flag specifies whether the cluster is serverless when\u003cspan pulumi-lang-nodejs=\" authProvider \" pulumi-lang-dotnet=\" AuthProvider \" pulumi-lang-go=\" authProvider \" pulumi-lang-python=\" auth_provider \" pulumi-lang-yaml=\" authProvider \" pulumi-lang-java=\" authProvider \"\u003e auth_provider \u003c/span\u003eis set to \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e. Default: true\n"},"awsRegion":{"type":"string","description":"The region of the AWS ElastiCache cluster when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e.\n"},"awsRoleSessionName":{"type":"string","description":"The session name for the temporary credentials when assuming the IAM role.\n"},"awsSecretAccessKey":{"type":"string","description":"AWS Secret Access Key to be used for authentication when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e.\n"},"azureClientId":{"type":"string","description":"Azure Client ID to be used for authentication when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`azure`\" pulumi-lang-dotnet=\"`Azure`\" pulumi-lang-go=\"`azure`\" pulumi-lang-python=\"`azure`\" pulumi-lang-yaml=\"`azure`\" pulumi-lang-java=\"`azure`\"\u003e`azure`\u003c/span\u003e.\n"},"azureClientSecret":{"type":"string","description":"Azure Client Secret to be used for authentication when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`azure`\" pulumi-lang-dotnet=\"`Azure`\" pulumi-lang-go=\"`azure`\" pulumi-lang-python=\"`azure`\" pulumi-lang-yaml=\"`azure`\" pulumi-lang-java=\"`azure`\"\u003e`azure`\u003c/span\u003e.\n"},"azureTenantId":{"type":"string","description":"Azure Tenant ID to be used for authentication when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`azure`\" pulumi-lang-dotnet=\"`Azure`\" pulumi-lang-go=\"`azure`\" pulumi-lang-python=\"`azure`\" pulumi-lang-yaml=\"`azure`\" pulumi-lang-java=\"`azure`\"\u003e`azure`\u003c/span\u003e.\n"},"gcpServiceAccountJson":{"type":"string","description":"GCP Service Account JSON to be used for authentication when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`gcp`\" pulumi-lang-dotnet=\"`Gcp`\" pulumi-lang-go=\"`gcp`\" pulumi-lang-python=\"`gcp`\" pulumi-lang-yaml=\"`gcp`\" pulumi-lang-java=\"`gcp`\"\u003e`gcp`\u003c/span\u003e.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["authProvider","awsIsServerless"]}}},"konnect:index/GatewayPluginSamlConfigRedisClusterNode:GatewayPluginSamlConfigRedisClusterNode":{"properties":{"ip":{"type":"string","description":"A string representing a host name, such as example.com. Default: \"127.0.0.1\"\n"},"port":{"type":"number","description":"An integer representing a port number between 0 and 65535, inclusive. Default: 6379\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["ip","port"]}}},"konnect:index/GatewayPluginSamlConfigRedisSentinelNode:GatewayPluginSamlConfigRedisSentinelNode":{"properties":{"host":{"type":"string","description":"A string representing a host name, such as example.com. Default: \"127.0.0.1\"\n"},"port":{"type":"number","description":"An integer representing a port number between 0 and 65535, inclusive. Default: 6379\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["host","port"]}}},"konnect:index/GatewayPluginSamlOrdering:GatewayPluginSamlOrdering":{"properties":{"after":{"$ref":"#/types/konnect:index%2FGatewayPluginSamlOrderingAfter:GatewayPluginSamlOrderingAfter"},"before":{"$ref":"#/types/konnect:index%2FGatewayPluginSamlOrderingBefore:GatewayPluginSamlOrderingBefore"}},"type":"object","language":{"nodejs":{"requiredOutputs":["after","before"]}}},"konnect:index/GatewayPluginSamlOrderingAfter:GatewayPluginSamlOrderingAfter":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginSamlOrderingBefore:GatewayPluginSamlOrderingBefore":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginSamlPartial:GatewayPluginSamlPartial":{"properties":{"id":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"name":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"path":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id","name","path"]}}},"konnect:index/GatewayPluginSamlRoute:GatewayPluginSamlRoute":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginSamlService:GatewayPluginSamlService":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginServiceProtectionConfig:GatewayPluginServiceProtectionConfig":{"properties":{"dictionaryName":{"type":"string","description":"The shared dictionary where counters are stored. When the plugin is configured to synchronize counter data externally (that is `config.strategy` is \u003cspan pulumi-lang-nodejs=\"`cluster`\" pulumi-lang-dotnet=\"`Cluster`\" pulumi-lang-go=\"`cluster`\" pulumi-lang-python=\"`cluster`\" pulumi-lang-yaml=\"`cluster`\" pulumi-lang-java=\"`cluster`\"\u003e`cluster`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`redis`\" pulumi-lang-dotnet=\"`Redis`\" pulumi-lang-go=\"`redis`\" pulumi-lang-python=\"`redis`\" pulumi-lang-yaml=\"`redis`\" pulumi-lang-java=\"`redis`\"\u003e`redis`\u003c/span\u003e and `config.sync_rate` isn't `-1`), this dictionary serves as a buffer to populate counters in the data store on each synchronization cycle. Default: \"kong*rate*limiting_counters\"\n"},"disablePenalty":{"type":"boolean","description":"If set to \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, this doesn't count denied requests (status = \u003cspan pulumi-lang-nodejs=\"`429`\" pulumi-lang-dotnet=\"`429`\" pulumi-lang-go=\"`429`\" pulumi-lang-python=\"`429`\" pulumi-lang-yaml=\"`429`\" pulumi-lang-java=\"`429`\"\u003e`429`\u003c/span\u003e). If set to \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e, all requests, including denied ones, are counted. This parameter only affects the \u003cspan pulumi-lang-nodejs=\"`sliding`\" pulumi-lang-dotnet=\"`Sliding`\" pulumi-lang-go=\"`sliding`\" pulumi-lang-python=\"`sliding`\" pulumi-lang-yaml=\"`sliding`\" pulumi-lang-java=\"`sliding`\"\u003e`sliding`\u003c/span\u003e window_type. Default: false\n"},"errorCode":{"type":"number","description":"Set a custom error code to return when the rate limit is exceeded. Default: 429\n"},"errorMessage":{"type":"string","description":"Set a custom error message to return when the rate limit is exceeded. Default: \"API rate limit exceeded\"\n"},"hideClientHeaders":{"type":"boolean","description":"Optionally hide informative response headers that would otherwise provide information about the current status of limits and counters. Default: false\n"},"limits":{"type":"array","items":{"type":"number"},"description":"One or more requests-per-window limits to apply. There must be a matching number of window limits and sizes specified.\n"},"lockDictionaryName":{"type":"string","description":"The shared dictionary where concurrency control locks are stored. The default shared dictionary is \u003cspan pulumi-lang-nodejs=\"`kongLocks`\" pulumi-lang-dotnet=\"`KongLocks`\" pulumi-lang-go=\"`kongLocks`\" pulumi-lang-python=\"`kong_locks`\" pulumi-lang-yaml=\"`kongLocks`\" pulumi-lang-java=\"`kongLocks`\"\u003e`kong_locks`\u003c/span\u003e. The shared dictionary should be declared in nginx-kong.conf. Default: \u003cspan pulumi-lang-nodejs=\"\"kongLocks\"\" pulumi-lang-dotnet=\"\"KongLocks\"\" pulumi-lang-go=\"\"kongLocks\"\" pulumi-lang-python=\"\"kong_locks\"\" pulumi-lang-yaml=\"\"kongLocks\"\" pulumi-lang-java=\"\"kongLocks\"\"\u003e\"kong_locks\"\u003c/span\u003e\n"},"namespace":{"type":"string","description":"The rate limiting library namespace to use for this plugin instance. Counter data and sync configuration is isolated in each namespace. NOTE: For the plugin instances sharing the same namespace, all the configurations that are required for synchronizing counters, e.g. \u003cspan pulumi-lang-nodejs=\"`strategy`\" pulumi-lang-dotnet=\"`Strategy`\" pulumi-lang-go=\"`strategy`\" pulumi-lang-python=\"`strategy`\" pulumi-lang-yaml=\"`strategy`\" pulumi-lang-java=\"`strategy`\"\u003e`strategy`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`redis`\" pulumi-lang-dotnet=\"`Redis`\" pulumi-lang-go=\"`redis`\" pulumi-lang-python=\"`redis`\" pulumi-lang-yaml=\"`redis`\" pulumi-lang-java=\"`redis`\"\u003e`redis`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`syncRate`\" pulumi-lang-dotnet=\"`SyncRate`\" pulumi-lang-go=\"`syncRate`\" pulumi-lang-python=\"`sync_rate`\" pulumi-lang-yaml=\"`syncRate`\" pulumi-lang-java=\"`syncRate`\"\u003e`sync_rate`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`dictionaryName`\" pulumi-lang-dotnet=\"`DictionaryName`\" pulumi-lang-go=\"`dictionaryName`\" pulumi-lang-python=\"`dictionary_name`\" pulumi-lang-yaml=\"`dictionaryName`\" pulumi-lang-java=\"`dictionaryName`\"\u003e`dictionary_name`\u003c/span\u003e, need to be the same.\n"},"redis":{"$ref":"#/types/konnect:index%2FGatewayPluginServiceProtectionConfigRedis:GatewayPluginServiceProtectionConfigRedis"},"retryAfterJitterMax":{"type":"number","description":"The upper bound of a jitter (random delay) in seconds to be added to the `Retry-After` header of denied requests (status = \u003cspan pulumi-lang-nodejs=\"`429`\" pulumi-lang-dotnet=\"`429`\" pulumi-lang-go=\"`429`\" pulumi-lang-python=\"`429`\" pulumi-lang-yaml=\"`429`\" pulumi-lang-java=\"`429`\"\u003e`429`\u003c/span\u003e) in order to prevent all the clients from coming back at the same time. The lower bound of the jitter is \u003cspan pulumi-lang-nodejs=\"`0`\" pulumi-lang-dotnet=\"`0`\" pulumi-lang-go=\"`0`\" pulumi-lang-python=\"`0`\" pulumi-lang-yaml=\"`0`\" pulumi-lang-java=\"`0`\"\u003e`0`\u003c/span\u003e; in this case, the `Retry-After` header is equal to the `RateLimit-Reset` header. Default: 0\n"},"strategy":{"type":"string","description":"The rate-limiting strategy to use for retrieving and incrementing the limits. Available values are: \u003cspan pulumi-lang-nodejs=\"`local`\" pulumi-lang-dotnet=\"`Local`\" pulumi-lang-go=\"`local`\" pulumi-lang-python=\"`local`\" pulumi-lang-yaml=\"`local`\" pulumi-lang-java=\"`local`\"\u003e`local`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`redis`\" pulumi-lang-dotnet=\"`Redis`\" pulumi-lang-go=\"`redis`\" pulumi-lang-python=\"`redis`\" pulumi-lang-yaml=\"`redis`\" pulumi-lang-java=\"`redis`\"\u003e`redis`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`cluster`\" pulumi-lang-dotnet=\"`Cluster`\" pulumi-lang-go=\"`cluster`\" pulumi-lang-python=\"`cluster`\" pulumi-lang-yaml=\"`cluster`\" pulumi-lang-java=\"`cluster`\"\u003e`cluster`\u003c/span\u003e. Default: \"local\"; must be one of [\"cluster\", \"local\", \"redis\"]\n"},"syncRate":{"type":"number","description":"How often to sync counter data to the central data store. A value of 0 results in synchronous behavior; a value of -1 ignores sync behavior entirely and only stores counters in node memory. A value greater than 0 will sync the counters in the specified number of seconds. The minimum allowed interval is 0.02 seconds (20ms).\n"},"windowSizes":{"type":"array","items":{"type":"number"},"description":"One or more window sizes to apply a limit to (defined in seconds). There must be a matching number of window limits and sizes specified.\n"},"windowType":{"type":"string","description":"Sets the time window type to either \u003cspan pulumi-lang-nodejs=\"`sliding`\" pulumi-lang-dotnet=\"`Sliding`\" pulumi-lang-go=\"`sliding`\" pulumi-lang-python=\"`sliding`\" pulumi-lang-yaml=\"`sliding`\" pulumi-lang-java=\"`sliding`\"\u003e`sliding`\u003c/span\u003e (default) or \u003cspan pulumi-lang-nodejs=\"`fixed`\" pulumi-lang-dotnet=\"`Fixed`\" pulumi-lang-go=\"`fixed`\" pulumi-lang-python=\"`fixed`\" pulumi-lang-yaml=\"`fixed`\" pulumi-lang-java=\"`fixed`\"\u003e`fixed`\u003c/span\u003e. Sliding windows apply the rate limiting logic while taking into account previous hit rates (from the window that immediately precedes the current) using a dynamic weight. Fixed windows consist of buckets that are statically assigned to a definitive time range, each request is mapped to only one fixed window based on its timestamp and will affect only that window's counters. Default: \"sliding\"; must be one of [\"fixed\", \"sliding\"]\n"}},"type":"object","required":["limits","windowSizes"],"language":{"nodejs":{"requiredOutputs":["dictionaryName","disablePenalty","errorCode","errorMessage","hideClientHeaders","limits","lockDictionaryName","redis","retryAfterJitterMax","strategy","windowSizes","windowType"]}}},"konnect:index/GatewayPluginServiceProtectionConfigRedis:GatewayPluginServiceProtectionConfigRedis":{"properties":{"cloudAuthentication":{"$ref":"#/types/konnect:index%2FGatewayPluginServiceProtectionConfigRedisCloudAuthentication:GatewayPluginServiceProtectionConfigRedisCloudAuthentication","description":"Cloud auth related configs for connecting to a Cloud Provider's Redis instance.\n"},"clusterMaxRedirections":{"type":"number","description":"Maximum retry attempts for redirection. Default: 5\n"},"clusterNodes":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginServiceProtectionConfigRedisClusterNode:GatewayPluginServiceProtectionConfigRedisClusterNode"},"description":"Cluster addresses to use for Redis connections when the \u003cspan pulumi-lang-nodejs=\"`redis`\" pulumi-lang-dotnet=\"`Redis`\" pulumi-lang-go=\"`redis`\" pulumi-lang-python=\"`redis`\" pulumi-lang-yaml=\"`redis`\" pulumi-lang-java=\"`redis`\"\u003e`redis`\u003c/span\u003e strategy is defined. Defining this field implies using a Redis Cluster. The minimum length of the array is 1 element.\n"},"connectTimeout":{"type":"number","description":"An integer representing a timeout in milliseconds. Must be between 0 and 2^31-2. Default: 2000\n"},"connectionIsProxied":{"type":"boolean","description":"If the connection to Redis is proxied (e.g. Envoy), set it \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e. Set the \u003cspan pulumi-lang-nodejs=\"`host`\" pulumi-lang-dotnet=\"`Host`\" pulumi-lang-go=\"`host`\" pulumi-lang-python=\"`host`\" pulumi-lang-yaml=\"`host`\" pulumi-lang-java=\"`host`\"\u003e`host`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`port`\" pulumi-lang-dotnet=\"`Port`\" pulumi-lang-go=\"`port`\" pulumi-lang-python=\"`port`\" pulumi-lang-yaml=\"`port`\" pulumi-lang-java=\"`port`\"\u003e`port`\u003c/span\u003e to point to the proxy address. Default: false\n"},"database":{"type":"number","description":"Database to use for the Redis connection when using the \u003cspan pulumi-lang-nodejs=\"`redis`\" pulumi-lang-dotnet=\"`Redis`\" pulumi-lang-go=\"`redis`\" pulumi-lang-python=\"`redis`\" pulumi-lang-yaml=\"`redis`\" pulumi-lang-java=\"`redis`\"\u003e`redis`\u003c/span\u003e strategy. Default: 0\n"},"host":{"type":"string","description":"A string representing a host name, such as example.com. Default: \"127.0.0.1\"\n"},"keepaliveBacklog":{"type":"number","description":"Limits the total number of opened connections for a pool. If the connection pool is full, connection queues above the limit go into the backlog queue. If the backlog queue is full, subsequent connect operations fail and return \u003cspan pulumi-lang-nodejs=\"`nil`\" pulumi-lang-dotnet=\"`Nil`\" pulumi-lang-go=\"`nil`\" pulumi-lang-python=\"`nil`\" pulumi-lang-yaml=\"`nil`\" pulumi-lang-java=\"`nil`\"\u003e`nil`\u003c/span\u003e. Queued operations (subject to set timeouts) resume once the number of connections in the pool is less than \u003cspan pulumi-lang-nodejs=\"`keepalivePoolSize`\" pulumi-lang-dotnet=\"`KeepalivePoolSize`\" pulumi-lang-go=\"`keepalivePoolSize`\" pulumi-lang-python=\"`keepalive_pool_size`\" pulumi-lang-yaml=\"`keepalivePoolSize`\" pulumi-lang-java=\"`keepalivePoolSize`\"\u003e`keepalive_pool_size`\u003c/span\u003e. If latency is high or throughput is low, try increasing this value. Empirically, this value is larger than \u003cspan pulumi-lang-nodejs=\"`keepalivePoolSize`\" pulumi-lang-dotnet=\"`KeepalivePoolSize`\" pulumi-lang-go=\"`keepalivePoolSize`\" pulumi-lang-python=\"`keepalive_pool_size`\" pulumi-lang-yaml=\"`keepalivePoolSize`\" pulumi-lang-java=\"`keepalivePoolSize`\"\u003e`keepalive_pool_size`\u003c/span\u003e.\n"},"keepalivePoolSize":{"type":"number","description":"The size limit for every cosocket connection pool associated with every remote server, per worker process. If neither \u003cspan pulumi-lang-nodejs=\"`keepalivePoolSize`\" pulumi-lang-dotnet=\"`KeepalivePoolSize`\" pulumi-lang-go=\"`keepalivePoolSize`\" pulumi-lang-python=\"`keepalive_pool_size`\" pulumi-lang-yaml=\"`keepalivePoolSize`\" pulumi-lang-java=\"`keepalivePoolSize`\"\u003e`keepalive_pool_size`\u003c/span\u003e nor \u003cspan pulumi-lang-nodejs=\"`keepaliveBacklog`\" pulumi-lang-dotnet=\"`KeepaliveBacklog`\" pulumi-lang-go=\"`keepaliveBacklog`\" pulumi-lang-python=\"`keepalive_backlog`\" pulumi-lang-yaml=\"`keepaliveBacklog`\" pulumi-lang-java=\"`keepaliveBacklog`\"\u003e`keepalive_backlog`\u003c/span\u003e is specified, no pool is created. If \u003cspan pulumi-lang-nodejs=\"`keepalivePoolSize`\" pulumi-lang-dotnet=\"`KeepalivePoolSize`\" pulumi-lang-go=\"`keepalivePoolSize`\" pulumi-lang-python=\"`keepalive_pool_size`\" pulumi-lang-yaml=\"`keepalivePoolSize`\" pulumi-lang-java=\"`keepalivePoolSize`\"\u003e`keepalive_pool_size`\u003c/span\u003e isn't specified but \u003cspan pulumi-lang-nodejs=\"`keepaliveBacklog`\" pulumi-lang-dotnet=\"`KeepaliveBacklog`\" pulumi-lang-go=\"`keepaliveBacklog`\" pulumi-lang-python=\"`keepalive_backlog`\" pulumi-lang-yaml=\"`keepaliveBacklog`\" pulumi-lang-java=\"`keepaliveBacklog`\"\u003e`keepalive_backlog`\u003c/span\u003e is specified, then the pool uses the default value. Try to increase (e.g. 512) this value if latency is high or throughput is low. Default: 256\n"},"password":{"type":"string","description":"Password to use for Redis connections. If undefined, no AUTH commands are sent to Redis.\n"},"port":{"type":"number","description":"An integer representing a port number between 0 and 65535, inclusive. Default: 6379\n"},"readTimeout":{"type":"number","description":"An integer representing a timeout in milliseconds. Must be between 0 and 2^31-2. Default: 2000\n"},"sendTimeout":{"type":"number","description":"An integer representing a timeout in milliseconds. Must be between 0 and 2^31-2. Default: 2000\n"},"sentinelMaster":{"type":"string","description":"Sentinel master to use for Redis connections. Defining this value implies using Redis Sentinel.\n"},"sentinelNodes":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginServiceProtectionConfigRedisSentinelNode:GatewayPluginServiceProtectionConfigRedisSentinelNode"},"description":"Sentinel node addresses to use for Redis connections when the \u003cspan pulumi-lang-nodejs=\"`redis`\" pulumi-lang-dotnet=\"`Redis`\" pulumi-lang-go=\"`redis`\" pulumi-lang-python=\"`redis`\" pulumi-lang-yaml=\"`redis`\" pulumi-lang-java=\"`redis`\"\u003e`redis`\u003c/span\u003e strategy is defined. Defining this field implies using a Redis Sentinel. The minimum length of the array is 1 element.\n"},"sentinelPassword":{"type":"string","description":"Sentinel password to authenticate with a Redis Sentinel instance. If undefined, no AUTH commands are sent to Redis Sentinels.\n"},"sentinelRole":{"type":"string","description":"Sentinel role to use for Redis connections when the \u003cspan pulumi-lang-nodejs=\"`redis`\" pulumi-lang-dotnet=\"`Redis`\" pulumi-lang-go=\"`redis`\" pulumi-lang-python=\"`redis`\" pulumi-lang-yaml=\"`redis`\" pulumi-lang-java=\"`redis`\"\u003e`redis`\u003c/span\u003e strategy is defined. Defining this value implies using Redis Sentinel. must be one of [\"any\", \"master\", \"slave\"]\n"},"sentinelUsername":{"type":"string","description":"Sentinel username to authenticate with a Redis Sentinel instance. If undefined, ACL authentication won't be performed. This requires Redis v6.2.0+.\n"},"serverName":{"type":"string","description":"A string representing an SNI (server name indication) value for TLS.\n"},"ssl":{"type":"boolean","description":"If set to true, uses SSL to connect to Redis. Default: false\n"},"sslVerify":{"type":"boolean","description":"If set to true, verifies the validity of the server SSL certificate. If setting this parameter, also configure \u003cspan pulumi-lang-nodejs=\"`luaSslTrustedCertificate`\" pulumi-lang-dotnet=\"`LuaSslTrustedCertificate`\" pulumi-lang-go=\"`luaSslTrustedCertificate`\" pulumi-lang-python=\"`lua_ssl_trusted_certificate`\" pulumi-lang-yaml=\"`luaSslTrustedCertificate`\" pulumi-lang-java=\"`luaSslTrustedCertificate`\"\u003e`lua_ssl_trusted_certificate`\u003c/span\u003e in `kong.conf` to specify the CA (or server) certificate used by your Redis server. You may also need to configure \u003cspan pulumi-lang-nodejs=\"`luaSslVerifyDepth`\" pulumi-lang-dotnet=\"`LuaSslVerifyDepth`\" pulumi-lang-go=\"`luaSslVerifyDepth`\" pulumi-lang-python=\"`lua_ssl_verify_depth`\" pulumi-lang-yaml=\"`luaSslVerifyDepth`\" pulumi-lang-java=\"`luaSslVerifyDepth`\"\u003e`lua_ssl_verify_depth`\u003c/span\u003e accordingly. Default: false\n"},"username":{"type":"string","description":"Username to use for Redis connections. If undefined, ACL authentication won't be performed. This requires Redis v6.0.0+. To be compatible with Redis v5.x.y, you can set it to \u003cspan pulumi-lang-nodejs=\"`default`\" pulumi-lang-dotnet=\"`Default`\" pulumi-lang-go=\"`default`\" pulumi-lang-python=\"`default`\" pulumi-lang-yaml=\"`default`\" pulumi-lang-java=\"`default`\"\u003e`default`\u003c/span\u003e.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["cloudAuthentication","clusterMaxRedirections","connectTimeout","connectionIsProxied","database","host","keepalivePoolSize","port","readTimeout","sendTimeout","sentinelRole","ssl","sslVerify"]}}},"konnect:index/GatewayPluginServiceProtectionConfigRedisCloudAuthentication:GatewayPluginServiceProtectionConfigRedisCloudAuthentication":{"properties":{"authProvider":{"type":"string","description":"Auth providers to be used to authenticate to a Cloud Provider's Redis instance. must be one of [\"aws\", \"azure\", \"gcp\"]\n"},"awsAccessKeyId":{"type":"string","description":"AWS Access Key ID to be used for authentication when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e.\n"},"awsAssumeRoleArn":{"type":"string","description":"The ARN of the IAM role to assume for generating ElastiCache IAM authentication tokens.\n"},"awsCacheName":{"type":"string","description":"The name of the AWS Elasticache cluster when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e.\n"},"awsIsServerless":{"type":"boolean","description":"This flag specifies whether the cluster is serverless when\u003cspan pulumi-lang-nodejs=\" authProvider \" pulumi-lang-dotnet=\" AuthProvider \" pulumi-lang-go=\" authProvider \" pulumi-lang-python=\" auth_provider \" pulumi-lang-yaml=\" authProvider \" pulumi-lang-java=\" authProvider \"\u003e auth_provider \u003c/span\u003eis set to \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e. Default: true\n"},"awsRegion":{"type":"string","description":"The region of the AWS ElastiCache cluster when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e.\n"},"awsRoleSessionName":{"type":"string","description":"The session name for the temporary credentials when assuming the IAM role.\n"},"awsSecretAccessKey":{"type":"string","description":"AWS Secret Access Key to be used for authentication when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e.\n"},"azureClientId":{"type":"string","description":"Azure Client ID to be used for authentication when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`azure`\" pulumi-lang-dotnet=\"`Azure`\" pulumi-lang-go=\"`azure`\" pulumi-lang-python=\"`azure`\" pulumi-lang-yaml=\"`azure`\" pulumi-lang-java=\"`azure`\"\u003e`azure`\u003c/span\u003e.\n"},"azureClientSecret":{"type":"string","description":"Azure Client Secret to be used for authentication when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`azure`\" pulumi-lang-dotnet=\"`Azure`\" pulumi-lang-go=\"`azure`\" pulumi-lang-python=\"`azure`\" pulumi-lang-yaml=\"`azure`\" pulumi-lang-java=\"`azure`\"\u003e`azure`\u003c/span\u003e.\n"},"azureTenantId":{"type":"string","description":"Azure Tenant ID to be used for authentication when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`azure`\" pulumi-lang-dotnet=\"`Azure`\" pulumi-lang-go=\"`azure`\" pulumi-lang-python=\"`azure`\" pulumi-lang-yaml=\"`azure`\" pulumi-lang-java=\"`azure`\"\u003e`azure`\u003c/span\u003e.\n"},"gcpServiceAccountJson":{"type":"string","description":"GCP Service Account JSON to be used for authentication when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`gcp`\" pulumi-lang-dotnet=\"`Gcp`\" pulumi-lang-go=\"`gcp`\" pulumi-lang-python=\"`gcp`\" pulumi-lang-yaml=\"`gcp`\" pulumi-lang-java=\"`gcp`\"\u003e`gcp`\u003c/span\u003e.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["authProvider","awsIsServerless"]}}},"konnect:index/GatewayPluginServiceProtectionConfigRedisClusterNode:GatewayPluginServiceProtectionConfigRedisClusterNode":{"properties":{"ip":{"type":"string","description":"A string representing a host name, such as example.com. Default: \"127.0.0.1\"\n"},"port":{"type":"number","description":"An integer representing a port number between 0 and 65535, inclusive. Default: 6379\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["ip","port"]}}},"konnect:index/GatewayPluginServiceProtectionConfigRedisSentinelNode:GatewayPluginServiceProtectionConfigRedisSentinelNode":{"properties":{"host":{"type":"string","description":"A string representing a host name, such as example.com. Default: \"127.0.0.1\"\n"},"port":{"type":"number","description":"An integer representing a port number between 0 and 65535, inclusive. Default: 6379\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["host","port"]}}},"konnect:index/GatewayPluginServiceProtectionOrdering:GatewayPluginServiceProtectionOrdering":{"properties":{"after":{"$ref":"#/types/konnect:index%2FGatewayPluginServiceProtectionOrderingAfter:GatewayPluginServiceProtectionOrderingAfter"},"before":{"$ref":"#/types/konnect:index%2FGatewayPluginServiceProtectionOrderingBefore:GatewayPluginServiceProtectionOrderingBefore"}},"type":"object","language":{"nodejs":{"requiredOutputs":["after","before"]}}},"konnect:index/GatewayPluginServiceProtectionOrderingAfter:GatewayPluginServiceProtectionOrderingAfter":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginServiceProtectionOrderingBefore:GatewayPluginServiceProtectionOrderingBefore":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginServiceProtectionPartial:GatewayPluginServiceProtectionPartial":{"properties":{"id":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"name":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"path":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id","name","path"]}}},"konnect:index/GatewayPluginServiceProtectionService:GatewayPluginServiceProtectionService":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginSessionConfig:GatewayPluginSessionConfig":{"properties":{"absoluteTimeout":{"type":"number","description":"The session cookie absolute timeout, in seconds. Specifies how long the session can be used until it is no longer valid. Default: 86400\n"},"audience":{"type":"string","description":"The session audience, which is the intended target application. For example `\"my-application\"`. Default: \"default\"\n"},"binds":{"type":"array","items":{"type":"string"},"description":"Bind the session to data acquired from the HTTP request or connection.\n"},"cookieDomain":{"type":"string","description":"The domain with which the cookie is intended to be exchanged.\n"},"cookieHttpOnly":{"type":"boolean","description":"Applies the `HttpOnly` tag so that the cookie is sent only to a server. Default: true\n"},"cookieName":{"type":"string","description":"The name of the cookie. Default: \"session\"\n"},"cookiePath":{"type":"string","description":"The resource in the host where the cookie is available. Default: \"/\"\n"},"cookieSameSite":{"type":"string","description":"Determines whether and how a cookie may be sent with cross-site requests. Default: \"Strict\"; must be one of [\"Default\", \"Lax\", \"None\", \"Strict\"]\n"},"cookieSecure":{"type":"boolean","description":"Applies the Secure directive so that the cookie may be sent to the server only with an encrypted request over the HTTPS protocol. Default: true\n"},"hashSubject":{"type":"boolean","description":"Whether to hash or not the subject when\u003cspan pulumi-lang-nodejs=\" storeMetadata \" pulumi-lang-dotnet=\" StoreMetadata \" pulumi-lang-go=\" storeMetadata \" pulumi-lang-python=\" store_metadata \" pulumi-lang-yaml=\" storeMetadata \" pulumi-lang-java=\" storeMetadata \"\u003e store_metadata \u003c/span\u003eis enabled. Default: false\n"},"idlingTimeout":{"type":"number","description":"The session cookie idle time, in seconds. Default: 900\n"},"logoutMethods":{"type":"array","items":{"type":"string"},"description":"A set of HTTP methods that the plugin will respond to. Default: [\"DELETE\",\"POST\"]\n"},"logoutPostArg":{"type":"string","description":"The POST argument passed to logout requests. Do not change this property. Default: \u003cspan pulumi-lang-nodejs=\"\"sessionLogout\"\" pulumi-lang-dotnet=\"\"SessionLogout\"\" pulumi-lang-go=\"\"sessionLogout\"\" pulumi-lang-python=\"\"session_logout\"\" pulumi-lang-yaml=\"\"sessionLogout\"\" pulumi-lang-java=\"\"sessionLogout\"\"\u003e\"session_logout\"\u003c/span\u003e\n"},"logoutQueryArg":{"type":"string","description":"The query argument passed to logout requests. Default: \u003cspan pulumi-lang-nodejs=\"\"sessionLogout\"\" pulumi-lang-dotnet=\"\"SessionLogout\"\" pulumi-lang-go=\"\"sessionLogout\"\" pulumi-lang-python=\"\"session_logout\"\" pulumi-lang-yaml=\"\"sessionLogout\"\" pulumi-lang-java=\"\"sessionLogout\"\"\u003e\"session_logout\"\u003c/span\u003e\n"},"readBodyForLogout":{"type":"boolean","description":"Default: false\n"},"remember":{"type":"boolean","description":"Enables or disables persistent sessions. Default: false\n"},"rememberAbsoluteTimeout":{"type":"number","description":"The persistent session absolute timeout limit, in seconds. Default: 2592000\n"},"rememberCookieName":{"type":"string","description":"Persistent session cookie name. Use with the \u003cspan pulumi-lang-nodejs=\"`remember`\" pulumi-lang-dotnet=\"`Remember`\" pulumi-lang-go=\"`remember`\" pulumi-lang-python=\"`remember`\" pulumi-lang-yaml=\"`remember`\" pulumi-lang-java=\"`remember`\"\u003e`remember`\u003c/span\u003e configuration parameter. Default: \"remember\"\n"},"rememberRollingTimeout":{"type":"number","description":"The persistent session rolling timeout window, in seconds. Default: 604800\n"},"requestHeaders":{"type":"array","items":{"type":"string"},"description":"List of information to include, as headers, in the response to the downstream.\n"},"responseHeaders":{"type":"array","items":{"type":"string"},"description":"List of information to include, as headers, in the response to the downstream.\n"},"rollingTimeout":{"type":"number","description":"The session cookie rolling timeout, in seconds. Specifies how long the session can be used until it needs to be renewed. Default: 3600\n"},"secret":{"type":"string","description":"The secret that is used in keyed HMAC generation.\n"},"staleTtl":{"type":"number","description":"The duration, in seconds, after which an old cookie is discarded, starting from the moment when the session becomes outdated and is replaced by a new one. Default: 10\n"},"storage":{"type":"string","description":"Determines where the session data is stored. \u003cspan pulumi-lang-nodejs=\"`kong`\" pulumi-lang-dotnet=\"`Kong`\" pulumi-lang-go=\"`kong`\" pulumi-lang-python=\"`kong`\" pulumi-lang-yaml=\"`kong`\" pulumi-lang-java=\"`kong`\"\u003e`kong`\u003c/span\u003e: Stores encrypted session data into Kong's current database strategy; the cookie will not contain any session data. \u003cspan pulumi-lang-nodejs=\"`cookie`\" pulumi-lang-dotnet=\"`Cookie`\" pulumi-lang-go=\"`cookie`\" pulumi-lang-python=\"`cookie`\" pulumi-lang-yaml=\"`cookie`\" pulumi-lang-java=\"`cookie`\"\u003e`cookie`\u003c/span\u003e: Stores encrypted session data within the cookie itself. Default: \"cookie\"; must be one of [\"cookie\", \"kong\"]\n"},"storeMetadata":{"type":"boolean","description":"Whether to also store metadata of sessions, such as collecting data of sessions for a specific audience belonging to a specific subject. Default: false\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["absoluteTimeout","audience","cookieHttpOnly","cookieName","cookiePath","cookieSameSite","cookieSecure","hashSubject","idlingTimeout","logoutMethods","logoutPostArg","logoutQueryArg","readBodyForLogout","remember","rememberAbsoluteTimeout","rememberCookieName","rememberRollingTimeout","rollingTimeout","staleTtl","storage","storeMetadata"]}}},"konnect:index/GatewayPluginSessionOrdering:GatewayPluginSessionOrdering":{"properties":{"after":{"$ref":"#/types/konnect:index%2FGatewayPluginSessionOrderingAfter:GatewayPluginSessionOrderingAfter"},"before":{"$ref":"#/types/konnect:index%2FGatewayPluginSessionOrderingBefore:GatewayPluginSessionOrderingBefore"}},"type":"object","language":{"nodejs":{"requiredOutputs":["after","before"]}}},"konnect:index/GatewayPluginSessionOrderingAfter:GatewayPluginSessionOrderingAfter":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginSessionOrderingBefore:GatewayPluginSessionOrderingBefore":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginSessionPartial:GatewayPluginSessionPartial":{"properties":{"id":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"name":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"path":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id","name","path"]}}},"konnect:index/GatewayPluginSessionRoute:GatewayPluginSessionRoute":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginSessionService:GatewayPluginSessionService":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginSolaceConsumeConfig:GatewayPluginSolaceConsumeConfig":{"properties":{"flow":{"$ref":"#/types/konnect:index%2FGatewayPluginSolaceConsumeConfigFlow:GatewayPluginSolaceConsumeConfigFlow","description":"The flow related configuration.\n"},"mode":{"type":"string","description":"The mode of operation for the plugin. The `AUTO` determines the mode automatically from the client request. Default: \"POLLING\"; must be one of [\"AUTO\", \"POLLING\", \"SERVER-SENT-EVENTS\", \"WEBSOCKET\"]\n"},"polling":{"$ref":"#/types/konnect:index%2FGatewayPluginSolaceConsumeConfigPolling:GatewayPluginSolaceConsumeConfigPolling","description":"The `POLLING` mode related configuration settings.\n"},"session":{"$ref":"#/types/konnect:index%2FGatewayPluginSolaceConsumeConfigSession:GatewayPluginSolaceConsumeConfigSession","description":"Session related configuration.\n"},"websocket":{"$ref":"#/types/konnect:index%2FGatewayPluginSolaceConsumeConfigWebsocket:GatewayPluginSolaceConsumeConfigWebsocket","description":"The `WEBSOCKET` mode related configuration settings.\n"}},"type":"object","required":["flow","session"],"language":{"nodejs":{"requiredOutputs":["flow","mode","polling","session","websocket"]}}},"konnect:index/GatewayPluginSolaceConsumeConfigFlow:GatewayPluginSolaceConsumeConfigFlow":{"properties":{"ackMode":{"type":"string","description":"Controls how acknowledgments are generated for received Guaranteed messages. When set to `AUTO`, the messages are positively acknowledged upon receiving them. When set to 'CLIENT', the messages are positively or negatively acknowledged by Kong regarding to client delivery status. Default: \"CLIENT\"; must be one of [\"AUTO\", \"CLIENT\"]\n"},"binds":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginSolaceConsumeConfigFlowBind:GatewayPluginSolaceConsumeConfigFlowBind"}},"functions":{"type":"array","items":{"type":"string"},"description":"The Lua functions that manipulates the message being received from Solace. The \u003cspan pulumi-lang-nodejs=\"`message`\" pulumi-lang-dotnet=\"`Message`\" pulumi-lang-go=\"`message`\" pulumi-lang-python=\"`message`\" pulumi-lang-yaml=\"`message`\" pulumi-lang-java=\"`message`\"\u003e`message`\u003c/span\u003e variable can be used to access the current message content, and the function can return a new content.\n"},"maxUnackedMessages":{"type":"number","description":"This property controls the maximum number of messages that may be unacknowledged on the Flow. Default: -1\n"},"properties":{"type":"object","additionalProperties":{"type":"string"},"description":"Additional Solace flow properties (each setting needs to have `FLOW_` prefix).\n"},"selector":{"type":"string","description":"The selector when binding to an endpoint.\n"},"waitTimeout":{"type":"number","description":"Specifies in milliseconds how long to wait for messages to appear on each poll before giving up or retrying. Default: 50\n"},"windowSize":{"type":"number","description":"The Guaranteed message window size for the Flow. Default: 255\n"}},"type":"object","required":["binds"],"language":{"nodejs":{"requiredOutputs":["ackMode","binds","maxUnackedMessages","waitTimeout","windowSize"]}}},"konnect:index/GatewayPluginSolaceConsumeConfigFlowBind:GatewayPluginSolaceConsumeConfigFlowBind":{"properties":{"name":{"type":"string","description":"The name of the Queue that is the target of the bind. You can use $(uri_captures['\\n\\n']) in this field (replace `\u003ccapture-identifier\u003e` with a real value, for example `$uri_captures['queue']` when the matched route has a path `~/(?\u003cqueue\u003e[a-z]+)`). Not Null\n"},"type":{"type":"string","description":"The type of object to which this Flow is bound. Default: \"QUEUE\"; must be \"QUEUE\"\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["name","type"]}}},"konnect:index/GatewayPluginSolaceConsumeConfigPolling:GatewayPluginSolaceConsumeConfigPolling":{"properties":{"timeout":{"type":"number","description":"Polling timeout in milliseconds. When set to \u003cspan pulumi-lang-nodejs=\"`0`\" pulumi-lang-dotnet=\"`0`\" pulumi-lang-go=\"`0`\" pulumi-lang-python=\"`0`\" pulumi-lang-yaml=\"`0`\" pulumi-lang-java=\"`0`\"\u003e`0`\u003c/span\u003e, the polling works like short-polling and waits at maximum the Flow \u003cspan pulumi-lang-nodejs=\"`waitTimeout`\" pulumi-lang-dotnet=\"`WaitTimeout`\" pulumi-lang-go=\"`waitTimeout`\" pulumi-lang-python=\"`wait_timeout`\" pulumi-lang-yaml=\"`waitTimeout`\" pulumi-lang-java=\"`waitTimeout`\"\u003e`wait_timeout`\u003c/span\u003e amount of time for the new messages (short-polling). When set to larger than \u003cspan pulumi-lang-nodejs=\"`0`\" pulumi-lang-dotnet=\"`0`\" pulumi-lang-go=\"`0`\" pulumi-lang-python=\"`0`\" pulumi-lang-yaml=\"`0`\" pulumi-lang-java=\"`0`\"\u003e`0`\u003c/span\u003e, the connection is kept open and only closed after the timeout or in case messages appear earlier (long-polling). Default: 0\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["timeout"]}}},"konnect:index/GatewayPluginSolaceConsumeConfigSession:GatewayPluginSolaceConsumeConfigSession":{"properties":{"authentication":{"$ref":"#/types/konnect:index%2FGatewayPluginSolaceConsumeConfigSessionAuthentication:GatewayPluginSolaceConsumeConfigSessionAuthentication","description":"Session authentication related configuration.\n"},"calculateMessageExpiry":{"type":"boolean","description":"If this property is true and time-to-live has a positive value in a message, the expiration time is calculated when the message is sent or received. Default: true\n"},"connectTimeout":{"type":"number","description":"The timeout period (in milliseconds) for a connect operation to a given host (per host). Default: 3000\n"},"generateRcvTimestamps":{"type":"boolean","description":"When enabled, a receive timestamp is recorded for each message. Default: true\n"},"generateSendTimestamps":{"type":"boolean","description":"When enabled, a send timestamp is automatically included (if not already present) in the Solace-defined fields for each message sent. Default: true\n"},"generateSenderId":{"type":"boolean","description":"When enabled, a sender id is automatically included (if not already present) in the Solace-defined fields for each message sent. Default: true\n"},"generateSequenceNumber":{"type":"boolean","description":"When enabled, a sequence number is automatically included (if not already present) in the Solace-defined fields for each message sent. Default: true\n"},"host":{"type":"string","description":"The IPv4 or IPv6 address or host name to connect to (see: https://docs.solace.com/API-Developer-Online-Ref-Documentation/c/index.html#host-entry).\n"},"properties":{"type":"object","additionalProperties":{"type":"string"},"description":"Additional Solace session properties (each setting needs to have `SESSION_` prefix).\n"},"sslValidateCertificate":{"type":"boolean","description":"Indicates whether the API should validate server certificates with the trusted certificates. Default: false\n"},"vpnName":{"type":"string","description":"The name of the Message VPN to attempt to join when connecting to an event broker.\n"}},"type":"object","required":["host"],"language":{"nodejs":{"requiredOutputs":["authentication","calculateMessageExpiry","connectTimeout","generateRcvTimestamps","generateSendTimestamps","generateSenderId","generateSequenceNumber","host","sslValidateCertificate"]}}},"konnect:index/GatewayPluginSolaceConsumeConfigSessionAuthentication:GatewayPluginSolaceConsumeConfigSessionAuthentication":{"properties":{"accessToken":{"type":"string","description":"The OAuth2 access token used with `OAUTH2` authentication scheme when connecting to an event broker.\n"},"accessTokenHeader":{"type":"string","description":"Specifies the header that contains access token for the `OAUTH2` authentication scheme when connecting to an event broker. This header takes precedence over the \u003cspan pulumi-lang-nodejs=\"`accessToken`\" pulumi-lang-dotnet=\"`AccessToken`\" pulumi-lang-go=\"`accessToken`\" pulumi-lang-python=\"`access_token`\" pulumi-lang-yaml=\"`accessToken`\" pulumi-lang-java=\"`accessToken`\"\u003e`access_token`\u003c/span\u003e field.\n"},"basicAuthHeader":{"type":"string","description":"Specifies the header that contains Basic Authentication credentials for the `BASIC` authentication scheme when connecting to an event broker. This header takes precedence over the \u003cspan pulumi-lang-nodejs=\"`username`\" pulumi-lang-dotnet=\"`Username`\" pulumi-lang-go=\"`username`\" pulumi-lang-python=\"`username`\" pulumi-lang-yaml=\"`username`\" pulumi-lang-java=\"`username`\"\u003e`username`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`password`\" pulumi-lang-dotnet=\"`Password`\" pulumi-lang-go=\"`password`\" pulumi-lang-python=\"`password`\" pulumi-lang-yaml=\"`password`\" pulumi-lang-java=\"`password`\"\u003e`password`\u003c/span\u003e fields.\n"},"idToken":{"type":"string","description":"The OpenID Connect ID token used with `OAUTH2` authentication scheme when connecting to an event broker.\n"},"idTokenHeader":{"type":"string","description":"Specifies the header that contains id token for the `OAUTH2` authentication scheme when connecting to an event broker. This header takes precedence over the \u003cspan pulumi-lang-nodejs=\"`idToken`\" pulumi-lang-dotnet=\"`IdToken`\" pulumi-lang-go=\"`idToken`\" pulumi-lang-python=\"`id_token`\" pulumi-lang-yaml=\"`idToken`\" pulumi-lang-java=\"`idToken`\"\u003e`id_token`\u003c/span\u003e field.\n"},"password":{"type":"string","description":"The password used with `BASIC` authentication scheme when connecting to an event broker.\n"},"scheme":{"type":"string","description":"The client authentication scheme used when connection to an event broker. Default: \"BASIC\"; must be one of [\"BASIC\", \"NONE\", \"OAUTH2\"]\n"},"username":{"type":"string","description":"The username used with `BASIC` authentication scheme when connecting to an event broker.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["scheme"]}}},"konnect:index/GatewayPluginSolaceConsumeConfigWebsocket:GatewayPluginSolaceConsumeConfigWebsocket":{"properties":{"maxRecvLen":{"type":"number","description":"Specifies the maximal length of payload allowed when receiving WebSocket frames. Default: 65536\n"},"maxSendLen":{"type":"number","description":"Specifies the maximal length of payload allowed when sending WebSocket frames. Default: 65536\n"},"timeout":{"type":"number","description":"Specifies the network timeout threshold in milliseconds. Default: 1000\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["maxRecvLen","maxSendLen","timeout"]}}},"konnect:index/GatewayPluginSolaceConsumeOrdering:GatewayPluginSolaceConsumeOrdering":{"properties":{"after":{"$ref":"#/types/konnect:index%2FGatewayPluginSolaceConsumeOrderingAfter:GatewayPluginSolaceConsumeOrderingAfter"},"before":{"$ref":"#/types/konnect:index%2FGatewayPluginSolaceConsumeOrderingBefore:GatewayPluginSolaceConsumeOrderingBefore"}},"type":"object","language":{"nodejs":{"requiredOutputs":["after","before"]}}},"konnect:index/GatewayPluginSolaceConsumeOrderingAfter:GatewayPluginSolaceConsumeOrderingAfter":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginSolaceConsumeOrderingBefore:GatewayPluginSolaceConsumeOrderingBefore":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginSolaceConsumePartial:GatewayPluginSolaceConsumePartial":{"properties":{"id":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"name":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"path":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id","name","path"]}}},"konnect:index/GatewayPluginSolaceConsumeRoute:GatewayPluginSolaceConsumeRoute":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginSolaceConsumeService:GatewayPluginSolaceConsumeService":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginSolaceLogConfig:GatewayPluginSolaceLogConfig":{"properties":{"message":{"$ref":"#/types/konnect:index%2FGatewayPluginSolaceLogConfigMessage:GatewayPluginSolaceLogConfigMessage","description":"The log message related configuration.\n"},"session":{"$ref":"#/types/konnect:index%2FGatewayPluginSolaceLogConfigSession:GatewayPluginSolaceLogConfigSession","description":"Session related configuration.\n"}},"type":"object","required":["message","session"]},"konnect:index/GatewayPluginSolaceLogConfigMessage:GatewayPluginSolaceLogConfigMessage":{"properties":{"ackTimeout":{"type":"number","description":"When using a non-DIRECT guaranteed delivery mode, this property sets the log message acknowledgement timeout (waiting time). Default: 2000\n"},"customFieldsByLua":{"type":"object","additionalProperties":{"type":"string"},"description":"A key-value map that dynamically modifies log fields using Lua code.\n"},"deliveryMode":{"type":"string","description":"Sets the log message delivery mode. Default: \"DIRECT\"; must be one of [\"DIRECT\", \"PERSISTENT\"]\n"},"destinations":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginSolaceLogConfigMessageDestination:GatewayPluginSolaceLogConfigMessageDestination"},"description":"The log message destinations.\n"},"dmqEligible":{"type":"boolean","description":"Sets the dead message queue (DMQ) eligible property on the log message. Default: false\n"},"priority":{"type":"number","description":"Sets the log message priority. Default: 4\n"},"senderId":{"type":"string","description":"Allows the application to set the sender identifier.\n"},"tracing":{"type":"boolean","description":"Enable or disable the tracing propagation. This is primarily used for distributed tracing and message correlation, especially in debugging or tracking message flows across multiple systems. Default: false\n"},"tracingSampled":{"type":"boolean","description":"Forcibly turn on the tracing on all the messages for distributed tracing (tracing needs to be enabled as well). Default: false\n"},"ttl":{"type":"number","description":"Sets the time to live (TTL) in milliseconds for the log message. Setting the time to live to zero disables the TTL for the log message. Default: 0\n"}},"type":"object","required":["destinations"],"language":{"nodejs":{"requiredOutputs":["ackTimeout","deliveryMode","destinations","dmqEligible","priority","tracing","tracingSampled","ttl"]}}},"konnect:index/GatewayPluginSolaceLogConfigMessageDestination:GatewayPluginSolaceLogConfigMessageDestination":{"properties":{"name":{"type":"string","description":"The name of the destination. You can use `$(uri_captures['\u003ccapture-identifier\u003e'])` in this field to capture the name from a regex request URI (replace `\u003ccapture-identifier\u003e` with a real value; for example `$(uri_captures['queue'])` when the matched route has a path `~/(?\u003cqueue\u003e[a-z]+)`). Not Null\n"},"type":{"type":"string","description":"The type of the destination. Default: \"QUEUE\"; must be one of [\"QUEUE\", \"TOPIC\"]\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["name","type"]}}},"konnect:index/GatewayPluginSolaceLogConfigSession:GatewayPluginSolaceLogConfigSession":{"properties":{"authentication":{"$ref":"#/types/konnect:index%2FGatewayPluginSolaceLogConfigSessionAuthentication:GatewayPluginSolaceLogConfigSessionAuthentication","description":"Session authentication related configuration.\n"},"calculateMessageExpiry":{"type":"boolean","description":"If this property is true and time-to-live has a positive value in a message, the expiration time is calculated when the message is sent or received. Default: true\n"},"connectTimeout":{"type":"number","description":"The timeout period (in milliseconds) for a connect operation to a given host (per host). Default: 3000\n"},"generateRcvTimestamps":{"type":"boolean","description":"When enabled, a receive timestamp is recorded for each message. Default: true\n"},"generateSendTimestamps":{"type":"boolean","description":"When enabled, a send timestamp is automatically included (if not already present) in the Solace-defined fields for each message sent. Default: true\n"},"generateSenderId":{"type":"boolean","description":"When enabled, a sender id is automatically included (if not already present) in the Solace-defined fields for each message sent. Default: true\n"},"generateSequenceNumber":{"type":"boolean","description":"When enabled, a sequence number is automatically included (if not already present) in the Solace-defined fields for each message sent. Default: true\n"},"host":{"type":"string","description":"The IPv4 or IPv6 address or host name to connect to (see: https://docs.solace.com/API-Developer-Online-Ref-Documentation/c/index.html#host-entry).\n"},"properties":{"type":"object","additionalProperties":{"type":"string"},"description":"Additional Solace session properties (each setting needs to have `SESSION_` prefix).\n"},"sslValidateCertificate":{"type":"boolean","description":"Indicates whether the API should validate server certificates with the trusted certificates. Default: false\n"},"vpnName":{"type":"string","description":"The name of the Message VPN to attempt to join when connecting to an event broker.\n"}},"type":"object","required":["host"],"language":{"nodejs":{"requiredOutputs":["authentication","calculateMessageExpiry","connectTimeout","generateRcvTimestamps","generateSendTimestamps","generateSenderId","generateSequenceNumber","host","sslValidateCertificate"]}}},"konnect:index/GatewayPluginSolaceLogConfigSessionAuthentication:GatewayPluginSolaceLogConfigSessionAuthentication":{"properties":{"accessToken":{"type":"string","description":"The OAuth2 access token used with `OAUTH2` authentication scheme when connecting to an event broker.\n"},"accessTokenHeader":{"type":"string","description":"Specifies the header that contains access token for the `OAUTH2` authentication scheme when connecting to an event broker. This header takes precedence over the \u003cspan pulumi-lang-nodejs=\"`accessToken`\" pulumi-lang-dotnet=\"`AccessToken`\" pulumi-lang-go=\"`accessToken`\" pulumi-lang-python=\"`access_token`\" pulumi-lang-yaml=\"`accessToken`\" pulumi-lang-java=\"`accessToken`\"\u003e`access_token`\u003c/span\u003e field.\n"},"basicAuthHeader":{"type":"string","description":"Specifies the header that contains Basic Authentication credentials for the `BASIC` authentication scheme when connecting to an event broker. This header takes precedence over the \u003cspan pulumi-lang-nodejs=\"`username`\" pulumi-lang-dotnet=\"`Username`\" pulumi-lang-go=\"`username`\" pulumi-lang-python=\"`username`\" pulumi-lang-yaml=\"`username`\" pulumi-lang-java=\"`username`\"\u003e`username`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`password`\" pulumi-lang-dotnet=\"`Password`\" pulumi-lang-go=\"`password`\" pulumi-lang-python=\"`password`\" pulumi-lang-yaml=\"`password`\" pulumi-lang-java=\"`password`\"\u003e`password`\u003c/span\u003e fields.\n"},"idToken":{"type":"string","description":"The OpenID Connect ID token used with `OAUTH2` authentication scheme when connecting to an event broker.\n"},"idTokenHeader":{"type":"string","description":"Specifies the header that contains id token for the `OAUTH2` authentication scheme when connecting to an event broker. This header takes precedence over the \u003cspan pulumi-lang-nodejs=\"`idToken`\" pulumi-lang-dotnet=\"`IdToken`\" pulumi-lang-go=\"`idToken`\" pulumi-lang-python=\"`id_token`\" pulumi-lang-yaml=\"`idToken`\" pulumi-lang-java=\"`idToken`\"\u003e`id_token`\u003c/span\u003e field.\n"},"password":{"type":"string","description":"The password used with `BASIC` authentication scheme when connecting to an event broker.\n"},"scheme":{"type":"string","description":"The client authentication scheme used when connection to an event broker. Default: \"BASIC\"; must be one of [\"BASIC\", \"NONE\", \"OAUTH2\"]\n"},"username":{"type":"string","description":"The username used with `BASIC` authentication scheme when connecting to an event broker.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["scheme"]}}},"konnect:index/GatewayPluginSolaceLogOrdering:GatewayPluginSolaceLogOrdering":{"properties":{"after":{"$ref":"#/types/konnect:index%2FGatewayPluginSolaceLogOrderingAfter:GatewayPluginSolaceLogOrderingAfter"},"before":{"$ref":"#/types/konnect:index%2FGatewayPluginSolaceLogOrderingBefore:GatewayPluginSolaceLogOrderingBefore"}},"type":"object","language":{"nodejs":{"requiredOutputs":["after","before"]}}},"konnect:index/GatewayPluginSolaceLogOrderingAfter:GatewayPluginSolaceLogOrderingAfter":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginSolaceLogOrderingBefore:GatewayPluginSolaceLogOrderingBefore":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginSolaceLogPartial:GatewayPluginSolaceLogPartial":{"properties":{"id":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"name":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"path":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id","name","path"]}}},"konnect:index/GatewayPluginSolaceLogRoute:GatewayPluginSolaceLogRoute":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginSolaceLogService:GatewayPluginSolaceLogService":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginSolaceUpstreamConfig:GatewayPluginSolaceUpstreamConfig":{"properties":{"message":{"$ref":"#/types/konnect:index%2FGatewayPluginSolaceUpstreamConfigMessage:GatewayPluginSolaceUpstreamConfigMessage","description":"The message related configuration.\n"},"session":{"$ref":"#/types/konnect:index%2FGatewayPluginSolaceUpstreamConfigSession:GatewayPluginSolaceUpstreamConfigSession","description":"Session related configuration.\n"}},"type":"object","required":["message","session"]},"konnect:index/GatewayPluginSolaceUpstreamConfigMessage:GatewayPluginSolaceUpstreamConfigMessage":{"properties":{"ackTimeout":{"type":"number","description":"When using a non-DIRECT guaranteed delivery mode, this property sets the message acknowledgement timeout in milliseconds (waiting time). Default: 2000\n"},"defaultContent":{"type":"string","description":"When not using \u003cspan pulumi-lang-nodejs=\"`forwardMethod`\" pulumi-lang-dotnet=\"`ForwardMethod`\" pulumi-lang-go=\"`forwardMethod`\" pulumi-lang-python=\"`forward_method`\" pulumi-lang-yaml=\"`forwardMethod`\" pulumi-lang-java=\"`forwardMethod`\"\u003e`forward_method`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`forwardUri`\" pulumi-lang-dotnet=\"`ForwardUri`\" pulumi-lang-go=\"`forwardUri`\" pulumi-lang-python=\"`forward_uri`\" pulumi-lang-yaml=\"`forwardUri`\" pulumi-lang-java=\"`forwardUri`\"\u003e`forward_uri`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`forwardHeaders`\" pulumi-lang-dotnet=\"`ForwardHeaders`\" pulumi-lang-go=\"`forwardHeaders`\" pulumi-lang-python=\"`forward_headers`\" pulumi-lang-yaml=\"`forwardHeaders`\" pulumi-lang-java=\"`forwardHeaders`\"\u003e`forward_headers`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`forwardBody`\" pulumi-lang-dotnet=\"`ForwardBody`\" pulumi-lang-go=\"`forwardBody`\" pulumi-lang-python=\"`forward_body`\" pulumi-lang-yaml=\"`forwardBody`\" pulumi-lang-java=\"`forwardBody`\"\u003e`forward_body`\u003c/span\u003e, this sets the message content.\n"},"deliveryMode":{"type":"string","description":"Sets the message delivery mode. Default: \"DIRECT\"; must be one of [\"DIRECT\", \"PERSISTENT\"]\n"},"destinations":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginSolaceUpstreamConfigMessageDestination:GatewayPluginSolaceUpstreamConfigMessageDestination"},"description":"The message destinations.\n"},"dmqEligible":{"type":"boolean","description":"Sets the dead message queue (DMQ) eligible property on the message. Default: false\n"},"forwardBody":{"type":"boolean","description":"Include the request body and the body arguments in the message. Default: false\n"},"forwardHeaders":{"type":"boolean","description":"Include the request headers in the message. Default: false\n"},"forwardMethod":{"type":"boolean","description":"Include the request method in the message. Default: false\n"},"forwardUri":{"type":"boolean","description":"Include the request URI and the URI arguments (as in, query arguments) in the message. Default: false\n"},"functions":{"type":"array","items":{"type":"string"},"description":"The Lua functions that manipulates (or generates) the message being sent to Solace. The \u003cspan pulumi-lang-nodejs=\"`message`\" pulumi-lang-dotnet=\"`Message`\" pulumi-lang-go=\"`message`\" pulumi-lang-python=\"`message`\" pulumi-lang-yaml=\"`message`\" pulumi-lang-java=\"`message`\"\u003e`message`\u003c/span\u003e variable can be used to access the current message content, and the function can return a new content.\n"},"priority":{"type":"number","description":"Sets the message priority. Default: 4\n"},"senderId":{"type":"string","description":"Allows the application to set the content of the sender identifier.\n"},"tracing":{"type":"boolean","description":"Enable or disable the tracing propagation. This is primarily used for distributed tracing and message correlation, especially in debugging or tracking message flows across multiple systems. Default: false\n"},"tracingSampled":{"type":"boolean","description":"Forcibly turn on the tracing on all the messages for distributed tracing (tracing needs to be enabled as well). Default: false\n"},"ttl":{"type":"number","description":"Sets the time to live (TTL) in milliseconds for the message. Setting the time to live to zero disables the TTL for the message. Default: 0\n"}},"type":"object","required":["destinations"],"language":{"nodejs":{"requiredOutputs":["ackTimeout","deliveryMode","destinations","dmqEligible","forwardBody","forwardHeaders","forwardMethod","forwardUri","priority","tracing","tracingSampled","ttl"]}}},"konnect:index/GatewayPluginSolaceUpstreamConfigMessageDestination:GatewayPluginSolaceUpstreamConfigMessageDestination":{"properties":{"name":{"type":"string","description":"The name of the destination. You can use $(uri_captures['\\n\\n']) in this field (replace `\u003ccapture-identifier\u003e` with a real value, for example `$uri_captures[’queue’]` when the matched route has a path `~/(?\u003cqueue\u003e[a-z]+)`). Not Null\n"},"type":{"type":"string","description":"The type of the destination. Default: \"QUEUE\"; must be one of [\"QUEUE\", \"TOPIC\"]\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["name","type"]}}},"konnect:index/GatewayPluginSolaceUpstreamConfigSession:GatewayPluginSolaceUpstreamConfigSession":{"properties":{"authentication":{"$ref":"#/types/konnect:index%2FGatewayPluginSolaceUpstreamConfigSessionAuthentication:GatewayPluginSolaceUpstreamConfigSessionAuthentication","description":"Session authentication related configuration.\n"},"calculateMessageExpiry":{"type":"boolean","description":"If this property is true and time-to-live has a positive value in a message, the expiration time is calculated when the message is sent or received. Default: true\n"},"connectTimeout":{"type":"number","description":"The timeout period (in milliseconds) for a connect operation to a given host (per host). Default: 3000\n"},"generateRcvTimestamps":{"type":"boolean","description":"When enabled, a receive timestamp is recorded for each message. Default: true\n"},"generateSendTimestamps":{"type":"boolean","description":"When enabled, a send timestamp is automatically included (if not already present) in the Solace-defined fields for each message sent. Default: true\n"},"generateSenderId":{"type":"boolean","description":"When enabled, a sender id is automatically included (if not already present) in the Solace-defined fields for each message sent. Default: true\n"},"generateSequenceNumber":{"type":"boolean","description":"When enabled, a sequence number is automatically included (if not already present) in the Solace-defined fields for each message sent. Default: true\n"},"host":{"type":"string","description":"The IPv4 or IPv6 address or host name to connect to (see: https://docs.solace.com/API-Developer-Online-Ref-Documentation/c/index.html#host-entry).\n"},"properties":{"type":"object","additionalProperties":{"type":"string"},"description":"Additional Solace session properties (each setting needs to have `SESSION_` prefix).\n"},"sslValidateCertificate":{"type":"boolean","description":"Indicates whether the API should validate server certificates with the trusted certificates. Default: false\n"},"vpnName":{"type":"string","description":"The name of the Message VPN to attempt to join when connecting to an event broker.\n"}},"type":"object","required":["host"],"language":{"nodejs":{"requiredOutputs":["authentication","calculateMessageExpiry","connectTimeout","generateRcvTimestamps","generateSendTimestamps","generateSenderId","generateSequenceNumber","host","sslValidateCertificate"]}}},"konnect:index/GatewayPluginSolaceUpstreamConfigSessionAuthentication:GatewayPluginSolaceUpstreamConfigSessionAuthentication":{"properties":{"accessToken":{"type":"string","description":"The OAuth2 access token used with `OAUTH2` authentication scheme when connecting to an event broker.\n"},"accessTokenHeader":{"type":"string","description":"Specifies the header that contains access token for the `OAUTH2` authentication scheme when connecting to an event broker. This header takes precedence over the \u003cspan pulumi-lang-nodejs=\"`accessToken`\" pulumi-lang-dotnet=\"`AccessToken`\" pulumi-lang-go=\"`accessToken`\" pulumi-lang-python=\"`access_token`\" pulumi-lang-yaml=\"`accessToken`\" pulumi-lang-java=\"`accessToken`\"\u003e`access_token`\u003c/span\u003e field.\n"},"basicAuthHeader":{"type":"string","description":"Specifies the header that contains Basic Authentication credentials for the `BASIC` authentication scheme when connecting to an event broker. This header takes precedence over the \u003cspan pulumi-lang-nodejs=\"`username`\" pulumi-lang-dotnet=\"`Username`\" pulumi-lang-go=\"`username`\" pulumi-lang-python=\"`username`\" pulumi-lang-yaml=\"`username`\" pulumi-lang-java=\"`username`\"\u003e`username`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`password`\" pulumi-lang-dotnet=\"`Password`\" pulumi-lang-go=\"`password`\" pulumi-lang-python=\"`password`\" pulumi-lang-yaml=\"`password`\" pulumi-lang-java=\"`password`\"\u003e`password`\u003c/span\u003e fields.\n"},"idToken":{"type":"string","description":"The OpenID Connect ID token used with `OAUTH2` authentication scheme when connecting to an event broker.\n"},"idTokenHeader":{"type":"string","description":"Specifies the header that contains id token for the `OAUTH2` authentication scheme when connecting to an event broker. This header takes precedence over the \u003cspan pulumi-lang-nodejs=\"`idToken`\" pulumi-lang-dotnet=\"`IdToken`\" pulumi-lang-go=\"`idToken`\" pulumi-lang-python=\"`id_token`\" pulumi-lang-yaml=\"`idToken`\" pulumi-lang-java=\"`idToken`\"\u003e`id_token`\u003c/span\u003e field.\n"},"password":{"type":"string","description":"The password used with `BASIC` authentication scheme when connecting to an event broker.\n"},"scheme":{"type":"string","description":"The client authentication scheme used when connection to an event broker. Default: \"BASIC\"; must be one of [\"BASIC\", \"NONE\", \"OAUTH2\"]\n"},"username":{"type":"string","description":"The username used with `BASIC` authentication scheme when connecting to an event broker.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["scheme"]}}},"konnect:index/GatewayPluginSolaceUpstreamOrdering:GatewayPluginSolaceUpstreamOrdering":{"properties":{"after":{"$ref":"#/types/konnect:index%2FGatewayPluginSolaceUpstreamOrderingAfter:GatewayPluginSolaceUpstreamOrderingAfter"},"before":{"$ref":"#/types/konnect:index%2FGatewayPluginSolaceUpstreamOrderingBefore:GatewayPluginSolaceUpstreamOrderingBefore"}},"type":"object","language":{"nodejs":{"requiredOutputs":["after","before"]}}},"konnect:index/GatewayPluginSolaceUpstreamOrderingAfter:GatewayPluginSolaceUpstreamOrderingAfter":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginSolaceUpstreamOrderingBefore:GatewayPluginSolaceUpstreamOrderingBefore":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginSolaceUpstreamPartial:GatewayPluginSolaceUpstreamPartial":{"properties":{"id":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"name":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"path":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id","name","path"]}}},"konnect:index/GatewayPluginSolaceUpstreamRoute:GatewayPluginSolaceUpstreamRoute":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginSolaceUpstreamService:GatewayPluginSolaceUpstreamService":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginStandardWebhooksConfig:GatewayPluginStandardWebhooksConfig":{"properties":{"secretV1":{"type":"string","description":"Webhook secret\n"},"toleranceSecond":{"type":"number","description":"Tolerance of the webhook timestamp in seconds. If the webhook timestamp is older than this number of seconds, it will be rejected with a '400' response. Default: 300\n"}},"type":"object","required":["secretV1"],"language":{"nodejs":{"requiredOutputs":["secretV1","toleranceSecond"]}}},"konnect:index/GatewayPluginStandardWebhooksConsumerGroup:GatewayPluginStandardWebhooksConsumerGroup":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginStandardWebhooksOrdering:GatewayPluginStandardWebhooksOrdering":{"properties":{"after":{"$ref":"#/types/konnect:index%2FGatewayPluginStandardWebhooksOrderingAfter:GatewayPluginStandardWebhooksOrderingAfter"},"before":{"$ref":"#/types/konnect:index%2FGatewayPluginStandardWebhooksOrderingBefore:GatewayPluginStandardWebhooksOrderingBefore"}},"type":"object","language":{"nodejs":{"requiredOutputs":["after","before"]}}},"konnect:index/GatewayPluginStandardWebhooksOrderingAfter:GatewayPluginStandardWebhooksOrderingAfter":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginStandardWebhooksOrderingBefore:GatewayPluginStandardWebhooksOrderingBefore":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginStandardWebhooksPartial:GatewayPluginStandardWebhooksPartial":{"properties":{"id":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"name":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"path":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id","name","path"]}}},"konnect:index/GatewayPluginStandardWebhooksRoute:GatewayPluginStandardWebhooksRoute":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginStandardWebhooksService:GatewayPluginStandardWebhooksService":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginStatsdAdvancedConfig:GatewayPluginStatsdAdvancedConfig":{"properties":{"allowStatusCodes":{"type":"array","items":{"type":"string"},"description":"List of status code ranges that are allowed to be logged in metrics.\n"},"consumerIdentifierDefault":{"type":"string","description":"The default consumer identifier for metrics. This will take effect when a metric's consumer identifier is omitted. Allowed values are \u003cspan pulumi-lang-nodejs=\"`customId`\" pulumi-lang-dotnet=\"`CustomId`\" pulumi-lang-go=\"`customId`\" pulumi-lang-python=\"`custom_id`\" pulumi-lang-yaml=\"`customId`\" pulumi-lang-java=\"`customId`\"\u003e`custom_id`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`consumerId`\" pulumi-lang-dotnet=\"`ConsumerId`\" pulumi-lang-go=\"`consumerId`\" pulumi-lang-python=\"`consumer_id`\" pulumi-lang-yaml=\"`consumerId`\" pulumi-lang-java=\"`consumerId`\"\u003e`consumer_id`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`username`\" pulumi-lang-dotnet=\"`Username`\" pulumi-lang-go=\"`username`\" pulumi-lang-python=\"`username`\" pulumi-lang-yaml=\"`username`\" pulumi-lang-java=\"`username`\"\u003e`username`\u003c/span\u003e. Default: \"custom*id\"; must be one of [\"consumer*id\", \u003cspan pulumi-lang-nodejs=\"\"customId\"\" pulumi-lang-dotnet=\"\"CustomId\"\" pulumi-lang-go=\"\"customId\"\" pulumi-lang-python=\"\"custom_id\"\" pulumi-lang-yaml=\"\"customId\"\" pulumi-lang-java=\"\"customId\"\"\u003e\"custom_id\"\u003c/span\u003e, \"username\"]\n"},"host":{"type":"string","description":"A string representing a host name, such as example.com. Default: \"localhost\"\n"},"hostnameInPrefix":{"type":"boolean","description":"Include the \u003cspan pulumi-lang-nodejs=\"`hostname`\" pulumi-lang-dotnet=\"`Hostname`\" pulumi-lang-go=\"`hostname`\" pulumi-lang-python=\"`hostname`\" pulumi-lang-yaml=\"`hostname`\" pulumi-lang-java=\"`hostname`\"\u003e`hostname`\u003c/span\u003e in the \u003cspan pulumi-lang-nodejs=\"`prefix`\" pulumi-lang-dotnet=\"`Prefix`\" pulumi-lang-go=\"`prefix`\" pulumi-lang-python=\"`prefix`\" pulumi-lang-yaml=\"`prefix`\" pulumi-lang-java=\"`prefix`\"\u003e`prefix`\u003c/span\u003e for each metric name. Default: false\n"},"metrics":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginStatsdAdvancedConfigMetric:GatewayPluginStatsdAdvancedConfigMetric"},"description":"List of Metrics to be logged.\n"},"port":{"type":"number","description":"An integer representing a port number between 0 and 65535, inclusive. Default: 8125\n"},"prefix":{"type":"string","description":"String to prefix to each metric's name. Default: \"kong\"\n"},"queue":{"$ref":"#/types/konnect:index%2FGatewayPluginStatsdAdvancedConfigQueue:GatewayPluginStatsdAdvancedConfigQueue"},"serviceIdentifierDefault":{"type":"string","description":"The default service identifier for metrics. This will take effect when a metric's service identifier is omitted. Allowed values are \u003cspan pulumi-lang-nodejs=\"`serviceNameOrHost`\" pulumi-lang-dotnet=\"`ServiceNameOrHost`\" pulumi-lang-go=\"`serviceNameOrHost`\" pulumi-lang-python=\"`service_name_or_host`\" pulumi-lang-yaml=\"`serviceNameOrHost`\" pulumi-lang-java=\"`serviceNameOrHost`\"\u003e`service_name_or_host`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`serviceId`\" pulumi-lang-dotnet=\"`ServiceId`\" pulumi-lang-go=\"`serviceId`\" pulumi-lang-python=\"`service_id`\" pulumi-lang-yaml=\"`serviceId`\" pulumi-lang-java=\"`serviceId`\"\u003e`service_id`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`serviceName`\" pulumi-lang-dotnet=\"`ServiceName`\" pulumi-lang-go=\"`serviceName`\" pulumi-lang-python=\"`service_name`\" pulumi-lang-yaml=\"`serviceName`\" pulumi-lang-java=\"`serviceName`\"\u003e`service_name`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`serviceHost`\" pulumi-lang-dotnet=\"`ServiceHost`\" pulumi-lang-go=\"`serviceHost`\" pulumi-lang-python=\"`service_host`\" pulumi-lang-yaml=\"`serviceHost`\" pulumi-lang-java=\"`serviceHost`\"\u003e`service_host`\u003c/span\u003e. Default: \"service*name*or*host\"; must be one of [\"service*host\", \"service*id\", \"service*name\", \"service*name*or_host\"]\n"},"udpPacketSize":{"type":"number","description":"Combine UDP packet up to the size configured. If zero (0), don't combine the UDP packet. Must be a number between 0 and 65507 (inclusive). Default: 0\n"},"useTcp":{"type":"boolean","description":"Use TCP instead of UDP. Default: false\n"},"workspaceIdentifierDefault":{"type":"string","description":"The default workspace identifier for metrics. This will take effect when a metric's workspace identifier is omitted. Allowed values are \u003cspan pulumi-lang-nodejs=\"`workspaceId`\" pulumi-lang-dotnet=\"`WorkspaceId`\" pulumi-lang-go=\"`workspaceId`\" pulumi-lang-python=\"`workspace_id`\" pulumi-lang-yaml=\"`workspaceId`\" pulumi-lang-java=\"`workspaceId`\"\u003e`workspace_id`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`workspaceName`\" pulumi-lang-dotnet=\"`WorkspaceName`\" pulumi-lang-go=\"`workspaceName`\" pulumi-lang-python=\"`workspace_name`\" pulumi-lang-yaml=\"`workspaceName`\" pulumi-lang-java=\"`workspaceName`\"\u003e`workspace_name`\u003c/span\u003e. Default: \"workspace*id\"; must be one of [\"workspace*id\", \u003cspan pulumi-lang-nodejs=\"\"workspaceName\"\" pulumi-lang-dotnet=\"\"WorkspaceName\"\" pulumi-lang-go=\"\"workspaceName\"\" pulumi-lang-python=\"\"workspace_name\"\" pulumi-lang-yaml=\"\"workspaceName\"\" pulumi-lang-java=\"\"workspaceName\"\"\u003e\"workspace_name\"\u003c/span\u003e]\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["consumerIdentifierDefault","host","hostnameInPrefix","port","prefix","queue","serviceIdentifierDefault","udpPacketSize","useTcp","workspaceIdentifierDefault"]}}},"konnect:index/GatewayPluginStatsdAdvancedConfigMetric:GatewayPluginStatsdAdvancedConfigMetric":{"properties":{"consumerIdentifier":{"type":"string","description":"must be one of [\"consumer*id\", \"custom*id\", \"username\"]\n"},"name":{"type":"string","description":"Not Null; must be one of [\"cache*datastore*hits*total\", \"cache*datastore*misses*total\", \"kong*latency\", \"latency\", \"request*count\", \"request*per*user\", \"request*size\", \"response*size\", \"shdict*usage\", \"status*count\", \"status*count*per*user\", \"status*count*per*user*per*route\", \"status*count*per*workspace\", \"unique*users\", \u003cspan pulumi-lang-nodejs=\"\"upstreamLatency\"\" pulumi-lang-dotnet=\"\"UpstreamLatency\"\" pulumi-lang-go=\"\"upstreamLatency\"\" pulumi-lang-python=\"\"upstream_latency\"\" pulumi-lang-yaml=\"\"upstreamLatency\"\" pulumi-lang-java=\"\"upstreamLatency\"\"\u003e\"upstream_latency\"\u003c/span\u003e]\n"},"sampleRate":{"type":"number"},"serviceIdentifier":{"type":"string","description":"must be one of [\"service*host\", \"service*id\", \"service*name\", \"service*name*or*host\"]\n"},"statType":{"type":"string","description":"Not Null; must be one of [\"counter\", \"gauge\", \"histogram\", \"meter\", \"set\", \"timer\"]\n"},"workspaceIdentifier":{"type":"string","description":"must be one of [\"workspace*id\", \"workspace*name\"]\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["consumerIdentifier","name","serviceIdentifier","statType","workspaceIdentifier"]}}},"konnect:index/GatewayPluginStatsdAdvancedConfigQueue:GatewayPluginStatsdAdvancedConfigQueue":{"properties":{"concurrencyLimit":{"type":"number","description":"The number of of queue delivery timers. -1 indicates unlimited. Default: 1; must be one of [\"-1\", \"1\"]\n"},"initialRetryDelay":{"type":"number","description":"Time in seconds before the initial retry is made for a failing batch.\n"},"maxBatchSize":{"type":"number","description":"Maximum number of entries that can be processed at a time. Default: 1\n"},"maxBytes":{"type":"number","description":"Maximum number of bytes that can be waiting on a queue, requires string content.\n"},"maxCoalescingDelay":{"type":"number","description":"Maximum number of (fractional) seconds to elapse after the first entry was queued before the queue starts calling the handler. Default: 1\n"},"maxEntries":{"type":"number","description":"Maximum number of entries that can be waiting on the queue. Default: 10000\n"},"maxRetryDelay":{"type":"number","description":"Maximum time in seconds between retries, caps exponential backoff. Default: 60\n"},"maxRetryTime":{"type":"number","description":"Time in seconds before the queue gives up calling a failed handler for a batch. Default: 60\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["concurrencyLimit","initialRetryDelay","maxBatchSize","maxCoalescingDelay","maxEntries","maxRetryDelay","maxRetryTime"]}}},"konnect:index/GatewayPluginStatsdAdvancedConsumer:GatewayPluginStatsdAdvancedConsumer":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginStatsdAdvancedOrdering:GatewayPluginStatsdAdvancedOrdering":{"properties":{"after":{"$ref":"#/types/konnect:index%2FGatewayPluginStatsdAdvancedOrderingAfter:GatewayPluginStatsdAdvancedOrderingAfter"},"before":{"$ref":"#/types/konnect:index%2FGatewayPluginStatsdAdvancedOrderingBefore:GatewayPluginStatsdAdvancedOrderingBefore"}},"type":"object","language":{"nodejs":{"requiredOutputs":["after","before"]}}},"konnect:index/GatewayPluginStatsdAdvancedOrderingAfter:GatewayPluginStatsdAdvancedOrderingAfter":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginStatsdAdvancedOrderingBefore:GatewayPluginStatsdAdvancedOrderingBefore":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginStatsdAdvancedPartial:GatewayPluginStatsdAdvancedPartial":{"properties":{"id":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"name":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"path":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id","name","path"]}}},"konnect:index/GatewayPluginStatsdAdvancedRoute:GatewayPluginStatsdAdvancedRoute":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginStatsdAdvancedService:GatewayPluginStatsdAdvancedService":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginStatsdConfig:GatewayPluginStatsdConfig":{"properties":{"allowStatusCodes":{"type":"array","items":{"type":"string"},"description":"List of status code ranges that are allowed to be logged in metrics.\n"},"consumerIdentifierDefault":{"type":"string","description":"Default: \"custom*id\"; must be one of [\"consumer*id\", \u003cspan pulumi-lang-nodejs=\"\"customId\"\" pulumi-lang-dotnet=\"\"CustomId\"\" pulumi-lang-go=\"\"customId\"\" pulumi-lang-python=\"\"custom_id\"\" pulumi-lang-yaml=\"\"customId\"\" pulumi-lang-java=\"\"customId\"\"\u003e\"custom_id\"\u003c/span\u003e, \"username\"]\n"},"flushTimeout":{"type":"number"},"host":{"type":"string","description":"The IP address or hostname of StatsD server to send data to. Default: \"localhost\"\n"},"hostnameInPrefix":{"type":"boolean","description":"Default: false\n"},"metrics":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginStatsdConfigMetric:GatewayPluginStatsdConfigMetric"},"description":"List of metrics to be logged.\n"},"port":{"type":"number","description":"The port of StatsD server to send data to. Default: 8125\n"},"prefix":{"type":"string","description":"String to prefix to each metric's name. Default: \"kong\"\n"},"queue":{"$ref":"#/types/konnect:index%2FGatewayPluginStatsdConfigQueue:GatewayPluginStatsdConfigQueue"},"queueSize":{"type":"number"},"retryCount":{"type":"number"},"serviceIdentifierDefault":{"type":"string","description":"Default: \"service*name*or*host\"; must be one of [\"service*host\", \"service*id\", \"service*name\", \"service*name*or_host\"]\n"},"tagStyle":{"type":"string","description":"must be one of [\"dogstatsd\", \"influxdb\", \"librato\", \"signalfx\"]\n"},"udpPacketSize":{"type":"number","description":"Default: 0\n"},"useTcp":{"type":"boolean","description":"Default: false\n"},"workspaceIdentifierDefault":{"type":"string","description":"Default: \"workspace*id\"; must be one of [\"workspace*id\", \u003cspan pulumi-lang-nodejs=\"\"workspaceName\"\" pulumi-lang-dotnet=\"\"WorkspaceName\"\" pulumi-lang-go=\"\"workspaceName\"\" pulumi-lang-python=\"\"workspace_name\"\" pulumi-lang-yaml=\"\"workspaceName\"\" pulumi-lang-java=\"\"workspaceName\"\"\u003e\"workspace_name\"\u003c/span\u003e]\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["consumerIdentifierDefault","host","hostnameInPrefix","port","prefix","queue","serviceIdentifierDefault","tagStyle","udpPacketSize","useTcp","workspaceIdentifierDefault"]}}},"konnect:index/GatewayPluginStatsdConfigMetric:GatewayPluginStatsdConfigMetric":{"properties":{"consumerIdentifier":{"type":"string","description":"Authenticated user detail. must be one of [\"consumer*id\", \"custom*id\", \"username\"]\n"},"name":{"type":"string","description":"StatsD metric’s name. Not Null; must be one of [\"cache*datastore*hits*total\", \"cache*datastore*misses*total\", \"kong*latency\", \"latency\", \"request*count\", \"request*per*user\", \"request*size\", \"response*size\", \"shdict*usage\", \"status*count\", \"status*count*per*user\", \"status*count*per*user*per*route\", \"status*count*per*workspace\", \"unique*users\", \u003cspan pulumi-lang-nodejs=\"\"upstreamLatency\"\" pulumi-lang-dotnet=\"\"UpstreamLatency\"\" pulumi-lang-go=\"\"upstreamLatency\"\" pulumi-lang-python=\"\"upstream_latency\"\" pulumi-lang-yaml=\"\"upstreamLatency\"\" pulumi-lang-java=\"\"upstreamLatency\"\"\u003e\"upstream_latency\"\u003c/span\u003e]\n"},"sampleRate":{"type":"number","description":"Sampling rate\n"},"serviceIdentifier":{"type":"string","description":"Service detail. must be one of [\"service*host\", \"service*id\", \"service*name\", \"service*name*or*host\"]\n"},"statType":{"type":"string","description":"Determines what sort of event a metric represents. Not Null; must be one of [\"counter\", \"gauge\", \"histogram\", \"meter\", \"set\", \"timer\"]\n"},"workspaceIdentifier":{"type":"string","description":"Workspace detail. must be one of [\"workspace*id\", \"workspace*name\"]\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["consumerIdentifier","name","serviceIdentifier","statType","workspaceIdentifier"]}}},"konnect:index/GatewayPluginStatsdConfigQueue:GatewayPluginStatsdConfigQueue":{"properties":{"concurrencyLimit":{"type":"number","description":"The number of of queue delivery timers. -1 indicates unlimited. Default: 1; must be one of [\"-1\", \"1\"]\n"},"initialRetryDelay":{"type":"number","description":"Time in seconds before the initial retry is made for a failing batch.\n"},"maxBatchSize":{"type":"number","description":"Maximum number of entries that can be processed at a time. Default: 1\n"},"maxBytes":{"type":"number","description":"Maximum number of bytes that can be waiting on a queue, requires string content.\n"},"maxCoalescingDelay":{"type":"number","description":"Maximum number of (fractional) seconds to elapse after the first entry was queued before the queue starts calling the handler. Default: 1\n"},"maxEntries":{"type":"number","description":"Maximum number of entries that can be waiting on the queue. Default: 10000\n"},"maxRetryDelay":{"type":"number","description":"Maximum time in seconds between retries, caps exponential backoff. Default: 60\n"},"maxRetryTime":{"type":"number","description":"Time in seconds before the queue gives up calling a failed handler for a batch. Default: 60\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["concurrencyLimit","initialRetryDelay","maxBatchSize","maxCoalescingDelay","maxEntries","maxRetryDelay","maxRetryTime"]}}},"konnect:index/GatewayPluginStatsdConsumer:GatewayPluginStatsdConsumer":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginStatsdOrdering:GatewayPluginStatsdOrdering":{"properties":{"after":{"$ref":"#/types/konnect:index%2FGatewayPluginStatsdOrderingAfter:GatewayPluginStatsdOrderingAfter"},"before":{"$ref":"#/types/konnect:index%2FGatewayPluginStatsdOrderingBefore:GatewayPluginStatsdOrderingBefore"}},"type":"object","language":{"nodejs":{"requiredOutputs":["after","before"]}}},"konnect:index/GatewayPluginStatsdOrderingAfter:GatewayPluginStatsdOrderingAfter":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginStatsdOrderingBefore:GatewayPluginStatsdOrderingBefore":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginStatsdPartial:GatewayPluginStatsdPartial":{"properties":{"id":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"name":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"path":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id","name","path"]}}},"konnect:index/GatewayPluginStatsdRoute:GatewayPluginStatsdRoute":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginStatsdService:GatewayPluginStatsdService":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginSyslogConfig:GatewayPluginSyslogConfig":{"properties":{"clientErrorsSeverity":{"type":"string","description":"Default: \"info\"; must be one of [\"alert\", \"crit\", \"debug\", \"emerg\", \"err\", \"info\", \"notice\", \"warning\"]\n"},"customFieldsByLua":{"type":"object","additionalProperties":{"type":"string"},"description":"Lua code as a key-value map\n"},"facility":{"type":"string","description":"The facility is used by the operating system to decide how to handle each log message. Default: \"user\"; must be one of [\"auth\", \"authpriv\", \"cron\", \"daemon\", \"ftp\", \"kern\", \"local0\", \"local1\", \"local2\", \"local3\", \"local4\", \"local5\", \"local6\", \"local7\", \"lpr\", \"mail\", \"news\", \"syslog\", \"user\", \"uucp\"]\n"},"logLevel":{"type":"string","description":"Default: \"info\"; must be one of [\"alert\", \"crit\", \"debug\", \"emerg\", \"err\", \"info\", \"notice\", \"warning\"]\n"},"serverErrorsSeverity":{"type":"string","description":"Default: \"info\"; must be one of [\"alert\", \"crit\", \"debug\", \"emerg\", \"err\", \"info\", \"notice\", \"warning\"]\n"},"successfulSeverity":{"type":"string","description":"Default: \"info\"; must be one of [\"alert\", \"crit\", \"debug\", \"emerg\", \"err\", \"info\", \"notice\", \"warning\"]\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["clientErrorsSeverity","facility","logLevel","serverErrorsSeverity","successfulSeverity"]}}},"konnect:index/GatewayPluginSyslogConsumer:GatewayPluginSyslogConsumer":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginSyslogOrdering:GatewayPluginSyslogOrdering":{"properties":{"after":{"$ref":"#/types/konnect:index%2FGatewayPluginSyslogOrderingAfter:GatewayPluginSyslogOrderingAfter"},"before":{"$ref":"#/types/konnect:index%2FGatewayPluginSyslogOrderingBefore:GatewayPluginSyslogOrderingBefore"}},"type":"object","language":{"nodejs":{"requiredOutputs":["after","before"]}}},"konnect:index/GatewayPluginSyslogOrderingAfter:GatewayPluginSyslogOrderingAfter":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginSyslogOrderingBefore:GatewayPluginSyslogOrderingBefore":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginSyslogPartial:GatewayPluginSyslogPartial":{"properties":{"id":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"name":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"path":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id","name","path"]}}},"konnect:index/GatewayPluginSyslogRoute:GatewayPluginSyslogRoute":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginSyslogService:GatewayPluginSyslogService":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginTcpLogConfig:GatewayPluginTcpLogConfig":{"properties":{"customFieldsByLua":{"type":"object","additionalProperties":{"type":"string"},"description":"A list of key-value pairs, where the key is the name of a log field and the value is a chunk of Lua code, whose return value sets or replaces the log field value.\n"},"host":{"type":"string","description":"The IP address or host name to send data to.\n"},"keepalive":{"type":"number","description":"An optional value in milliseconds that defines how long an idle connection lives before being closed. Default: 60000\n"},"port":{"type":"number","description":"The port to send data to on the upstream server.\n"},"sslVerify":{"type":"boolean","description":"When using TLS, this option enables verification of the certificate presented by the server. Default: false\n"},"timeout":{"type":"number","description":"An optional timeout in milliseconds when sending data to the upstream server. Default: 10000\n"},"tls":{"type":"boolean","description":"Indicates whether to perform a TLS handshake against the remote server. Default: false\n"},"tlsSni":{"type":"string","description":"An optional string that defines the SNI (Server Name Indication) hostname to send in the TLS handshake.\n"}},"type":"object","required":["host","port"],"language":{"nodejs":{"requiredOutputs":["host","keepalive","port","sslVerify","timeout","tls"]}}},"konnect:index/GatewayPluginTcpLogConsumer:GatewayPluginTcpLogConsumer":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginTcpLogOrdering:GatewayPluginTcpLogOrdering":{"properties":{"after":{"$ref":"#/types/konnect:index%2FGatewayPluginTcpLogOrderingAfter:GatewayPluginTcpLogOrderingAfter"},"before":{"$ref":"#/types/konnect:index%2FGatewayPluginTcpLogOrderingBefore:GatewayPluginTcpLogOrderingBefore"}},"type":"object","language":{"nodejs":{"requiredOutputs":["after","before"]}}},"konnect:index/GatewayPluginTcpLogOrderingAfter:GatewayPluginTcpLogOrderingAfter":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginTcpLogOrderingBefore:GatewayPluginTcpLogOrderingBefore":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginTcpLogPartial:GatewayPluginTcpLogPartial":{"properties":{"id":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"name":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"path":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id","name","path"]}}},"konnect:index/GatewayPluginTcpLogRoute:GatewayPluginTcpLogRoute":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginTcpLogService:GatewayPluginTcpLogService":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginTlsHandshakeModifierConfig:GatewayPluginTlsHandshakeModifierConfig":{"properties":{"tlsClientCertificate":{"type":"string","description":"TLS Client Certificate. Default: \"REQUEST\"; must be \"REQUEST\"\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["tlsClientCertificate"]}}},"konnect:index/GatewayPluginTlsHandshakeModifierOrdering:GatewayPluginTlsHandshakeModifierOrdering":{"properties":{"after":{"$ref":"#/types/konnect:index%2FGatewayPluginTlsHandshakeModifierOrderingAfter:GatewayPluginTlsHandshakeModifierOrderingAfter"},"before":{"$ref":"#/types/konnect:index%2FGatewayPluginTlsHandshakeModifierOrderingBefore:GatewayPluginTlsHandshakeModifierOrderingBefore"}},"type":"object","language":{"nodejs":{"requiredOutputs":["after","before"]}}},"konnect:index/GatewayPluginTlsHandshakeModifierOrderingAfter:GatewayPluginTlsHandshakeModifierOrderingAfter":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginTlsHandshakeModifierOrderingBefore:GatewayPluginTlsHandshakeModifierOrderingBefore":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginTlsHandshakeModifierPartial:GatewayPluginTlsHandshakeModifierPartial":{"properties":{"id":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"name":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"path":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id","name","path"]}}},"konnect:index/GatewayPluginTlsHandshakeModifierRoute:GatewayPluginTlsHandshakeModifierRoute":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginTlsHandshakeModifierService:GatewayPluginTlsHandshakeModifierService":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginTlsMetadataHeadersConfig:GatewayPluginTlsMetadataHeadersConfig":{"properties":{"clientCertFingerprintHeaderName":{"type":"string","description":"Define the HTTP header name used for the SHA1 fingerprint of the client certificate. Default: \"X-Client-Cert-Fingerprint\"\n"},"clientCertHeaderName":{"type":"string","description":"Define the HTTP header name used for the PEM format URL encoded client certificate. Default: \"X-Client-Cert\"\n"},"clientCertIssuerDnHeaderName":{"type":"string","description":"Define the HTTP header name used for the issuer DN of the client certificate. Default: \"X-Client-Cert-Issuer-DN\"\n"},"clientCertSubjectDnHeaderName":{"type":"string","description":"Define the HTTP header name used for the subject DN of the client certificate. Default: \"X-Client-Cert-Subject-DN\"\n"},"clientSerialHeaderName":{"type":"string","description":"Define the HTTP header name used for the serial number of the client certificate. Default: \"X-Client-Cert-Serial\"\n"},"injectClientCertDetails":{"type":"boolean","description":"Enables TLS client certificate metadata values to be injected into HTTP headers. Default: false\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["clientCertFingerprintHeaderName","clientCertHeaderName","clientCertIssuerDnHeaderName","clientCertSubjectDnHeaderName","clientSerialHeaderName","injectClientCertDetails"]}}},"konnect:index/GatewayPluginTlsMetadataHeadersOrdering:GatewayPluginTlsMetadataHeadersOrdering":{"properties":{"after":{"$ref":"#/types/konnect:index%2FGatewayPluginTlsMetadataHeadersOrderingAfter:GatewayPluginTlsMetadataHeadersOrderingAfter"},"before":{"$ref":"#/types/konnect:index%2FGatewayPluginTlsMetadataHeadersOrderingBefore:GatewayPluginTlsMetadataHeadersOrderingBefore"}},"type":"object","language":{"nodejs":{"requiredOutputs":["after","before"]}}},"konnect:index/GatewayPluginTlsMetadataHeadersOrderingAfter:GatewayPluginTlsMetadataHeadersOrderingAfter":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginTlsMetadataHeadersOrderingBefore:GatewayPluginTlsMetadataHeadersOrderingBefore":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginTlsMetadataHeadersPartial:GatewayPluginTlsMetadataHeadersPartial":{"properties":{"id":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"name":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"path":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id","name","path"]}}},"konnect:index/GatewayPluginTlsMetadataHeadersRoute:GatewayPluginTlsMetadataHeadersRoute":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginTlsMetadataHeadersService:GatewayPluginTlsMetadataHeadersService":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginUdpLogConfig:GatewayPluginUdpLogConfig":{"properties":{"customFieldsByLua":{"type":"object","additionalProperties":{"type":"string"},"description":"Lua code as a key-value map\n"},"host":{"type":"string","description":"A string representing a host name, such as example.com.\n"},"port":{"type":"number","description":"An integer representing a port number between 0 and 65535, inclusive.\n"},"timeout":{"type":"number","description":"An optional timeout in milliseconds when sending data to the upstream server. Default: 10000\n"}},"type":"object","required":["host","port"],"language":{"nodejs":{"requiredOutputs":["host","port","timeout"]}}},"konnect:index/GatewayPluginUdpLogConsumer:GatewayPluginUdpLogConsumer":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginUdpLogOrdering:GatewayPluginUdpLogOrdering":{"properties":{"after":{"$ref":"#/types/konnect:index%2FGatewayPluginUdpLogOrderingAfter:GatewayPluginUdpLogOrderingAfter"},"before":{"$ref":"#/types/konnect:index%2FGatewayPluginUdpLogOrderingBefore:GatewayPluginUdpLogOrderingBefore"}},"type":"object","language":{"nodejs":{"requiredOutputs":["after","before"]}}},"konnect:index/GatewayPluginUdpLogOrderingAfter:GatewayPluginUdpLogOrderingAfter":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginUdpLogOrderingBefore:GatewayPluginUdpLogOrderingBefore":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginUdpLogPartial:GatewayPluginUdpLogPartial":{"properties":{"id":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"name":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"path":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id","name","path"]}}},"konnect:index/GatewayPluginUdpLogRoute:GatewayPluginUdpLogRoute":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginUdpLogService:GatewayPluginUdpLogService":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginUpstreamOauthConfig:GatewayPluginUpstreamOauthConfig":{"properties":{"behavior":{"$ref":"#/types/konnect:index%2FGatewayPluginUpstreamOauthConfigBehavior:GatewayPluginUpstreamOauthConfigBehavior"},"cache":{"$ref":"#/types/konnect:index%2FGatewayPluginUpstreamOauthConfigCache:GatewayPluginUpstreamOauthConfigCache"},"client":{"$ref":"#/types/konnect:index%2FGatewayPluginUpstreamOauthConfigClient:GatewayPluginUpstreamOauthConfigClient"},"oauth":{"$ref":"#/types/konnect:index%2FGatewayPluginUpstreamOauthConfigOauth:GatewayPluginUpstreamOauthConfigOauth"}},"type":"object","required":["oauth"],"language":{"nodejs":{"requiredOutputs":["behavior","cache","client","oauth"]}}},"konnect:index/GatewayPluginUpstreamOauthConfigBehavior:GatewayPluginUpstreamOauthConfigBehavior":{"properties":{"idpErrorResponseBodyTemplate":{"type":"string","description":"The template to use to create the body of the response to return to the consumer if Kong fails to obtain a token from the IdP. Default: \"{ \\\"code\\\": \\\"{{status}}\\\", \\\"message\\\": \\\"{{message}}\\\" }\"\n"},"idpErrorResponseContentType":{"type":"string","description":"The Content-Type of the response to return to the consumer if Kong fails to obtain a token from the IdP. Default: \"application/json; charset=utf-8\"\n"},"idpErrorResponseMessage":{"type":"string","description":"The message to embed in the body of the response to return to the consumer if Kong fails to obtain a token from the IdP. Default: \"Failed to authenticate request to upstream\"\n"},"idpErrorResponseStatusCode":{"type":"number","description":"The response code to return to the consumer if Kong fails to obtain a token from the IdP. Default: 502\n"},"purgeTokenOnUpstreamStatusCodes":{"type":"array","items":{"type":"number"},"description":"An array of status codes which will force an access token to be purged when returned by the upstream. An empty array will disable this functionality. Default: [401]\n"},"upstreamAccessTokenHeaderName":{"type":"string","description":"The name of the header used to send the access token (obtained from the IdP) to the upstream service. Default: \"Authorization\"\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["idpErrorResponseBodyTemplate","idpErrorResponseContentType","idpErrorResponseMessage","idpErrorResponseStatusCode","purgeTokenOnUpstreamStatusCodes","upstreamAccessTokenHeaderName"]}}},"konnect:index/GatewayPluginUpstreamOauthConfigCache:GatewayPluginUpstreamOauthConfigCache":{"properties":{"defaultTtl":{"type":"number","description":"The lifetime of a token without an explicit \u003cspan pulumi-lang-nodejs=\"`expiresIn`\" pulumi-lang-dotnet=\"`ExpiresIn`\" pulumi-lang-go=\"`expiresIn`\" pulumi-lang-python=\"`expires_in`\" pulumi-lang-yaml=\"`expiresIn`\" pulumi-lang-java=\"`expiresIn`\"\u003e`expires_in`\u003c/span\u003e value. Default: 3600\n"},"eagerlyExpire":{"type":"number","description":"The number of seconds to eagerly expire a cached token. By default, a cached token expires 5 seconds before its lifetime as defined in \u003cspan pulumi-lang-nodejs=\"`expiresIn`\" pulumi-lang-dotnet=\"`ExpiresIn`\" pulumi-lang-go=\"`expiresIn`\" pulumi-lang-python=\"`expires_in`\" pulumi-lang-yaml=\"`expiresIn`\" pulumi-lang-java=\"`expiresIn`\"\u003e`expires_in`\u003c/span\u003e. Default: 5\n"},"memory":{"$ref":"#/types/konnect:index%2FGatewayPluginUpstreamOauthConfigCacheMemory:GatewayPluginUpstreamOauthConfigCacheMemory"},"redis":{"$ref":"#/types/konnect:index%2FGatewayPluginUpstreamOauthConfigCacheRedis:GatewayPluginUpstreamOauthConfigCacheRedis"},"strategy":{"type":"string","description":"The method Kong should use to cache tokens issued by the IdP. Default: \"memory\"; must be one of [\"memory\", \"redis\"]\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["defaultTtl","eagerlyExpire","memory","redis","strategy"]}}},"konnect:index/GatewayPluginUpstreamOauthConfigCacheMemory:GatewayPluginUpstreamOauthConfigCacheMemory":{"properties":{"dictionaryName":{"type":"string","description":"The shared dictionary used by the plugin to cache tokens if `config.cache.strategy` is set to \u003cspan pulumi-lang-nodejs=\"`memory`\" pulumi-lang-dotnet=\"`Memory`\" pulumi-lang-go=\"`memory`\" pulumi-lang-python=\"`memory`\" pulumi-lang-yaml=\"`memory`\" pulumi-lang-java=\"`memory`\"\u003e`memory`\u003c/span\u003e. Default: \"kong*db*cache\"\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["dictionaryName"]}}},"konnect:index/GatewayPluginUpstreamOauthConfigCacheRedis:GatewayPluginUpstreamOauthConfigCacheRedis":{"properties":{"cloudAuthentication":{"$ref":"#/types/konnect:index%2FGatewayPluginUpstreamOauthConfigCacheRedisCloudAuthentication:GatewayPluginUpstreamOauthConfigCacheRedisCloudAuthentication","description":"Cloud auth related configs for connecting to a Cloud Provider's Redis instance.\n"},"clusterMaxRedirections":{"type":"number","description":"Maximum retry attempts for redirection. Default: 5\n"},"clusterNodes":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginUpstreamOauthConfigCacheRedisClusterNode:GatewayPluginUpstreamOauthConfigCacheRedisClusterNode"},"description":"Cluster addresses to use for Redis connections when the \u003cspan pulumi-lang-nodejs=\"`redis`\" pulumi-lang-dotnet=\"`Redis`\" pulumi-lang-go=\"`redis`\" pulumi-lang-python=\"`redis`\" pulumi-lang-yaml=\"`redis`\" pulumi-lang-java=\"`redis`\"\u003e`redis`\u003c/span\u003e strategy is defined. Defining this field implies using a Redis Cluster. The minimum length of the array is 1 element.\n"},"connectTimeout":{"type":"number","description":"An integer representing a timeout in milliseconds. Must be between 0 and 2^31-2. Default: 2000\n"},"connectionIsProxied":{"type":"boolean","description":"If the connection to Redis is proxied (e.g. Envoy), set it \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e. Set the \u003cspan pulumi-lang-nodejs=\"`host`\" pulumi-lang-dotnet=\"`Host`\" pulumi-lang-go=\"`host`\" pulumi-lang-python=\"`host`\" pulumi-lang-yaml=\"`host`\" pulumi-lang-java=\"`host`\"\u003e`host`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`port`\" pulumi-lang-dotnet=\"`Port`\" pulumi-lang-go=\"`port`\" pulumi-lang-python=\"`port`\" pulumi-lang-yaml=\"`port`\" pulumi-lang-java=\"`port`\"\u003e`port`\u003c/span\u003e to point to the proxy address. Default: false\n"},"database":{"type":"number","description":"Database to use for the Redis connection when using the \u003cspan pulumi-lang-nodejs=\"`redis`\" pulumi-lang-dotnet=\"`Redis`\" pulumi-lang-go=\"`redis`\" pulumi-lang-python=\"`redis`\" pulumi-lang-yaml=\"`redis`\" pulumi-lang-java=\"`redis`\"\u003e`redis`\u003c/span\u003e strategy. Default: 0\n"},"host":{"type":"string","description":"A string representing a host name, such as example.com. Default: \"127.0.0.1\"\n"},"keepaliveBacklog":{"type":"number","description":"Limits the total number of opened connections for a pool. If the connection pool is full, connection queues above the limit go into the backlog queue. If the backlog queue is full, subsequent connect operations fail and return \u003cspan pulumi-lang-nodejs=\"`nil`\" pulumi-lang-dotnet=\"`Nil`\" pulumi-lang-go=\"`nil`\" pulumi-lang-python=\"`nil`\" pulumi-lang-yaml=\"`nil`\" pulumi-lang-java=\"`nil`\"\u003e`nil`\u003c/span\u003e. Queued operations (subject to set timeouts) resume once the number of connections in the pool is less than \u003cspan pulumi-lang-nodejs=\"`keepalivePoolSize`\" pulumi-lang-dotnet=\"`KeepalivePoolSize`\" pulumi-lang-go=\"`keepalivePoolSize`\" pulumi-lang-python=\"`keepalive_pool_size`\" pulumi-lang-yaml=\"`keepalivePoolSize`\" pulumi-lang-java=\"`keepalivePoolSize`\"\u003e`keepalive_pool_size`\u003c/span\u003e. If latency is high or throughput is low, try increasing this value. Empirically, this value is larger than \u003cspan pulumi-lang-nodejs=\"`keepalivePoolSize`\" pulumi-lang-dotnet=\"`KeepalivePoolSize`\" pulumi-lang-go=\"`keepalivePoolSize`\" pulumi-lang-python=\"`keepalive_pool_size`\" pulumi-lang-yaml=\"`keepalivePoolSize`\" pulumi-lang-java=\"`keepalivePoolSize`\"\u003e`keepalive_pool_size`\u003c/span\u003e.\n"},"keepalivePoolSize":{"type":"number","description":"The size limit for every cosocket connection pool associated with every remote server, per worker process. If neither \u003cspan pulumi-lang-nodejs=\"`keepalivePoolSize`\" pulumi-lang-dotnet=\"`KeepalivePoolSize`\" pulumi-lang-go=\"`keepalivePoolSize`\" pulumi-lang-python=\"`keepalive_pool_size`\" pulumi-lang-yaml=\"`keepalivePoolSize`\" pulumi-lang-java=\"`keepalivePoolSize`\"\u003e`keepalive_pool_size`\u003c/span\u003e nor \u003cspan pulumi-lang-nodejs=\"`keepaliveBacklog`\" pulumi-lang-dotnet=\"`KeepaliveBacklog`\" pulumi-lang-go=\"`keepaliveBacklog`\" pulumi-lang-python=\"`keepalive_backlog`\" pulumi-lang-yaml=\"`keepaliveBacklog`\" pulumi-lang-java=\"`keepaliveBacklog`\"\u003e`keepalive_backlog`\u003c/span\u003e is specified, no pool is created. If \u003cspan pulumi-lang-nodejs=\"`keepalivePoolSize`\" pulumi-lang-dotnet=\"`KeepalivePoolSize`\" pulumi-lang-go=\"`keepalivePoolSize`\" pulumi-lang-python=\"`keepalive_pool_size`\" pulumi-lang-yaml=\"`keepalivePoolSize`\" pulumi-lang-java=\"`keepalivePoolSize`\"\u003e`keepalive_pool_size`\u003c/span\u003e isn't specified but \u003cspan pulumi-lang-nodejs=\"`keepaliveBacklog`\" pulumi-lang-dotnet=\"`KeepaliveBacklog`\" pulumi-lang-go=\"`keepaliveBacklog`\" pulumi-lang-python=\"`keepalive_backlog`\" pulumi-lang-yaml=\"`keepaliveBacklog`\" pulumi-lang-java=\"`keepaliveBacklog`\"\u003e`keepalive_backlog`\u003c/span\u003e is specified, then the pool uses the default value. Try to increase (e.g. 512) this value if latency is high or throughput is low. Default: 256\n"},"password":{"type":"string","description":"Password to use for Redis connections. If undefined, no AUTH commands are sent to Redis.\n"},"port":{"type":"number","description":"An integer representing a port number between 0 and 65535, inclusive. Default: 6379\n"},"readTimeout":{"type":"number","description":"An integer representing a timeout in milliseconds. Must be between 0 and 2^31-2. Default: 2000\n"},"sendTimeout":{"type":"number","description":"An integer representing a timeout in milliseconds. Must be between 0 and 2^31-2. Default: 2000\n"},"sentinelMaster":{"type":"string","description":"Sentinel master to use for Redis connections. Defining this value implies using Redis Sentinel.\n"},"sentinelNodes":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginUpstreamOauthConfigCacheRedisSentinelNode:GatewayPluginUpstreamOauthConfigCacheRedisSentinelNode"},"description":"Sentinel node addresses to use for Redis connections when the \u003cspan pulumi-lang-nodejs=\"`redis`\" pulumi-lang-dotnet=\"`Redis`\" pulumi-lang-go=\"`redis`\" pulumi-lang-python=\"`redis`\" pulumi-lang-yaml=\"`redis`\" pulumi-lang-java=\"`redis`\"\u003e`redis`\u003c/span\u003e strategy is defined. Defining this field implies using a Redis Sentinel. The minimum length of the array is 1 element.\n"},"sentinelPassword":{"type":"string","description":"Sentinel password to authenticate with a Redis Sentinel instance. If undefined, no AUTH commands are sent to Redis Sentinels.\n"},"sentinelRole":{"type":"string","description":"Sentinel role to use for Redis connections when the \u003cspan pulumi-lang-nodejs=\"`redis`\" pulumi-lang-dotnet=\"`Redis`\" pulumi-lang-go=\"`redis`\" pulumi-lang-python=\"`redis`\" pulumi-lang-yaml=\"`redis`\" pulumi-lang-java=\"`redis`\"\u003e`redis`\u003c/span\u003e strategy is defined. Defining this value implies using Redis Sentinel. must be one of [\"any\", \"master\", \"slave\"]\n"},"sentinelUsername":{"type":"string","description":"Sentinel username to authenticate with a Redis Sentinel instance. If undefined, ACL authentication won't be performed. This requires Redis v6.2.0+.\n"},"serverName":{"type":"string","description":"A string representing an SNI (server name indication) value for TLS.\n"},"ssl":{"type":"boolean","description":"If set to true, uses SSL to connect to Redis. Default: false\n"},"sslVerify":{"type":"boolean","description":"If set to true, verifies the validity of the server SSL certificate. If setting this parameter, also configure \u003cspan pulumi-lang-nodejs=\"`luaSslTrustedCertificate`\" pulumi-lang-dotnet=\"`LuaSslTrustedCertificate`\" pulumi-lang-go=\"`luaSslTrustedCertificate`\" pulumi-lang-python=\"`lua_ssl_trusted_certificate`\" pulumi-lang-yaml=\"`luaSslTrustedCertificate`\" pulumi-lang-java=\"`luaSslTrustedCertificate`\"\u003e`lua_ssl_trusted_certificate`\u003c/span\u003e in `kong.conf` to specify the CA (or server) certificate used by your Redis server. You may also need to configure \u003cspan pulumi-lang-nodejs=\"`luaSslVerifyDepth`\" pulumi-lang-dotnet=\"`LuaSslVerifyDepth`\" pulumi-lang-go=\"`luaSslVerifyDepth`\" pulumi-lang-python=\"`lua_ssl_verify_depth`\" pulumi-lang-yaml=\"`luaSslVerifyDepth`\" pulumi-lang-java=\"`luaSslVerifyDepth`\"\u003e`lua_ssl_verify_depth`\u003c/span\u003e accordingly. Default: false\n"},"username":{"type":"string","description":"Username to use for Redis connections. If undefined, ACL authentication won't be performed. This requires Redis v6.0.0+. To be compatible with Redis v5.x.y, you can set it to \u003cspan pulumi-lang-nodejs=\"`default`\" pulumi-lang-dotnet=\"`Default`\" pulumi-lang-go=\"`default`\" pulumi-lang-python=\"`default`\" pulumi-lang-yaml=\"`default`\" pulumi-lang-java=\"`default`\"\u003e`default`\u003c/span\u003e.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["cloudAuthentication","clusterMaxRedirections","connectTimeout","connectionIsProxied","database","host","keepalivePoolSize","port","readTimeout","sendTimeout","sentinelRole","ssl","sslVerify"]}}},"konnect:index/GatewayPluginUpstreamOauthConfigCacheRedisCloudAuthentication:GatewayPluginUpstreamOauthConfigCacheRedisCloudAuthentication":{"properties":{"authProvider":{"type":"string","description":"Auth providers to be used to authenticate to a Cloud Provider's Redis instance. must be one of [\"aws\", \"azure\", \"gcp\"]\n"},"awsAccessKeyId":{"type":"string","description":"AWS Access Key ID to be used for authentication when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e.\n"},"awsAssumeRoleArn":{"type":"string","description":"The ARN of the IAM role to assume for generating ElastiCache IAM authentication tokens.\n"},"awsCacheName":{"type":"string","description":"The name of the AWS Elasticache cluster when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e.\n"},"awsIsServerless":{"type":"boolean","description":"This flag specifies whether the cluster is serverless when\u003cspan pulumi-lang-nodejs=\" authProvider \" pulumi-lang-dotnet=\" AuthProvider \" pulumi-lang-go=\" authProvider \" pulumi-lang-python=\" auth_provider \" pulumi-lang-yaml=\" authProvider \" pulumi-lang-java=\" authProvider \"\u003e auth_provider \u003c/span\u003eis set to \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e. Default: true\n"},"awsRegion":{"type":"string","description":"The region of the AWS ElastiCache cluster when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e.\n"},"awsRoleSessionName":{"type":"string","description":"The session name for the temporary credentials when assuming the IAM role.\n"},"awsSecretAccessKey":{"type":"string","description":"AWS Secret Access Key to be used for authentication when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`aws`\" pulumi-lang-dotnet=\"`Aws`\" pulumi-lang-go=\"`aws`\" pulumi-lang-python=\"`aws`\" pulumi-lang-yaml=\"`aws`\" pulumi-lang-java=\"`aws`\"\u003e`aws`\u003c/span\u003e.\n"},"azureClientId":{"type":"string","description":"Azure Client ID to be used for authentication when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`azure`\" pulumi-lang-dotnet=\"`Azure`\" pulumi-lang-go=\"`azure`\" pulumi-lang-python=\"`azure`\" pulumi-lang-yaml=\"`azure`\" pulumi-lang-java=\"`azure`\"\u003e`azure`\u003c/span\u003e.\n"},"azureClientSecret":{"type":"string","description":"Azure Client Secret to be used for authentication when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`azure`\" pulumi-lang-dotnet=\"`Azure`\" pulumi-lang-go=\"`azure`\" pulumi-lang-python=\"`azure`\" pulumi-lang-yaml=\"`azure`\" pulumi-lang-java=\"`azure`\"\u003e`azure`\u003c/span\u003e.\n"},"azureTenantId":{"type":"string","description":"Azure Tenant ID to be used for authentication when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`azure`\" pulumi-lang-dotnet=\"`Azure`\" pulumi-lang-go=\"`azure`\" pulumi-lang-python=\"`azure`\" pulumi-lang-yaml=\"`azure`\" pulumi-lang-java=\"`azure`\"\u003e`azure`\u003c/span\u003e.\n"},"gcpServiceAccountJson":{"type":"string","description":"GCP Service Account JSON to be used for authentication when \u003cspan pulumi-lang-nodejs=\"`authProvider`\" pulumi-lang-dotnet=\"`AuthProvider`\" pulumi-lang-go=\"`authProvider`\" pulumi-lang-python=\"`auth_provider`\" pulumi-lang-yaml=\"`authProvider`\" pulumi-lang-java=\"`authProvider`\"\u003e`auth_provider`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`gcp`\" pulumi-lang-dotnet=\"`Gcp`\" pulumi-lang-go=\"`gcp`\" pulumi-lang-python=\"`gcp`\" pulumi-lang-yaml=\"`gcp`\" pulumi-lang-java=\"`gcp`\"\u003e`gcp`\u003c/span\u003e.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["authProvider","awsIsServerless"]}}},"konnect:index/GatewayPluginUpstreamOauthConfigCacheRedisClusterNode:GatewayPluginUpstreamOauthConfigCacheRedisClusterNode":{"properties":{"ip":{"type":"string","description":"A string representing a host name, such as example.com. Default: \"127.0.0.1\"\n"},"port":{"type":"number","description":"An integer representing a port number between 0 and 65535, inclusive. Default: 6379\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["ip","port"]}}},"konnect:index/GatewayPluginUpstreamOauthConfigCacheRedisSentinelNode:GatewayPluginUpstreamOauthConfigCacheRedisSentinelNode":{"properties":{"host":{"type":"string","description":"A string representing a host name, such as example.com. Default: \"127.0.0.1\"\n"},"port":{"type":"number","description":"An integer representing a port number between 0 and 65535, inclusive. Default: 6379\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["host","port"]}}},"konnect:index/GatewayPluginUpstreamOauthConfigClient:GatewayPluginUpstreamOauthConfigClient":{"properties":{"authMethod":{"type":"string","description":"The authentication method used in client requests to the IdP. Supported values are: \u003cspan pulumi-lang-nodejs=\"`clientSecretBasic`\" pulumi-lang-dotnet=\"`ClientSecretBasic`\" pulumi-lang-go=\"`clientSecretBasic`\" pulumi-lang-python=\"`client_secret_basic`\" pulumi-lang-yaml=\"`clientSecretBasic`\" pulumi-lang-java=\"`clientSecretBasic`\"\u003e`client_secret_basic`\u003c/span\u003e to send \u003cspan pulumi-lang-nodejs=\"`clientId`\" pulumi-lang-dotnet=\"`ClientId`\" pulumi-lang-go=\"`clientId`\" pulumi-lang-python=\"`client_id`\" pulumi-lang-yaml=\"`clientId`\" pulumi-lang-java=\"`clientId`\"\u003e`client_id`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`clientSecret`\" pulumi-lang-dotnet=\"`ClientSecret`\" pulumi-lang-go=\"`clientSecret`\" pulumi-lang-python=\"`client_secret`\" pulumi-lang-yaml=\"`clientSecret`\" pulumi-lang-java=\"`clientSecret`\"\u003e`client_secret`\u003c/span\u003e in the `Authorization: Basic` header, \u003cspan pulumi-lang-nodejs=\"`clientSecretPost`\" pulumi-lang-dotnet=\"`ClientSecretPost`\" pulumi-lang-go=\"`clientSecretPost`\" pulumi-lang-python=\"`client_secret_post`\" pulumi-lang-yaml=\"`clientSecretPost`\" pulumi-lang-java=\"`clientSecretPost`\"\u003e`client_secret_post`\u003c/span\u003e to send \u003cspan pulumi-lang-nodejs=\"`clientId`\" pulumi-lang-dotnet=\"`ClientId`\" pulumi-lang-go=\"`clientId`\" pulumi-lang-python=\"`client_id`\" pulumi-lang-yaml=\"`clientId`\" pulumi-lang-java=\"`clientId`\"\u003e`client_id`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`clientSecret`\" pulumi-lang-dotnet=\"`ClientSecret`\" pulumi-lang-go=\"`clientSecret`\" pulumi-lang-python=\"`client_secret`\" pulumi-lang-yaml=\"`clientSecret`\" pulumi-lang-java=\"`clientSecret`\"\u003e`client_secret`\u003c/span\u003e as part of the request body, or \u003cspan pulumi-lang-nodejs=\"`clientSecretJwt`\" pulumi-lang-dotnet=\"`ClientSecretJwt`\" pulumi-lang-go=\"`clientSecretJwt`\" pulumi-lang-python=\"`client_secret_jwt`\" pulumi-lang-yaml=\"`clientSecretJwt`\" pulumi-lang-java=\"`clientSecretJwt`\"\u003e`client_secret_jwt`\u003c/span\u003e to send a JWT signed with the \u003cspan pulumi-lang-nodejs=\"`clientSecret`\" pulumi-lang-dotnet=\"`ClientSecret`\" pulumi-lang-go=\"`clientSecret`\" pulumi-lang-python=\"`client_secret`\" pulumi-lang-yaml=\"`clientSecret`\" pulumi-lang-java=\"`clientSecret`\"\u003e`client_secret`\u003c/span\u003e using the client assertion as part of the body. Default: \"client*secret*post\"; must be one of [\"client*secret*basic\", \"client*secret*jwt\", \"client*secret*post\", \"none\"]\n"},"clientSecretJwtAlg":{"type":"string","description":"The algorithm to use with JWT when using \u003cspan pulumi-lang-nodejs=\"`clientSecretJwt`\" pulumi-lang-dotnet=\"`ClientSecretJwt`\" pulumi-lang-go=\"`clientSecretJwt`\" pulumi-lang-python=\"`client_secret_jwt`\" pulumi-lang-yaml=\"`clientSecretJwt`\" pulumi-lang-java=\"`clientSecretJwt`\"\u003e`client_secret_jwt`\u003c/span\u003e authentication. Default: \"HS512\"; must be one of [\"HS256\", \"HS512\"]\n"},"httpProxy":{"type":"string","description":"The proxy to use when making HTTP requests to the IdP.\n"},"httpProxyAuthorization":{"type":"string","description":"The `Proxy-Authorization` header value to be used with \u003cspan pulumi-lang-nodejs=\"`httpProxy`\" pulumi-lang-dotnet=\"`HttpProxy`\" pulumi-lang-go=\"`httpProxy`\" pulumi-lang-python=\"`http_proxy`\" pulumi-lang-yaml=\"`httpProxy`\" pulumi-lang-java=\"`httpProxy`\"\u003e`http_proxy`\u003c/span\u003e.\n"},"httpVersion":{"type":"number","description":"The HTTP version used for requests made by this plugin. Supported values: `1.1` for HTTP 1.1 and `1.0` for HTTP 1.0.\n"},"httpsProxy":{"type":"string","description":"The proxy to use when making HTTPS requests to the IdP.\n"},"httpsProxyAuthorization":{"type":"string","description":"The `Proxy-Authorization` header value to be used with \u003cspan pulumi-lang-nodejs=\"`httpsProxy`\" pulumi-lang-dotnet=\"`HttpsProxy`\" pulumi-lang-go=\"`httpsProxy`\" pulumi-lang-python=\"`https_proxy`\" pulumi-lang-yaml=\"`httpsProxy`\" pulumi-lang-java=\"`httpsProxy`\"\u003e`https_proxy`\u003c/span\u003e.\n"},"keepAlive":{"type":"boolean","description":"Whether to use keepalive connections to the IdP. Default: true\n"},"noProxy":{"type":"string","description":"A comma-separated list of hosts that should not be proxied.\n"},"sslVerify":{"type":"boolean","description":"Whether to verify the certificate presented by the IdP when using HTTPS. Default: false\n"},"timeout":{"type":"number","description":"Network I/O timeout for requests to the IdP in milliseconds. Default: 10000\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["authMethod","clientSecretJwtAlg","httpVersion","keepAlive","sslVerify","timeout"]}}},"konnect:index/GatewayPluginUpstreamOauthConfigOauth:GatewayPluginUpstreamOauthConfigOauth":{"properties":{"audiences":{"type":"array","items":{"type":"string"},"description":"List of audiences passed to the IdP when obtaining a new token. Default: []\n"},"clientId":{"type":"string","description":"The client ID for the application registration in the IdP.\n"},"clientSecret":{"type":"string","description":"The client secret for the application registration in the IdP.\n"},"grantType":{"type":"string","description":"The OAuth grant type to be used. Default: \"client*credentials\"; must be one of [\"client*credentials\", \"password\"]\n"},"password":{"type":"string","description":"The password to use if `config.oauth.grant_type` is set to \u003cspan pulumi-lang-nodejs=\"`password`\" pulumi-lang-dotnet=\"`Password`\" pulumi-lang-go=\"`password`\" pulumi-lang-python=\"`password`\" pulumi-lang-yaml=\"`password`\" pulumi-lang-java=\"`password`\"\u003e`password`\u003c/span\u003e.\n"},"scopes":{"type":"array","items":{"type":"string"},"description":"List of scopes to request from the IdP when obtaining a new token. Default: []\n"},"tokenEndpoint":{"type":"string","description":"The token endpoint URI.\n"},"tokenHeaders":{"type":"object","additionalProperties":{"type":"string"},"description":"Extra headers to be passed in the token endpoint request.\n"},"tokenPostArgs":{"type":"object","additionalProperties":{"type":"string"},"description":"Extra post arguments to be passed in the token endpoint request.\n"},"username":{"type":"string","description":"The username to use if `config.oauth.grant_type` is set to \u003cspan pulumi-lang-nodejs=\"`password`\" pulumi-lang-dotnet=\"`Password`\" pulumi-lang-go=\"`password`\" pulumi-lang-python=\"`password`\" pulumi-lang-yaml=\"`password`\" pulumi-lang-java=\"`password`\"\u003e`password`\u003c/span\u003e.\n"}},"type":"object","required":["tokenEndpoint"],"language":{"nodejs":{"requiredOutputs":["audiences","grantType","scopes","tokenEndpoint","tokenHeaders","tokenPostArgs"]}}},"konnect:index/GatewayPluginUpstreamOauthConsumer:GatewayPluginUpstreamOauthConsumer":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginUpstreamOauthConsumerGroup:GatewayPluginUpstreamOauthConsumerGroup":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginUpstreamOauthOrdering:GatewayPluginUpstreamOauthOrdering":{"properties":{"after":{"$ref":"#/types/konnect:index%2FGatewayPluginUpstreamOauthOrderingAfter:GatewayPluginUpstreamOauthOrderingAfter"},"before":{"$ref":"#/types/konnect:index%2FGatewayPluginUpstreamOauthOrderingBefore:GatewayPluginUpstreamOauthOrderingBefore"}},"type":"object","language":{"nodejs":{"requiredOutputs":["after","before"]}}},"konnect:index/GatewayPluginUpstreamOauthOrderingAfter:GatewayPluginUpstreamOauthOrderingAfter":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginUpstreamOauthOrderingBefore:GatewayPluginUpstreamOauthOrderingBefore":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginUpstreamOauthPartial:GatewayPluginUpstreamOauthPartial":{"properties":{"id":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"name":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"path":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id","name","path"]}}},"konnect:index/GatewayPluginUpstreamOauthRoute:GatewayPluginUpstreamOauthRoute":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginUpstreamOauthService:GatewayPluginUpstreamOauthService":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginUpstreamTimeoutConfig:GatewayPluginUpstreamTimeoutConfig":{"properties":{"connectTimeout":{"type":"number","description":"The timeout in milliseconds for establishing a connection to the upstream server. Must be an integer between 1 and 2^31-2.\n"},"readTimeout":{"type":"number","description":"The timeout in milliseconds between two successive read operations for transmitting a request to the upstream server. Must be an integer between 1 and 2^31-2.\n"},"sendTimeout":{"type":"number","description":"The timeout in milliseconds between two successive write operations for transmitting a request to the upstream server. Must be an integer between 1 and 2^31-2.\n"}},"type":"object"},"konnect:index/GatewayPluginUpstreamTimeoutConsumer:GatewayPluginUpstreamTimeoutConsumer":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginUpstreamTimeoutOrdering:GatewayPluginUpstreamTimeoutOrdering":{"properties":{"after":{"$ref":"#/types/konnect:index%2FGatewayPluginUpstreamTimeoutOrderingAfter:GatewayPluginUpstreamTimeoutOrderingAfter"},"before":{"$ref":"#/types/konnect:index%2FGatewayPluginUpstreamTimeoutOrderingBefore:GatewayPluginUpstreamTimeoutOrderingBefore"}},"type":"object","language":{"nodejs":{"requiredOutputs":["after","before"]}}},"konnect:index/GatewayPluginUpstreamTimeoutOrderingAfter:GatewayPluginUpstreamTimeoutOrderingAfter":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginUpstreamTimeoutOrderingBefore:GatewayPluginUpstreamTimeoutOrderingBefore":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginUpstreamTimeoutPartial:GatewayPluginUpstreamTimeoutPartial":{"properties":{"id":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"name":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"path":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id","name","path"]}}},"konnect:index/GatewayPluginUpstreamTimeoutRoute:GatewayPluginUpstreamTimeoutRoute":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginUpstreamTimeoutService:GatewayPluginUpstreamTimeoutService":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginVaultAuthConfig:GatewayPluginVaultAuthConfig":{"properties":{"accessTokenName":{"type":"string","description":"Describes an array of comma-separated parameter names where the plugin looks for an access token. The client must send the access token in one of those key names, and the plugin will try to read the credential from a header or the querystring parameter with the same name. The key names can only contain [a-z], [A-Z], [0-9], [*], and [-]. Default: \"access*token\"\n"},"anonymous":{"type":"string","description":"An optional string (consumer UUID or username) value to use as an “anonymous” consumer if authentication fails. If empty (default null), the request fails with an authentication failure \u003cspan pulumi-lang-nodejs=\"`4xx`\" pulumi-lang-dotnet=\"`4xx`\" pulumi-lang-go=\"`4xx`\" pulumi-lang-python=\"`4xx`\" pulumi-lang-yaml=\"`4xx`\" pulumi-lang-java=\"`4xx`\"\u003e`4xx`\u003c/span\u003e. Note that this value must refer to the consumer \u003cspan pulumi-lang-nodejs=\"`id`\" pulumi-lang-dotnet=\"`Id`\" pulumi-lang-go=\"`id`\" pulumi-lang-python=\"`id`\" pulumi-lang-yaml=\"`id`\" pulumi-lang-java=\"`id`\"\u003e`id`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`username`\" pulumi-lang-dotnet=\"`Username`\" pulumi-lang-go=\"`username`\" pulumi-lang-python=\"`username`\" pulumi-lang-yaml=\"`username`\" pulumi-lang-java=\"`username`\"\u003e`username`\u003c/span\u003e attribute, and **not** its \u003cspan pulumi-lang-nodejs=\"`customId`\" pulumi-lang-dotnet=\"`CustomId`\" pulumi-lang-go=\"`customId`\" pulumi-lang-python=\"`custom_id`\" pulumi-lang-yaml=\"`customId`\" pulumi-lang-java=\"`customId`\"\u003e`custom_id`\u003c/span\u003e.\n"},"hideCredentials":{"type":"boolean","description":"An optional boolean value telling the plugin to show or hide the credential from the upstream service. If \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e, the plugin will strip the credential from the request (i.e. the header or querystring containing the key) before proxying it. Default: false\n"},"runOnPreflight":{"type":"boolean","description":"A boolean value that indicates whether the plugin should run (and try to authenticate) on `OPTIONS` preflight requests. If set to \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e, then `OPTIONS` requests will always be allowed. Default: true\n"},"secretTokenName":{"type":"string","description":"Describes an array of comma-separated parameter names where the plugin looks for a secret token. The client must send the secret in one of those key names, and the plugin will try to read the credential from a header or the querystring parameter with the same name. The key names can only contain [a-z], [A-Z], [0-9], [*], and [-]. Default: \"secret*token\"\n"},"tokensInBody":{"type":"boolean","description":"If enabled, the plugin will read the request body (if said request has one and its MIME type is supported) and try to find the key in it. Supported MIME types are `application/www-form-urlencoded`, `application/json`, and `multipart/form-data`. Default: false\n"},"vault":{"$ref":"#/types/konnect:index%2FGatewayPluginVaultAuthConfigVault:GatewayPluginVaultAuthConfigVault","description":"A reference to an existing \u003cspan pulumi-lang-nodejs=\"`vault`\" pulumi-lang-dotnet=\"`Vault`\" pulumi-lang-go=\"`vault`\" pulumi-lang-python=\"`vault`\" pulumi-lang-yaml=\"`vault`\" pulumi-lang-java=\"`vault`\"\u003e`vault`\u003c/span\u003e object within the database. \u003cspan pulumi-lang-nodejs=\"`vault`\" pulumi-lang-dotnet=\"`Vault`\" pulumi-lang-go=\"`vault`\" pulumi-lang-python=\"`vault`\" pulumi-lang-yaml=\"`vault`\" pulumi-lang-java=\"`vault`\"\u003e`vault`\u003c/span\u003e entities define the connection and authentication parameters used to connect to a Vault HTTP(S) API.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["accessTokenName","hideCredentials","runOnPreflight","secretTokenName","tokensInBody","vault"]}}},"konnect:index/GatewayPluginVaultAuthConfigVault:GatewayPluginVaultAuthConfigVault":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginVaultAuthOrdering:GatewayPluginVaultAuthOrdering":{"properties":{"after":{"$ref":"#/types/konnect:index%2FGatewayPluginVaultAuthOrderingAfter:GatewayPluginVaultAuthOrderingAfter"},"before":{"$ref":"#/types/konnect:index%2FGatewayPluginVaultAuthOrderingBefore:GatewayPluginVaultAuthOrderingBefore"}},"type":"object","language":{"nodejs":{"requiredOutputs":["after","before"]}}},"konnect:index/GatewayPluginVaultAuthOrderingAfter:GatewayPluginVaultAuthOrderingAfter":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginVaultAuthOrderingBefore:GatewayPluginVaultAuthOrderingBefore":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginVaultAuthPartial:GatewayPluginVaultAuthPartial":{"properties":{"id":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"name":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"path":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id","name","path"]}}},"konnect:index/GatewayPluginVaultAuthRoute:GatewayPluginVaultAuthRoute":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginVaultAuthService:GatewayPluginVaultAuthService":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginWebsocketSizeLimitConfig:GatewayPluginWebsocketSizeLimitConfig":{"properties":{"clientMaxPayload":{"type":"number"},"upstreamMaxPayload":{"type":"number"}},"type":"object"},"konnect:index/GatewayPluginWebsocketSizeLimitConsumer:GatewayPluginWebsocketSizeLimitConsumer":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginWebsocketSizeLimitOrdering:GatewayPluginWebsocketSizeLimitOrdering":{"properties":{"after":{"$ref":"#/types/konnect:index%2FGatewayPluginWebsocketSizeLimitOrderingAfter:GatewayPluginWebsocketSizeLimitOrderingAfter"},"before":{"$ref":"#/types/konnect:index%2FGatewayPluginWebsocketSizeLimitOrderingBefore:GatewayPluginWebsocketSizeLimitOrderingBefore"}},"type":"object","language":{"nodejs":{"requiredOutputs":["after","before"]}}},"konnect:index/GatewayPluginWebsocketSizeLimitOrderingAfter:GatewayPluginWebsocketSizeLimitOrderingAfter":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginWebsocketSizeLimitOrderingBefore:GatewayPluginWebsocketSizeLimitOrderingBefore":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginWebsocketSizeLimitPartial:GatewayPluginWebsocketSizeLimitPartial":{"properties":{"id":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"name":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"path":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id","name","path"]}}},"konnect:index/GatewayPluginWebsocketSizeLimitRoute:GatewayPluginWebsocketSizeLimitRoute":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginWebsocketSizeLimitService:GatewayPluginWebsocketSizeLimitService":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginWebsocketValidatorConfig:GatewayPluginWebsocketValidatorConfig":{"properties":{"client":{"$ref":"#/types/konnect:index%2FGatewayPluginWebsocketValidatorConfigClient:GatewayPluginWebsocketValidatorConfigClient"},"upstream":{"$ref":"#/types/konnect:index%2FGatewayPluginWebsocketValidatorConfigUpstream:GatewayPluginWebsocketValidatorConfigUpstream"}},"type":"object","language":{"nodejs":{"requiredOutputs":["client","upstream"]}}},"konnect:index/GatewayPluginWebsocketValidatorConfigClient:GatewayPluginWebsocketValidatorConfigClient":{"properties":{"binary":{"$ref":"#/types/konnect:index%2FGatewayPluginWebsocketValidatorConfigClientBinary:GatewayPluginWebsocketValidatorConfigClientBinary"},"text":{"$ref":"#/types/konnect:index%2FGatewayPluginWebsocketValidatorConfigClientText:GatewayPluginWebsocketValidatorConfigClientText"}},"type":"object","language":{"nodejs":{"requiredOutputs":["binary","text"]}}},"konnect:index/GatewayPluginWebsocketValidatorConfigClientBinary:GatewayPluginWebsocketValidatorConfigClientBinary":{"properties":{"schema":{"type":"string","description":"Schema used to validate upstream-originated binary frames. The semantics of this field depend on the validation type set by `config.upstream.binary.type`.\n"},"type":{"type":"string","description":"The corresponding validation library for `config.upstream.binary.schema`. Currently, only \u003cspan pulumi-lang-nodejs=\"`draft4`\" pulumi-lang-dotnet=\"`Draft4`\" pulumi-lang-go=\"`draft4`\" pulumi-lang-python=\"`draft4`\" pulumi-lang-yaml=\"`draft4`\" pulumi-lang-java=\"`draft4`\"\u003e`draft4`\u003c/span\u003e is supported. must be \"draft4\"\n"}},"type":"object","required":["schema","type"]},"konnect:index/GatewayPluginWebsocketValidatorConfigClientText:GatewayPluginWebsocketValidatorConfigClientText":{"properties":{"schema":{"type":"string","description":"Schema used to validate upstream-originated binary frames. The semantics of this field depend on the validation type set by `config.upstream.binary.type`.\n"},"type":{"type":"string","description":"The corresponding validation library for `config.upstream.binary.schema`. Currently, only \u003cspan pulumi-lang-nodejs=\"`draft4`\" pulumi-lang-dotnet=\"`Draft4`\" pulumi-lang-go=\"`draft4`\" pulumi-lang-python=\"`draft4`\" pulumi-lang-yaml=\"`draft4`\" pulumi-lang-java=\"`draft4`\"\u003e`draft4`\u003c/span\u003e is supported. must be \"draft4\"\n"}},"type":"object","required":["schema","type"]},"konnect:index/GatewayPluginWebsocketValidatorConfigUpstream:GatewayPluginWebsocketValidatorConfigUpstream":{"properties":{"binary":{"$ref":"#/types/konnect:index%2FGatewayPluginWebsocketValidatorConfigUpstreamBinary:GatewayPluginWebsocketValidatorConfigUpstreamBinary"},"text":{"$ref":"#/types/konnect:index%2FGatewayPluginWebsocketValidatorConfigUpstreamText:GatewayPluginWebsocketValidatorConfigUpstreamText"}},"type":"object","language":{"nodejs":{"requiredOutputs":["binary","text"]}}},"konnect:index/GatewayPluginWebsocketValidatorConfigUpstreamBinary:GatewayPluginWebsocketValidatorConfigUpstreamBinary":{"properties":{"schema":{"type":"string","description":"Schema used to validate upstream-originated binary frames. The semantics of this field depend on the validation type set by `config.upstream.binary.type`.\n"},"type":{"type":"string","description":"The corresponding validation library for `config.upstream.binary.schema`. Currently, only \u003cspan pulumi-lang-nodejs=\"`draft4`\" pulumi-lang-dotnet=\"`Draft4`\" pulumi-lang-go=\"`draft4`\" pulumi-lang-python=\"`draft4`\" pulumi-lang-yaml=\"`draft4`\" pulumi-lang-java=\"`draft4`\"\u003e`draft4`\u003c/span\u003e is supported. must be \"draft4\"\n"}},"type":"object","required":["schema","type"]},"konnect:index/GatewayPluginWebsocketValidatorConfigUpstreamText:GatewayPluginWebsocketValidatorConfigUpstreamText":{"properties":{"schema":{"type":"string","description":"Schema used to validate upstream-originated binary frames. The semantics of this field depend on the validation type set by `config.upstream.binary.type`.\n"},"type":{"type":"string","description":"The corresponding validation library for `config.upstream.binary.schema`. Currently, only \u003cspan pulumi-lang-nodejs=\"`draft4`\" pulumi-lang-dotnet=\"`Draft4`\" pulumi-lang-go=\"`draft4`\" pulumi-lang-python=\"`draft4`\" pulumi-lang-yaml=\"`draft4`\" pulumi-lang-java=\"`draft4`\"\u003e`draft4`\u003c/span\u003e is supported. must be \"draft4\"\n"}},"type":"object","required":["schema","type"]},"konnect:index/GatewayPluginWebsocketValidatorConsumer:GatewayPluginWebsocketValidatorConsumer":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginWebsocketValidatorOrdering:GatewayPluginWebsocketValidatorOrdering":{"properties":{"after":{"$ref":"#/types/konnect:index%2FGatewayPluginWebsocketValidatorOrderingAfter:GatewayPluginWebsocketValidatorOrderingAfter"},"before":{"$ref":"#/types/konnect:index%2FGatewayPluginWebsocketValidatorOrderingBefore:GatewayPluginWebsocketValidatorOrderingBefore"}},"type":"object","language":{"nodejs":{"requiredOutputs":["after","before"]}}},"konnect:index/GatewayPluginWebsocketValidatorOrderingAfter:GatewayPluginWebsocketValidatorOrderingAfter":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginWebsocketValidatorOrderingBefore:GatewayPluginWebsocketValidatorOrderingBefore":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginWebsocketValidatorPartial:GatewayPluginWebsocketValidatorPartial":{"properties":{"id":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"name":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"path":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id","name","path"]}}},"konnect:index/GatewayPluginWebsocketValidatorRoute:GatewayPluginWebsocketValidatorRoute":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginWebsocketValidatorService:GatewayPluginWebsocketValidatorService":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginXmlThreatProtectionConfig:GatewayPluginXmlThreatProtectionConfig":{"properties":{"allowDtd":{"type":"boolean","description":"Indicates whether an XML Document Type Definition (DTD) section is allowed. Default: false\n"},"allowedContentTypes":{"type":"array","items":{"type":"string"},"description":"A list of Content-Type values with payloads that are allowed, but aren't validated. Default: []\n"},"attribute":{"type":"number","description":"Maximum size of the attribute value. Default: 1048576\n"},"blaMaxAmplification":{"type":"number","description":"Sets the maximum allowed amplification. This protects against the Billion Laughs Attack. Default: 100\n"},"blaThreshold":{"type":"number","description":"Sets the threshold after which the protection starts. This protects against the Billion Laughs Attack. Default: 8388608\n"},"buffer":{"type":"number","description":"Maximum size of the unparsed buffer (see below). Default: 1048576\n"},"checkedContentTypes":{"type":"array","items":{"type":"string"},"description":"A list of Content-Type values with payloads that must be validated. Default: [\"application/xml\"]\n"},"comment":{"type":"number","description":"Maximum size of comments. Default: 1024\n"},"document":{"type":"number","description":"Maximum size of the entire document. Default: 10485760\n"},"entity":{"type":"number","description":"Maximum size of entity values in EntityDecl. Default: 1024\n"},"entityname":{"type":"number","description":"Maximum size of entity names in EntityDecl. Default: 1024\n"},"entityproperty":{"type":"number","description":"Maximum size of systemId, publicId, or notationName in EntityDecl. Default: 1024\n"},"localname":{"type":"number","description":"Maximum size of the localname. This applies to tags and attributes. Default: 1024\n"},"maxAttributes":{"type":"number","description":"Maximum number of attributes allowed on a tag, including default ones. Note: If namespace-aware parsing is disabled, then the namespaces definitions are counted as attributes. Default: 100\n"},"maxChildren":{"type":"number","description":"Maximum number of children allowed (Element, Text, Comment, ProcessingInstruction, CDATASection). Note: Adjacent text and CDATA sections are counted as one. For example, text-cdata-text-cdata is one child. Default: 100\n"},"maxDepth":{"type":"number","description":"Maximum depth of tags. Child elements such as Text or Comments are not counted as another level. Default: 50\n"},"maxNamespaces":{"type":"number","description":"Maximum number of namespaces defined on a tag. This value is required if parsing is namespace-aware. Default: 20\n"},"namespaceAware":{"type":"boolean","description":"If not parsing namespace aware, all prefixes and namespace attributes will be counted as regular attributes and element names, and validated as such. Default: true\n"},"namespaceuri":{"type":"number","description":"Maximum size of the namespace URI. This value is required if parsing is namespace-aware. Default: 1024\n"},"pidata":{"type":"number","description":"Maximum size of processing instruction data. Default: 1024\n"},"pitarget":{"type":"number","description":"Maximum size of processing instruction targets. Default: 1024\n"},"prefix":{"type":"number","description":"Maximum size of the prefix. This applies to tags and attributes. This value is required if parsing is namespace-aware. Default: 1024\n"},"text":{"type":"number","description":"Maximum text inside tags (counted over all adjacent text/CDATA elements combined). Default: 1048576\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["allowDtd","allowedContentTypes","attribute","blaMaxAmplification","blaThreshold","buffer","checkedContentTypes","comment","document","entity","entityname","entityproperty","localname","maxAttributes","maxChildren","maxDepth","maxNamespaces","namespaceAware","namespaceuri","pidata","pitarget","prefix","text"]}}},"konnect:index/GatewayPluginXmlThreatProtectionConsumer:GatewayPluginXmlThreatProtectionConsumer":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginXmlThreatProtectionOrdering:GatewayPluginXmlThreatProtectionOrdering":{"properties":{"after":{"$ref":"#/types/konnect:index%2FGatewayPluginXmlThreatProtectionOrderingAfter:GatewayPluginXmlThreatProtectionOrderingAfter"},"before":{"$ref":"#/types/konnect:index%2FGatewayPluginXmlThreatProtectionOrderingBefore:GatewayPluginXmlThreatProtectionOrderingBefore"}},"type":"object","language":{"nodejs":{"requiredOutputs":["after","before"]}}},"konnect:index/GatewayPluginXmlThreatProtectionOrderingAfter:GatewayPluginXmlThreatProtectionOrderingAfter":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginXmlThreatProtectionOrderingBefore:GatewayPluginXmlThreatProtectionOrderingBefore":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginXmlThreatProtectionPartial:GatewayPluginXmlThreatProtectionPartial":{"properties":{"id":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"name":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"path":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id","name","path"]}}},"konnect:index/GatewayPluginXmlThreatProtectionRoute:GatewayPluginXmlThreatProtectionRoute":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginXmlThreatProtectionService:GatewayPluginXmlThreatProtectionService":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginZipkinConfig:GatewayPluginZipkinConfig":{"properties":{"connectTimeout":{"type":"number","description":"An integer representing a timeout in milliseconds. Must be between 0 and 2^31-2. Default: 2000\n"},"defaultHeaderType":{"type":"string","description":"Allows specifying the type of header to be added to requests with no pre-existing tracing headers and when `config.header_type` is set to `\"preserve\"`. When \u003cspan pulumi-lang-nodejs=\"`headerType`\" pulumi-lang-dotnet=\"`HeaderType`\" pulumi-lang-go=\"`headerType`\" pulumi-lang-python=\"`header_type`\" pulumi-lang-yaml=\"`headerType`\" pulumi-lang-java=\"`headerType`\"\u003e`header_type`\u003c/span\u003e is set to any other value, \u003cspan pulumi-lang-nodejs=\"`defaultHeaderType`\" pulumi-lang-dotnet=\"`DefaultHeaderType`\" pulumi-lang-go=\"`defaultHeaderType`\" pulumi-lang-python=\"`default_header_type`\" pulumi-lang-yaml=\"`defaultHeaderType`\" pulumi-lang-java=\"`defaultHeaderType`\"\u003e`default_header_type`\u003c/span\u003e is ignored. Default: \"b3\"; must be one of [\"aws\", \"b3\", \"b3-single\", \"datadog\", \"gcp\", \"instana\", \"jaeger\", \"ot\", \"w3c\"]\n"},"defaultServiceName":{"type":"string","description":"Set a default service name to override `unknown-service-name` in the Zipkin spans.\n"},"headerType":{"type":"string","description":"All HTTP requests going through the plugin are tagged with a tracing HTTP request. This property codifies what kind of tracing header the plugin expects on incoming requests. Default: \"preserve\"; must be one of [\"aws\", \"b3\", \"b3-single\", \"datadog\", \"gcp\", \"ignore\", \"instana\", \"jaeger\", \"ot\", \"preserve\", \"w3c\"]\n"},"httpEndpoint":{"type":"string","description":"A string representing a URL, such as https://example.com/path/to/resource?q=search.\n"},"httpResponseHeaderForTraceid":{"type":"string"},"httpSpanName":{"type":"string","description":"Specify whether to include the HTTP path in the span name. Default: \"method\"; must be one of [\"method\", \u003cspan pulumi-lang-nodejs=\"\"methodPath\"\" pulumi-lang-dotnet=\"\"MethodPath\"\" pulumi-lang-go=\"\"methodPath\"\" pulumi-lang-python=\"\"method_path\"\" pulumi-lang-yaml=\"\"methodPath\"\" pulumi-lang-java=\"\"methodPath\"\"\u003e\"method_path\"\u003c/span\u003e]\n"},"includeCredential":{"type":"boolean","description":"Specify whether the credential of the currently authenticated consumer should be included in metadata sent to the Zipkin server. Default: true\n"},"localServiceName":{"type":"string","description":"The name of the service as displayed in Zipkin. Default: \"kong\"\n"},"phaseDurationFlavor":{"type":"string","description":"Specify whether to include the duration of each phase as an annotation or a tag. Default: \"annotations\"; must be one of [\"annotations\", \"tags\"]\n"},"propagation":{"$ref":"#/types/konnect:index%2FGatewayPluginZipkinConfigPropagation:GatewayPluginZipkinConfigPropagation"},"queue":{"$ref":"#/types/konnect:index%2FGatewayPluginZipkinConfigQueue:GatewayPluginZipkinConfigQueue"},"readTimeout":{"type":"number","description":"An integer representing a timeout in milliseconds. Must be between 0 and 2^31-2. Default: 5000\n"},"sampleRatio":{"type":"number","description":"How often to sample requests that do not contain trace IDs. Set to \u003cspan pulumi-lang-nodejs=\"`0`\" pulumi-lang-dotnet=\"`0`\" pulumi-lang-go=\"`0`\" pulumi-lang-python=\"`0`\" pulumi-lang-yaml=\"`0`\" pulumi-lang-java=\"`0`\"\u003e`0`\u003c/span\u003e to turn sampling off, or to \u003cspan pulumi-lang-nodejs=\"`1`\" pulumi-lang-dotnet=\"`1`\" pulumi-lang-go=\"`1`\" pulumi-lang-python=\"`1`\" pulumi-lang-yaml=\"`1`\" pulumi-lang-java=\"`1`\"\u003e`1`\u003c/span\u003e to sample **all** requests.\n"},"sendTimeout":{"type":"number","description":"An integer representing a timeout in milliseconds. Must be between 0 and 2^31-2. Default: 5000\n"},"staticTags":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginZipkinConfigStaticTag:GatewayPluginZipkinConfigStaticTag"},"description":"The tags specified on this property will be added to the generated request traces.\n"},"tagsHeader":{"type":"string","description":"The Zipkin plugin will add extra headers to the tags associated with any HTTP requests that come with a header named as configured by this property. Default: \"Zipkin-Tags\"\n"},"traceidByteCount":{"type":"number","description":"The length in bytes of each request's Trace ID. Default: 16; must be one of [\"8\", \"16\"]\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["connectTimeout","defaultHeaderType","headerType","httpSpanName","includeCredential","localServiceName","phaseDurationFlavor","propagation","queue","readTimeout","sampleRatio","sendTimeout","tagsHeader","traceidByteCount"]}}},"konnect:index/GatewayPluginZipkinConfigPropagation:GatewayPluginZipkinConfigPropagation":{"properties":{"clears":{"type":"array","items":{"type":"string"},"description":"Header names to clear after context extraction. This allows to extract the context from a certain header and then remove it from the request, useful when extraction and injection are performed on different header formats and the original header should not be sent to the upstream. If left empty, no headers are cleared.\n"},"defaultFormat":{"type":"string","description":"The default header format to use when extractors did not match any format in the incoming headers and \u003cspan pulumi-lang-nodejs=\"`inject`\" pulumi-lang-dotnet=\"`Inject`\" pulumi-lang-go=\"`inject`\" pulumi-lang-python=\"`inject`\" pulumi-lang-yaml=\"`inject`\" pulumi-lang-java=\"`inject`\"\u003e`inject`\u003c/span\u003e is configured with the value: \u003cspan pulumi-lang-nodejs=\"`preserve`\" pulumi-lang-dotnet=\"`Preserve`\" pulumi-lang-go=\"`preserve`\" pulumi-lang-python=\"`preserve`\" pulumi-lang-yaml=\"`preserve`\" pulumi-lang-java=\"`preserve`\"\u003e`preserve`\u003c/span\u003e. This can happen when no tracing header was found in the request, or the incoming tracing header formats were not included in \u003cspan pulumi-lang-nodejs=\"`extract`\" pulumi-lang-dotnet=\"`Extract`\" pulumi-lang-go=\"`extract`\" pulumi-lang-python=\"`extract`\" pulumi-lang-yaml=\"`extract`\" pulumi-lang-java=\"`extract`\"\u003e`extract`\u003c/span\u003e. Default: \"b3\"; must be one of [\"aws\", \"b3\", \"b3-single\", \"datadog\", \"gcp\", \"instana\", \"jaeger\", \"ot\", \"w3c\"]\n"},"extracts":{"type":"array","items":{"type":"string"},"description":"Header formats used to extract tracing context from incoming requests. If multiple values are specified, the first one found will be used for extraction. If left empty, Kong will not extract any tracing context information from incoming requests and generate a trace with no parent and a new trace ID.\n"},"injects":{"type":"array","items":{"type":"string"},"description":"Header formats used to inject tracing context. The value \u003cspan pulumi-lang-nodejs=\"`preserve`\" pulumi-lang-dotnet=\"`Preserve`\" pulumi-lang-go=\"`preserve`\" pulumi-lang-python=\"`preserve`\" pulumi-lang-yaml=\"`preserve`\" pulumi-lang-java=\"`preserve`\"\u003e`preserve`\u003c/span\u003e will use the same header format as the incoming request. If multiple values are specified, all of them will be used during injection. If left empty, Kong will not inject any tracing context information in outgoing requests.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["defaultFormat"]}}},"konnect:index/GatewayPluginZipkinConfigQueue:GatewayPluginZipkinConfigQueue":{"properties":{"concurrencyLimit":{"type":"number","description":"The number of of queue delivery timers. -1 indicates unlimited. Default: 1; must be one of [\"-1\", \"1\"]\n"},"initialRetryDelay":{"type":"number","description":"Time in seconds before the initial retry is made for a failing batch.\n"},"maxBatchSize":{"type":"number","description":"Maximum number of entries that can be processed at a time. Default: 1\n"},"maxBytes":{"type":"number","description":"Maximum number of bytes that can be waiting on a queue, requires string content.\n"},"maxCoalescingDelay":{"type":"number","description":"Maximum number of (fractional) seconds to elapse after the first entry was queued before the queue starts calling the handler. Default: 1\n"},"maxEntries":{"type":"number","description":"Maximum number of entries that can be waiting on the queue. Default: 10000\n"},"maxRetryDelay":{"type":"number","description":"Maximum time in seconds between retries, caps exponential backoff. Default: 60\n"},"maxRetryTime":{"type":"number","description":"Time in seconds before the queue gives up calling a failed handler for a batch. Default: 60\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["concurrencyLimit","initialRetryDelay","maxBatchSize","maxCoalescingDelay","maxEntries","maxRetryDelay","maxRetryTime"]}}},"konnect:index/GatewayPluginZipkinConfigStaticTag:GatewayPluginZipkinConfigStaticTag":{"properties":{"name":{"type":"string","description":"Not Null\n"},"value":{"type":"string","description":"Not Null\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["name","value"]}}},"konnect:index/GatewayPluginZipkinConsumer:GatewayPluginZipkinConsumer":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginZipkinOrdering:GatewayPluginZipkinOrdering":{"properties":{"after":{"$ref":"#/types/konnect:index%2FGatewayPluginZipkinOrderingAfter:GatewayPluginZipkinOrderingAfter"},"before":{"$ref":"#/types/konnect:index%2FGatewayPluginZipkinOrderingBefore:GatewayPluginZipkinOrderingBefore"}},"type":"object","language":{"nodejs":{"requiredOutputs":["after","before"]}}},"konnect:index/GatewayPluginZipkinOrderingAfter:GatewayPluginZipkinOrderingAfter":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginZipkinOrderingBefore:GatewayPluginZipkinOrderingBefore":{"properties":{"accesses":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["accesses"]}}},"konnect:index/GatewayPluginZipkinPartial:GatewayPluginZipkinPartial":{"properties":{"id":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"name":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"path":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id","name","path"]}}},"konnect:index/GatewayPluginZipkinRoute:GatewayPluginZipkinRoute":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayPluginZipkinService:GatewayPluginZipkinService":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayRouteDestination:GatewayRouteDestination":{"properties":{"ip":{"type":"string","description":"A string representing an IP address or CIDR block, such as 192.168.1.1 or 192.168.0.0/16.\n"},"port":{"type":"number","description":"An integer representing a port number between 0 and 65535, inclusive.\n"}},"type":"object"},"konnect:index/GatewayRouteExpressionService:GatewayRouteExpressionService":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayRouteService:GatewayRouteService":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayRouteSource:GatewayRouteSource":{"properties":{"ip":{"type":"string","description":"A string representing an IP address or CIDR block, such as 192.168.1.1 or 192.168.0.0/16.\n"},"port":{"type":"number","description":"An integer representing a port number between 0 and 65535, inclusive.\n"}},"type":"object"},"konnect:index/GatewayServiceClientCertificate:GatewayServiceClientCertificate":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayServiceTlsSans:GatewayServiceTlsSans":{"properties":{"dnsnames":{"type":"array","items":{"type":"string"},"description":"A dnsName for TLS verification.\n"},"uris":{"type":"array","items":{"type":"string"},"description":"An URI for TLS verification.\n"}},"type":"object"},"konnect:index/GatewaySniCertificate:GatewaySniCertificate":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayTargetUpstream:GatewayTargetUpstream":{"properties":{"id":{"type":"string","description":"Requires replacement if changed.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayUpstreamClientCertificate:GatewayUpstreamClientCertificate":{"properties":{"id":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["id"]}}},"konnect:index/GatewayUpstreamHealthchecks:GatewayUpstreamHealthchecks":{"properties":{"active":{"$ref":"#/types/konnect:index%2FGatewayUpstreamHealthchecksActive:GatewayUpstreamHealthchecksActive"},"passive":{"$ref":"#/types/konnect:index%2FGatewayUpstreamHealthchecksPassive:GatewayUpstreamHealthchecksPassive"},"threshold":{"type":"number","description":"Default: 0\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["active","passive","threshold"]}}},"konnect:index/GatewayUpstreamHealthchecksActive:GatewayUpstreamHealthchecksActive":{"properties":{"concurrency":{"type":"number","description":"Default: 10\n"},"headers":{"type":"object","additionalProperties":{"type":"array","items":{"type":"string"}},"description":"A map of header names to arrays of header values.\n"},"healthy":{"$ref":"#/types/konnect:index%2FGatewayUpstreamHealthchecksActiveHealthy:GatewayUpstreamHealthchecksActiveHealthy"},"httpPath":{"type":"string","description":"A string representing a URL path, such as /path/to/resource. Must start with a forward slash (/) and must not contain empty segments (i.e., two consecutive forward slashes). Default: \"/\"\n"},"httpsSni":{"type":"string","description":"A string representing an SNI (server name indication) value for TLS.\n"},"httpsVerifyCertificate":{"type":"boolean","description":"Default: true\n"},"timeout":{"type":"number","description":"Default: 1\n"},"type":{"type":"string","description":"Default: \"http\"; must be one of [\"grpc\", \"grpcs\", \"http\", \"https\", \"tcp\"]\n"},"unhealthy":{"$ref":"#/types/konnect:index%2FGatewayUpstreamHealthchecksActiveUnhealthy:GatewayUpstreamHealthchecksActiveUnhealthy"}},"type":"object","language":{"nodejs":{"requiredOutputs":["concurrency","healthy","httpPath","httpsSni","httpsVerifyCertificate","timeout","type","unhealthy"]}}},"konnect:index/GatewayUpstreamHealthchecksActiveHealthy:GatewayUpstreamHealthchecksActiveHealthy":{"properties":{"httpStatuses":{"type":"array","items":{"type":"number"},"description":"Default: [200,302]\n"},"interval":{"type":"number","description":"Default: 0\n"},"successes":{"type":"number","description":"Default: 0\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["httpStatuses","interval","successes"]}}},"konnect:index/GatewayUpstreamHealthchecksActiveUnhealthy:GatewayUpstreamHealthchecksActiveUnhealthy":{"properties":{"httpFailures":{"type":"number","description":"Default: 0\n"},"httpStatuses":{"type":"array","items":{"type":"number"},"description":"Default: [429,404,500,501,502,503,504,505]\n"},"interval":{"type":"number","description":"Default: 0\n"},"tcpFailures":{"type":"number","description":"Default: 0\n"},"timeouts":{"type":"number","description":"Default: 0\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["httpFailures","httpStatuses","interval","tcpFailures","timeouts"]}}},"konnect:index/GatewayUpstreamHealthchecksPassive:GatewayUpstreamHealthchecksPassive":{"properties":{"healthy":{"$ref":"#/types/konnect:index%2FGatewayUpstreamHealthchecksPassiveHealthy:GatewayUpstreamHealthchecksPassiveHealthy"},"type":{"type":"string","description":"Default: \"http\"; must be one of [\"grpc\", \"grpcs\", \"http\", \"https\", \"tcp\"]\n"},"unhealthy":{"$ref":"#/types/konnect:index%2FGatewayUpstreamHealthchecksPassiveUnhealthy:GatewayUpstreamHealthchecksPassiveUnhealthy"}},"type":"object","language":{"nodejs":{"requiredOutputs":["healthy","type","unhealthy"]}}},"konnect:index/GatewayUpstreamHealthchecksPassiveHealthy:GatewayUpstreamHealthchecksPassiveHealthy":{"properties":{"httpStatuses":{"type":"array","items":{"type":"number"},"description":"Default: [200,201,202,203,204,205,206,207,208,226,300,301,302,303,304,305,306,307,308]\n"},"successes":{"type":"number","description":"Default: 0\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["httpStatuses","successes"]}}},"konnect:index/GatewayUpstreamHealthchecksPassiveUnhealthy:GatewayUpstreamHealthchecksPassiveUnhealthy":{"properties":{"httpFailures":{"type":"number","description":"Default: 0\n"},"httpStatuses":{"type":"array","items":{"type":"number"},"description":"Default: [429,500,503]\n"},"tcpFailures":{"type":"number","description":"Default: 0\n"},"timeouts":{"type":"number","description":"Default: 0\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["httpFailures","httpStatuses","tcpFailures","timeouts"]}}},"konnect:index/IdentityProviderConfig:IdentityProviderConfig":{"properties":{"oidcIdentityProviderConfig":{"$ref":"#/types/konnect:index%2FIdentityProviderConfigOidcIdentityProviderConfig:IdentityProviderConfigOidcIdentityProviderConfig","description":"The identity provider that contains configuration data for the OIDC authentication integration.\n"},"samlIdentityProviderConfig":{"$ref":"#/types/konnect:index%2FIdentityProviderConfigSamlIdentityProviderConfig:IdentityProviderConfigSamlIdentityProviderConfig","description":"The identity provider that contains configuration data for the SAML authentication integration.\n"}},"type":"object"},"konnect:index/IdentityProviderConfigOidcIdentityProviderConfig:IdentityProviderConfigOidcIdentityProviderConfig":{"properties":{"claimMappings":{"$ref":"#/types/konnect:index%2FIdentityProviderConfigOidcIdentityProviderConfigClaimMappings:IdentityProviderConfigOidcIdentityProviderConfigClaimMappings","description":"Defines the mappings between OpenID Connect (OIDC) claims and local claims used by your application for\nauthentication.\n"},"clientId":{"type":"string","description":"The client ID assigned to your application by the identity provider. Not Null\n"},"clientSecret":{"type":"string","description":"The Client Secret assigned to your application by the identity provider.\n","secret":true},"issuerUrl":{"type":"string","description":"The issuer URI of the identity provider. This is the URL where the provider's metadata can be obtained. Not Null\n"},"scopes":{"type":"array","items":{"type":"string"},"description":"The scopes requested by your application when authenticating with the identity provider. Default: [\"email\",\"openid\",\"profile\"]\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["claimMappings","clientId","issuerUrl","scopes"]}}},"konnect:index/IdentityProviderConfigOidcIdentityProviderConfigClaimMappings:IdentityProviderConfigOidcIdentityProviderConfigClaimMappings":{"properties":{"email":{"type":"string","description":"The claim mapping for the user's email address. Default: \"email\"\n"},"groups":{"type":"string","description":"The claim mapping for the user's group membership information. Default: \"groups\"\n"},"name":{"type":"string","description":"The claim mapping for the user's name. Default: \"name\"\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["email","groups","name"]}}},"konnect:index/IdentityProviderConfigSamlIdentityProviderConfig:IdentityProviderConfigSamlIdentityProviderConfig":{"properties":{"callbackUrl":{"type":"string","description":"The path URL where the SAML identity provider sends authentication responses after successful login attempts.\n"},"idpMetadataUrl":{"type":"string","description":"The identity provider's metadata URL where the identity provider's metadata can be obtained.\n"},"idpMetadataXml":{"type":"string","description":"The identity provider's SAML metadata. If the identity provider supports a metadata URL, you can use the \u003cspan pulumi-lang-nodejs=\"`idpMetadataUrl`\" pulumi-lang-dotnet=\"`IdpMetadataUrl`\" pulumi-lang-go=\"`idpMetadataUrl`\" pulumi-lang-python=\"`idp_metadata_url`\" pulumi-lang-yaml=\"`idpMetadataUrl`\" pulumi-lang-java=\"`idpMetadataUrl`\"\u003e`idp_metadata_url`\u003c/span\u003e field instead.\n"},"loginUrl":{"type":"string","description":"The URL to redirect users to for initiating login with the identity provider.\n"},"spEntityId":{"type":"string","description":"The entity ID of the service provider (SP).\n"},"spMetadataUrl":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["callbackUrl","idpMetadataUrl","idpMetadataXml","loginUrl","spEntityId","spMetadataUrl"]}}},"konnect:index/IntegrationInstanceAuthConfigOauthAuthConfig:IntegrationInstanceAuthConfigOauthAuthConfig":{"properties":{"authorizationEndpoint":{"type":"string","description":"The URL where users are redirected to authorize access.\n"},"clientId":{"type":"string","description":"The OAuth client identifier.\n"},"tokenEndpoint":{"type":"string","description":"The URL used to retrieve access tokens.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["authorizationEndpoint","clientId","tokenEndpoint"]}}},"konnect:index/IntegrationInstanceAuthConfigOauthConfig:IntegrationInstanceAuthConfigOauthConfig":{"properties":{"authorizationEndpoint":{"type":"string","description":"The URL where users are redirected to authorize access.\n"},"clientId":{"type":"string","description":"The OAuth client identifier.\n"},"clientSecret":{"type":"string","description":"The OAuth client secret.\n"},"tokenEndpoint":{"type":"string","description":"The URL used to retrieve access tokens.\n"}},"type":"object","required":["authorizationEndpoint","clientId","clientSecret","tokenEndpoint"]},"konnect:index/IntegrationInstanceAuthCredentialIntegrationInstance:IntegrationInstanceAuthCredentialIntegrationInstance":{"properties":{"displayName":{"type":"string","description":"The display name of the integration instance.\n"},"id":{"type":"string","description":"The integration instance ID.\n"},"name":{"type":"string","description":"The machine name of the integration instance that uniquely identifies it within the catalog.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["displayName","id","name"]}}},"konnect:index/IntegrationInstanceAuthCredentialMissingPermission:IntegrationInstanceAuthCredentialMissingPermission":{"properties":{"message":{"type":"string","description":"Describes the degraded experience of the integration instance due to the missing permission.\nMay also include a message on how to resolve the missing permission.\n"},"scopes":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["message","scopes"]}}},"konnect:index/IntegrationInstanceAuthCredentialMultiKeyAuth:IntegrationInstanceAuthCredentialMultiKeyAuth":{"properties":{"config":{"$ref":"#/types/konnect:index%2FIntegrationInstanceAuthCredentialMultiKeyAuthConfig:IntegrationInstanceAuthCredentialMultiKeyAuthConfig","description":"Requires replacement if changed.\n"}},"type":"object","required":["config"]},"konnect:index/IntegrationInstanceAuthCredentialMultiKeyAuthConfig:IntegrationInstanceAuthCredentialMultiKeyAuthConfig":{"properties":{"headers":{"type":"array","items":{"$ref":"#/types/konnect:index%2FIntegrationInstanceAuthCredentialMultiKeyAuthConfigHeader:IntegrationInstanceAuthCredentialMultiKeyAuthConfigHeader"},"description":"A list of header key/value pairs used to transmit API credentials to the integration's external API.\nHeader names are defined by the integration within its `Multi Key` authorization strategy definition.\nRequires replacement if changed.\n"}},"type":"object","required":["headers"]},"konnect:index/IntegrationInstanceAuthCredentialMultiKeyAuthConfigHeader:IntegrationInstanceAuthCredentialMultiKeyAuthConfigHeader":{"properties":{"key":{"type":"string","description":"The key used to populate the request header. Requires replacement if changed.\n"},"name":{"type":"string","description":"Name of the request header. Requires replacement if changed.\n"}},"type":"object","required":["key","name"]},"konnect:index/IntegrationInstanceAuthCredentialMultiKeyAuthCredential:IntegrationInstanceAuthCredentialMultiKeyAuthCredential":{"properties":{"createdAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity creation date.\n"},"expiresAt":{"type":"string","description":"Timestamp denoting when the when the credential will expire in RFC-3339 format with a \"T\" character separating date from time within the field value.\nWhen expired, the credential must be replaced with a new valid credential to re-enable full functionality for the given integration instance.\n"},"id":{"type":"string"},"integrationInstance":{"$ref":"#/types/konnect:index%2FIntegrationInstanceAuthCredentialMultiKeyAuthCredentialIntegrationInstance:IntegrationInstanceAuthCredentialMultiKeyAuthCredentialIntegrationInstance","description":"Short-hand descriptor of an integration instance.\n"},"missingPermissions":{"type":"array","items":{"$ref":"#/types/konnect:index%2FIntegrationInstanceAuthCredentialMultiKeyAuthCredentialMissingPermission:IntegrationInstanceAuthCredentialMultiKeyAuthCredentialMissingPermission"},"description":"List of detected missing permissions required to enable the full functionality of the given integration instance.\n"},"tainted":{"type":"boolean","description":"Indicates that the credential is no longer valid and must be replaced with a new valid credential.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["createdAt","expiresAt","id","integrationInstance","missingPermissions","tainted"]}}},"konnect:index/IntegrationInstanceAuthCredentialMultiKeyAuthCredentialIntegrationInstance:IntegrationInstanceAuthCredentialMultiKeyAuthCredentialIntegrationInstance":{"properties":{"displayName":{"type":"string","description":"The display name of the integration instance.\n"},"id":{"type":"string","description":"The integration instance ID.\n"},"name":{"type":"string","description":"The machine name of the integration instance that uniquely identifies it within the catalog.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["displayName","id","name"]}}},"konnect:index/IntegrationInstanceAuthCredentialMultiKeyAuthCredentialMissingPermission:IntegrationInstanceAuthCredentialMultiKeyAuthCredentialMissingPermission":{"properties":{"message":{"type":"string","description":"Describes the degraded experience of the integration instance due to the missing permission.\nMay also include a message on how to resolve the missing permission.\n"},"scopes":{"type":"array","items":{"type":"string"}}},"type":"object","language":{"nodejs":{"requiredOutputs":["message","scopes"]}}},"konnect:index/IntegrationInstanceIntegration:IntegrationInstanceIntegration":{"properties":{"displayName":{"type":"string"},"name":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["displayName","name"]}}},"konnect:index/MeshControlPlaneFeature:MeshControlPlaneFeature":{"properties":{"hostnameGeneratorCreation":{"$ref":"#/types/konnect:index%2FMeshControlPlaneFeatureHostnameGeneratorCreation:MeshControlPlaneFeatureHostnameGeneratorCreation","description":"Requires replacement if changed.\n"},"meshCreation":{"$ref":"#/types/konnect:index%2FMeshControlPlaneFeatureMeshCreation:MeshControlPlaneFeatureMeshCreation","description":"Requires replacement if changed.\n"},"type":{"type":"string","description":"Not Null; must be one of [\"MeshCreation\", \"HostnameGeneratorCreation\"]; Requires replacement if changed.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["hostnameGeneratorCreation","meshCreation","type"]}}},"konnect:index/MeshControlPlaneFeatureHostnameGeneratorCreation:MeshControlPlaneFeatureHostnameGeneratorCreation":{"properties":{"enabled":{"type":"boolean","description":"Not Null; Requires replacement if changed.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["enabled"]}}},"konnect:index/MeshControlPlaneFeatureMeshCreation:MeshControlPlaneFeatureMeshCreation":{"properties":{"enabled":{"type":"boolean","description":"Not Null; Requires replacement if changed.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["enabled"]}}},"konnect:index/PortalAppearanceCustomFonts:PortalAppearanceCustomFonts":{"properties":{"base":{"type":"string","description":"The name of the font to render in the browser. must be one of [\"Roboto\", \"Inter\", \"Open Sans\", \"Lato\", \"Slabo 27px\", \"Slabo 13px\", \"Oswald\", \"Source Sans Pro\", \"Montserrat\", \"Raleway\", \"PT Sans\", \"Lora\", \"Roboto Mono\", \"Inconsolata\", \"Source Code Pro\", \"PT Mono\", \"Ubuntu Mono\", \"IBM Plex Mono\"]\n"},"code":{"type":"string","description":"The name of the font to render in the browser. must be one of [\"Roboto\", \"Inter\", \"Open Sans\", \"Lato\", \"Slabo 27px\", \"Slabo 13px\", \"Oswald\", \"Source Sans Pro\", \"Montserrat\", \"Raleway\", \"PT Sans\", \"Lora\", \"Roboto Mono\", \"Inconsolata\", \"Source Code Pro\", \"PT Mono\", \"Ubuntu Mono\", \"IBM Plex Mono\"]\n"},"headings":{"type":"string","description":"The name of the font to render in the browser. must be one of [\"Roboto\", \"Inter\", \"Open Sans\", \"Lato\", \"Slabo 27px\", \"Slabo 13px\", \"Oswald\", \"Source Sans Pro\", \"Montserrat\", \"Raleway\", \"PT Sans\", \"Lora\", \"Roboto Mono\", \"Inconsolata\", \"Source Code Pro\", \"PT Mono\", \"Ubuntu Mono\", \"IBM Plex Mono\"]\n"}},"type":"object","required":["base","code","headings"]},"konnect:index/PortalAppearanceCustomTheme:PortalAppearanceCustomTheme":{"properties":{"colors":{"$ref":"#/types/konnect:index%2FPortalAppearanceCustomThemeColors:PortalAppearanceCustomThemeColors"}},"type":"object","required":["colors"]},"konnect:index/PortalAppearanceCustomThemeColors:PortalAppearanceCustomThemeColors":{"properties":{"button":{"$ref":"#/types/konnect:index%2FPortalAppearanceCustomThemeColorsButton:PortalAppearanceCustomThemeColorsButton"},"section":{"$ref":"#/types/konnect:index%2FPortalAppearanceCustomThemeColorsSection:PortalAppearanceCustomThemeColorsSection"},"text":{"$ref":"#/types/konnect:index%2FPortalAppearanceCustomThemeColorsText:PortalAppearanceCustomThemeColorsText"}},"type":"object","required":["button","section","text"]},"konnect:index/PortalAppearanceCustomThemeColorsButton:PortalAppearanceCustomThemeColorsButton":{"properties":{"primaryFill":{"$ref":"#/types/konnect:index%2FPortalAppearanceCustomThemeColorsButtonPrimaryFill:PortalAppearanceCustomThemeColorsButtonPrimaryFill"},"primaryText":{"$ref":"#/types/konnect:index%2FPortalAppearanceCustomThemeColorsButtonPrimaryText:PortalAppearanceCustomThemeColorsButtonPrimaryText"}},"type":"object","required":["primaryFill","primaryText"]},"konnect:index/PortalAppearanceCustomThemeColorsButtonPrimaryFill:PortalAppearanceCustomThemeColorsButtonPrimaryFill":{"properties":{"description":{"type":"string"},"value":{"type":"string"}},"type":"object","required":["value"]},"konnect:index/PortalAppearanceCustomThemeColorsButtonPrimaryText:PortalAppearanceCustomThemeColorsButtonPrimaryText":{"properties":{"description":{"type":"string"},"value":{"type":"string"}},"type":"object","required":["value"]},"konnect:index/PortalAppearanceCustomThemeColorsSection:PortalAppearanceCustomThemeColorsSection":{"properties":{"accent":{"$ref":"#/types/konnect:index%2FPortalAppearanceCustomThemeColorsSectionAccent:PortalAppearanceCustomThemeColorsSectionAccent"},"body":{"$ref":"#/types/konnect:index%2FPortalAppearanceCustomThemeColorsSectionBody:PortalAppearanceCustomThemeColorsSectionBody"},"footer":{"$ref":"#/types/konnect:index%2FPortalAppearanceCustomThemeColorsSectionFooter:PortalAppearanceCustomThemeColorsSectionFooter"},"header":{"$ref":"#/types/konnect:index%2FPortalAppearanceCustomThemeColorsSectionHeader:PortalAppearanceCustomThemeColorsSectionHeader"},"hero":{"$ref":"#/types/konnect:index%2FPortalAppearanceCustomThemeColorsSectionHero:PortalAppearanceCustomThemeColorsSectionHero"},"stroke":{"$ref":"#/types/konnect:index%2FPortalAppearanceCustomThemeColorsSectionStroke:PortalAppearanceCustomThemeColorsSectionStroke"},"tertiary":{"$ref":"#/types/konnect:index%2FPortalAppearanceCustomThemeColorsSectionTertiary:PortalAppearanceCustomThemeColorsSectionTertiary"}},"type":"object","required":["accent","body","footer","header","hero","stroke","tertiary"]},"konnect:index/PortalAppearanceCustomThemeColorsSectionAccent:PortalAppearanceCustomThemeColorsSectionAccent":{"properties":{"description":{"type":"string"},"value":{"type":"string"}},"type":"object","required":["value"]},"konnect:index/PortalAppearanceCustomThemeColorsSectionBody:PortalAppearanceCustomThemeColorsSectionBody":{"properties":{"description":{"type":"string"},"value":{"type":"string"}},"type":"object","required":["value"]},"konnect:index/PortalAppearanceCustomThemeColorsSectionFooter:PortalAppearanceCustomThemeColorsSectionFooter":{"properties":{"description":{"type":"string"},"value":{"type":"string"}},"type":"object","required":["value"]},"konnect:index/PortalAppearanceCustomThemeColorsSectionHeader:PortalAppearanceCustomThemeColorsSectionHeader":{"properties":{"description":{"type":"string"},"value":{"type":"string"}},"type":"object","required":["value"]},"konnect:index/PortalAppearanceCustomThemeColorsSectionHero:PortalAppearanceCustomThemeColorsSectionHero":{"properties":{"description":{"type":"string"},"value":{"type":"string"}},"type":"object","required":["value"]},"konnect:index/PortalAppearanceCustomThemeColorsSectionStroke:PortalAppearanceCustomThemeColorsSectionStroke":{"properties":{"description":{"type":"string"},"value":{"type":"string"}},"type":"object","required":["value"]},"konnect:index/PortalAppearanceCustomThemeColorsSectionTertiary:PortalAppearanceCustomThemeColorsSectionTertiary":{"properties":{"description":{"type":"string"},"value":{"type":"string"}},"type":"object","required":["value"]},"konnect:index/PortalAppearanceCustomThemeColorsText:PortalAppearanceCustomThemeColorsText":{"properties":{"accent":{"$ref":"#/types/konnect:index%2FPortalAppearanceCustomThemeColorsTextAccent:PortalAppearanceCustomThemeColorsTextAccent"},"footer":{"$ref":"#/types/konnect:index%2FPortalAppearanceCustomThemeColorsTextFooter:PortalAppearanceCustomThemeColorsTextFooter"},"header":{"$ref":"#/types/konnect:index%2FPortalAppearanceCustomThemeColorsTextHeader:PortalAppearanceCustomThemeColorsTextHeader"},"headings":{"$ref":"#/types/konnect:index%2FPortalAppearanceCustomThemeColorsTextHeadings:PortalAppearanceCustomThemeColorsTextHeadings"},"hero":{"$ref":"#/types/konnect:index%2FPortalAppearanceCustomThemeColorsTextHero:PortalAppearanceCustomThemeColorsTextHero"},"link":{"$ref":"#/types/konnect:index%2FPortalAppearanceCustomThemeColorsTextLink:PortalAppearanceCustomThemeColorsTextLink"},"primary":{"$ref":"#/types/konnect:index%2FPortalAppearanceCustomThemeColorsTextPrimary:PortalAppearanceCustomThemeColorsTextPrimary"},"secondary":{"$ref":"#/types/konnect:index%2FPortalAppearanceCustomThemeColorsTextSecondary:PortalAppearanceCustomThemeColorsTextSecondary"}},"type":"object","required":["accent","footer","header","headings","hero","link","primary","secondary"]},"konnect:index/PortalAppearanceCustomThemeColorsTextAccent:PortalAppearanceCustomThemeColorsTextAccent":{"properties":{"description":{"type":"string"},"value":{"type":"string"}},"type":"object","required":["value"]},"konnect:index/PortalAppearanceCustomThemeColorsTextFooter:PortalAppearanceCustomThemeColorsTextFooter":{"properties":{"description":{"type":"string"},"value":{"type":"string"}},"type":"object","required":["value"]},"konnect:index/PortalAppearanceCustomThemeColorsTextHeader:PortalAppearanceCustomThemeColorsTextHeader":{"properties":{"description":{"type":"string"},"value":{"type":"string"}},"type":"object","required":["value"]},"konnect:index/PortalAppearanceCustomThemeColorsTextHeadings:PortalAppearanceCustomThemeColorsTextHeadings":{"properties":{"description":{"type":"string"},"value":{"type":"string"}},"type":"object","required":["value"]},"konnect:index/PortalAppearanceCustomThemeColorsTextHero:PortalAppearanceCustomThemeColorsTextHero":{"properties":{"description":{"type":"string"},"value":{"type":"string"}},"type":"object","required":["value"]},"konnect:index/PortalAppearanceCustomThemeColorsTextLink:PortalAppearanceCustomThemeColorsTextLink":{"properties":{"description":{"type":"string"},"value":{"type":"string"}},"type":"object","required":["value"]},"konnect:index/PortalAppearanceCustomThemeColorsTextPrimary:PortalAppearanceCustomThemeColorsTextPrimary":{"properties":{"description":{"type":"string"},"value":{"type":"string"}},"type":"object","required":["value"]},"konnect:index/PortalAppearanceCustomThemeColorsTextSecondary:PortalAppearanceCustomThemeColorsTextSecondary":{"properties":{"description":{"type":"string"},"value":{"type":"string"}},"type":"object","required":["value"]},"konnect:index/PortalAppearanceImages:PortalAppearanceImages":{"properties":{"catalogCover":{"$ref":"#/types/konnect:index%2FPortalAppearanceImagesCatalogCover:PortalAppearanceImagesCatalogCover","description":"The image data to upload, along with an optional filename. Images must be a data URL with binary image data in base 64 format. See https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics*of*HTTP/Data*URLs.\n"},"favicon":{"$ref":"#/types/konnect:index%2FPortalAppearanceImagesFavicon:PortalAppearanceImagesFavicon","description":"The image data to upload, along with an optional filename. Images must be a data URL with binary image data in base 64 format. See https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics*of*HTTP/Data_URLs.\n"},"logo":{"$ref":"#/types/konnect:index%2FPortalAppearanceImagesLogo:PortalAppearanceImagesLogo","description":"The image data to upload, along with an optional filename. Images must be a data URL with binary image data in base 64 format. See https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics*of*HTTP/Data_URLs.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["logo"]}}},"konnect:index/PortalAppearanceImagesCatalogCover:PortalAppearanceImagesCatalogCover":{"properties":{"data":{"type":"string","description":"must be a data URL with base64 image data, e.g., data:image/jpeg;base64,\\n\\n. Not Null\n"},"filename":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["data"]}}},"konnect:index/PortalAppearanceImagesFavicon:PortalAppearanceImagesFavicon":{"properties":{"data":{"type":"string","description":"must be a data URL with base64 image data, e.g., data:image/jpeg;base64,\\n\\n. Not Null\n"},"filename":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["data"]}}},"konnect:index/PortalAppearanceImagesLogo:PortalAppearanceImagesLogo":{"properties":{"data":{"type":"string","description":"must be a data URL with base64 image data, e.g., data:image/jpeg;base64,\\n\\n. Not Null\n"},"filename":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["data"]}}},"konnect:index/PortalAppearanceText:PortalAppearanceText":{"properties":{"catalog":{"$ref":"#/types/konnect:index%2FPortalAppearanceTextCatalog:PortalAppearanceTextCatalog"}},"type":"object","required":["catalog"]},"konnect:index/PortalAppearanceTextCatalog:PortalAppearanceTextCatalog":{"properties":{"primaryHeader":{"type":"string"},"welcomeMessage":{"type":"string"}},"type":"object","required":["primaryHeader","welcomeMessage"]},"konnect:index/PortalAuthOidcClaimMappings:PortalAuthOidcClaimMappings":{"properties":{"email":{"type":"string","description":"Default: \"email\"\n"},"groups":{"type":"string","description":"Default: \"groups\"\n"},"name":{"type":"string","description":"Default: \"name\"\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["email","groups","name"]}}},"konnect:index/PortalAuthOidcConfig:PortalAuthOidcConfig":{"properties":{"claimMappings":{"$ref":"#/types/konnect:index%2FPortalAuthOidcConfigClaimMappings:PortalAuthOidcConfigClaimMappings","description":"Mappings from a portal developer atribute to an Identity Provider claim.\n"},"clientId":{"type":"string"},"issuer":{"type":"string"},"scopes":{"type":"array","items":{"type":"string"},"description":"Default: [\"email\",\"openid\",\"profile\"]\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["claimMappings","clientId","issuer","scopes"]}}},"konnect:index/PortalAuthOidcConfigClaimMappings:PortalAuthOidcConfigClaimMappings":{"properties":{"email":{"type":"string","description":"Default: \"email\"\n"},"groups":{"type":"string","description":"Default: \"groups\"\n"},"name":{"type":"string","description":"Default: \"name\"\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["email","groups","name"]}}},"konnect:index/PortalCustomDomainSsl:PortalCustomDomainSsl":{"properties":{"customCertificate":{"type":"string","description":"Custom certificate to be used for the SSL termination. Only used when domain*verification*method == \u003cspan pulumi-lang-nodejs=\"\"customCertificate\"\" pulumi-lang-dotnet=\"\"CustomCertificate\"\" pulumi-lang-go=\"\"customCertificate\"\" pulumi-lang-python=\"\"custom_certificate\"\" pulumi-lang-yaml=\"\"customCertificate\"\" pulumi-lang-java=\"\"customCertificate\"\"\u003e\"custom_certificate\"\u003c/span\u003e. Requires replacement if changed.\n"},"customPrivateKey":{"type":"string","description":"Custom certificate private key to be used for the SSL termination. Only used when domain*verification*method == \u003cspan pulumi-lang-nodejs=\"\"customCertificate\"\" pulumi-lang-dotnet=\"\"CustomCertificate\"\" pulumi-lang-go=\"\"customCertificate\"\" pulumi-lang-python=\"\"custom_certificate\"\" pulumi-lang-yaml=\"\"customCertificate\"\" pulumi-lang-java=\"\"customCertificate\"\"\u003e\"custom_certificate\"\u003c/span\u003e. Requires replacement if changed.\n"},"domainVerificationMethod":{"type":"string","description":"must be one of [\u003cspan pulumi-lang-nodejs=\"\"customCertificate\"\" pulumi-lang-dotnet=\"\"CustomCertificate\"\" pulumi-lang-go=\"\"customCertificate\"\" pulumi-lang-python=\"\"custom_certificate\"\" pulumi-lang-yaml=\"\"customCertificate\"\" pulumi-lang-java=\"\"customCertificate\"\"\u003e\"custom_certificate\"\u003c/span\u003e, \"http\"]; Requires replacement if changed.\n"},"expiresAt":{"type":"string","description":"An ISO-8601 timestamp representation of the ssl certificate expiration date.\n"},"skipCaCheck":{"type":"boolean","description":"Advanced option. If true, the custom certificate is served exactly as provided, without attempting to bundle against a public trust store. Required for certificates issued by an internal/private CA. Requires replacement if changed.\n"},"uploadedAt":{"type":"string","description":"An ISO-8601 timestamp representation of the ssl certificate upload date.\n"},"validationErrors":{"type":"array","items":{"type":"string"}},"verificationStatus":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["domainVerificationMethod","expiresAt","skipCaCheck","uploadedAt","validationErrors","verificationStatus"]}}},"konnect:index/PortalCustomizationMenu:PortalCustomizationMenu":{"properties":{"footerBottoms":{"type":"array","items":{"$ref":"#/types/konnect:index%2FPortalCustomizationMenuFooterBottom:PortalCustomizationMenuFooterBottom"}},"footerSections":{"type":"array","items":{"$ref":"#/types/konnect:index%2FPortalCustomizationMenuFooterSection:PortalCustomizationMenuFooterSection"}},"mains":{"type":"array","items":{"$ref":"#/types/konnect:index%2FPortalCustomizationMenuMain:PortalCustomizationMenuMain"}}},"type":"object"},"konnect:index/PortalCustomizationMenuFooterBottom:PortalCustomizationMenuFooterBottom":{"properties":{"external":{"type":"boolean","description":"When clicked, open the link in a new window. Not Null\n"},"path":{"type":"string","description":"The absolute path of a page in a portal with a leading slash. Not Null\n"},"title":{"type":"string","description":"The link display text. Not Null\n"},"visibility":{"type":"string","description":"Whether a menu item is public or private. Private menu items are only accessible to authenticated users. Not Null; must be one of [\"public\", \"private\"]\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["external","path","title","visibility"]}}},"konnect:index/PortalCustomizationMenuFooterSection:PortalCustomizationMenuFooterSection":{"properties":{"items":{"type":"array","items":{"$ref":"#/types/konnect:index%2FPortalCustomizationMenuFooterSectionItem:PortalCustomizationMenuFooterSectionItem"},"description":"Not Null\n"},"title":{"type":"string","description":"The footer menu section title. Not Null\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["items","title"]}}},"konnect:index/PortalCustomizationMenuFooterSectionItem:PortalCustomizationMenuFooterSectionItem":{"properties":{"external":{"type":"boolean","description":"When clicked, open the link in a new window. Not Null\n"},"path":{"type":"string","description":"The absolute path of a page in a portal with a leading slash. Not Null\n"},"title":{"type":"string","description":"The link display text. Not Null\n"},"visibility":{"type":"string","description":"Whether a menu item is public or private. Private menu items are only accessible to authenticated users. Not Null; must be one of [\"public\", \"private\"]\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["external","path","title","visibility"]}}},"konnect:index/PortalCustomizationMenuMain:PortalCustomizationMenuMain":{"properties":{"external":{"type":"boolean","description":"When clicked, open the link in a new window. Not Null\n"},"path":{"type":"string","description":"The absolute path of a page in a portal with a leading slash. Not Null\n"},"title":{"type":"string","description":"The link display text. Not Null\n"},"visibility":{"type":"string","description":"Whether a menu item is public or private. Private menu items are only accessible to authenticated users. Not Null; must be one of [\"public\", \"private\"]\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["external","path","title","visibility"]}}},"konnect:index/PortalCustomizationSpecRenderer:PortalCustomizationSpecRenderer":{"properties":{"allowCustomServerUrls":{"type":"boolean","description":"Let users define a custom server URL for endpoints. This will be used to generate code snippets and to test the API. The URL is client-side only and is not saved. Default: true\n"},"hideDeprecated":{"type":"boolean","description":"Manage visibility of deprecated endpoints and models. Default: false\n"},"hideInternal":{"type":"boolean","description":"Manage visibility of internal endpoints and models. Default: false\n"},"infiniteScroll":{"type":"boolean","description":"Display the full spec on a single, scrollable page. If disabled, documentation, endpoints, and schemas appear on separate pages. Default: true\n"},"showSchemas":{"type":"boolean","description":"Control whether schemas are visible in your API specs. When enabled, schemas appear in the side navigation below the endpoints. Default: true\n"},"tryItInsomnia":{"type":"boolean","description":"Enables users to open API specifications in Insomnia to explore and send requests with the native client. Only public API specifications are supported. Default: true\n"},"tryItUi":{"type":"boolean","description":"Enable in-browser testing for your APIs. All linked gateways must have the CORS plugin configured. Default: true\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["allowCustomServerUrls","hideDeprecated","hideInternal","infiniteScroll","showSchemas","tryItInsomnia","tryItUi"]}}},"konnect:index/PortalCustomizationTheme:PortalCustomizationTheme":{"properties":{"colors":{"$ref":"#/types/konnect:index%2FPortalCustomizationThemeColors:PortalCustomizationThemeColors"},"mode":{"type":"string","description":"must be one of [\"light\", \"dark\", \"system\"]\n"},"name":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["mode","name"]}}},"konnect:index/PortalCustomizationThemeColors:PortalCustomizationThemeColors":{"properties":{"primary":{"type":"string"}},"type":"object","language":{"nodejs":{"requiredOutputs":["primary"]}}},"konnect:index/PortalProductVersionAuthStrategy:PortalProductVersionAuthStrategy":{"properties":{"clientCredentials":{"$ref":"#/types/konnect:index%2FPortalProductVersionAuthStrategyClientCredentials:PortalProductVersionAuthStrategyClientCredentials","description":"Client Credential Auth strategy that the application uses.\n"},"keyAuth":{"$ref":"#/types/konnect:index%2FPortalProductVersionAuthStrategyKeyAuth:PortalProductVersionAuthStrategyKeyAuth","description":"KeyAuth Auth strategy that the application uses.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["clientCredentials","keyAuth"]}}},"konnect:index/PortalProductVersionAuthStrategyClientCredentials:PortalProductVersionAuthStrategyClientCredentials":{"properties":{"authMethods":{"type":"array","items":{"type":"string"}},"availableScopes":{"type":"array","items":{"type":"string"},"description":"Possible developer selectable scopes for an application. Only present when using DCR Provider that supports it.\n"},"credentialType":{"type":"string"},"id":{"type":"string","description":"The Application Auth Strategy ID.\n"},"name":{"type":"string","description":"Default: \"name\"\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["authMethods","availableScopes","credentialType","id","name"]}}},"konnect:index/PortalProductVersionAuthStrategyKeyAuth:PortalProductVersionAuthStrategyKeyAuth":{"properties":{"credentialType":{"type":"string"},"id":{"type":"string","description":"The Application Auth Strategy ID.\n"},"keyNames":{"type":"array","items":{"type":"string"}},"name":{"type":"string","description":"Default: \"name\"\n"},"ttl":{"$ref":"#/types/konnect:index%2FPortalProductVersionAuthStrategyKeyAuthTtl:PortalProductVersionAuthStrategyKeyAuthTtl","description":"Default maximum Time-To-Live for keys created under this strategy.\n"}},"type":"object","language":{"nodejs":{"requiredOutputs":["credentialType","id","keyNames","name","ttl"]}}},"konnect:index/PortalProductVersionAuthStrategyKeyAuthTtl:PortalProductVersionAuthStrategyKeyAuthTtl":{"properties":{"unit":{"type":"string"},"value":{"type":"number"}},"type":"object","language":{"nodejs":{"requiredOutputs":["unit","value"]}}},"konnect:index/ServerlessCloudGatewayControlPlane:ServerlessCloudGatewayControlPlane":{"properties":{"id":{"type":"string","description":"ID of the serverless cloud gateway CP. Requires replacement if changed.\n"},"prefix":{"type":"string","description":"The prefix of the serverless cloud gateway CP. Requires replacement if changed.\n"},"region":{"type":"string","description":"The control plane region. must be one of [\"us\", \"eu\", \"au\"]; Requires replacement if changed.\n"}},"type":"object","required":["id","prefix","region"]},"konnect:index/getCloudGatewayProviderAccountListData:getCloudGatewayProviderAccountListData":{"properties":{"createdAt":{"type":"string","description":"An RFC-3339 timestamp representation of provider account creation date.\n"},"id":{"type":"string"},"provider":{"type":"string","description":"Name of cloud provider.\n"},"providerAccountId":{"type":"string","description":"ID of the cloud provider account.\n"},"updatedAt":{"type":"string","description":"An RFC-3339 timestamp representation of provider account update date.\n"}},"type":"object","required":["createdAt","id","provider","providerAccountId","updatedAt"],"language":{"nodejs":{"requiredInputs":[]}}},"konnect:index/getGatewayControlPlaneConfig:getGatewayControlPlaneConfig":{"properties":{"authType":{"type":"string","description":"The auth type value of the cluster associated with the Runtime Group.\n"},"cloudGateway":{"type":"boolean","description":"Whether the Control Plane can be used for cloud-gateways.\n"},"clusterType":{"type":"string","description":"The ClusterType value of the cluster associated with the Control Plane.\n"},"controlPlaneEndpoint":{"type":"string","description":"Control Plane Endpoint.\n"},"proxyUrls":{"type":"array","items":{"$ref":"#/types/konnect:index%2FgetGatewayControlPlaneConfigProxyUrl:getGatewayControlPlaneConfigProxyUrl"},"description":"Array of proxy URLs associated with reaching the data-planes connected to a control-plane.\n"},"telemetryEndpoint":{"type":"string","description":"Telemetry Endpoint.\n"}},"type":"object","required":["authType","cloudGateway","clusterType","controlPlaneEndpoint","proxyUrls","telemetryEndpoint"],"language":{"nodejs":{"requiredInputs":[]}}},"konnect:index/getGatewayControlPlaneConfigProxyUrl:getGatewayControlPlaneConfigProxyUrl":{"properties":{"host":{"type":"string","description":"Hostname of the proxy URL.\n"},"port":{"type":"number","description":"Port of the proxy URL.\n"},"protocol":{"type":"string","description":"Protocol of the proxy URL.\n"}},"type":"object","required":["host","port","protocol"],"language":{"nodejs":{"requiredInputs":[]}}},"konnect:index/getGatewayControlPlaneFilter:getGatewayControlPlaneFilter":{"properties":{"cloudGateway":{"type":"boolean","description":"Filter by a boolean value (true/false).\n"},"clusterType":{"$ref":"#/types/konnect:index%2FgetGatewayControlPlaneFilterClusterType:getGatewayControlPlaneFilterClusterType","description":"Filter using **one** of the following operators: \u003cspan pulumi-lang-nodejs=\"`eq`\" pulumi-lang-dotnet=\"`Eq`\" pulumi-lang-go=\"`eq`\" pulumi-lang-python=\"`eq`\" pulumi-lang-yaml=\"`eq`\" pulumi-lang-java=\"`eq`\"\u003e`eq`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`neq`\" pulumi-lang-dotnet=\"`Neq`\" pulumi-lang-go=\"`neq`\" pulumi-lang-python=\"`neq`\" pulumi-lang-yaml=\"`neq`\" pulumi-lang-java=\"`neq`\"\u003e`neq`\u003c/span\u003e\n"},"id":{"$ref":"#/types/konnect:index%2FgetGatewayControlPlaneFilterId:getGatewayControlPlaneFilterId","description":"Filter using **one** of the following operators: \u003cspan pulumi-lang-nodejs=\"`eq`\" pulumi-lang-dotnet=\"`Eq`\" pulumi-lang-go=\"`eq`\" pulumi-lang-python=\"`eq`\" pulumi-lang-yaml=\"`eq`\" pulumi-lang-java=\"`eq`\"\u003e`eq`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`oeq`\" pulumi-lang-dotnet=\"`Oeq`\" pulumi-lang-go=\"`oeq`\" pulumi-lang-python=\"`oeq`\" pulumi-lang-yaml=\"`oeq`\" pulumi-lang-java=\"`oeq`\"\u003e`oeq`\u003c/span\u003e\n"},"name":{"$ref":"#/types/konnect:index%2FgetGatewayControlPlaneFilterName:getGatewayControlPlaneFilterName","description":"Filter using **one** of the following operators: \u003cspan pulumi-lang-nodejs=\"`eq`\" pulumi-lang-dotnet=\"`Eq`\" pulumi-lang-go=\"`eq`\" pulumi-lang-python=\"`eq`\" pulumi-lang-yaml=\"`eq`\" pulumi-lang-java=\"`eq`\"\u003e`eq`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`neq`\" pulumi-lang-dotnet=\"`Neq`\" pulumi-lang-go=\"`neq`\" pulumi-lang-python=\"`neq`\" pulumi-lang-yaml=\"`neq`\" pulumi-lang-java=\"`neq`\"\u003e`neq`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`contains`\" pulumi-lang-dotnet=\"`Contains`\" pulumi-lang-go=\"`contains`\" pulumi-lang-python=\"`contains`\" pulumi-lang-yaml=\"`contains`\" pulumi-lang-java=\"`contains`\"\u003e`contains`\u003c/span\u003e\n"}},"type":"object"},"konnect:index/getGatewayControlPlaneFilterClusterType:getGatewayControlPlaneFilterClusterType":{"properties":{"eq":{"type":"string","description":"The field exactly matches the provided value.\n"},"neq":{"type":"string","description":"The field does not match the provided value.\n"}},"type":"object"},"konnect:index/getGatewayControlPlaneFilterId:getGatewayControlPlaneFilterId":{"properties":{"eq":{"type":"string","description":"The field exactly matches the provided value.\n"},"oeq":{"type":"string","description":"The field matches any of the provided values.\n"}},"type":"object"},"konnect:index/getGatewayControlPlaneFilterName:getGatewayControlPlaneFilterName":{"properties":{"contains":{"type":"string","description":"The field contains the provided value.\n"},"eq":{"type":"string","description":"The field exactly matches the provided value.\n"},"neq":{"type":"string","description":"The field does not match the provided value.\n"}},"type":"object"},"konnect:index/getGatewayControlPlaneListData:getGatewayControlPlaneListData":{"properties":{"config":{"$ref":"#/types/konnect:index%2FgetGatewayControlPlaneListDataConfig:getGatewayControlPlaneListDataConfig","description":"CP configuration object for related access endpoints.\n"},"description":{"type":"string","description":"The description of the control plane in Konnect.\n"},"id":{"type":"string","description":"The control plane ID.\n"},"labels":{"type":"object","additionalProperties":{"type":"string"},"description":"Labels store metadata of an entity that can be used for filtering an entity list or for searching across entity types. \n\nKeys must be of length 1-63 characters, and cannot start with \"kong\", \"konnect\", \"mesh\", \"kic\", or \"_\".\n"},"name":{"type":"string","description":"The name of the control plane.\n"}},"type":"object","required":["config","description","id","labels","name"],"language":{"nodejs":{"requiredInputs":[]}}},"konnect:index/getGatewayControlPlaneListDataConfig:getGatewayControlPlaneListDataConfig":{"properties":{"authType":{"type":"string","description":"The auth type value of the cluster associated with the Runtime Group.\n"},"cloudGateway":{"type":"boolean","description":"Whether the Control Plane can be used for cloud-gateways.\n"},"clusterType":{"type":"string","description":"The ClusterType value of the cluster associated with the Control Plane.\n"},"controlPlaneEndpoint":{"type":"string","description":"Control Plane Endpoint.\n"},"proxyUrls":{"type":"array","items":{"$ref":"#/types/konnect:index%2FgetGatewayControlPlaneListDataConfigProxyUrl:getGatewayControlPlaneListDataConfigProxyUrl"},"description":"Array of proxy URLs associated with reaching the data-planes connected to a control-plane.\n"},"telemetryEndpoint":{"type":"string","description":"Telemetry Endpoint.\n"}},"type":"object","required":["authType","cloudGateway","clusterType","controlPlaneEndpoint","proxyUrls","telemetryEndpoint"],"language":{"nodejs":{"requiredInputs":[]}}},"konnect:index/getGatewayControlPlaneListDataConfigProxyUrl:getGatewayControlPlaneListDataConfigProxyUrl":{"properties":{"host":{"type":"string","description":"Hostname of the proxy URL.\n"},"port":{"type":"number","description":"Port of the proxy URL.\n"},"protocol":{"type":"string","description":"Protocol of the proxy URL.\n"}},"type":"object","required":["host","port","protocol"],"language":{"nodejs":{"requiredInputs":[]}}},"konnect:index/getGatewayControlPlaneListFilter:getGatewayControlPlaneListFilter":{"properties":{"cloudGateway":{"type":"boolean","description":"Filter by a boolean value (true/false).\n"},"clusterType":{"$ref":"#/types/konnect:index%2FgetGatewayControlPlaneListFilterClusterType:getGatewayControlPlaneListFilterClusterType","description":"Filter using **one** of the following operators: \u003cspan pulumi-lang-nodejs=\"`eq`\" pulumi-lang-dotnet=\"`Eq`\" pulumi-lang-go=\"`eq`\" pulumi-lang-python=\"`eq`\" pulumi-lang-yaml=\"`eq`\" pulumi-lang-java=\"`eq`\"\u003e`eq`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`neq`\" pulumi-lang-dotnet=\"`Neq`\" pulumi-lang-go=\"`neq`\" pulumi-lang-python=\"`neq`\" pulumi-lang-yaml=\"`neq`\" pulumi-lang-java=\"`neq`\"\u003e`neq`\u003c/span\u003e\n"},"id":{"$ref":"#/types/konnect:index%2FgetGatewayControlPlaneListFilterId:getGatewayControlPlaneListFilterId","description":"Filter using **one** of the following operators: \u003cspan pulumi-lang-nodejs=\"`eq`\" pulumi-lang-dotnet=\"`Eq`\" pulumi-lang-go=\"`eq`\" pulumi-lang-python=\"`eq`\" pulumi-lang-yaml=\"`eq`\" pulumi-lang-java=\"`eq`\"\u003e`eq`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`oeq`\" pulumi-lang-dotnet=\"`Oeq`\" pulumi-lang-go=\"`oeq`\" pulumi-lang-python=\"`oeq`\" pulumi-lang-yaml=\"`oeq`\" pulumi-lang-java=\"`oeq`\"\u003e`oeq`\u003c/span\u003e\n"},"name":{"$ref":"#/types/konnect:index%2FgetGatewayControlPlaneListFilterName:getGatewayControlPlaneListFilterName","description":"Filter using **one** of the following operators: \u003cspan pulumi-lang-nodejs=\"`eq`\" pulumi-lang-dotnet=\"`Eq`\" pulumi-lang-go=\"`eq`\" pulumi-lang-python=\"`eq`\" pulumi-lang-yaml=\"`eq`\" pulumi-lang-java=\"`eq`\"\u003e`eq`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`neq`\" pulumi-lang-dotnet=\"`Neq`\" pulumi-lang-go=\"`neq`\" pulumi-lang-python=\"`neq`\" pulumi-lang-yaml=\"`neq`\" pulumi-lang-java=\"`neq`\"\u003e`neq`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`contains`\" pulumi-lang-dotnet=\"`Contains`\" pulumi-lang-go=\"`contains`\" pulumi-lang-python=\"`contains`\" pulumi-lang-yaml=\"`contains`\" pulumi-lang-java=\"`contains`\"\u003e`contains`\u003c/span\u003e\n"}},"type":"object"},"konnect:index/getGatewayControlPlaneListFilterClusterType:getGatewayControlPlaneListFilterClusterType":{"properties":{"eq":{"type":"string","description":"The field exactly matches the provided value.\n"},"neq":{"type":"string","description":"The field does not match the provided value.\n"}},"type":"object"},"konnect:index/getGatewayControlPlaneListFilterId:getGatewayControlPlaneListFilterId":{"properties":{"eq":{"type":"string","description":"The field exactly matches the provided value.\n"},"oeq":{"type":"string","description":"The field matches any of the provided values.\n"}},"type":"object"},"konnect:index/getGatewayControlPlaneListFilterName:getGatewayControlPlaneListFilterName":{"properties":{"contains":{"type":"string","description":"The field contains the provided value.\n"},"eq":{"type":"string","description":"The field exactly matches the provided value.\n"},"neq":{"type":"string","description":"The field does not match the provided value.\n"}},"type":"object"},"konnect:index/getMeshControlPlanesData:getMeshControlPlanesData":{"properties":{"createdAt":{"type":"string"},"description":{"type":"string"},"features":{"type":"array","items":{"$ref":"#/types/konnect:index%2FgetMeshControlPlanesDataFeature:getMeshControlPlanesDataFeature"}},"id":{"type":"string","description":"ID of the control plane.\n"},"labels":{"type":"object","additionalProperties":{"type":"string"},"description":"Labels to facilitate tagged search on control planes. Keys must be of length 1-63 characters.\n"},"name":{"type":"string","description":"The name of the control plane.\n"},"updatedAt":{"type":"string"}},"type":"object","required":["createdAt","description","features","id","labels","name","updatedAt"],"language":{"nodejs":{"requiredInputs":[]}}},"konnect:index/getMeshControlPlanesDataFeature:getMeshControlPlanesDataFeature":{"properties":{"hostnameGeneratorCreation":{"$ref":"#/types/konnect:index%2FgetMeshControlPlanesDataFeatureHostnameGeneratorCreation:getMeshControlPlanesDataFeatureHostnameGeneratorCreation"},"meshCreation":{"$ref":"#/types/konnect:index%2FgetMeshControlPlanesDataFeatureMeshCreation:getMeshControlPlanesDataFeatureMeshCreation"},"type":{"type":"string"}},"type":"object","required":["hostnameGeneratorCreation","meshCreation","type"],"language":{"nodejs":{"requiredInputs":[]}}},"konnect:index/getMeshControlPlanesDataFeatureHostnameGeneratorCreation:getMeshControlPlanesDataFeatureHostnameGeneratorCreation":{"properties":{"enabled":{"type":"boolean"}},"type":"object","required":["enabled"],"language":{"nodejs":{"requiredInputs":[]}}},"konnect:index/getMeshControlPlanesDataFeatureMeshCreation:getMeshControlPlanesDataFeatureMeshCreation":{"properties":{"enabled":{"type":"boolean"}},"type":"object","required":["enabled"],"language":{"nodejs":{"requiredInputs":[]}}},"konnect:index/getPortalClassicListData:getPortalClassicListData":{"properties":{"applicationCount":{"type":"number","description":"Number of applications created in the portal.\n"},"autoApproveApplications":{"type":"boolean","description":"Whether the requests from applications to register for products will be automatically approved, or if they will be set to pending until approved by an admin.\n"},"autoApproveDevelopers":{"type":"boolean","description":"Whether the developer account registrations will be automatically approved, or if they will be set to pending until approved by an admin.\n"},"createdAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity creation date.\n"},"customClientDomain":{"type":"string","description":"The custom domain to access a self-hosted customized developer portal client. If this is set, the Konnect-hosted portal client will no longer be available. \u003cspan pulumi-lang-nodejs=\"`customDomain`\" pulumi-lang-dotnet=\"`CustomDomain`\" pulumi-lang-go=\"`customDomain`\" pulumi-lang-python=\"`custom_domain`\" pulumi-lang-yaml=\"`customDomain`\" pulumi-lang-java=\"`customDomain`\"\u003e`custom_domain`\u003c/span\u003e must be also set for this value to be set. See https://github.com/Kong/konnect-portal for information on how to get started deploying and customizing your own Konnect portal.\n"},"customDomain":{"type":"string","description":"The custom domain to access the developer portal. A CNAME for the portal's default domain must be able to be set for the custom domain for it to be valid. After setting a valid CNAME, an SSL/TLS certificate will be automatically manged for the custom domain, and traffic will be able to use the custom domain to route to the portal's web client and API.\n"},"defaultApplicationAuthStrategyId":{"type":"string","description":"Default strategy ID applied on applications for the portal\n"},"defaultDomain":{"type":"string","description":"The domain assigned to the portal by Konnect. This is the default place to access the portal and its API if not using a \u003cspan pulumi-lang-nodejs=\"`customDomain`\" pulumi-lang-dotnet=\"`CustomDomain`\" pulumi-lang-go=\"`customDomain`\" pulumi-lang-python=\"`custom_domain`\" pulumi-lang-yaml=\"`customDomain`\" pulumi-lang-java=\"`customDomain`\"\u003e`custom_domain`\u003c/span\u003e`.\n"},"description":{"type":"string","description":"The description of the portal.\n"},"developerCount":{"type":"number","description":"Number of developers using the portal.\n"},"displayName":{"type":"string","description":"The display name of the portal. This value will be the portal's \u003cspan pulumi-lang-nodejs=\"`name`\" pulumi-lang-dotnet=\"`Name`\" pulumi-lang-go=\"`name`\" pulumi-lang-python=\"`name`\" pulumi-lang-yaml=\"`name`\" pulumi-lang-java=\"`name`\"\u003e`name`\u003c/span\u003e in Portal API.\n"},"id":{"type":"string","description":"Contains a unique identifier used for this resource.\n"},"isPublic":{"type":"boolean","description":"Whether the portal catalog can be accessed publicly without any developer authentication. Developer accounts and applications cannot be created if the portal is public.\n"},"labels":{"type":"object","additionalProperties":{"type":"string"},"description":"Labels store metadata of an entity that can be used for filtering an entity list or for searching across entity types. \n\nKeys must be of length 1-63 characters, and cannot start with \"kong\", \"konnect\", \"mesh\", \"kic\", or \"_\".\n"},"name":{"type":"string","description":"The name of the portal, used to distinguish it from other portals. Name must be unique.\n"},"publishedProductCount":{"type":"number","description":"Number of api products published to the portal\n"},"rbacEnabled":{"type":"boolean","description":"Whether the portal resources are protected by Role Based Access Control (RBAC). If enabled, developers view or register for products until unless assigned to teams with access to view and consume specific products.\n"},"updatedAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity update date.\n"}},"type":"object","required":["applicationCount","autoApproveApplications","autoApproveDevelopers","createdAt","customClientDomain","customDomain","defaultApplicationAuthStrategyId","defaultDomain","description","developerCount","displayName","id","isPublic","labels","name","publishedProductCount","rbacEnabled","updatedAt"],"language":{"nodejs":{"requiredInputs":[]}}},"konnect:index/getPortalFilter:getPortalFilter":{"properties":{"authenticationEnabled":{"type":"boolean","description":"Filter by a boolean value (true/false).\n"},"autoApproveApplications":{"type":"boolean","description":"Filter by a boolean value (true/false).\n"},"autoApproveDevelopers":{"type":"boolean","description":"Filter by a boolean value (true/false).\n"},"canonicalDomain":{"$ref":"#/types/konnect:index%2FgetPortalFilterCanonicalDomain:getPortalFilterCanonicalDomain","description":"Filter using **one** of the following operators: \u003cspan pulumi-lang-nodejs=\"`eq`\" pulumi-lang-dotnet=\"`Eq`\" pulumi-lang-go=\"`eq`\" pulumi-lang-python=\"`eq`\" pulumi-lang-yaml=\"`eq`\" pulumi-lang-java=\"`eq`\"\u003e`eq`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`oeq`\" pulumi-lang-dotnet=\"`Oeq`\" pulumi-lang-go=\"`oeq`\" pulumi-lang-python=\"`oeq`\" pulumi-lang-yaml=\"`oeq`\" pulumi-lang-java=\"`oeq`\"\u003e`oeq`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`neq`\" pulumi-lang-dotnet=\"`Neq`\" pulumi-lang-go=\"`neq`\" pulumi-lang-python=\"`neq`\" pulumi-lang-yaml=\"`neq`\" pulumi-lang-java=\"`neq`\"\u003e`neq`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`contains`\" pulumi-lang-dotnet=\"`Contains`\" pulumi-lang-go=\"`contains`\" pulumi-lang-python=\"`contains`\" pulumi-lang-yaml=\"`contains`\" pulumi-lang-java=\"`contains`\"\u003e`contains`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`ocontains`\" pulumi-lang-dotnet=\"`Ocontains`\" pulumi-lang-go=\"`ocontains`\" pulumi-lang-python=\"`ocontains`\" pulumi-lang-yaml=\"`ocontains`\" pulumi-lang-java=\"`ocontains`\"\u003e`ocontains`\u003c/span\u003e\n"},"defaultApiVisibility":{"$ref":"#/types/konnect:index%2FgetPortalFilterDefaultApiVisibility:getPortalFilterDefaultApiVisibility","description":"Filter using **one** of the following operators: \u003cspan pulumi-lang-nodejs=\"`eq`\" pulumi-lang-dotnet=\"`Eq`\" pulumi-lang-go=\"`eq`\" pulumi-lang-python=\"`eq`\" pulumi-lang-yaml=\"`eq`\" pulumi-lang-java=\"`eq`\"\u003e`eq`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`oeq`\" pulumi-lang-dotnet=\"`Oeq`\" pulumi-lang-go=\"`oeq`\" pulumi-lang-python=\"`oeq`\" pulumi-lang-yaml=\"`oeq`\" pulumi-lang-java=\"`oeq`\"\u003e`oeq`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`neq`\" pulumi-lang-dotnet=\"`Neq`\" pulumi-lang-go=\"`neq`\" pulumi-lang-python=\"`neq`\" pulumi-lang-yaml=\"`neq`\" pulumi-lang-java=\"`neq`\"\u003e`neq`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`contains`\" pulumi-lang-dotnet=\"`Contains`\" pulumi-lang-go=\"`contains`\" pulumi-lang-python=\"`contains`\" pulumi-lang-yaml=\"`contains`\" pulumi-lang-java=\"`contains`\"\u003e`contains`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`ocontains`\" pulumi-lang-dotnet=\"`Ocontains`\" pulumi-lang-go=\"`ocontains`\" pulumi-lang-python=\"`ocontains`\" pulumi-lang-yaml=\"`ocontains`\" pulumi-lang-java=\"`ocontains`\"\u003e`ocontains`\u003c/span\u003e\n"},"defaultApplicationAuthStrategyId":{"$ref":"#/types/konnect:index%2FgetPortalFilterDefaultApplicationAuthStrategyId:getPortalFilterDefaultApplicationAuthStrategyId","description":"Filter using **one** of the following operators: \u003cspan pulumi-lang-nodejs=\"`eq`\" pulumi-lang-dotnet=\"`Eq`\" pulumi-lang-go=\"`eq`\" pulumi-lang-python=\"`eq`\" pulumi-lang-yaml=\"`eq`\" pulumi-lang-java=\"`eq`\"\u003e`eq`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`oeq`\" pulumi-lang-dotnet=\"`Oeq`\" pulumi-lang-go=\"`oeq`\" pulumi-lang-python=\"`oeq`\" pulumi-lang-yaml=\"`oeq`\" pulumi-lang-java=\"`oeq`\"\u003e`oeq`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`neq`\" pulumi-lang-dotnet=\"`Neq`\" pulumi-lang-go=\"`neq`\" pulumi-lang-python=\"`neq`\" pulumi-lang-yaml=\"`neq`\" pulumi-lang-java=\"`neq`\"\u003e`neq`\u003c/span\u003e\n"},"defaultDomain":{"$ref":"#/types/konnect:index%2FgetPortalFilterDefaultDomain:getPortalFilterDefaultDomain","description":"Filter using **one** of the following operators: \u003cspan pulumi-lang-nodejs=\"`eq`\" pulumi-lang-dotnet=\"`Eq`\" pulumi-lang-go=\"`eq`\" pulumi-lang-python=\"`eq`\" pulumi-lang-yaml=\"`eq`\" pulumi-lang-java=\"`eq`\"\u003e`eq`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`oeq`\" pulumi-lang-dotnet=\"`Oeq`\" pulumi-lang-go=\"`oeq`\" pulumi-lang-python=\"`oeq`\" pulumi-lang-yaml=\"`oeq`\" pulumi-lang-java=\"`oeq`\"\u003e`oeq`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`neq`\" pulumi-lang-dotnet=\"`Neq`\" pulumi-lang-go=\"`neq`\" pulumi-lang-python=\"`neq`\" pulumi-lang-yaml=\"`neq`\" pulumi-lang-java=\"`neq`\"\u003e`neq`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`contains`\" pulumi-lang-dotnet=\"`Contains`\" pulumi-lang-go=\"`contains`\" pulumi-lang-python=\"`contains`\" pulumi-lang-yaml=\"`contains`\" pulumi-lang-java=\"`contains`\"\u003e`contains`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`ocontains`\" pulumi-lang-dotnet=\"`Ocontains`\" pulumi-lang-go=\"`ocontains`\" pulumi-lang-python=\"`ocontains`\" pulumi-lang-yaml=\"`ocontains`\" pulumi-lang-java=\"`ocontains`\"\u003e`ocontains`\u003c/span\u003e\n"},"defaultPageVisibility":{"$ref":"#/types/konnect:index%2FgetPortalFilterDefaultPageVisibility:getPortalFilterDefaultPageVisibility","description":"Filter using **one** of the following operators: \u003cspan pulumi-lang-nodejs=\"`eq`\" pulumi-lang-dotnet=\"`Eq`\" pulumi-lang-go=\"`eq`\" pulumi-lang-python=\"`eq`\" pulumi-lang-yaml=\"`eq`\" pulumi-lang-java=\"`eq`\"\u003e`eq`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`oeq`\" pulumi-lang-dotnet=\"`Oeq`\" pulumi-lang-go=\"`oeq`\" pulumi-lang-python=\"`oeq`\" pulumi-lang-yaml=\"`oeq`\" pulumi-lang-java=\"`oeq`\"\u003e`oeq`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`neq`\" pulumi-lang-dotnet=\"`Neq`\" pulumi-lang-go=\"`neq`\" pulumi-lang-python=\"`neq`\" pulumi-lang-yaml=\"`neq`\" pulumi-lang-java=\"`neq`\"\u003e`neq`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`contains`\" pulumi-lang-dotnet=\"`Contains`\" pulumi-lang-go=\"`contains`\" pulumi-lang-python=\"`contains`\" pulumi-lang-yaml=\"`contains`\" pulumi-lang-java=\"`contains`\"\u003e`contains`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`ocontains`\" pulumi-lang-dotnet=\"`Ocontains`\" pulumi-lang-go=\"`ocontains`\" pulumi-lang-python=\"`ocontains`\" pulumi-lang-yaml=\"`ocontains`\" pulumi-lang-java=\"`ocontains`\"\u003e`ocontains`\u003c/span\u003e\n"},"description":{"$ref":"#/types/konnect:index%2FgetPortalFilterDescription:getPortalFilterDescription","description":"Filter using **one** of the following operators: \u003cspan pulumi-lang-nodejs=\"`eq`\" pulumi-lang-dotnet=\"`Eq`\" pulumi-lang-go=\"`eq`\" pulumi-lang-python=\"`eq`\" pulumi-lang-yaml=\"`eq`\" pulumi-lang-java=\"`eq`\"\u003e`eq`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`oeq`\" pulumi-lang-dotnet=\"`Oeq`\" pulumi-lang-go=\"`oeq`\" pulumi-lang-python=\"`oeq`\" pulumi-lang-yaml=\"`oeq`\" pulumi-lang-java=\"`oeq`\"\u003e`oeq`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`neq`\" pulumi-lang-dotnet=\"`Neq`\" pulumi-lang-go=\"`neq`\" pulumi-lang-python=\"`neq`\" pulumi-lang-yaml=\"`neq`\" pulumi-lang-java=\"`neq`\"\u003e`neq`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`contains`\" pulumi-lang-dotnet=\"`Contains`\" pulumi-lang-go=\"`contains`\" pulumi-lang-python=\"`contains`\" pulumi-lang-yaml=\"`contains`\" pulumi-lang-java=\"`contains`\"\u003e`contains`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`ocontains`\" pulumi-lang-dotnet=\"`Ocontains`\" pulumi-lang-go=\"`ocontains`\" pulumi-lang-python=\"`ocontains`\" pulumi-lang-yaml=\"`ocontains`\" pulumi-lang-java=\"`ocontains`\"\u003e`ocontains`\u003c/span\u003e\n"},"id":{"$ref":"#/types/konnect:index%2FgetPortalFilterId:getPortalFilterId","description":"Filter using **one** of the following operators: \u003cspan pulumi-lang-nodejs=\"`eq`\" pulumi-lang-dotnet=\"`Eq`\" pulumi-lang-go=\"`eq`\" pulumi-lang-python=\"`eq`\" pulumi-lang-yaml=\"`eq`\" pulumi-lang-java=\"`eq`\"\u003e`eq`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`oeq`\" pulumi-lang-dotnet=\"`Oeq`\" pulumi-lang-go=\"`oeq`\" pulumi-lang-python=\"`oeq`\" pulumi-lang-yaml=\"`oeq`\" pulumi-lang-java=\"`oeq`\"\u003e`oeq`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`neq`\" pulumi-lang-dotnet=\"`Neq`\" pulumi-lang-go=\"`neq`\" pulumi-lang-python=\"`neq`\" pulumi-lang-yaml=\"`neq`\" pulumi-lang-java=\"`neq`\"\u003e`neq`\u003c/span\u003e\n"},"name":{"$ref":"#/types/konnect:index%2FgetPortalFilterName:getPortalFilterName","description":"Filter using **one** of the following operators: \u003cspan pulumi-lang-nodejs=\"`eq`\" pulumi-lang-dotnet=\"`Eq`\" pulumi-lang-go=\"`eq`\" pulumi-lang-python=\"`eq`\" pulumi-lang-yaml=\"`eq`\" pulumi-lang-java=\"`eq`\"\u003e`eq`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`oeq`\" pulumi-lang-dotnet=\"`Oeq`\" pulumi-lang-go=\"`oeq`\" pulumi-lang-python=\"`oeq`\" pulumi-lang-yaml=\"`oeq`\" pulumi-lang-java=\"`oeq`\"\u003e`oeq`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`neq`\" pulumi-lang-dotnet=\"`Neq`\" pulumi-lang-go=\"`neq`\" pulumi-lang-python=\"`neq`\" pulumi-lang-yaml=\"`neq`\" pulumi-lang-java=\"`neq`\"\u003e`neq`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`contains`\" pulumi-lang-dotnet=\"`Contains`\" pulumi-lang-go=\"`contains`\" pulumi-lang-python=\"`contains`\" pulumi-lang-yaml=\"`contains`\" pulumi-lang-java=\"`contains`\"\u003e`contains`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`ocontains`\" pulumi-lang-dotnet=\"`Ocontains`\" pulumi-lang-go=\"`ocontains`\" pulumi-lang-python=\"`ocontains`\" pulumi-lang-yaml=\"`ocontains`\" pulumi-lang-java=\"`ocontains`\"\u003e`ocontains`\u003c/span\u003e\n"},"rbacEnabled":{"type":"boolean","description":"Filter by a boolean value (true/false).\n"}},"type":"object"},"konnect:index/getPortalFilterCanonicalDomain:getPortalFilterCanonicalDomain":{"properties":{"contains":{"type":"string","description":"The field contains the provided value.\n"},"eq":{"type":"string","description":"The field exactly matches the provided value.\n"},"neq":{"type":"string","description":"The field does not match the provided value.\n"},"ocontains":{"type":"string","description":"The field contains any of the provided values.\n"},"oeq":{"type":"string","description":"The field matches any of the provided values.\n"}},"type":"object"},"konnect:index/getPortalFilterDefaultApiVisibility:getPortalFilterDefaultApiVisibility":{"properties":{"contains":{"type":"string","description":"The field contains the provided value.\n"},"eq":{"type":"string","description":"The field exactly matches the provided value.\n"},"neq":{"type":"string","description":"The field does not match the provided value.\n"},"ocontains":{"type":"string","description":"The field contains any of the provided values.\n"},"oeq":{"type":"string","description":"The field matches any of the provided values.\n"}},"type":"object"},"konnect:index/getPortalFilterDefaultApplicationAuthStrategyId:getPortalFilterDefaultApplicationAuthStrategyId":{"properties":{"eq":{"type":"string","description":"The field exactly matches the provided value.\n"},"neq":{"type":"string","description":"The field does not match the provided value.\n"},"oeq":{"type":"string","description":"The field matches any of the provided values.\n"}},"type":"object"},"konnect:index/getPortalFilterDefaultDomain:getPortalFilterDefaultDomain":{"properties":{"contains":{"type":"string","description":"The field contains the provided value.\n"},"eq":{"type":"string","description":"The field exactly matches the provided value.\n"},"neq":{"type":"string","description":"The field does not match the provided value.\n"},"ocontains":{"type":"string","description":"The field contains any of the provided values.\n"},"oeq":{"type":"string","description":"The field matches any of the provided values.\n"}},"type":"object"},"konnect:index/getPortalFilterDefaultPageVisibility:getPortalFilterDefaultPageVisibility":{"properties":{"contains":{"type":"string","description":"The field contains the provided value.\n"},"eq":{"type":"string","description":"The field exactly matches the provided value.\n"},"neq":{"type":"string","description":"The field does not match the provided value.\n"},"ocontains":{"type":"string","description":"The field contains any of the provided values.\n"},"oeq":{"type":"string","description":"The field matches any of the provided values.\n"}},"type":"object"},"konnect:index/getPortalFilterDescription:getPortalFilterDescription":{"properties":{"contains":{"type":"string","description":"The field contains the provided value.\n"},"eq":{"type":"string","description":"The field exactly matches the provided value.\n"},"neq":{"type":"string","description":"The field does not match the provided value.\n"},"ocontains":{"type":"string","description":"The field contains any of the provided values.\n"},"oeq":{"type":"string","description":"The field matches any of the provided values.\n"}},"type":"object"},"konnect:index/getPortalFilterId:getPortalFilterId":{"properties":{"eq":{"type":"string","description":"The field exactly matches the provided value.\n"},"neq":{"type":"string","description":"The field does not match the provided value.\n"},"oeq":{"type":"string","description":"The field matches any of the provided values.\n"}},"type":"object"},"konnect:index/getPortalFilterName:getPortalFilterName":{"properties":{"contains":{"type":"string","description":"The field contains the provided value.\n"},"eq":{"type":"string","description":"The field exactly matches the provided value.\n"},"neq":{"type":"string","description":"The field does not match the provided value.\n"},"ocontains":{"type":"string","description":"The field contains any of the provided values.\n"},"oeq":{"type":"string","description":"The field matches any of the provided values.\n"}},"type":"object"},"konnect:index/getSystemAccountFilter:getSystemAccountFilter":{"properties":{"description":{"$ref":"#/types/konnect:index%2FgetSystemAccountFilterDescription:getSystemAccountFilterDescription","description":"Filter using **one** of the following operators: \u003cspan pulumi-lang-nodejs=\"`eq`\" pulumi-lang-dotnet=\"`Eq`\" pulumi-lang-go=\"`eq`\" pulumi-lang-python=\"`eq`\" pulumi-lang-yaml=\"`eq`\" pulumi-lang-java=\"`eq`\"\u003e`eq`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`contains`\" pulumi-lang-dotnet=\"`Contains`\" pulumi-lang-go=\"`contains`\" pulumi-lang-python=\"`contains`\" pulumi-lang-yaml=\"`contains`\" pulumi-lang-java=\"`contains`\"\u003e`contains`\u003c/span\u003e\n"},"konnectManaged":{"type":"boolean","description":"Filter by a boolean value (true/false).\n"},"name":{"$ref":"#/types/konnect:index%2FgetSystemAccountFilterName:getSystemAccountFilterName","description":"Filter using **one** of the following operators: \u003cspan pulumi-lang-nodejs=\"`eq`\" pulumi-lang-dotnet=\"`Eq`\" pulumi-lang-go=\"`eq`\" pulumi-lang-python=\"`eq`\" pulumi-lang-yaml=\"`eq`\" pulumi-lang-java=\"`eq`\"\u003e`eq`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`contains`\" pulumi-lang-dotnet=\"`Contains`\" pulumi-lang-go=\"`contains`\" pulumi-lang-python=\"`contains`\" pulumi-lang-yaml=\"`contains`\" pulumi-lang-java=\"`contains`\"\u003e`contains`\u003c/span\u003e\n"}},"type":"object"},"konnect:index/getSystemAccountFilterDescription:getSystemAccountFilterDescription":{"properties":{"contains":{"type":"string","description":"The field contains the provided value.\n"},"eq":{"type":"string","description":"The field exactly matches the provided value.\n"}},"type":"object"},"konnect:index/getSystemAccountFilterName:getSystemAccountFilterName":{"properties":{"contains":{"type":"string","description":"The field contains the provided value.\n"},"eq":{"type":"string","description":"The field exactly matches the provided value.\n"}},"type":"object"},"konnect:index/getSystemAccountListData:getSystemAccountListData":{"properties":{"createdAt":{"type":"string","description":"Timestamp of when the system account was created.\n"},"description":{"type":"string","description":"Description of the system account.\n"},"id":{"type":"string","description":"ID of the system account.\n"},"konnectManaged":{"type":"boolean","description":"The system account is managed by Konnect (true/false).\n"},"name":{"type":"string","description":"Name of the system account.\n"},"updatedAt":{"type":"string","description":"Timestamp of when the system account was last updated.\n"}},"type":"object","required":["createdAt","description","id","konnectManaged","name","updatedAt"],"language":{"nodejs":{"requiredInputs":[]}}},"konnect:index/getSystemAccountListFilter:getSystemAccountListFilter":{"properties":{"description":{"$ref":"#/types/konnect:index%2FgetSystemAccountListFilterDescription:getSystemAccountListFilterDescription","description":"Filter using **one** of the following operators: \u003cspan pulumi-lang-nodejs=\"`eq`\" pulumi-lang-dotnet=\"`Eq`\" pulumi-lang-go=\"`eq`\" pulumi-lang-python=\"`eq`\" pulumi-lang-yaml=\"`eq`\" pulumi-lang-java=\"`eq`\"\u003e`eq`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`contains`\" pulumi-lang-dotnet=\"`Contains`\" pulumi-lang-go=\"`contains`\" pulumi-lang-python=\"`contains`\" pulumi-lang-yaml=\"`contains`\" pulumi-lang-java=\"`contains`\"\u003e`contains`\u003c/span\u003e\n"},"konnectManaged":{"type":"boolean","description":"Filter by a boolean value (true/false).\n"},"name":{"$ref":"#/types/konnect:index%2FgetSystemAccountListFilterName:getSystemAccountListFilterName","description":"Filter using **one** of the following operators: \u003cspan pulumi-lang-nodejs=\"`eq`\" pulumi-lang-dotnet=\"`Eq`\" pulumi-lang-go=\"`eq`\" pulumi-lang-python=\"`eq`\" pulumi-lang-yaml=\"`eq`\" pulumi-lang-java=\"`eq`\"\u003e`eq`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`contains`\" pulumi-lang-dotnet=\"`Contains`\" pulumi-lang-go=\"`contains`\" pulumi-lang-python=\"`contains`\" pulumi-lang-yaml=\"`contains`\" pulumi-lang-java=\"`contains`\"\u003e`contains`\u003c/span\u003e\n"}},"type":"object"},"konnect:index/getSystemAccountListFilterDescription:getSystemAccountListFilterDescription":{"properties":{"contains":{"type":"string","description":"The field contains the provided value.\n"},"eq":{"type":"string","description":"The field exactly matches the provided value.\n"}},"type":"object"},"konnect:index/getSystemAccountListFilterName:getSystemAccountListFilterName":{"properties":{"contains":{"type":"string","description":"The field contains the provided value.\n"},"eq":{"type":"string","description":"The field exactly matches the provided value.\n"}},"type":"object"},"konnect:index/getTeamFilter:getTeamFilter":{"properties":{"name":{"$ref":"#/types/konnect:index%2FgetTeamFilterName:getTeamFilterName","description":"Filter using **one** of the following operators: \u003cspan pulumi-lang-nodejs=\"`eq`\" pulumi-lang-dotnet=\"`Eq`\" pulumi-lang-go=\"`eq`\" pulumi-lang-python=\"`eq`\" pulumi-lang-yaml=\"`eq`\" pulumi-lang-java=\"`eq`\"\u003e`eq`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`contains`\" pulumi-lang-dotnet=\"`Contains`\" pulumi-lang-go=\"`contains`\" pulumi-lang-python=\"`contains`\" pulumi-lang-yaml=\"`contains`\" pulumi-lang-java=\"`contains`\"\u003e`contains`\u003c/span\u003e\n"}},"type":"object"},"konnect:index/getTeamFilterName:getTeamFilterName":{"properties":{"contains":{"type":"string","description":"The field contains the provided value.\n"},"eq":{"type":"string","description":"The field exactly matches the provided value.\n"}},"type":"object"},"konnect:index/getTeamListData:getTeamListData":{"properties":{"createdAt":{"type":"string","description":"A Unix timestamp representation of team creation.\n"},"description":{"type":"string","description":"The team description in Konnect.\n"},"id":{"type":"string","description":"The team ID.\n"},"labels":{"type":"object","additionalProperties":{"type":"string"},"description":"Labels store metadata of an entity that can be used for filtering an entity list or for searching across entity types.\n"},"name":{"type":"string","description":"The name of the team.\n"},"systemTeam":{"type":"boolean","description":"Returns True if a user belongs to a \u003cspan pulumi-lang-nodejs=\"`systemTeam`\" pulumi-lang-dotnet=\"`SystemTeam`\" pulumi-lang-go=\"`systemTeam`\" pulumi-lang-python=\"`system_team`\" pulumi-lang-yaml=\"`systemTeam`\" pulumi-lang-java=\"`systemTeam`\"\u003e`system_team`\u003c/span\u003e. System teams are teams that can manage Konnect objects, like \"Organization Admin\", or \"Service\"\n"},"updatedAt":{"type":"string","description":"A Unix timestamp representation of the most recent change to the team object in Konnect.\n"}},"type":"object","required":["createdAt","description","id","labels","name","systemTeam","updatedAt"],"language":{"nodejs":{"requiredInputs":[]}}},"konnect:index/getTeamListFilter:getTeamListFilter":{"properties":{"name":{"$ref":"#/types/konnect:index%2FgetTeamListFilterName:getTeamListFilterName","description":"Filter using **one** of the following operators: \u003cspan pulumi-lang-nodejs=\"`eq`\" pulumi-lang-dotnet=\"`Eq`\" pulumi-lang-go=\"`eq`\" pulumi-lang-python=\"`eq`\" pulumi-lang-yaml=\"`eq`\" pulumi-lang-java=\"`eq`\"\u003e`eq`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`contains`\" pulumi-lang-dotnet=\"`Contains`\" pulumi-lang-go=\"`contains`\" pulumi-lang-python=\"`contains`\" pulumi-lang-yaml=\"`contains`\" pulumi-lang-java=\"`contains`\"\u003e`contains`\u003c/span\u003e\n"}},"type":"object"},"konnect:index/getTeamListFilterName:getTeamListFilterName":{"properties":{"contains":{"type":"string","description":"The field contains the provided value.\n"},"eq":{"type":"string","description":"The field exactly matches the provided value.\n"}},"type":"object"}},"provider":{"description":"The provider type for the konnect package. By default, resources use package-wide configuration\nsettings, however an explicit `Provider` instance may be created and passed during resource\nconstruction to achieve fine-grained programmatic control over provider settings. See the\n[documentation](https://www.pulumi.com/docs/reference/programming-model/#providers) for more information.\n","properties":{"konnectAccessToken":{"type":"string","description":"The Konnect access token is meant to be used by the Konnect dashboard and the decK CLI to authenticate with..","secret":true},"personalAccessToken":{"type":"string","description":"The personal access token is meant to be used as an alternative to basic-auth when accessing Konnect via APIs. You can generate a Personal Access Token (PAT) from the personal access token page in the Konnect dashboard.. Configurable via environment variable `KONNECT_TOKEN`.","secret":true},"serverUrl":{"type":"string","description":"Server URL (defaults to https://global.api.konghq.com)"},"serviceAccessToken":{"type":"string","description":"The Service access token is meant to be used between internal services.\n.","secret":true},"systemAccountAccessToken":{"type":"string","description":"The system account access token is meant for automations and integrations that are not directly associated with a human identity.\nYou can generate a system account Access Token by creating a system account and then obtaining a system account access token for that account.\nThe access token must be passed in the header of a request, for example:\n`curl -X GET 'https://global.api.konghq.com/v2/users/' --header 'Authorization: Bearer spat_i2Ej...'`\n. Configurable via environment variable `KONNECT_SPAT`.","secret":true}},"type":"object","inputProperties":{"konnectAccessToken":{"type":"string","description":"The Konnect access token is meant to be used by the Konnect dashboard and the decK CLI to authenticate with..","secret":true},"personalAccessToken":{"type":"string","description":"The personal access token is meant to be used as an alternative to basic-auth when accessing Konnect via APIs. You can generate a Personal Access Token (PAT) from the personal access token page in the Konnect dashboard.. Configurable via environment variable `KONNECT_TOKEN`.","secret":true},"serverUrl":{"type":"string","description":"Server URL (defaults to https://global.api.konghq.com)"},"serviceAccessToken":{"type":"string","description":"The Service access token is meant to be used between internal services.\n.","secret":true},"systemAccountAccessToken":{"type":"string","description":"The system account access token is meant for automations and integrations that are not directly associated with a human identity.\nYou can generate a system account Access Token by creating a system account and then obtaining a system account access token for that account.\nThe access token must be passed in the header of a request, for example:\n`curl -X GET 'https://global.api.konghq.com/v2/users/' --header 'Authorization: Bearer spat_i2Ej...'`\n. Configurable via environment variable `KONNECT_SPAT`.","secret":true}},"methods":{"terraformConfig":"pulumi:providers:konnect/terraformConfig"}},"resources":{"konnect:index/api:Api":{"description":"API Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myApi = new konnect.Api(\"my_api\", {\n    attributes: \"{ \\\"see\\\": \\\"documentation\\\" }\",\n    description: \"...my_description...\",\n    labels: {\n        key: \"value\",\n    },\n    name: \"MyAPI\",\n    slug: \"my-api-v1\",\n    specContent: \"...my_spec_content...\",\n    version: \"...my_version...\",\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_api = konnect.Api(\"my_api\",\n    attributes=\"{ \\\"see\\\": \\\"documentation\\\" }\",\n    description=\"...my_description...\",\n    labels={\n        \"key\": \"value\",\n    },\n    name=\"MyAPI\",\n    slug=\"my-api-v1\",\n    spec_content=\"...my_spec_content...\",\n    version=\"...my_version...\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myApi = new Konnect.Api(\"my_api\", new()\n    {\n        Attributes = \"{ \\\"see\\\": \\\"documentation\\\" }\",\n        Description = \"...my_description...\",\n        Labels = \n        {\n            { \"key\", \"value\" },\n        },\n        Name = \"MyAPI\",\n        Slug = \"my-api-v1\",\n        SpecContent = \"...my_spec_content...\",\n        Version = \"...my_version...\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewApi(ctx, \"my_api\", \u0026konnect.ApiArgs{\n\t\t\tAttributes:  pulumi.String(\"{ \\\"see\\\": \\\"documentation\\\" }\"),\n\t\t\tDescription: pulumi.String(\"...my_description...\"),\n\t\t\tLabels: pulumi.StringMap{\n\t\t\t\t\"key\": pulumi.String(\"value\"),\n\t\t\t},\n\t\t\tName:        pulumi.String(\"MyAPI\"),\n\t\t\tSlug:        pulumi.String(\"my-api-v1\"),\n\t\t\tSpecContent: pulumi.String(\"...my_spec_content...\"),\n\t\t\tVersion:     pulumi.String(\"...my_version...\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.Api;\nimport com.pulumi.konnect.ApiArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myApi = new Api(\"myApi\", ApiArgs.builder()\n            .attributes(\"{ \\\"see\\\": \\\"documentation\\\" }\")\n            .description(\"...my_description...\")\n            .labels(Map.of(\"key\", \"value\"))\n            .name(\"MyAPI\")\n            .slug(\"my-api-v1\")\n            .specContent(\"...my_spec_content...\")\n            .version(\"...my_version...\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myApi:\n    type: konnect:Api\n    name: my_api\n    properties:\n      attributes: '{ \"see\": \"documentation\" }'\n      description: '...my_description...'\n      labels:\n        key: value\n      name: MyAPI\n      slug: my-api-v1\n      specContent: '...my_spec_content...'\n      version: '...my_version...'\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_api.my_konnect_api\n\n  id = \"9f5061ce-78f6-4452-9108-ad7c02821fd5\"\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/api:Api my_konnect_api \"9f5061ce-78f6-4452-9108-ad7c02821fd5\"\n```\n\n","properties":{"apiSpecIds":{"type":"array","items":{"type":"string"},"description":"The list of API specification ids for the API.","deprecationMessage":"Deprecated"},"attributes":{"type":"string","description":"A set of attributes that describe the API. Parsed as JSON.\n"},"createdAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity creation date."},"description":{"type":"string","description":"A description of your API. Will be visible on your live Portal.\n"},"implementationMode":{"type":"string","description":"the implementations that are associated with this api either\u003cspan pulumi-lang-nodejs=\" gatewayEntityBinding \" pulumi-lang-dotnet=\" GatewayEntityBinding \" pulumi-lang-go=\" gatewayEntityBinding \" pulumi-lang-python=\" gateway_entity_binding \" pulumi-lang-yaml=\" gatewayEntityBinding \" pulumi-lang-java=\" gatewayEntityBinding \"\u003e gateway_entity_binding \u003c/span\u003eor access_control_enforcement"},"labels":{"type":"object","additionalProperties":{"type":"string"},"description":"Labels store metadata of an entity that can be used for filtering an entity list or for searching across entity types.\n"},"name":{"type":"string","description":"The name of your API. The `name + version` combination must be unique for each API you publish.\n"},"portals":{"type":"array","items":{"$ref":"#/types/konnect:index%2FApiPortal:ApiPortal"},"description":"The list of portals which this API is published to."},"slug":{"type":"string","description":"The \u003cspan pulumi-lang-nodejs=\"`slug`\" pulumi-lang-dotnet=\"`Slug`\" pulumi-lang-go=\"`slug`\" pulumi-lang-python=\"`slug`\" pulumi-lang-yaml=\"`slug`\" pulumi-lang-java=\"`slug`\"\u003e`slug`\u003c/span\u003e is used in generated URLs to provide human readable paths.\n\nDefaults to `slugify(name + version)`"},"specContent":{"type":"string","description":"The content of the API specification. This is the raw content of the API specification, in json or yaml. By including this field, you can add a API specification without having to make a separate call to update the API specification. Requires replacement if changed."},"updatedAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity update date."},"version":{"type":"string","description":"An optional version for your API. Leave this empty if your API is unversioned."}},"type":"object","required":["apiSpecIds","attributes","createdAt","implementationMode","labels","name","portals","slug","updatedAt","version"],"inputProperties":{"attributes":{"type":"string","description":"A set of attributes that describe the API. Parsed as JSON.\n"},"description":{"type":"string","description":"A description of your API. Will be visible on your live Portal.\n"},"labels":{"type":"object","additionalProperties":{"type":"string"},"description":"Labels store metadata of an entity that can be used for filtering an entity list or for searching across entity types.\n"},"name":{"type":"string","description":"The name of your API. The `name + version` combination must be unique for each API you publish.\n"},"slug":{"type":"string","description":"The \u003cspan pulumi-lang-nodejs=\"`slug`\" pulumi-lang-dotnet=\"`Slug`\" pulumi-lang-go=\"`slug`\" pulumi-lang-python=\"`slug`\" pulumi-lang-yaml=\"`slug`\" pulumi-lang-java=\"`slug`\"\u003e`slug`\u003c/span\u003e is used in generated URLs to provide human readable paths.\n\nDefaults to `slugify(name + version)`"},"specContent":{"type":"string","description":"The content of the API specification. This is the raw content of the API specification, in json or yaml. By including this field, you can add a API specification without having to make a separate call to update the API specification. Requires replacement if changed."},"version":{"type":"string","description":"An optional version for your API. Leave this empty if your API is unversioned."}},"stateInputs":{"description":"Input properties used for looking up and filtering Api resources.\n","properties":{"apiSpecIds":{"type":"array","items":{"type":"string"},"description":"The list of API specification ids for the API.","deprecationMessage":"Deprecated"},"attributes":{"type":"string","description":"A set of attributes that describe the API. Parsed as JSON.\n"},"createdAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity creation date."},"description":{"type":"string","description":"A description of your API. Will be visible on your live Portal.\n"},"implementationMode":{"type":"string","description":"the implementations that are associated with this api either\u003cspan pulumi-lang-nodejs=\" gatewayEntityBinding \" pulumi-lang-dotnet=\" GatewayEntityBinding \" pulumi-lang-go=\" gatewayEntityBinding \" pulumi-lang-python=\" gateway_entity_binding \" pulumi-lang-yaml=\" gatewayEntityBinding \" pulumi-lang-java=\" gatewayEntityBinding \"\u003e gateway_entity_binding \u003c/span\u003eor access_control_enforcement"},"labels":{"type":"object","additionalProperties":{"type":"string"},"description":"Labels store metadata of an entity that can be used for filtering an entity list or for searching across entity types.\n"},"name":{"type":"string","description":"The name of your API. The `name + version` combination must be unique for each API you publish.\n"},"portals":{"type":"array","items":{"$ref":"#/types/konnect:index%2FApiPortal:ApiPortal"},"description":"The list of portals which this API is published to."},"slug":{"type":"string","description":"The \u003cspan pulumi-lang-nodejs=\"`slug`\" pulumi-lang-dotnet=\"`Slug`\" pulumi-lang-go=\"`slug`\" pulumi-lang-python=\"`slug`\" pulumi-lang-yaml=\"`slug`\" pulumi-lang-java=\"`slug`\"\u003e`slug`\u003c/span\u003e is used in generated URLs to provide human readable paths.\n\nDefaults to `slugify(name + version)`"},"specContent":{"type":"string","description":"The content of the API specification. This is the raw content of the API specification, in json or yaml. By including this field, you can add a API specification without having to make a separate call to update the API specification. Requires replacement if changed."},"updatedAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity update date."},"version":{"type":"string","description":"An optional version for your API. Leave this empty if your API is unversioned."}},"type":"object"}},"konnect:index/apiDocument:ApiDocument":{"description":"APIDocument Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myApidocument = new konnect.ApiDocument(\"my_apidocument\", {\n    apiId: \"9f5061ce-78f6-4452-9108-ad7c02821fd5\",\n    content: \"...my_content...\",\n    parentDocumentId: \"b689d9da-f357-4687-8303-ec1c14d44e37\",\n    slug: \"api-document\",\n    status: \"published\",\n    title: \"API Document\",\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_apidocument = konnect.ApiDocument(\"my_apidocument\",\n    api_id=\"9f5061ce-78f6-4452-9108-ad7c02821fd5\",\n    content=\"...my_content...\",\n    parent_document_id=\"b689d9da-f357-4687-8303-ec1c14d44e37\",\n    slug=\"api-document\",\n    status=\"published\",\n    title=\"API Document\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myApidocument = new Konnect.ApiDocument(\"my_apidocument\", new()\n    {\n        ApiId = \"9f5061ce-78f6-4452-9108-ad7c02821fd5\",\n        Content = \"...my_content...\",\n        ParentDocumentId = \"b689d9da-f357-4687-8303-ec1c14d44e37\",\n        Slug = \"api-document\",\n        Status = \"published\",\n        Title = \"API Document\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewApiDocument(ctx, \"my_apidocument\", \u0026konnect.ApiDocumentArgs{\n\t\t\tApiId:            pulumi.String(\"9f5061ce-78f6-4452-9108-ad7c02821fd5\"),\n\t\t\tContent:          pulumi.String(\"...my_content...\"),\n\t\t\tParentDocumentId: pulumi.String(\"b689d9da-f357-4687-8303-ec1c14d44e37\"),\n\t\t\tSlug:             pulumi.String(\"api-document\"),\n\t\t\tStatus:           pulumi.String(\"published\"),\n\t\t\tTitle:            pulumi.String(\"API Document\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.ApiDocument;\nimport com.pulumi.konnect.ApiDocumentArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myApidocument = new ApiDocument(\"myApidocument\", ApiDocumentArgs.builder()\n            .apiId(\"9f5061ce-78f6-4452-9108-ad7c02821fd5\")\n            .content(\"...my_content...\")\n            .parentDocumentId(\"b689d9da-f357-4687-8303-ec1c14d44e37\")\n            .slug(\"api-document\")\n            .status(\"published\")\n            .title(\"API Document\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myApidocument:\n    type: konnect:ApiDocument\n    name: my_apidocument\n    properties:\n      apiId: 9f5061ce-78f6-4452-9108-ad7c02821fd5\n      content: '...my_content...'\n      parentDocumentId: b689d9da-f357-4687-8303-ec1c14d44e37\n      slug: api-document\n      status: published\n      title: API Document\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_api_document.my_konnect_api_document\n\n  id = jsonencode({\n\n    api_id = \"9f5061ce-78f6-4452-9108-ad7c02821fd5\"\n\n    id = \"de5c9818-be5c-42e6-b514-e3d4bc30ddeb\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/apiDocument:ApiDocument my_konnect_api_document '{\"api_id\": \"9f5061ce-78f6-4452-9108-ad7c02821fd5\", \"id\": \"de5c9818-be5c-42e6-b514-e3d4bc30ddeb\"}'\n```\n\n","properties":{"apiId":{"type":"string","description":"The UUID API identifier\n"},"content":{"type":"string","description":"Raw markdown content to display in your Portal\n"},"createdAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity creation date."},"parentDocumentId":{"type":"string","description":"API Documents may be rendered as a tree of files.\n"},"slug":{"type":"string","description":"The \u003cspan pulumi-lang-nodejs=\"`slug`\" pulumi-lang-dotnet=\"`Slug`\" pulumi-lang-go=\"`slug`\" pulumi-lang-python=\"`slug`\" pulumi-lang-yaml=\"`slug`\" pulumi-lang-java=\"`slug`\"\u003e`slug`\u003c/span\u003e is used in generated URLs to provide human readable paths.\n\nDefaults to `slugify(title)`"},"status":{"type":"string","description":"If `status=published` the document will be visible in your live portal. Default: \"unpublished\"; must be one of [\"published\", \"unpublished\"]"},"title":{"type":"string","description":"The title of the document. Used to populate the `\u003ctitle\u003e` tag for the page"},"updatedAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity update date."}},"type":"object","required":["apiId","content","createdAt","slug","status","title","updatedAt"],"inputProperties":{"apiId":{"type":"string","description":"The UUID API identifier\n"},"content":{"type":"string","description":"Raw markdown content to display in your Portal\n"},"parentDocumentId":{"type":"string","description":"API Documents may be rendered as a tree of files.\n"},"slug":{"type":"string","description":"The \u003cspan pulumi-lang-nodejs=\"`slug`\" pulumi-lang-dotnet=\"`Slug`\" pulumi-lang-go=\"`slug`\" pulumi-lang-python=\"`slug`\" pulumi-lang-yaml=\"`slug`\" pulumi-lang-java=\"`slug`\"\u003e`slug`\u003c/span\u003e is used in generated URLs to provide human readable paths.\n\nDefaults to `slugify(title)`"},"status":{"type":"string","description":"If `status=published` the document will be visible in your live portal. Default: \"unpublished\"; must be one of [\"published\", \"unpublished\"]"},"title":{"type":"string","description":"The title of the document. Used to populate the `\u003ctitle\u003e` tag for the page"}},"requiredInputs":["apiId","content"],"stateInputs":{"description":"Input properties used for looking up and filtering ApiDocument resources.\n","properties":{"apiId":{"type":"string","description":"The UUID API identifier\n"},"content":{"type":"string","description":"Raw markdown content to display in your Portal\n"},"createdAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity creation date."},"parentDocumentId":{"type":"string","description":"API Documents may be rendered as a tree of files.\n"},"slug":{"type":"string","description":"The \u003cspan pulumi-lang-nodejs=\"`slug`\" pulumi-lang-dotnet=\"`Slug`\" pulumi-lang-go=\"`slug`\" pulumi-lang-python=\"`slug`\" pulumi-lang-yaml=\"`slug`\" pulumi-lang-java=\"`slug`\"\u003e`slug`\u003c/span\u003e is used in generated URLs to provide human readable paths.\n\nDefaults to `slugify(title)`"},"status":{"type":"string","description":"If `status=published` the document will be visible in your live portal. Default: \"unpublished\"; must be one of [\"published\", \"unpublished\"]"},"title":{"type":"string","description":"The title of the document. Used to populate the `\u003ctitle\u003e` tag for the page"},"updatedAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity update date."}},"type":"object"}},"konnect:index/apiImplementation:ApiImplementation":{"description":"APIImplementation Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myApiimplementation = new konnect.ApiImplementation(\"my_apiimplementation\", {\n    apiId: \"9f5061ce-78f6-4452-9108-ad7c02821fd5\",\n    controlPlaneReference: {\n        controlPlane: {\n            id: \"7710d5c4-d902-410b-992f-18b814155b53\",\n        },\n    },\n    serviceReference: {\n        service: {\n            controlPlaneId: \"9f5061ce-78f6-4452-9108-ad7c02821fd5\",\n            id: \"7710d5c4-d902-410b-992f-18b814155b53\",\n        },\n    },\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_apiimplementation = konnect.ApiImplementation(\"my_apiimplementation\",\n    api_id=\"9f5061ce-78f6-4452-9108-ad7c02821fd5\",\n    control_plane_reference={\n        \"control_plane\": {\n            \"id\": \"7710d5c4-d902-410b-992f-18b814155b53\",\n        },\n    },\n    service_reference={\n        \"service\": {\n            \"control_plane_id\": \"9f5061ce-78f6-4452-9108-ad7c02821fd5\",\n            \"id\": \"7710d5c4-d902-410b-992f-18b814155b53\",\n        },\n    })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myApiimplementation = new Konnect.ApiImplementation(\"my_apiimplementation\", new()\n    {\n        ApiId = \"9f5061ce-78f6-4452-9108-ad7c02821fd5\",\n        ControlPlaneReference = new Konnect.Inputs.ApiImplementationControlPlaneReferenceArgs\n        {\n            ControlPlane = new Konnect.Inputs.ApiImplementationControlPlaneReferenceControlPlaneArgs\n            {\n                Id = \"7710d5c4-d902-410b-992f-18b814155b53\",\n            },\n        },\n        ServiceReference = new Konnect.Inputs.ApiImplementationServiceReferenceArgs\n        {\n            Service = new Konnect.Inputs.ApiImplementationServiceReferenceServiceArgs\n            {\n                ControlPlaneId = \"9f5061ce-78f6-4452-9108-ad7c02821fd5\",\n                Id = \"7710d5c4-d902-410b-992f-18b814155b53\",\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewApiImplementation(ctx, \"my_apiimplementation\", \u0026konnect.ApiImplementationArgs{\n\t\t\tApiId: pulumi.String(\"9f5061ce-78f6-4452-9108-ad7c02821fd5\"),\n\t\t\tControlPlaneReference: \u0026konnect.ApiImplementationControlPlaneReferenceArgs{\n\t\t\t\tControlPlane: \u0026konnect.ApiImplementationControlPlaneReferenceControlPlaneArgs{\n\t\t\t\t\tId: pulumi.String(\"7710d5c4-d902-410b-992f-18b814155b53\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tServiceReference: \u0026konnect.ApiImplementationServiceReferenceArgs{\n\t\t\t\tService: \u0026konnect.ApiImplementationServiceReferenceServiceArgs{\n\t\t\t\t\tControlPlaneId: pulumi.String(\"9f5061ce-78f6-4452-9108-ad7c02821fd5\"),\n\t\t\t\t\tId:             pulumi.String(\"7710d5c4-d902-410b-992f-18b814155b53\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.ApiImplementation;\nimport com.pulumi.konnect.ApiImplementationArgs;\nimport com.pulumi.konnect.inputs.ApiImplementationControlPlaneReferenceArgs;\nimport com.pulumi.konnect.inputs.ApiImplementationControlPlaneReferenceControlPlaneArgs;\nimport com.pulumi.konnect.inputs.ApiImplementationServiceReferenceArgs;\nimport com.pulumi.konnect.inputs.ApiImplementationServiceReferenceServiceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myApiimplementation = new ApiImplementation(\"myApiimplementation\", ApiImplementationArgs.builder()\n            .apiId(\"9f5061ce-78f6-4452-9108-ad7c02821fd5\")\n            .controlPlaneReference(ApiImplementationControlPlaneReferenceArgs.builder()\n                .controlPlane(ApiImplementationControlPlaneReferenceControlPlaneArgs.builder()\n                    .id(\"7710d5c4-d902-410b-992f-18b814155b53\")\n                    .build())\n                .build())\n            .serviceReference(ApiImplementationServiceReferenceArgs.builder()\n                .service(ApiImplementationServiceReferenceServiceArgs.builder()\n                    .controlPlaneId(\"9f5061ce-78f6-4452-9108-ad7c02821fd5\")\n                    .id(\"7710d5c4-d902-410b-992f-18b814155b53\")\n                    .build())\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myApiimplementation:\n    type: konnect:ApiImplementation\n    name: my_apiimplementation\n    properties:\n      apiId: 9f5061ce-78f6-4452-9108-ad7c02821fd5\n      controlPlaneReference:\n        controlPlane:\n          id: 7710d5c4-d902-410b-992f-18b814155b53\n      serviceReference:\n        service:\n          controlPlaneId: 9f5061ce-78f6-4452-9108-ad7c02821fd5\n          id: 7710d5c4-d902-410b-992f-18b814155b53\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_api_implementation.my_konnect_api_implementation\n\n  id = jsonencode({\n\n    api_id = \"9f5061ce-78f6-4452-9108-ad7c02821fd5\"\n\n    id = \"032d905a-ed33-46a3-a093-d8f536af9a8a\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/apiImplementation:ApiImplementation my_konnect_api_implementation '{\"api_id\": \"9f5061ce-78f6-4452-9108-ad7c02821fd5\", \"id\": \"032d905a-ed33-46a3-a093-d8f536af9a8a\"}'\n```\n\n","properties":{"apiId":{"type":"string","description":"The UUID API identifier. Requires replacement if changed.\n"},"controlPlaneReference":{"$ref":"#/types/konnect:index%2FApiImplementationControlPlaneReference:ApiImplementationControlPlaneReference","description":"A control plane that implements an API. Requires replacement if changed.\n"},"serviceReference":{"$ref":"#/types/konnect:index%2FApiImplementationServiceReference:ApiImplementationServiceReference","description":"A gateway service that implements an API. Requires replacement if changed.\n"}},"type":"object","required":["apiId"],"inputProperties":{"apiId":{"type":"string","description":"The UUID API identifier. Requires replacement if changed.\n"},"controlPlaneReference":{"$ref":"#/types/konnect:index%2FApiImplementationControlPlaneReference:ApiImplementationControlPlaneReference","description":"A control plane that implements an API. Requires replacement if changed.\n"},"serviceReference":{"$ref":"#/types/konnect:index%2FApiImplementationServiceReference:ApiImplementationServiceReference","description":"A gateway service that implements an API. Requires replacement if changed.\n"}},"requiredInputs":["apiId"],"stateInputs":{"description":"Input properties used for looking up and filtering ApiImplementation resources.\n","properties":{"apiId":{"type":"string","description":"The UUID API identifier. Requires replacement if changed.\n"},"controlPlaneReference":{"$ref":"#/types/konnect:index%2FApiImplementationControlPlaneReference:ApiImplementationControlPlaneReference","description":"A control plane that implements an API. Requires replacement if changed.\n"},"serviceReference":{"$ref":"#/types/konnect:index%2FApiImplementationServiceReference:ApiImplementationServiceReference","description":"A gateway service that implements an API. Requires replacement if changed.\n"}},"type":"object"}},"konnect:index/apiProduct:ApiProduct":{"description":"APIProduct Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myApiproduct = new konnect.ApiProduct(\"my_apiproduct\", {\n    description: \"Text describing the API product\",\n    labels: {\n        key: \"value\",\n    },\n    name: \"API Product\",\n    portalIds: [],\n    publicLabels: {\n        key: \"value\",\n    },\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_apiproduct = konnect.ApiProduct(\"my_apiproduct\",\n    description=\"Text describing the API product\",\n    labels={\n        \"key\": \"value\",\n    },\n    name=\"API Product\",\n    portal_ids=[],\n    public_labels={\n        \"key\": \"value\",\n    })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myApiproduct = new Konnect.ApiProduct(\"my_apiproduct\", new()\n    {\n        Description = \"Text describing the API product\",\n        Labels = \n        {\n            { \"key\", \"value\" },\n        },\n        Name = \"API Product\",\n        PortalIds = new[] {},\n        PublicLabels = \n        {\n            { \"key\", \"value\" },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewApiProduct(ctx, \"my_apiproduct\", \u0026konnect.ApiProductArgs{\n\t\t\tDescription: pulumi.String(\"Text describing the API product\"),\n\t\t\tLabels: pulumi.StringMap{\n\t\t\t\t\"key\": pulumi.String(\"value\"),\n\t\t\t},\n\t\t\tName:      pulumi.String(\"API Product\"),\n\t\t\tPortalIds: pulumi.StringArray{},\n\t\t\tPublicLabels: pulumi.StringMap{\n\t\t\t\t\"key\": pulumi.String(\"value\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.ApiProduct;\nimport com.pulumi.konnect.ApiProductArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myApiproduct = new ApiProduct(\"myApiproduct\", ApiProductArgs.builder()\n            .description(\"Text describing the API product\")\n            .labels(Map.of(\"key\", \"value\"))\n            .name(\"API Product\")\n            .portalIds()\n            .publicLabels(Map.of(\"key\", \"value\"))\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myApiproduct:\n    type: konnect:ApiProduct\n    name: my_apiproduct\n    properties:\n      description: Text describing the API product\n      labels:\n        key: value\n      name: API Product\n      portalIds: []\n      publicLabels:\n        key: value\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_api_product.my_konnect_api_product\n\n  id = \"d32d905a-ed33-46a3-a093-d8f536af9a8a\"\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/apiProduct:ApiProduct my_konnect_api_product \"d32d905a-ed33-46a3-a093-d8f536af9a8a\"\n```\n\n","properties":{"createdAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity creation date."},"description":{"type":"string","description":"The description of the API product.\n"},"labels":{"type":"object","additionalProperties":{"type":"string"},"description":"Labels store metadata of an entity that can be used for filtering an entity list or for searching across entity types.\n"},"name":{"type":"string","description":"The name of the API product.\n"},"portalIds":{"type":"array","items":{"type":"string"},"description":"The list of portal identifiers which this API product should be published to\n","deprecationMessage":"Deprecated"},"portals":{"type":"array","items":{"$ref":"#/types/konnect:index%2FApiProductPortal:ApiProductPortal"},"description":"The list of portals which this API product is published to"},"publicLabels":{"type":"object","additionalProperties":{"type":"string"},"description":"Public labels store information about an entity that can be used for filtering a list of objects.\n\nPublic labels are intended to store **PUBLIC** metadata. \n\nKeys must be of length 1-63 characters, and cannot start with \"kong\", \"konnect\", \"mesh\", \"kic\", or \"_\"."},"updatedAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity update date."},"versionCount":{"type":"number","description":"The number of product versions attached to this API product"}},"type":"object","required":["createdAt","labels","name","portalIds","portals","publicLabels","updatedAt","versionCount"],"inputProperties":{"description":{"type":"string","description":"The description of the API product.\n"},"labels":{"type":"object","additionalProperties":{"type":"string"},"description":"Labels store metadata of an entity that can be used for filtering an entity list or for searching across entity types.\n"},"name":{"type":"string","description":"The name of the API product.\n"},"portalIds":{"type":"array","items":{"type":"string"},"description":"The list of portal identifiers which this API product should be published to\n","deprecationMessage":"Deprecated"},"publicLabels":{"type":"object","additionalProperties":{"type":"string"},"description":"Public labels store information about an entity that can be used for filtering a list of objects.\n\nPublic labels are intended to store **PUBLIC** metadata. \n\nKeys must be of length 1-63 characters, and cannot start with \"kong\", \"konnect\", \"mesh\", \"kic\", or \"_\"."}},"requiredInputs":["portalIds"],"stateInputs":{"description":"Input properties used for looking up and filtering ApiProduct resources.\n","properties":{"createdAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity creation date."},"description":{"type":"string","description":"The description of the API product.\n"},"labels":{"type":"object","additionalProperties":{"type":"string"},"description":"Labels store metadata of an entity that can be used for filtering an entity list or for searching across entity types.\n"},"name":{"type":"string","description":"The name of the API product.\n"},"portalIds":{"type":"array","items":{"type":"string"},"description":"The list of portal identifiers which this API product should be published to\n","deprecationMessage":"Deprecated"},"portals":{"type":"array","items":{"$ref":"#/types/konnect:index%2FApiProductPortal:ApiProductPortal"},"description":"The list of portals which this API product is published to"},"publicLabels":{"type":"object","additionalProperties":{"type":"string"},"description":"Public labels store information about an entity that can be used for filtering a list of objects.\n\nPublic labels are intended to store **PUBLIC** metadata. \n\nKeys must be of length 1-63 characters, and cannot start with \"kong\", \"konnect\", \"mesh\", \"kic\", or \"_\"."},"updatedAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity update date."},"versionCount":{"type":"number","description":"The number of product versions attached to this API product"}},"type":"object"}},"konnect:index/apiProductDocument:ApiProductDocument":{"description":"APIProductDocument Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myApiproductdocument = new konnect.ApiProductDocument(\"my_apiproductdocument\", {\n    apiProductId: \"d32d905a-ed33-46a3-a093-d8f536af9a8a\",\n    content: \"## My Markdown\",\n    metadata: {},\n    parentDocumentId: \"dd4e1b98-3629-4dd3-acc0-759a726ffee2\",\n    slug: \"path-for-seo\",\n    status: \"unpublished\",\n    title: \"How to create a document in Konnect DocumentHub\",\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_apiproductdocument = konnect.ApiProductDocument(\"my_apiproductdocument\",\n    api_product_id=\"d32d905a-ed33-46a3-a093-d8f536af9a8a\",\n    content=\"## My Markdown\",\n    metadata={},\n    parent_document_id=\"dd4e1b98-3629-4dd3-acc0-759a726ffee2\",\n    slug=\"path-for-seo\",\n    status=\"unpublished\",\n    title=\"How to create a document in Konnect DocumentHub\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myApiproductdocument = new Konnect.ApiProductDocument(\"my_apiproductdocument\", new()\n    {\n        ApiProductId = \"d32d905a-ed33-46a3-a093-d8f536af9a8a\",\n        Content = \"## My Markdown\",\n        Metadata = null,\n        ParentDocumentId = \"dd4e1b98-3629-4dd3-acc0-759a726ffee2\",\n        Slug = \"path-for-seo\",\n        Status = \"unpublished\",\n        Title = \"How to create a document in Konnect DocumentHub\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewApiProductDocument(ctx, \"my_apiproductdocument\", \u0026konnect.ApiProductDocumentArgs{\n\t\t\tApiProductId:     pulumi.String(\"d32d905a-ed33-46a3-a093-d8f536af9a8a\"),\n\t\t\tContent:          pulumi.String(\"## My Markdown\"),\n\t\t\tMetadata:         \u0026konnect.ApiProductDocumentMetadataArgs{},\n\t\t\tParentDocumentId: pulumi.String(\"dd4e1b98-3629-4dd3-acc0-759a726ffee2\"),\n\t\t\tSlug:             pulumi.String(\"path-for-seo\"),\n\t\t\tStatus:           pulumi.String(\"unpublished\"),\n\t\t\tTitle:            pulumi.String(\"How to create a document in Konnect DocumentHub\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.ApiProductDocument;\nimport com.pulumi.konnect.ApiProductDocumentArgs;\nimport com.pulumi.konnect.inputs.ApiProductDocumentMetadataArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myApiproductdocument = new ApiProductDocument(\"myApiproductdocument\", ApiProductDocumentArgs.builder()\n            .apiProductId(\"d32d905a-ed33-46a3-a093-d8f536af9a8a\")\n            .content(\"## My Markdown\")\n            .metadata(ApiProductDocumentMetadataArgs.builder()\n                .build())\n            .parentDocumentId(\"dd4e1b98-3629-4dd3-acc0-759a726ffee2\")\n            .slug(\"path-for-seo\")\n            .status(\"unpublished\")\n            .title(\"How to create a document in Konnect DocumentHub\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myApiproductdocument:\n    type: konnect:ApiProductDocument\n    name: my_apiproductdocument\n    properties:\n      apiProductId: d32d905a-ed33-46a3-a093-d8f536af9a8a\n      content: '## My Markdown'\n      metadata: {}\n      parentDocumentId: dd4e1b98-3629-4dd3-acc0-759a726ffee2\n      slug: path-for-seo\n      status: unpublished\n      title: How to create a document in Konnect DocumentHub\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_api_product_document.my_konnect_api_product_document\n\n  id = jsonencode({\n\n    api_product_id = \"d32d905a-ed33-46a3-a093-d8f536af9a8a\"\n\n    id = \"de5c9818-be5c-42e6-b514-e3d4bc30ddeb\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/apiProductDocument:ApiProductDocument my_konnect_api_product_document '{\"api_product_id\": \"d32d905a-ed33-46a3-a093-d8f536af9a8a\", \"id\": \"de5c9818-be5c-42e6-b514-e3d4bc30ddeb\"}'\n```\n\n","properties":{"apiProductId":{"type":"string","description":"The API product identifier\n"},"content":{"type":"string","description":"Can be markdown string content or base64 encoded string\n"},"createdAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity creation date.\n"},"metadata":{"$ref":"#/types/konnect:index%2FApiProductDocumentMetadata:ApiProductDocumentMetadata","description":"metadata of the document\n"},"parentDocumentId":{"type":"string","description":"parent document id\n"},"slug":{"type":"string","description":"document slug. must be unique accross documents belonging to an api product\n"},"status":{"type":"string","description":"must be one of [\"published\", \"unpublished\"]\n"},"title":{"type":"string","description":"document title\n"},"updatedAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity update date.\n"}},"type":"object","required":["apiProductId","createdAt","metadata","slug","status","title","updatedAt"],"inputProperties":{"apiProductId":{"type":"string","description":"The API product identifier\n"},"content":{"type":"string","description":"Can be markdown string content or base64 encoded string\n"},"metadata":{"$ref":"#/types/konnect:index%2FApiProductDocumentMetadata:ApiProductDocumentMetadata","description":"metadata of the document\n"},"parentDocumentId":{"type":"string","description":"parent document id\n"},"slug":{"type":"string","description":"document slug. must be unique accross documents belonging to an api product\n"},"status":{"type":"string","description":"must be one of [\"published\", \"unpublished\"]\n"},"title":{"type":"string","description":"document title\n"}},"requiredInputs":["apiProductId","slug","status","title"],"stateInputs":{"description":"Input properties used for looking up and filtering ApiProductDocument resources.\n","properties":{"apiProductId":{"type":"string","description":"The API product identifier\n"},"content":{"type":"string","description":"Can be markdown string content or base64 encoded string\n"},"createdAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity creation date.\n"},"metadata":{"$ref":"#/types/konnect:index%2FApiProductDocumentMetadata:ApiProductDocumentMetadata","description":"metadata of the document\n"},"parentDocumentId":{"type":"string","description":"parent document id\n"},"slug":{"type":"string","description":"document slug. must be unique accross documents belonging to an api product\n"},"status":{"type":"string","description":"must be one of [\"published\", \"unpublished\"]\n"},"title":{"type":"string","description":"document title\n"},"updatedAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity update date.\n"}},"type":"object"}},"konnect:index/apiProductSpecification:ApiProductSpecification":{"description":"APIProductSpecification Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myApiproductspecification = new konnect.ApiProductSpecification(\"my_apiproductspecification\", {\n    apiProductId: \"d32d905a-ed33-46a3-a093-d8f536af9a8a\",\n    apiProductVersionId: \"9f5061ce-78f6-4452-9108-ad7c02821fd5\",\n    content: \"TXkgWUFNTCBvciBKU09OIGZvcm1hdHRlZCBPQVMgY29udGVudA==\",\n    name: \"oas.yaml\",\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_apiproductspecification = konnect.ApiProductSpecification(\"my_apiproductspecification\",\n    api_product_id=\"d32d905a-ed33-46a3-a093-d8f536af9a8a\",\n    api_product_version_id=\"9f5061ce-78f6-4452-9108-ad7c02821fd5\",\n    content=\"TXkgWUFNTCBvciBKU09OIGZvcm1hdHRlZCBPQVMgY29udGVudA==\",\n    name=\"oas.yaml\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myApiproductspecification = new Konnect.ApiProductSpecification(\"my_apiproductspecification\", new()\n    {\n        ApiProductId = \"d32d905a-ed33-46a3-a093-d8f536af9a8a\",\n        ApiProductVersionId = \"9f5061ce-78f6-4452-9108-ad7c02821fd5\",\n        Content = \"TXkgWUFNTCBvciBKU09OIGZvcm1hdHRlZCBPQVMgY29udGVudA==\",\n        Name = \"oas.yaml\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewApiProductSpecification(ctx, \"my_apiproductspecification\", \u0026konnect.ApiProductSpecificationArgs{\n\t\t\tApiProductId:        pulumi.String(\"d32d905a-ed33-46a3-a093-d8f536af9a8a\"),\n\t\t\tApiProductVersionId: pulumi.String(\"9f5061ce-78f6-4452-9108-ad7c02821fd5\"),\n\t\t\tContent:             pulumi.String(\"TXkgWUFNTCBvciBKU09OIGZvcm1hdHRlZCBPQVMgY29udGVudA==\"),\n\t\t\tName:                pulumi.String(\"oas.yaml\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.ApiProductSpecification;\nimport com.pulumi.konnect.ApiProductSpecificationArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myApiproductspecification = new ApiProductSpecification(\"myApiproductspecification\", ApiProductSpecificationArgs.builder()\n            .apiProductId(\"d32d905a-ed33-46a3-a093-d8f536af9a8a\")\n            .apiProductVersionId(\"9f5061ce-78f6-4452-9108-ad7c02821fd5\")\n            .content(\"TXkgWUFNTCBvciBKU09OIGZvcm1hdHRlZCBPQVMgY29udGVudA==\")\n            .name(\"oas.yaml\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myApiproductspecification:\n    type: konnect:ApiProductSpecification\n    name: my_apiproductspecification\n    properties:\n      apiProductId: d32d905a-ed33-46a3-a093-d8f536af9a8a\n      apiProductVersionId: 9f5061ce-78f6-4452-9108-ad7c02821fd5\n      content: TXkgWUFNTCBvciBKU09OIGZvcm1hdHRlZCBPQVMgY29udGVudA==\n      name: oas.yaml\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_api_product_specification.my_konnect_api_product_specification\n\n  id = jsonencode({\n\n    api_product_id = \"d32d905a-ed33-46a3-a093-d8f536af9a8a\"\n\n    api_product_version_id = \"9f5061ce-78f6-4452-9108-ad7c02821fd5\"\n\n    id = \"742ff9f1-fb89-4aeb-a599-f0e278c7aeaa\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/apiProductSpecification:ApiProductSpecification my_konnect_api_product_specification '{\"api_product_id\": \"d32d905a-ed33-46a3-a093-d8f536af9a8a\", \"api_product_version_id\": \"9f5061ce-78f6-4452-9108-ad7c02821fd5\", \"id\": \"742ff9f1-fb89-4aeb-a599-f0e278c7aeaa\"}'\n```\n\n","properties":{"apiProductId":{"type":"string","description":"The API product identifier\n"},"apiProductVersionId":{"type":"string","description":"The API product version identifier\n"},"content":{"type":"string","description":"The base64 encoded contents of the API product version specification\n"},"createdAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity creation date.\n"},"name":{"type":"string","description":"The name of the API product version specification\n"},"updatedAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity update date.\n"}},"type":"object","required":["apiProductId","apiProductVersionId","content","createdAt","name","updatedAt"],"inputProperties":{"apiProductId":{"type":"string","description":"The API product identifier\n"},"apiProductVersionId":{"type":"string","description":"The API product version identifier\n"},"content":{"type":"string","description":"The base64 encoded contents of the API product version specification\n"},"name":{"type":"string","description":"The name of the API product version specification\n"}},"requiredInputs":["apiProductId","apiProductVersionId","content"],"stateInputs":{"description":"Input properties used for looking up and filtering ApiProductSpecification resources.\n","properties":{"apiProductId":{"type":"string","description":"The API product identifier\n"},"apiProductVersionId":{"type":"string","description":"The API product version identifier\n"},"content":{"type":"string","description":"The base64 encoded contents of the API product version specification\n"},"createdAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity creation date.\n"},"name":{"type":"string","description":"The name of the API product version specification\n"},"updatedAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity update date.\n"}},"type":"object"}},"konnect:index/apiProductVersion:ApiProductVersion":{"description":"APIProductVersion Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myApiproductversion = new konnect.ApiProductVersion(\"my_apiproductversion\", {\n    apiProductId: \"d32d905a-ed33-46a3-a093-d8f536af9a8a\",\n    deprecated: false,\n    gatewayService: {\n        controlPlaneId: \"e4d9ebb1-26b4-426a-b00e-cb67044f3baf\",\n        id: \"09b4786a-3e48-4631-8f6b-62d1d8e1a7f3\",\n    },\n    labels: {\n        key: \"value\",\n    },\n    name: \"v1\",\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_apiproductversion = konnect.ApiProductVersion(\"my_apiproductversion\",\n    api_product_id=\"d32d905a-ed33-46a3-a093-d8f536af9a8a\",\n    deprecated=False,\n    gateway_service={\n        \"control_plane_id\": \"e4d9ebb1-26b4-426a-b00e-cb67044f3baf\",\n        \"id\": \"09b4786a-3e48-4631-8f6b-62d1d8e1a7f3\",\n    },\n    labels={\n        \"key\": \"value\",\n    },\n    name=\"v1\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myApiproductversion = new Konnect.ApiProductVersion(\"my_apiproductversion\", new()\n    {\n        ApiProductId = \"d32d905a-ed33-46a3-a093-d8f536af9a8a\",\n        Deprecated = false,\n        GatewayService = new Konnect.Inputs.ApiProductVersionGatewayServiceArgs\n        {\n            ControlPlaneId = \"e4d9ebb1-26b4-426a-b00e-cb67044f3baf\",\n            Id = \"09b4786a-3e48-4631-8f6b-62d1d8e1a7f3\",\n        },\n        Labels = \n        {\n            { \"key\", \"value\" },\n        },\n        Name = \"v1\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewApiProductVersion(ctx, \"my_apiproductversion\", \u0026konnect.ApiProductVersionArgs{\n\t\t\tApiProductId: pulumi.String(\"d32d905a-ed33-46a3-a093-d8f536af9a8a\"),\n\t\t\tDeprecated:   pulumi.Bool(false),\n\t\t\tGatewayService: \u0026konnect.ApiProductVersionGatewayServiceArgs{\n\t\t\t\tControlPlaneId: pulumi.String(\"e4d9ebb1-26b4-426a-b00e-cb67044f3baf\"),\n\t\t\t\tId:             pulumi.String(\"09b4786a-3e48-4631-8f6b-62d1d8e1a7f3\"),\n\t\t\t},\n\t\t\tLabels: pulumi.StringMap{\n\t\t\t\t\"key\": pulumi.String(\"value\"),\n\t\t\t},\n\t\t\tName: pulumi.String(\"v1\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.ApiProductVersion;\nimport com.pulumi.konnect.ApiProductVersionArgs;\nimport com.pulumi.konnect.inputs.ApiProductVersionGatewayServiceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myApiproductversion = new ApiProductVersion(\"myApiproductversion\", ApiProductVersionArgs.builder()\n            .apiProductId(\"d32d905a-ed33-46a3-a093-d8f536af9a8a\")\n            .deprecated(false)\n            .gatewayService(ApiProductVersionGatewayServiceArgs.builder()\n                .controlPlaneId(\"e4d9ebb1-26b4-426a-b00e-cb67044f3baf\")\n                .id(\"09b4786a-3e48-4631-8f6b-62d1d8e1a7f3\")\n                .build())\n            .labels(Map.of(\"key\", \"value\"))\n            .name(\"v1\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myApiproductversion:\n    type: konnect:ApiProductVersion\n    name: my_apiproductversion\n    properties:\n      apiProductId: d32d905a-ed33-46a3-a093-d8f536af9a8a\n      deprecated: false\n      gatewayService:\n        controlPlaneId: e4d9ebb1-26b4-426a-b00e-cb67044f3baf\n        id: 09b4786a-3e48-4631-8f6b-62d1d8e1a7f3\n      labels:\n        key: value\n      name: v1\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_api_product_version.my_konnect_api_product_version\n\n  id = jsonencode({\n\n    api_product_id = \"d32d905a-ed33-46a3-a093-d8f536af9a8a\"\n\n    id = \"9f5061ce-78f6-4452-9108-ad7c02821fd5\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/apiProductVersion:ApiProductVersion my_konnect_api_product_version '{\"api_product_id\": \"d32d905a-ed33-46a3-a093-d8f536af9a8a\", \"id\": \"9f5061ce-78f6-4452-9108-ad7c02821fd5\"}'\n```\n\n","properties":{"apiProductId":{"type":"string","description":"The API Product ID\n"},"createdAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity creation date."},"deprecated":{"type":"boolean","description":"Indicates if the version of the API product is deprecated. Applies deprecation or removes deprecation from all related portal product versions. This field is deprecated: Use [PortalProductVersion.deprecated](https://docs.konghq.com/konnect/api/portal-management/v2/#/operations/create-portal-product-version) instead. Default: false\n","deprecationMessage":"Deprecated"},"gatewayService":{"$ref":"#/types/konnect:index%2FApiProductVersionGatewayService:ApiProductVersionGatewayService"},"labels":{"type":"object","additionalProperties":{"type":"string"},"description":"Labels store metadata of an entity that can be used for filtering an entity list or for searching across entity types.\n"},"name":{"type":"string","description":"The version name of the API product version.\n"},"portals":{"type":"array","items":{"$ref":"#/types/konnect:index%2FApiProductVersionPortal:ApiProductVersionPortal"},"description":"The list of portals which this API product version is configured for"},"updatedAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity update date."}},"type":"object","required":["apiProductId","createdAt","deprecated","gatewayService","labels","name","portals","updatedAt"],"inputProperties":{"apiProductId":{"type":"string","description":"The API Product ID\n"},"deprecated":{"type":"boolean","description":"Indicates if the version of the API product is deprecated. Applies deprecation or removes deprecation from all related portal product versions. This field is deprecated: Use [PortalProductVersion.deprecated](https://docs.konghq.com/konnect/api/portal-management/v2/#/operations/create-portal-product-version) instead. Default: false\n","deprecationMessage":"Deprecated"},"gatewayService":{"$ref":"#/types/konnect:index%2FApiProductVersionGatewayService:ApiProductVersionGatewayService"},"labels":{"type":"object","additionalProperties":{"type":"string"},"description":"Labels store metadata of an entity that can be used for filtering an entity list or for searching across entity types.\n"},"name":{"type":"string","description":"The version name of the API product version.\n"}},"requiredInputs":["apiProductId"],"stateInputs":{"description":"Input properties used for looking up and filtering ApiProductVersion resources.\n","properties":{"apiProductId":{"type":"string","description":"The API Product ID\n"},"createdAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity creation date."},"deprecated":{"type":"boolean","description":"Indicates if the version of the API product is deprecated. Applies deprecation or removes deprecation from all related portal product versions. This field is deprecated: Use [PortalProductVersion.deprecated](https://docs.konghq.com/konnect/api/portal-management/v2/#/operations/create-portal-product-version) instead. Default: false\n","deprecationMessage":"Deprecated"},"gatewayService":{"$ref":"#/types/konnect:index%2FApiProductVersionGatewayService:ApiProductVersionGatewayService"},"labels":{"type":"object","additionalProperties":{"type":"string"},"description":"Labels store metadata of an entity that can be used for filtering an entity list or for searching across entity types.\n"},"name":{"type":"string","description":"The version name of the API product version.\n"},"portals":{"type":"array","items":{"$ref":"#/types/konnect:index%2FApiProductVersionPortal:ApiProductVersionPortal"},"description":"The list of portals which this API product version is configured for"},"updatedAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity update date."}},"type":"object"}},"konnect:index/apiPublication:ApiPublication":{"description":"APIPublication Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myApipublication = new konnect.ApiPublication(\"my_apipublication\", {\n    apiId: \"9f5061ce-78f6-4452-9108-ad7c02821fd5\",\n    authStrategyIds: [\"9c3bed4d-0322-4ea0-ba19-a4bd65d821f6\"],\n    autoApproveRegistrations: true,\n    portalId: \"f32d905a-ed33-46a3-a093-d8f536af9a8a\",\n    visibility: \"private\",\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_apipublication = konnect.ApiPublication(\"my_apipublication\",\n    api_id=\"9f5061ce-78f6-4452-9108-ad7c02821fd5\",\n    auth_strategy_ids=[\"9c3bed4d-0322-4ea0-ba19-a4bd65d821f6\"],\n    auto_approve_registrations=True,\n    portal_id=\"f32d905a-ed33-46a3-a093-d8f536af9a8a\",\n    visibility=\"private\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myApipublication = new Konnect.ApiPublication(\"my_apipublication\", new()\n    {\n        ApiId = \"9f5061ce-78f6-4452-9108-ad7c02821fd5\",\n        AuthStrategyIds = new[]\n        {\n            \"9c3bed4d-0322-4ea0-ba19-a4bd65d821f6\",\n        },\n        AutoApproveRegistrations = true,\n        PortalId = \"f32d905a-ed33-46a3-a093-d8f536af9a8a\",\n        Visibility = \"private\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewApiPublication(ctx, \"my_apipublication\", \u0026konnect.ApiPublicationArgs{\n\t\t\tApiId: pulumi.String(\"9f5061ce-78f6-4452-9108-ad7c02821fd5\"),\n\t\t\tAuthStrategyIds: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"9c3bed4d-0322-4ea0-ba19-a4bd65d821f6\"),\n\t\t\t},\n\t\t\tAutoApproveRegistrations: pulumi.Bool(true),\n\t\t\tPortalId:                 pulumi.String(\"f32d905a-ed33-46a3-a093-d8f536af9a8a\"),\n\t\t\tVisibility:               pulumi.String(\"private\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.ApiPublication;\nimport com.pulumi.konnect.ApiPublicationArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myApipublication = new ApiPublication(\"myApipublication\", ApiPublicationArgs.builder()\n            .apiId(\"9f5061ce-78f6-4452-9108-ad7c02821fd5\")\n            .authStrategyIds(\"9c3bed4d-0322-4ea0-ba19-a4bd65d821f6\")\n            .autoApproveRegistrations(true)\n            .portalId(\"f32d905a-ed33-46a3-a093-d8f536af9a8a\")\n            .visibility(\"private\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myApipublication:\n    type: konnect:ApiPublication\n    name: my_apipublication\n    properties:\n      apiId: 9f5061ce-78f6-4452-9108-ad7c02821fd5\n      authStrategyIds:\n        - 9c3bed4d-0322-4ea0-ba19-a4bd65d821f6\n      autoApproveRegistrations: true\n      portalId: f32d905a-ed33-46a3-a093-d8f536af9a8a\n      visibility: private\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_api_publication.my_konnect_api_publication\n\n  id = jsonencode({\n\n    api_id = \"9f5061ce-78f6-4452-9108-ad7c02821fd5\"\n\n    portal_id = \"f32d905a-ed33-46a3-a093-d8f536af9a8a\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/apiPublication:ApiPublication my_konnect_api_publication '{\"api_id\": \"9f5061ce-78f6-4452-9108-ad7c02821fd5\", \"portal_id\": \"f32d905a-ed33-46a3-a093-d8f536af9a8a\"}'\n```\n\n","properties":{"apiId":{"type":"string","description":"The UUID API identifier\n"},"authStrategyIds":{"type":"array","items":{"type":"string"},"description":"The auth strategy the API enforces for applications in the portal.\nOmitting this property means the portal's default application auth strategy will be used.\nSetting to null means the API will not require application authentication.\nDCR support for application registration is currently in development.\n"},"autoApproveRegistrations":{"type":"boolean","description":"Whether the application registration auto approval on this portal for the api is enabled. If set to false, fallbacks on portal's auto*approve*applications value.\n"},"createdAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity creation date.\n"},"portalId":{"type":"string","description":"The Portal identifier\n"},"updatedAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity update date.\n"},"visibility":{"type":"string","description":"The visibility of the API in the portal.\nPublic API publications do not require authentication to view and retrieve information about them.\nPrivate API publications require authentication to retrieve information about them.\nDefault: \"private\"; must be one of [\"public\", \"private\"]\n"}},"type":"object","required":["apiId","autoApproveRegistrations","createdAt","portalId","updatedAt","visibility"],"inputProperties":{"apiId":{"type":"string","description":"The UUID API identifier\n"},"authStrategyIds":{"type":"array","items":{"type":"string"},"description":"The auth strategy the API enforces for applications in the portal.\nOmitting this property means the portal's default application auth strategy will be used.\nSetting to null means the API will not require application authentication.\nDCR support for application registration is currently in development.\n"},"autoApproveRegistrations":{"type":"boolean","description":"Whether the application registration auto approval on this portal for the api is enabled. If set to false, fallbacks on portal's auto*approve*applications value.\n"},"portalId":{"type":"string","description":"The Portal identifier\n"},"visibility":{"type":"string","description":"The visibility of the API in the portal.\nPublic API publications do not require authentication to view and retrieve information about them.\nPrivate API publications require authentication to retrieve information about them.\nDefault: \"private\"; must be one of [\"public\", \"private\"]\n"}},"requiredInputs":["apiId","portalId"],"stateInputs":{"description":"Input properties used for looking up and filtering ApiPublication resources.\n","properties":{"apiId":{"type":"string","description":"The UUID API identifier\n"},"authStrategyIds":{"type":"array","items":{"type":"string"},"description":"The auth strategy the API enforces for applications in the portal.\nOmitting this property means the portal's default application auth strategy will be used.\nSetting to null means the API will not require application authentication.\nDCR support for application registration is currently in development.\n"},"autoApproveRegistrations":{"type":"boolean","description":"Whether the application registration auto approval on this portal for the api is enabled. If set to false, fallbacks on portal's auto*approve*applications value.\n"},"createdAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity creation date.\n"},"portalId":{"type":"string","description":"The Portal identifier\n"},"updatedAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity update date.\n"},"visibility":{"type":"string","description":"The visibility of the API in the portal.\nPublic API publications do not require authentication to view and retrieve information about them.\nPrivate API publications require authentication to retrieve information about them.\nDefault: \"private\"; must be one of [\"public\", \"private\"]\n"}},"type":"object"}},"konnect:index/apiSpecification:ApiSpecification":{"description":"APISpecification Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myApispecification = new konnect.ApiSpecification(\"my_apispecification\", {\n    apiId: \"9f5061ce-78f6-4452-9108-ad7c02821fd5\",\n    content: \"{\\\"openapi\\\":\\\"3.0.3\\\",\\\"info\\\":{\\\"title\\\":\\\"Example API\\\",\\\"version\\\":\\\"1.0.0\\\"},\\\"paths\\\":{\\\"/example\\\":{\\\"get\\\":{\\\"summary\\\":\\\"Example endpoint\\\",\\\"responses\\\":{\\\"200\\\":{\\\"description\\\":\\\"Successful response\\\"}}}}}}\",\n    type: \"oas3\",\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_apispecification = konnect.ApiSpecification(\"my_apispecification\",\n    api_id=\"9f5061ce-78f6-4452-9108-ad7c02821fd5\",\n    content=\"{\\\"openapi\\\":\\\"3.0.3\\\",\\\"info\\\":{\\\"title\\\":\\\"Example API\\\",\\\"version\\\":\\\"1.0.0\\\"},\\\"paths\\\":{\\\"/example\\\":{\\\"get\\\":{\\\"summary\\\":\\\"Example endpoint\\\",\\\"responses\\\":{\\\"200\\\":{\\\"description\\\":\\\"Successful response\\\"}}}}}}\",\n    type=\"oas3\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myApispecification = new Konnect.ApiSpecification(\"my_apispecification\", new()\n    {\n        ApiId = \"9f5061ce-78f6-4452-9108-ad7c02821fd5\",\n        Content = \"{\\\"openapi\\\":\\\"3.0.3\\\",\\\"info\\\":{\\\"title\\\":\\\"Example API\\\",\\\"version\\\":\\\"1.0.0\\\"},\\\"paths\\\":{\\\"/example\\\":{\\\"get\\\":{\\\"summary\\\":\\\"Example endpoint\\\",\\\"responses\\\":{\\\"200\\\":{\\\"description\\\":\\\"Successful response\\\"}}}}}}\",\n        Type = \"oas3\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewApiSpecification(ctx, \"my_apispecification\", \u0026konnect.ApiSpecificationArgs{\n\t\t\tApiId:   pulumi.String(\"9f5061ce-78f6-4452-9108-ad7c02821fd5\"),\n\t\t\tContent: pulumi.String(\"{\\\"openapi\\\":\\\"3.0.3\\\",\\\"info\\\":{\\\"title\\\":\\\"Example API\\\",\\\"version\\\":\\\"1.0.0\\\"},\\\"paths\\\":{\\\"/example\\\":{\\\"get\\\":{\\\"summary\\\":\\\"Example endpoint\\\",\\\"responses\\\":{\\\"200\\\":{\\\"description\\\":\\\"Successful response\\\"}}}}}}\"),\n\t\t\tType:    pulumi.String(\"oas3\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.ApiSpecification;\nimport com.pulumi.konnect.ApiSpecificationArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myApispecification = new ApiSpecification(\"myApispecification\", ApiSpecificationArgs.builder()\n            .apiId(\"9f5061ce-78f6-4452-9108-ad7c02821fd5\")\n            .content(\"{\\\"openapi\\\":\\\"3.0.3\\\",\\\"info\\\":{\\\"title\\\":\\\"Example API\\\",\\\"version\\\":\\\"1.0.0\\\"},\\\"paths\\\":{\\\"/example\\\":{\\\"get\\\":{\\\"summary\\\":\\\"Example endpoint\\\",\\\"responses\\\":{\\\"200\\\":{\\\"description\\\":\\\"Successful response\\\"}}}}}}\")\n            .type(\"oas3\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myApispecification:\n    type: konnect:ApiSpecification\n    name: my_apispecification\n    properties:\n      apiId: 9f5061ce-78f6-4452-9108-ad7c02821fd5\n      content: '{\"openapi\":\"3.0.3\",\"info\":{\"title\":\"Example API\",\"version\":\"1.0.0\"},\"paths\":{\"/example\":{\"get\":{\"summary\":\"Example endpoint\",\"responses\":{\"200\":{\"description\":\"Successful response\"}}}}}}'\n      type: oas3\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_api_specification.my_konnect_api_specification\n\n  id = jsonencode({\n\n    api_id = \"9f5061ce-78f6-4452-9108-ad7c02821fd5\"\n\n    id = \"d32d905a-ed33-46a3-a093-d8f536af9a8a\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/apiSpecification:ApiSpecification my_konnect_api_specification '{\"api_id\": \"9f5061ce-78f6-4452-9108-ad7c02821fd5\", \"id\": \"d32d905a-ed33-46a3-a093-d8f536af9a8a\"}'\n```\n\n","properties":{"apiId":{"type":"string","description":"The UUID API identifier\n"},"content":{"type":"string","description":"The raw content of your API specification, in json or yaml format (OpenAPI or AsyncAPI).\n"},"createdAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity creation date.\n"},"type":{"type":"string","description":"The type of specification being stored. This allows us to render the specification correctly. must be one of [\"oas2\", \"oas3\", \"asyncapi\"]\n"},"updatedAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity update date.\n"},"validationMessages":{"type":"array","items":{"$ref":"#/types/konnect:index%2FApiSpecificationValidationMessage:ApiSpecificationValidationMessage"},"description":"The errors that occurred while parsing the API specification.\n"}},"type":"object","required":["apiId","content","createdAt","type","updatedAt","validationMessages"],"inputProperties":{"apiId":{"type":"string","description":"The UUID API identifier\n"},"content":{"type":"string","description":"The raw content of your API specification, in json or yaml format (OpenAPI or AsyncAPI).\n"},"type":{"type":"string","description":"The type of specification being stored. This allows us to render the specification correctly. must be one of [\"oas2\", \"oas3\", \"asyncapi\"]\n"}},"requiredInputs":["apiId","content"],"stateInputs":{"description":"Input properties used for looking up and filtering ApiSpecification resources.\n","properties":{"apiId":{"type":"string","description":"The UUID API identifier\n"},"content":{"type":"string","description":"The raw content of your API specification, in json or yaml format (OpenAPI or AsyncAPI).\n"},"createdAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity creation date.\n"},"type":{"type":"string","description":"The type of specification being stored. This allows us to render the specification correctly. must be one of [\"oas2\", \"oas3\", \"asyncapi\"]\n"},"updatedAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity update date.\n"},"validationMessages":{"type":"array","items":{"$ref":"#/types/konnect:index%2FApiSpecificationValidationMessage:ApiSpecificationValidationMessage"},"description":"The errors that occurred while parsing the API specification.\n"}},"type":"object"}},"konnect:index/apiVersion:ApiVersion":{"description":"APIVersion Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myApiversion = new konnect.ApiVersion(\"my_apiversion\", {\n    apiId: \"9f5061ce-78f6-4452-9108-ad7c02821fd5\",\n    spec: {\n        content: \"{\\\"openapi\\\":\\\"3.0.3\\\",\\\"info\\\":{\\\"title\\\":\\\"Example API\\\",\\\"version\\\":\\\"1.0.0\\\"},\\\"paths\\\":{\\\"/example\\\":{\\\"get\\\":{\\\"summary\\\":\\\"Example endpoint\\\",\\\"responses\\\":{\\\"200\\\":{\\\"description\\\":\\\"Successful response\\\"}}}}}}\",\n    },\n    version: \"1.0.0\",\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_apiversion = konnect.ApiVersion(\"my_apiversion\",\n    api_id=\"9f5061ce-78f6-4452-9108-ad7c02821fd5\",\n    spec={\n        \"content\": \"{\\\"openapi\\\":\\\"3.0.3\\\",\\\"info\\\":{\\\"title\\\":\\\"Example API\\\",\\\"version\\\":\\\"1.0.0\\\"},\\\"paths\\\":{\\\"/example\\\":{\\\"get\\\":{\\\"summary\\\":\\\"Example endpoint\\\",\\\"responses\\\":{\\\"200\\\":{\\\"description\\\":\\\"Successful response\\\"}}}}}}\",\n    },\n    version=\"1.0.0\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myApiversion = new Konnect.ApiVersion(\"my_apiversion\", new()\n    {\n        ApiId = \"9f5061ce-78f6-4452-9108-ad7c02821fd5\",\n        Spec = new Konnect.Inputs.ApiVersionSpecArgs\n        {\n            Content = \"{\\\"openapi\\\":\\\"3.0.3\\\",\\\"info\\\":{\\\"title\\\":\\\"Example API\\\",\\\"version\\\":\\\"1.0.0\\\"},\\\"paths\\\":{\\\"/example\\\":{\\\"get\\\":{\\\"summary\\\":\\\"Example endpoint\\\",\\\"responses\\\":{\\\"200\\\":{\\\"description\\\":\\\"Successful response\\\"}}}}}}\",\n        },\n        Version = \"1.0.0\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewApiVersion(ctx, \"my_apiversion\", \u0026konnect.ApiVersionArgs{\n\t\t\tApiId: pulumi.String(\"9f5061ce-78f6-4452-9108-ad7c02821fd5\"),\n\t\t\tSpec: \u0026konnect.ApiVersionSpecArgs{\n\t\t\t\tContent: pulumi.String(\"{\\\"openapi\\\":\\\"3.0.3\\\",\\\"info\\\":{\\\"title\\\":\\\"Example API\\\",\\\"version\\\":\\\"1.0.0\\\"},\\\"paths\\\":{\\\"/example\\\":{\\\"get\\\":{\\\"summary\\\":\\\"Example endpoint\\\",\\\"responses\\\":{\\\"200\\\":{\\\"description\\\":\\\"Successful response\\\"}}}}}}\"),\n\t\t\t},\n\t\t\tVersion: pulumi.String(\"1.0.0\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.ApiVersion;\nimport com.pulumi.konnect.ApiVersionArgs;\nimport com.pulumi.konnect.inputs.ApiVersionSpecArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myApiversion = new ApiVersion(\"myApiversion\", ApiVersionArgs.builder()\n            .apiId(\"9f5061ce-78f6-4452-9108-ad7c02821fd5\")\n            .spec(ApiVersionSpecArgs.builder()\n                .content(\"{\\\"openapi\\\":\\\"3.0.3\\\",\\\"info\\\":{\\\"title\\\":\\\"Example API\\\",\\\"version\\\":\\\"1.0.0\\\"},\\\"paths\\\":{\\\"/example\\\":{\\\"get\\\":{\\\"summary\\\":\\\"Example endpoint\\\",\\\"responses\\\":{\\\"200\\\":{\\\"description\\\":\\\"Successful response\\\"}}}}}}\")\n                .build())\n            .version(\"1.0.0\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myApiversion:\n    type: konnect:ApiVersion\n    name: my_apiversion\n    properties:\n      apiId: 9f5061ce-78f6-4452-9108-ad7c02821fd5\n      spec:\n        content: '{\"openapi\":\"3.0.3\",\"info\":{\"title\":\"Example API\",\"version\":\"1.0.0\"},\"paths\":{\"/example\":{\"get\":{\"summary\":\"Example endpoint\",\"responses\":{\"200\":{\"description\":\"Successful response\"}}}}}}'\n      version: 1.0.0\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_api_version.my_konnect_api_version\n\n  id = jsonencode({\n\n    api_id = \"9f5061ce-78f6-4452-9108-ad7c02821fd5\"\n\n    id = \"d32d905a-ed33-46a3-a093-d8f536af9a8a\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/apiVersion:ApiVersion my_konnect_api_version '{\"api_id\": \"9f5061ce-78f6-4452-9108-ad7c02821fd5\", \"id\": \"d32d905a-ed33-46a3-a093-d8f536af9a8a\"}'\n```\n\n","properties":{"apiId":{"type":"string","description":"The UUID API identifier\n"},"createdAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity creation date.\n"},"spec":{"$ref":"#/types/konnect:index%2FApiVersionSpec:ApiVersionSpec"},"updatedAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity update date.\n"},"version":{"type":"string","description":"The version of the api.\n"}},"type":"object","required":["apiId","createdAt","spec","updatedAt"],"inputProperties":{"apiId":{"type":"string","description":"The UUID API identifier\n"},"spec":{"$ref":"#/types/konnect:index%2FApiVersionSpec:ApiVersionSpec"},"version":{"type":"string","description":"The version of the api.\n"}},"requiredInputs":["apiId","spec"],"stateInputs":{"description":"Input properties used for looking up and filtering ApiVersion resources.\n","properties":{"apiId":{"type":"string","description":"The UUID API identifier\n"},"createdAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity creation date.\n"},"spec":{"$ref":"#/types/konnect:index%2FApiVersionSpec:ApiVersionSpec"},"updatedAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity update date.\n"},"version":{"type":"string","description":"The version of the api.\n"}},"type":"object"}},"konnect:index/applicationAuthStrategy:ApplicationAuthStrategy":{"description":"ApplicationAuthStrategy Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myApplicationauthstrategy = new konnect.ApplicationAuthStrategy(\"my_applicationauthstrategy\", {keyAuth: {\n    configs: {\n        keyAuth: {\n            keyNames: [\"...\"],\n            ttl: {\n                unit: \"years\",\n                value: 11,\n            },\n        },\n    },\n    displayName: \"...my_display_name...\",\n    labels: {\n        key: \"value\",\n    },\n    name: \"...my_name...\",\n    strategyType: \"key_auth\",\n}});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_applicationauthstrategy = konnect.ApplicationAuthStrategy(\"my_applicationauthstrategy\", key_auth={\n    \"configs\": {\n        \"key_auth\": {\n            \"key_names\": [\"...\"],\n            \"ttl\": {\n                \"unit\": \"years\",\n                \"value\": 11,\n            },\n        },\n    },\n    \"display_name\": \"...my_display_name...\",\n    \"labels\": {\n        \"key\": \"value\",\n    },\n    \"name\": \"...my_name...\",\n    \"strategy_type\": \"key_auth\",\n})\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myApplicationauthstrategy = new Konnect.ApplicationAuthStrategy(\"my_applicationauthstrategy\", new()\n    {\n        KeyAuth = new Konnect.Inputs.ApplicationAuthStrategyKeyAuthArgs\n        {\n            Configs = new Konnect.Inputs.ApplicationAuthStrategyKeyAuthConfigsArgs\n            {\n                KeyAuth = new Konnect.Inputs.ApplicationAuthStrategyKeyAuthConfigsKeyAuthArgs\n                {\n                    KeyNames = new[]\n                    {\n                        \"...\",\n                    },\n                    Ttl = new Konnect.Inputs.ApplicationAuthStrategyKeyAuthConfigsKeyAuthTtlArgs\n                    {\n                        Unit = \"years\",\n                        Value = 11,\n                    },\n                },\n            },\n            DisplayName = \"...my_display_name...\",\n            Labels = \n            {\n                { \"key\", \"value\" },\n            },\n            Name = \"...my_name...\",\n            StrategyType = \"key_auth\",\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewApplicationAuthStrategy(ctx, \"my_applicationauthstrategy\", \u0026konnect.ApplicationAuthStrategyArgs{\n\t\t\tKeyAuth: \u0026konnect.ApplicationAuthStrategyKeyAuthArgs{\n\t\t\t\tConfigs: \u0026konnect.ApplicationAuthStrategyKeyAuthConfigsArgs{\n\t\t\t\t\tKeyAuth: \u0026konnect.ApplicationAuthStrategyKeyAuthConfigsKeyAuthArgs{\n\t\t\t\t\t\tKeyNames: pulumi.StringArray{\n\t\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\tTtl: \u0026konnect.ApplicationAuthStrategyKeyAuthConfigsKeyAuthTtlArgs{\n\t\t\t\t\t\t\tUnit:  pulumi.String(\"years\"),\n\t\t\t\t\t\t\tValue: pulumi.Float64(11),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tDisplayName: pulumi.String(\"...my_display_name...\"),\n\t\t\t\tLabels: pulumi.StringMap{\n\t\t\t\t\t\"key\": pulumi.String(\"value\"),\n\t\t\t\t},\n\t\t\t\tName:         pulumi.String(\"...my_name...\"),\n\t\t\t\tStrategyType: pulumi.String(\"key_auth\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.ApplicationAuthStrategy;\nimport com.pulumi.konnect.ApplicationAuthStrategyArgs;\nimport com.pulumi.konnect.inputs.ApplicationAuthStrategyKeyAuthArgs;\nimport com.pulumi.konnect.inputs.ApplicationAuthStrategyKeyAuthConfigsArgs;\nimport com.pulumi.konnect.inputs.ApplicationAuthStrategyKeyAuthConfigsKeyAuthArgs;\nimport com.pulumi.konnect.inputs.ApplicationAuthStrategyKeyAuthConfigsKeyAuthTtlArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myApplicationauthstrategy = new ApplicationAuthStrategy(\"myApplicationauthstrategy\", ApplicationAuthStrategyArgs.builder()\n            .keyAuth(ApplicationAuthStrategyKeyAuthArgs.builder()\n                .configs(ApplicationAuthStrategyKeyAuthConfigsArgs.builder()\n                    .keyAuth(ApplicationAuthStrategyKeyAuthConfigsKeyAuthArgs.builder()\n                        .keyNames(\"...\")\n                        .ttl(ApplicationAuthStrategyKeyAuthConfigsKeyAuthTtlArgs.builder()\n                            .unit(\"years\")\n                            .value(11.0)\n                            .build())\n                        .build())\n                    .build())\n                .displayName(\"...my_display_name...\")\n                .labels(Map.of(\"key\", \"value\"))\n                .name(\"...my_name...\")\n                .strategyType(\"key_auth\")\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myApplicationauthstrategy:\n    type: konnect:ApplicationAuthStrategy\n    name: my_applicationauthstrategy\n    properties:\n      keyAuth:\n        configs:\n          keyAuth:\n            keyNames:\n              - '...'\n            ttl:\n              unit: years\n              value: 11\n        displayName: '...my_display_name...'\n        labels:\n          key: value\n        name: '...my_name...'\n        strategyType: key_auth\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_application_auth_strategy.my_konnect_application_auth_strategy\n\n  id = \"5f9fd312-a987-4628-b4c5-bb4f4fddd5f7\"\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/applicationAuthStrategy:ApplicationAuthStrategy my_konnect_application_auth_strategy \"5f9fd312-a987-4628-b4c5-bb4f4fddd5f7\"\n```\n\n","properties":{"active":{"type":"boolean","description":"At least one published entity is using this auth strategy.\n"},"displayName":{"type":"string","description":"The display name of the Auth strategy. This is used to identify the Auth strategy in the Portal UI.\n"},"keyAuth":{"$ref":"#/types/konnect:index%2FApplicationAuthStrategyKeyAuth:ApplicationAuthStrategyKeyAuth","description":"Response payload from creating or updating a Key Auth Application Auth Strategy. Requires replacement if changed.\n"},"name":{"type":"string","description":"The name of the auth strategy. This is used to identify the auth strategy in the Konnect UI.\n"},"openidConnect":{"$ref":"#/types/konnect:index%2FApplicationAuthStrategyOpenidConnect:ApplicationAuthStrategyOpenidConnect","description":"Response payload from creating an OIDC Application Auth Strategy. Requires replacement if changed.\n"},"strategyType":{"type":"string"}},"type":"object","required":["active","displayName","name","strategyType"],"inputProperties":{"keyAuth":{"$ref":"#/types/konnect:index%2FApplicationAuthStrategyKeyAuth:ApplicationAuthStrategyKeyAuth","description":"Response payload from creating or updating a Key Auth Application Auth Strategy. Requires replacement if changed.\n"},"openidConnect":{"$ref":"#/types/konnect:index%2FApplicationAuthStrategyOpenidConnect:ApplicationAuthStrategyOpenidConnect","description":"Response payload from creating an OIDC Application Auth Strategy. Requires replacement if changed.\n"}},"stateInputs":{"description":"Input properties used for looking up and filtering ApplicationAuthStrategy resources.\n","properties":{"active":{"type":"boolean","description":"At least one published entity is using this auth strategy.\n"},"displayName":{"type":"string","description":"The display name of the Auth strategy. This is used to identify the Auth strategy in the Portal UI.\n"},"keyAuth":{"$ref":"#/types/konnect:index%2FApplicationAuthStrategyKeyAuth:ApplicationAuthStrategyKeyAuth","description":"Response payload from creating or updating a Key Auth Application Auth Strategy. Requires replacement if changed.\n"},"name":{"type":"string","description":"The name of the auth strategy. This is used to identify the auth strategy in the Konnect UI.\n"},"openidConnect":{"$ref":"#/types/konnect:index%2FApplicationAuthStrategyOpenidConnect:ApplicationAuthStrategyOpenidConnect","description":"Response payload from creating an OIDC Application Auth Strategy. Requires replacement if changed.\n"},"strategyType":{"type":"string"}},"type":"object"}},"konnect:index/auditLog:AuditLog":{"description":"AuditLog Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myAuditlog = new konnect.AuditLog(\"my_auditlog\", {\n    authorization: \"Bearer sometoken\",\n    enabled: true,\n    endpoint: \"https://example.com/audit-logs\",\n    logFormat: \"cps\",\n    skipSslVerification: false,\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_auditlog = konnect.AuditLog(\"my_auditlog\",\n    authorization=\"Bearer sometoken\",\n    enabled=True,\n    endpoint=\"https://example.com/audit-logs\",\n    log_format=\"cps\",\n    skip_ssl_verification=False)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myAuditlog = new Konnect.AuditLog(\"my_auditlog\", new()\n    {\n        Authorization = \"Bearer sometoken\",\n        Enabled = true,\n        Endpoint = \"https://example.com/audit-logs\",\n        LogFormat = \"cps\",\n        SkipSslVerification = false,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewAuditLog(ctx, \"my_auditlog\", \u0026konnect.AuditLogArgs{\n\t\t\tAuthorization:       pulumi.String(\"Bearer sometoken\"),\n\t\t\tEnabled:             pulumi.Bool(true),\n\t\t\tEndpoint:            pulumi.String(\"https://example.com/audit-logs\"),\n\t\t\tLogFormat:           pulumi.String(\"cps\"),\n\t\t\tSkipSslVerification: pulumi.Bool(false),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.AuditLog;\nimport com.pulumi.konnect.AuditLogArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myAuditlog = new AuditLog(\"myAuditlog\", AuditLogArgs.builder()\n            .authorization(\"Bearer sometoken\")\n            .enabled(true)\n            .endpoint(\"https://example.com/audit-logs\")\n            .logFormat(\"cps\")\n            .skipSslVerification(false)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myAuditlog:\n    type: konnect:AuditLog\n    name: my_auditlog\n    properties:\n      authorization: Bearer sometoken\n      enabled: true\n      endpoint: https://example.com/audit-logs\n      logFormat: cps\n      skipSslVerification: false\n```\n\u003c!--End PulumiCodeChooser --\u003e\n","properties":{"authorization":{"type":"string","description":"The value to include in the `Authorization` header when sending audit logs to the webhook.\n"},"enabled":{"type":"boolean","description":"Indicates if the data should be sent to the webhook. Default: false\n"},"endpoint":{"type":"string","description":"The endpoint that will receive audit log messages.\n"},"logFormat":{"type":"string","description":"The output format of each log messages. Default: \"cef\"; must be one of [\"cef\", \"json\", \"cps\"]\n"},"skipSslVerification":{"type":"boolean","description":"Indicates if the SSL certificate verification of the host endpoint should be skipped when delivering payloads.\nWe strongly recommend not setting this to 'true' as you are subject to man-in-the-middle and other attacks.\nThis option should be considered only for self-signed SSL certificates used in a non-production environment.\nDefault: false\n"},"updatedAt":{"type":"string","description":"Timestamp when this webhook was last updated. Initial value is 0001-01-01T00:00:0Z.\n"}},"type":"object","required":["enabled","logFormat","skipSslVerification","updatedAt"],"inputProperties":{"authorization":{"type":"string","description":"The value to include in the `Authorization` header when sending audit logs to the webhook.\n"},"enabled":{"type":"boolean","description":"Indicates if the data should be sent to the webhook. Default: false\n"},"endpoint":{"type":"string","description":"The endpoint that will receive audit log messages.\n"},"logFormat":{"type":"string","description":"The output format of each log messages. Default: \"cef\"; must be one of [\"cef\", \"json\", \"cps\"]\n"},"skipSslVerification":{"type":"boolean","description":"Indicates if the SSL certificate verification of the host endpoint should be skipped when delivering payloads.\nWe strongly recommend not setting this to 'true' as you are subject to man-in-the-middle and other attacks.\nThis option should be considered only for self-signed SSL certificates used in a non-production environment.\nDefault: false\n"}},"stateInputs":{"description":"Input properties used for looking up and filtering AuditLog resources.\n","properties":{"authorization":{"type":"string","description":"The value to include in the `Authorization` header when sending audit logs to the webhook.\n"},"enabled":{"type":"boolean","description":"Indicates if the data should be sent to the webhook. Default: false\n"},"endpoint":{"type":"string","description":"The endpoint that will receive audit log messages.\n"},"logFormat":{"type":"string","description":"The output format of each log messages. Default: \"cef\"; must be one of [\"cef\", \"json\", \"cps\"]\n"},"skipSslVerification":{"type":"boolean","description":"Indicates if the SSL certificate verification of the host endpoint should be skipped when delivering payloads.\nWe strongly recommend not setting this to 'true' as you are subject to man-in-the-middle and other attacks.\nThis option should be considered only for self-signed SSL certificates used in a non-production environment.\nDefault: false\n"},"updatedAt":{"type":"string","description":"Timestamp when this webhook was last updated. Initial value is 0001-01-01T00:00:0Z.\n"}},"type":"object"}},"konnect:index/auditLogDestination:AuditLogDestination":{"description":"AuditLogDestination Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myAuditlogdestination = new konnect.AuditLogDestination(\"my_auditlogdestination\", {\n    authorization: \"Bearer sometoken\",\n    endpoint: \"https://example.com/audit-logs\",\n    logFormat: \"cef\",\n    name: \"My Destination\",\n    skipSslVerification: false,\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_auditlogdestination = konnect.AuditLogDestination(\"my_auditlogdestination\",\n    authorization=\"Bearer sometoken\",\n    endpoint=\"https://example.com/audit-logs\",\n    log_format=\"cef\",\n    name=\"My Destination\",\n    skip_ssl_verification=False)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myAuditlogdestination = new Konnect.AuditLogDestination(\"my_auditlogdestination\", new()\n    {\n        Authorization = \"Bearer sometoken\",\n        Endpoint = \"https://example.com/audit-logs\",\n        LogFormat = \"cef\",\n        Name = \"My Destination\",\n        SkipSslVerification = false,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewAuditLogDestination(ctx, \"my_auditlogdestination\", \u0026konnect.AuditLogDestinationArgs{\n\t\t\tAuthorization:       pulumi.String(\"Bearer sometoken\"),\n\t\t\tEndpoint:            pulumi.String(\"https://example.com/audit-logs\"),\n\t\t\tLogFormat:           pulumi.String(\"cef\"),\n\t\t\tName:                pulumi.String(\"My Destination\"),\n\t\t\tSkipSslVerification: pulumi.Bool(false),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.AuditLogDestination;\nimport com.pulumi.konnect.AuditLogDestinationArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myAuditlogdestination = new AuditLogDestination(\"myAuditlogdestination\", AuditLogDestinationArgs.builder()\n            .authorization(\"Bearer sometoken\")\n            .endpoint(\"https://example.com/audit-logs\")\n            .logFormat(\"cef\")\n            .name(\"My Destination\")\n            .skipSslVerification(false)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myAuditlogdestination:\n    type: konnect:AuditLogDestination\n    name: my_auditlogdestination\n    properties:\n      authorization: Bearer sometoken\n      endpoint: https://example.com/audit-logs\n      logFormat: cef\n      name: My Destination\n      skipSslVerification: false\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_audit_log_destination.my_konnect_audit_log_destination\n\n  id = \"...\"\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/auditLogDestination:AuditLogDestination my_konnect_audit_log_destination \"...\"\n```\n\n","properties":{"authorization":{"type":"string","description":"The value to include in the `Authorization` header when sending audit logs to the webhook.\n"},"createdAt":{"type":"string","description":"Timestamp when this webhook was created.\n"},"endpoint":{"type":"string","description":"The endpoint that will receive audit log messages.\n"},"logFormat":{"type":"string","description":"The output format of each log messages. Default: \"cef\"; must be one of [\"cef\", \"json\", \"cps\"]\n"},"name":{"type":"string","description":"The name of the audit log destination.\n"},"skipSslVerification":{"type":"boolean","description":"Indicates if the SSL certificate verification of the host endpoint should be skipped when delivering payloads.\nWe strongly recommend not setting this to 'true' as you are subject to man-in-the-middle and other attacks.\nThis option should be considered only for self-signed SSL certificates used in a non-production environment.\nDefault: false\n"},"updatedAt":{"type":"string","description":"Timestamp when this webhook was last updated. Initial value is 0001-01-01T00:00:0Z.\n"}},"type":"object","required":["createdAt","endpoint","logFormat","name","skipSslVerification","updatedAt"],"inputProperties":{"authorization":{"type":"string","description":"The value to include in the `Authorization` header when sending audit logs to the webhook.\n"},"endpoint":{"type":"string","description":"The endpoint that will receive audit log messages.\n"},"logFormat":{"type":"string","description":"The output format of each log messages. Default: \"cef\"; must be one of [\"cef\", \"json\", \"cps\"]\n"},"name":{"type":"string","description":"The name of the audit log destination.\n"},"skipSslVerification":{"type":"boolean","description":"Indicates if the SSL certificate verification of the host endpoint should be skipped when delivering payloads.\nWe strongly recommend not setting this to 'true' as you are subject to man-in-the-middle and other attacks.\nThis option should be considered only for self-signed SSL certificates used in a non-production environment.\nDefault: false\n"}},"requiredInputs":["endpoint"],"stateInputs":{"description":"Input properties used for looking up and filtering AuditLogDestination resources.\n","properties":{"authorization":{"type":"string","description":"The value to include in the `Authorization` header when sending audit logs to the webhook.\n"},"createdAt":{"type":"string","description":"Timestamp when this webhook was created.\n"},"endpoint":{"type":"string","description":"The endpoint that will receive audit log messages.\n"},"logFormat":{"type":"string","description":"The output format of each log messages. Default: \"cef\"; must be one of [\"cef\", \"json\", \"cps\"]\n"},"name":{"type":"string","description":"The name of the audit log destination.\n"},"skipSslVerification":{"type":"boolean","description":"Indicates if the SSL certificate verification of the host endpoint should be skipped when delivering payloads.\nWe strongly recommend not setting this to 'true' as you are subject to man-in-the-middle and other attacks.\nThis option should be considered only for self-signed SSL certificates used in a non-production environment.\nDefault: false\n"},"updatedAt":{"type":"string","description":"Timestamp when this webhook was last updated. Initial value is 0001-01-01T00:00:0Z.\n"}},"type":"object"}},"konnect:index/authenticationSettings:AuthenticationSettings":{"description":"AuthenticationSettings Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myAuthenticationsettings = new konnect.AuthenticationSettings(\"my_authenticationsettings\", {\n    basicAuthEnabled: true,\n    idpMappingEnabled: true,\n    konnectMappingEnabled: false,\n    oidcAuthEnabled: false,\n    samlAuthEnabled: false,\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_authenticationsettings = konnect.AuthenticationSettings(\"my_authenticationsettings\",\n    basic_auth_enabled=True,\n    idp_mapping_enabled=True,\n    konnect_mapping_enabled=False,\n    oidc_auth_enabled=False,\n    saml_auth_enabled=False)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myAuthenticationsettings = new Konnect.AuthenticationSettings(\"my_authenticationsettings\", new()\n    {\n        BasicAuthEnabled = true,\n        IdpMappingEnabled = true,\n        KonnectMappingEnabled = false,\n        OidcAuthEnabled = false,\n        SamlAuthEnabled = false,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewAuthenticationSettings(ctx, \"my_authenticationsettings\", \u0026konnect.AuthenticationSettingsArgs{\n\t\t\tBasicAuthEnabled:      pulumi.Bool(true),\n\t\t\tIdpMappingEnabled:     pulumi.Bool(true),\n\t\t\tKonnectMappingEnabled: pulumi.Bool(false),\n\t\t\tOidcAuthEnabled:       pulumi.Bool(false),\n\t\t\tSamlAuthEnabled:       pulumi.Bool(false),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.AuthenticationSettings;\nimport com.pulumi.konnect.AuthenticationSettingsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myAuthenticationsettings = new AuthenticationSettings(\"myAuthenticationsettings\", AuthenticationSettingsArgs.builder()\n            .basicAuthEnabled(true)\n            .idpMappingEnabled(true)\n            .konnectMappingEnabled(false)\n            .oidcAuthEnabled(false)\n            .samlAuthEnabled(false)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myAuthenticationsettings:\n    type: konnect:AuthenticationSettings\n    name: my_authenticationsettings\n    properties:\n      basicAuthEnabled: true\n      idpMappingEnabled: true\n      konnectMappingEnabled: false\n      oidcAuthEnabled: false\n      samlAuthEnabled: false\n```\n\u003c!--End PulumiCodeChooser --\u003e\n","properties":{"basicAuthEnabled":{"type":"boolean","description":"The organization has basic auth enabled.\n"},"idpMappingEnabled":{"type":"boolean","description":"Whether IdP groups determine the Konnect teams a user has.\n"},"konnectMappingEnabled":{"type":"boolean","description":"Whether a Konnect Identity Admin assigns teams to a user.\n"},"oidcAuthEnabled":{"type":"boolean","description":"The organization has OIDC disabled.\n"},"samlAuthEnabled":{"type":"boolean","description":"The organization has SAML disabled.\n"}},"type":"object","inputProperties":{"basicAuthEnabled":{"type":"boolean","description":"The organization has basic auth enabled.\n"},"idpMappingEnabled":{"type":"boolean","description":"Whether IdP groups determine the Konnect teams a user has.\n"},"konnectMappingEnabled":{"type":"boolean","description":"Whether a Konnect Identity Admin assigns teams to a user.\n"},"oidcAuthEnabled":{"type":"boolean","description":"The organization has OIDC disabled.\n"},"samlAuthEnabled":{"type":"boolean","description":"The organization has SAML disabled.\n"}},"stateInputs":{"description":"Input properties used for looking up and filtering AuthenticationSettings resources.\n","properties":{"basicAuthEnabled":{"type":"boolean","description":"The organization has basic auth enabled.\n"},"idpMappingEnabled":{"type":"boolean","description":"Whether IdP groups determine the Konnect teams a user has.\n"},"konnectMappingEnabled":{"type":"boolean","description":"Whether a Konnect Identity Admin assigns teams to a user.\n"},"oidcAuthEnabled":{"type":"boolean","description":"The organization has OIDC disabled.\n"},"samlAuthEnabled":{"type":"boolean","description":"The organization has SAML disabled.\n"}},"type":"object"}},"konnect:index/catalogService:CatalogService":{"description":"CatalogService Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myCatalogservice = new konnect.CatalogService(\"my_catalogservice\", {\n    customFields: \"{ \\\"see\\\": \\\"documentation\\\" }\",\n    description: \"...my_description...\",\n    displayName: \"User Service\",\n    labels: {\n        key: \"value\",\n    },\n    name: \"user-svc\",\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_catalogservice = konnect.CatalogService(\"my_catalogservice\",\n    custom_fields=\"{ \\\"see\\\": \\\"documentation\\\" }\",\n    description=\"...my_description...\",\n    display_name=\"User Service\",\n    labels={\n        \"key\": \"value\",\n    },\n    name=\"user-svc\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myCatalogservice = new Konnect.CatalogService(\"my_catalogservice\", new()\n    {\n        CustomFields = \"{ \\\"see\\\": \\\"documentation\\\" }\",\n        Description = \"...my_description...\",\n        DisplayName = \"User Service\",\n        Labels = \n        {\n            { \"key\", \"value\" },\n        },\n        Name = \"user-svc\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewCatalogService(ctx, \"my_catalogservice\", \u0026konnect.CatalogServiceArgs{\n\t\t\tCustomFields: pulumi.String(\"{ \\\"see\\\": \\\"documentation\\\" }\"),\n\t\t\tDescription:  pulumi.String(\"...my_description...\"),\n\t\t\tDisplayName:  pulumi.String(\"User Service\"),\n\t\t\tLabels: pulumi.StringMap{\n\t\t\t\t\"key\": pulumi.String(\"value\"),\n\t\t\t},\n\t\t\tName: pulumi.String(\"user-svc\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.CatalogService;\nimport com.pulumi.konnect.CatalogServiceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myCatalogservice = new CatalogService(\"myCatalogservice\", CatalogServiceArgs.builder()\n            .customFields(\"{ \\\"see\\\": \\\"documentation\\\" }\")\n            .description(\"...my_description...\")\n            .displayName(\"User Service\")\n            .labels(Map.of(\"key\", \"value\"))\n            .name(\"user-svc\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myCatalogservice:\n    type: konnect:CatalogService\n    name: my_catalogservice\n    properties:\n      customFields: '{ \"see\": \"documentation\" }'\n      description: '...my_description...'\n      displayName: User Service\n      labels:\n        key: value\n      name: user-svc\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_catalog_service.my_konnect_catalog_service\n\n  id = \"7f9fd312-a987-4628-b4c5-bb4f4fddd5f7\"\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/catalogService:CatalogService my_konnect_catalog_service \"7f9fd312-a987-4628-b4c5-bb4f4fddd5f7\"\n```\n\n","properties":{"createdAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity creation date."},"customFields":{"type":"string","description":"Map of customizable, catalog-defined fields providing information about a service. Parsed as JSON.\n"},"description":{"type":"string","description":"Optionally provide a description of the Service.\n"},"displayName":{"type":"string","description":"The display name of the Service.\n"},"labels":{"type":"object","additionalProperties":{"type":"string"},"description":"Labels store metadata of an entity that can be used for filtering an entity list or for searching across entity types.\n"},"name":{"type":"string","description":"The machine name of the Service that uniquely identifies it within the catalog.\n"},"updatedAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity update date."}},"type":"object","required":["createdAt","customFields","displayName","labels","name","updatedAt"],"inputProperties":{"customFields":{"type":"string","description":"Map of customizable, catalog-defined fields providing information about a service. Parsed as JSON.\n"},"description":{"type":"string","description":"Optionally provide a description of the Service.\n"},"displayName":{"type":"string","description":"The display name of the Service.\n"},"labels":{"type":"object","additionalProperties":{"type":"string"},"description":"Labels store metadata of an entity that can be used for filtering an entity list or for searching across entity types.\n"},"name":{"type":"string","description":"The machine name of the Service that uniquely identifies it within the catalog.\n"}},"requiredInputs":["displayName"],"stateInputs":{"description":"Input properties used for looking up and filtering CatalogService resources.\n","properties":{"createdAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity creation date."},"customFields":{"type":"string","description":"Map of customizable, catalog-defined fields providing information about a service. Parsed as JSON.\n"},"description":{"type":"string","description":"Optionally provide a description of the Service.\n"},"displayName":{"type":"string","description":"The display name of the Service.\n"},"labels":{"type":"object","additionalProperties":{"type":"string"},"description":"Labels store metadata of an entity that can be used for filtering an entity list or for searching across entity types.\n"},"name":{"type":"string","description":"The machine name of the Service that uniquely identifies it within the catalog.\n"},"updatedAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity update date."}},"type":"object"}},"konnect:index/centralizedConsumer:CentralizedConsumer":{"description":"CentralizedConsumer Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myCentralizedconsumer = new konnect.CentralizedConsumer(\"my_centralizedconsumer\", {\n    consumerGroups: [\"...\"],\n    customId: \"...my_custom_id...\",\n    realmId: \"44e96a35-843f-4590-b0ec-3a958e6297cb\",\n    tags: [\"...\"],\n    type: \"application\",\n    username: \"...my_username...\",\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_centralizedconsumer = konnect.CentralizedConsumer(\"my_centralizedconsumer\",\n    consumer_groups=[\"...\"],\n    custom_id=\"...my_custom_id...\",\n    realm_id=\"44e96a35-843f-4590-b0ec-3a958e6297cb\",\n    tags=[\"...\"],\n    type=\"application\",\n    username=\"...my_username...\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myCentralizedconsumer = new Konnect.CentralizedConsumer(\"my_centralizedconsumer\", new()\n    {\n        ConsumerGroups = new[]\n        {\n            \"...\",\n        },\n        CustomId = \"...my_custom_id...\",\n        RealmId = \"44e96a35-843f-4590-b0ec-3a958e6297cb\",\n        Tags = new[]\n        {\n            \"...\",\n        },\n        Type = \"application\",\n        Username = \"...my_username...\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewCentralizedConsumer(ctx, \"my_centralizedconsumer\", \u0026konnect.CentralizedConsumerArgs{\n\t\t\tConsumerGroups: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"...\"),\n\t\t\t},\n\t\t\tCustomId: pulumi.String(\"...my_custom_id...\"),\n\t\t\tRealmId:  pulumi.String(\"44e96a35-843f-4590-b0ec-3a958e6297cb\"),\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"...\"),\n\t\t\t},\n\t\t\tType:     pulumi.String(\"application\"),\n\t\t\tUsername: pulumi.String(\"...my_username...\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.CentralizedConsumer;\nimport com.pulumi.konnect.CentralizedConsumerArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myCentralizedconsumer = new CentralizedConsumer(\"myCentralizedconsumer\", CentralizedConsumerArgs.builder()\n            .consumerGroups(\"...\")\n            .customId(\"...my_custom_id...\")\n            .realmId(\"44e96a35-843f-4590-b0ec-3a958e6297cb\")\n            .tags(\"...\")\n            .type(\"application\")\n            .username(\"...my_username...\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myCentralizedconsumer:\n    type: konnect:CentralizedConsumer\n    name: my_centralizedconsumer\n    properties:\n      consumerGroups:\n        - '...'\n      customId: '...my_custom_id...'\n      realmId: 44e96a35-843f-4590-b0ec-3a958e6297cb\n      tags:\n        - '...'\n      type: application\n      username: '...my_username...'\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_centralized_consumer.my_konnect_centralized_consumer\n\n  id = jsonencode({\n\n    id = \"...\"\n\n    realm_id = \"...\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/centralizedConsumer:CentralizedConsumer my_konnect_centralized_consumer '{\"id\": \"...\", \"realm_id\": \"...\"}'\n```\n\n","properties":{"consumerGroups":{"type":"array","items":{"type":"string"},"description":"A list of consumer groups that the Consumer is in.\nIf \u003cspan pulumi-lang-nodejs=\"`consumerGroups`\" pulumi-lang-dotnet=\"`ConsumerGroups`\" pulumi-lang-go=\"`consumerGroups`\" pulumi-lang-python=\"`consumer_groups`\" pulumi-lang-yaml=\"`consumerGroups`\" pulumi-lang-java=\"`consumerGroups`\"\u003e`consumer_groups`\u003c/span\u003e are provided on the Consumer object *and* on the Realm, the Consumer will be placed in all defined consumer groups.\n"},"createdAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity creation date.\n"},"customId":{"type":"string","description":"Field for storing an existing unique ID for the Consumer - useful for mapping Kong with users in your existing database.\n"},"realmId":{"type":"string","description":"ID of the realm\n"},"tags":{"type":"array","items":{"type":"string"}},"type":{"type":"string","description":"Type of the consumer. Default: \"proxy\"; must be one of [\"proxy\", \"developer\", \"admin\", \"application\"]\n"},"updatedAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity update date.\n"},"username":{"type":"string","description":"The unique username of the Consumer.\n"}},"type":"object","required":["consumerGroups","createdAt","realmId","tags","type","updatedAt","username"],"inputProperties":{"consumerGroups":{"type":"array","items":{"type":"string"},"description":"A list of consumer groups that the Consumer is in.\nIf \u003cspan pulumi-lang-nodejs=\"`consumerGroups`\" pulumi-lang-dotnet=\"`ConsumerGroups`\" pulumi-lang-go=\"`consumerGroups`\" pulumi-lang-python=\"`consumer_groups`\" pulumi-lang-yaml=\"`consumerGroups`\" pulumi-lang-java=\"`consumerGroups`\"\u003e`consumer_groups`\u003c/span\u003e are provided on the Consumer object *and* on the Realm, the Consumer will be placed in all defined consumer groups.\n"},"customId":{"type":"string","description":"Field for storing an existing unique ID for the Consumer - useful for mapping Kong with users in your existing database.\n"},"realmId":{"type":"string","description":"ID of the realm\n"},"tags":{"type":"array","items":{"type":"string"}},"type":{"type":"string","description":"Type of the consumer. Default: \"proxy\"; must be one of [\"proxy\", \"developer\", \"admin\", \"application\"]\n"},"username":{"type":"string","description":"The unique username of the Consumer.\n"}},"requiredInputs":["realmId","username"],"stateInputs":{"description":"Input properties used for looking up and filtering CentralizedConsumer resources.\n","properties":{"consumerGroups":{"type":"array","items":{"type":"string"},"description":"A list of consumer groups that the Consumer is in.\nIf \u003cspan pulumi-lang-nodejs=\"`consumerGroups`\" pulumi-lang-dotnet=\"`ConsumerGroups`\" pulumi-lang-go=\"`consumerGroups`\" pulumi-lang-python=\"`consumer_groups`\" pulumi-lang-yaml=\"`consumerGroups`\" pulumi-lang-java=\"`consumerGroups`\"\u003e`consumer_groups`\u003c/span\u003e are provided on the Consumer object *and* on the Realm, the Consumer will be placed in all defined consumer groups.\n"},"createdAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity creation date.\n"},"customId":{"type":"string","description":"Field for storing an existing unique ID for the Consumer - useful for mapping Kong with users in your existing database.\n"},"realmId":{"type":"string","description":"ID of the realm\n"},"tags":{"type":"array","items":{"type":"string"}},"type":{"type":"string","description":"Type of the consumer. Default: \"proxy\"; must be one of [\"proxy\", \"developer\", \"admin\", \"application\"]\n"},"updatedAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity update date.\n"},"username":{"type":"string","description":"The unique username of the Consumer.\n"}},"type":"object"}},"konnect:index/centralizedConsumerKey:CentralizedConsumerKey":{"description":"CentralizedConsumerKey Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myCentralizedconsumerkey = new konnect.CentralizedConsumerKey(\"my_centralizedconsumerkey\", {\n    consumerId: \"...my_consumer_id...\",\n    realmId: \"75fbe6fe-cfd5-48fb-8590-5c6e31cc0859\",\n    secret: \"...my_secret...\",\n    tags: [\"...\"],\n    type: \"legacy\",\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_centralizedconsumerkey = konnect.CentralizedConsumerKey(\"my_centralizedconsumerkey\",\n    consumer_id=\"...my_consumer_id...\",\n    realm_id=\"75fbe6fe-cfd5-48fb-8590-5c6e31cc0859\",\n    secret=\"...my_secret...\",\n    tags=[\"...\"],\n    type=\"legacy\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myCentralizedconsumerkey = new Konnect.CentralizedConsumerKey(\"my_centralizedconsumerkey\", new()\n    {\n        ConsumerId = \"...my_consumer_id...\",\n        RealmId = \"75fbe6fe-cfd5-48fb-8590-5c6e31cc0859\",\n        Secret = \"...my_secret...\",\n        Tags = new[]\n        {\n            \"...\",\n        },\n        Type = \"legacy\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewCentralizedConsumerKey(ctx, \"my_centralizedconsumerkey\", \u0026konnect.CentralizedConsumerKeyArgs{\n\t\t\tConsumerId: pulumi.String(\"...my_consumer_id...\"),\n\t\t\tRealmId:    pulumi.String(\"75fbe6fe-cfd5-48fb-8590-5c6e31cc0859\"),\n\t\t\tSecret:     pulumi.String(\"...my_secret...\"),\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"...\"),\n\t\t\t},\n\t\t\tType: pulumi.String(\"legacy\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.CentralizedConsumerKey;\nimport com.pulumi.konnect.CentralizedConsumerKeyArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myCentralizedconsumerkey = new CentralizedConsumerKey(\"myCentralizedconsumerkey\", CentralizedConsumerKeyArgs.builder()\n            .consumerId(\"...my_consumer_id...\")\n            .realmId(\"75fbe6fe-cfd5-48fb-8590-5c6e31cc0859\")\n            .secret(\"...my_secret...\")\n            .tags(\"...\")\n            .type(\"legacy\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myCentralizedconsumerkey:\n    type: konnect:CentralizedConsumerKey\n    name: my_centralizedconsumerkey\n    properties:\n      consumerId: '...my_consumer_id...'\n      realmId: 75fbe6fe-cfd5-48fb-8590-5c6e31cc0859\n      secret: '...my_secret...'\n      tags:\n        - '...'\n      type: legacy\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_centralized_consumer_key.my_konnect_centralized_consumer_key\n\n  id = jsonencode({\n\n    consumer_id = \"...\"\n\n    id = \"...\"\n\n    realm_id = \"...\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/centralizedConsumerKey:CentralizedConsumerKey my_konnect_centralized_consumer_key '{\"consumer_id\": \"...\", \"id\": \"...\", \"realm_id\": \"...\"}'\n```\n\n","properties":{"consumerId":{"type":"string","description":"ID of the of the consumer. Requires replacement if changed.\n"},"createdAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity creation date.\n"},"realmId":{"type":"string","description":"ID of the realm. Requires replacement if changed.\n"},"secret":{"type":"string","description":"secret to be created. Must be unique within the realm. If not specified a secret will be automatically generated. Requires replacement if changed.\n","secret":true},"tags":{"type":"array","items":{"type":"string"},"description":"Requires replacement if changed.\n"},"type":{"type":"string","description":"Default: \"legacy\"; must be one of [\"new\", \"legacy\"]; Requires replacement if changed.\n"},"updatedAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity update date.\n"}},"type":"object","required":["consumerId","createdAt","realmId","secret","tags","type","updatedAt"],"inputProperties":{"consumerId":{"type":"string","description":"ID of the of the consumer. Requires replacement if changed.\n"},"realmId":{"type":"string","description":"ID of the realm. Requires replacement if changed.\n"},"secret":{"type":"string","description":"secret to be created. Must be unique within the realm. If not specified a secret will be automatically generated. Requires replacement if changed.\n","secret":true},"tags":{"type":"array","items":{"type":"string"},"description":"Requires replacement if changed.\n"},"type":{"type":"string","description":"Default: \"legacy\"; must be one of [\"new\", \"legacy\"]; Requires replacement if changed.\n"}},"requiredInputs":["consumerId","realmId"],"stateInputs":{"description":"Input properties used for looking up and filtering CentralizedConsumerKey resources.\n","properties":{"consumerId":{"type":"string","description":"ID of the of the consumer. Requires replacement if changed.\n"},"createdAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity creation date.\n"},"realmId":{"type":"string","description":"ID of the realm. Requires replacement if changed.\n"},"secret":{"type":"string","description":"secret to be created. Must be unique within the realm. If not specified a secret will be automatically generated. Requires replacement if changed.\n","secret":true},"tags":{"type":"array","items":{"type":"string"},"description":"Requires replacement if changed.\n"},"type":{"type":"string","description":"Default: \"legacy\"; must be one of [\"new\", \"legacy\"]; Requires replacement if changed.\n"},"updatedAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity update date.\n"}},"type":"object"}},"konnect:index/cloudGatewayConfiguration:CloudGatewayConfiguration":{"description":"CloudGatewayConfiguration Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myCloudgatewayconfiguration = new konnect.CloudGatewayConfiguration(\"my_cloudgatewayconfiguration\", {\n    apiAccess: \"private+public\",\n    controlPlaneGeo: \"us\",\n    controlPlaneId: \"0949471e-b759-45ba-87ab-ee63fb781388\",\n    dataplaneGroups: [{\n        autoscale: {\n            configurationDataPlaneGroupAutoscaleStatic: {\n                instanceType: \"medium\",\n                kind: \"static\",\n                requestedInstances: 3,\n            },\n        },\n        cloudGatewayNetworkId: \"36ae63d3-efd1-4bec-b246-62aa5d3f5695\",\n        environments: [{\n            name: \"KONG_LOG_LEVEL\",\n            value: \"info\",\n        }],\n        provider: \"aws\",\n        region: \"us-east-2\",\n    }],\n    kind: \"serverless.v1\",\n    version: \"3.2\",\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_cloudgatewayconfiguration = konnect.CloudGatewayConfiguration(\"my_cloudgatewayconfiguration\",\n    api_access=\"private+public\",\n    control_plane_geo=\"us\",\n    control_plane_id=\"0949471e-b759-45ba-87ab-ee63fb781388\",\n    dataplane_groups=[{\n        \"autoscale\": {\n            \"configuration_data_plane_group_autoscale_static\": {\n                \"instance_type\": \"medium\",\n                \"kind\": \"static\",\n                \"requested_instances\": 3,\n            },\n        },\n        \"cloud_gateway_network_id\": \"36ae63d3-efd1-4bec-b246-62aa5d3f5695\",\n        \"environments\": [{\n            \"name\": \"KONG_LOG_LEVEL\",\n            \"value\": \"info\",\n        }],\n        \"provider\": \"aws\",\n        \"region\": \"us-east-2\",\n    }],\n    kind=\"serverless.v1\",\n    version=\"3.2\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myCloudgatewayconfiguration = new Konnect.CloudGatewayConfiguration(\"my_cloudgatewayconfiguration\", new()\n    {\n        ApiAccess = \"private+public\",\n        ControlPlaneGeo = \"us\",\n        ControlPlaneId = \"0949471e-b759-45ba-87ab-ee63fb781388\",\n        DataplaneGroups = new[]\n        {\n            new Konnect.Inputs.CloudGatewayConfigurationDataplaneGroupArgs\n            {\n                Autoscale = new Konnect.Inputs.CloudGatewayConfigurationDataplaneGroupAutoscaleArgs\n                {\n                    ConfigurationDataPlaneGroupAutoscaleStatic = new Konnect.Inputs.CloudGatewayConfigurationDataplaneGroupAutoscaleConfigurationDataPlaneGroupAutoscaleStaticArgs\n                    {\n                        InstanceType = \"medium\",\n                        Kind = \"static\",\n                        RequestedInstances = 3,\n                    },\n                },\n                CloudGatewayNetworkId = \"36ae63d3-efd1-4bec-b246-62aa5d3f5695\",\n                Environments = new[]\n                {\n                    new Konnect.Inputs.CloudGatewayConfigurationDataplaneGroupEnvironmentArgs\n                    {\n                        Name = \"KONG_LOG_LEVEL\",\n                        Value = \"info\",\n                    },\n                },\n                Provider = \"aws\",\n                Region = \"us-east-2\",\n            },\n        },\n        Kind = \"serverless.v1\",\n        Version = \"3.2\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewCloudGatewayConfiguration(ctx, \"my_cloudgatewayconfiguration\", \u0026konnect.CloudGatewayConfigurationArgs{\n\t\t\tApiAccess:       pulumi.String(\"private+public\"),\n\t\t\tControlPlaneGeo: pulumi.String(\"us\"),\n\t\t\tControlPlaneId:  pulumi.String(\"0949471e-b759-45ba-87ab-ee63fb781388\"),\n\t\t\tDataplaneGroups: konnect.CloudGatewayConfigurationDataplaneGroupArray{\n\t\t\t\t\u0026konnect.CloudGatewayConfigurationDataplaneGroupArgs{\n\t\t\t\t\tAutoscale: \u0026konnect.CloudGatewayConfigurationDataplaneGroupAutoscaleArgs{\n\t\t\t\t\t\tConfigurationDataPlaneGroupAutoscaleStatic: \u0026konnect.CloudGatewayConfigurationDataplaneGroupAutoscaleConfigurationDataPlaneGroupAutoscaleStaticArgs{\n\t\t\t\t\t\t\tInstanceType:       pulumi.String(\"medium\"),\n\t\t\t\t\t\t\tKind:               pulumi.String(\"static\"),\n\t\t\t\t\t\t\tRequestedInstances: pulumi.Float64(3),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tCloudGatewayNetworkId: pulumi.String(\"36ae63d3-efd1-4bec-b246-62aa5d3f5695\"),\n\t\t\t\t\tEnvironments: konnect.CloudGatewayConfigurationDataplaneGroupEnvironmentArray{\n\t\t\t\t\t\t\u0026konnect.CloudGatewayConfigurationDataplaneGroupEnvironmentArgs{\n\t\t\t\t\t\t\tName:  pulumi.String(\"KONG_LOG_LEVEL\"),\n\t\t\t\t\t\t\tValue: pulumi.String(\"info\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tProvider: pulumi.String(\"aws\"),\n\t\t\t\t\tRegion:   pulumi.String(\"us-east-2\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tKind:    pulumi.String(\"serverless.v1\"),\n\t\t\tVersion: pulumi.String(\"3.2\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.CloudGatewayConfiguration;\nimport com.pulumi.konnect.CloudGatewayConfigurationArgs;\nimport com.pulumi.konnect.inputs.CloudGatewayConfigurationDataplaneGroupArgs;\nimport com.pulumi.konnect.inputs.CloudGatewayConfigurationDataplaneGroupAutoscaleArgs;\nimport com.pulumi.konnect.inputs.CloudGatewayConfigurationDataplaneGroupAutoscaleConfigurationDataPlaneGroupAutoscaleStaticArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myCloudgatewayconfiguration = new CloudGatewayConfiguration(\"myCloudgatewayconfiguration\", CloudGatewayConfigurationArgs.builder()\n            .apiAccess(\"private+public\")\n            .controlPlaneGeo(\"us\")\n            .controlPlaneId(\"0949471e-b759-45ba-87ab-ee63fb781388\")\n            .dataplaneGroups(CloudGatewayConfigurationDataplaneGroupArgs.builder()\n                .autoscale(CloudGatewayConfigurationDataplaneGroupAutoscaleArgs.builder()\n                    .configurationDataPlaneGroupAutoscaleStatic(CloudGatewayConfigurationDataplaneGroupAutoscaleConfigurationDataPlaneGroupAutoscaleStaticArgs.builder()\n                        .instanceType(\"medium\")\n                        .kind(\"static\")\n                        .requestedInstances(3.0)\n                        .build())\n                    .build())\n                .cloudGatewayNetworkId(\"36ae63d3-efd1-4bec-b246-62aa5d3f5695\")\n                .environments(CloudGatewayConfigurationDataplaneGroupEnvironmentArgs.builder()\n                    .name(\"KONG_LOG_LEVEL\")\n                    .value(\"info\")\n                    .build())\n                .provider(\"aws\")\n                .region(\"us-east-2\")\n                .build())\n            .kind(\"serverless.v1\")\n            .version(\"3.2\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myCloudgatewayconfiguration:\n    type: konnect:CloudGatewayConfiguration\n    name: my_cloudgatewayconfiguration\n    properties:\n      apiAccess: private+public\n      controlPlaneGeo: us\n      controlPlaneId: 0949471e-b759-45ba-87ab-ee63fb781388\n      dataplaneGroups:\n        - autoscale:\n            configurationDataPlaneGroupAutoscaleStatic:\n              instanceType: medium\n              kind: static\n              requestedInstances: 3\n          cloudGatewayNetworkId: 36ae63d3-efd1-4bec-b246-62aa5d3f5695\n          environments:\n            - name: KONG_LOG_LEVEL\n              value: info\n          provider: aws\n          region: us-east-2\n      kind: serverless.v1\n      version: '3.2'\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_cloud_gateway_configuration.my_konnect_cloud_gateway_configuration\n\n  id = \"edaf40f9-9fb0-4ffe-bb74-4e763a6bd471\"\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/cloudGatewayConfiguration:CloudGatewayConfiguration my_konnect_cloud_gateway_configuration \"edaf40f9-9fb0-4ffe-bb74-4e763a6bd471\"\n```\n\n","properties":{"apiAccess":{"type":"string","description":"Type of API access data-plane groups will support for a configuration. must be one of [\"private\", \"public\", \"private+public\"]\n"},"controlPlaneGeo":{"type":"string","description":"Set of control-plane geos supported for deploying cloud-gateways configurations. must be one of [\"us\", \"eu\", \"au\", \"me\", \"in\", \"sg\"]\n"},"controlPlaneId":{"type":"string"},"createdAt":{"type":"string","description":"An RFC-3339 timestamp representation of configuration creation date."},"dataplaneGroups":{"type":"array","items":{"$ref":"#/types/konnect:index%2FCloudGatewayConfigurationDataplaneGroup:CloudGatewayConfigurationDataplaneGroup"},"description":"List of data-plane groups that describe where to deploy instances, along with how many instances.\n"},"entityVersion":{"type":"number","description":"Positive, monotonically increasing version integer, to serialize configuration changes."},"kind":{"type":"string","description":"**Pre-release Feature**\nThis feature is currently in beta and is subject to change.\n"},"updatedAt":{"type":"string","description":"An RFC-3339 timestamp representation of configuration update date."},"version":{"type":"string","description":"Supported gateway version. For serverless.v1 kind of cloud gateways, this field should be omitted."}},"type":"object","required":["apiAccess","controlPlaneGeo","controlPlaneId","createdAt","dataplaneGroups","entityVersion","kind","updatedAt","version"],"inputProperties":{"apiAccess":{"type":"string","description":"Type of API access data-plane groups will support for a configuration. must be one of [\"private\", \"public\", \"private+public\"]\n"},"controlPlaneGeo":{"type":"string","description":"Set of control-plane geos supported for deploying cloud-gateways configurations. must be one of [\"us\", \"eu\", \"au\", \"me\", \"in\", \"sg\"]\n"},"controlPlaneId":{"type":"string"},"dataplaneGroups":{"type":"array","items":{"$ref":"#/types/konnect:index%2FCloudGatewayConfigurationDataplaneGroup:CloudGatewayConfigurationDataplaneGroup"},"description":"List of data-plane groups that describe where to deploy instances, along with how many instances.\n"},"kind":{"type":"string","description":"**Pre-release Feature**\nThis feature is currently in beta and is subject to change.\n"},"version":{"type":"string","description":"Supported gateway version. For serverless.v1 kind of cloud gateways, this field should be omitted."}},"requiredInputs":["controlPlaneGeo","controlPlaneId","dataplaneGroups"],"stateInputs":{"description":"Input properties used for looking up and filtering CloudGatewayConfiguration resources.\n","properties":{"apiAccess":{"type":"string","description":"Type of API access data-plane groups will support for a configuration. must be one of [\"private\", \"public\", \"private+public\"]\n"},"controlPlaneGeo":{"type":"string","description":"Set of control-plane geos supported for deploying cloud-gateways configurations. must be one of [\"us\", \"eu\", \"au\", \"me\", \"in\", \"sg\"]\n"},"controlPlaneId":{"type":"string"},"createdAt":{"type":"string","description":"An RFC-3339 timestamp representation of configuration creation date."},"dataplaneGroups":{"type":"array","items":{"$ref":"#/types/konnect:index%2FCloudGatewayConfigurationDataplaneGroup:CloudGatewayConfigurationDataplaneGroup"},"description":"List of data-plane groups that describe where to deploy instances, along with how many instances.\n"},"entityVersion":{"type":"number","description":"Positive, monotonically increasing version integer, to serialize configuration changes."},"kind":{"type":"string","description":"**Pre-release Feature**\nThis feature is currently in beta and is subject to change.\n"},"updatedAt":{"type":"string","description":"An RFC-3339 timestamp representation of configuration update date."},"version":{"type":"string","description":"Supported gateway version. For serverless.v1 kind of cloud gateways, this field should be omitted."}},"type":"object"}},"konnect:index/cloudGatewayCustomDomain:CloudGatewayCustomDomain":{"description":"CloudGatewayCustomDomain Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myCloudgatewaycustomdomain = new konnect.CloudGatewayCustomDomain(\"my_cloudgatewaycustomdomain\", {\n    controlPlaneGeo: \"sg\",\n    controlPlaneId: \"0949471e-b759-45ba-87ab-ee63fb781388\",\n    domain: \"example.com\",\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_cloudgatewaycustomdomain = konnect.CloudGatewayCustomDomain(\"my_cloudgatewaycustomdomain\",\n    control_plane_geo=\"sg\",\n    control_plane_id=\"0949471e-b759-45ba-87ab-ee63fb781388\",\n    domain=\"example.com\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myCloudgatewaycustomdomain = new Konnect.CloudGatewayCustomDomain(\"my_cloudgatewaycustomdomain\", new()\n    {\n        ControlPlaneGeo = \"sg\",\n        ControlPlaneId = \"0949471e-b759-45ba-87ab-ee63fb781388\",\n        Domain = \"example.com\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewCloudGatewayCustomDomain(ctx, \"my_cloudgatewaycustomdomain\", \u0026konnect.CloudGatewayCustomDomainArgs{\n\t\t\tControlPlaneGeo: pulumi.String(\"sg\"),\n\t\t\tControlPlaneId:  pulumi.String(\"0949471e-b759-45ba-87ab-ee63fb781388\"),\n\t\t\tDomain:          pulumi.String(\"example.com\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.CloudGatewayCustomDomain;\nimport com.pulumi.konnect.CloudGatewayCustomDomainArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myCloudgatewaycustomdomain = new CloudGatewayCustomDomain(\"myCloudgatewaycustomdomain\", CloudGatewayCustomDomainArgs.builder()\n            .controlPlaneGeo(\"sg\")\n            .controlPlaneId(\"0949471e-b759-45ba-87ab-ee63fb781388\")\n            .domain(\"example.com\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myCloudgatewaycustomdomain:\n    type: konnect:CloudGatewayCustomDomain\n    name: my_cloudgatewaycustomdomain\n    properties:\n      controlPlaneGeo: sg\n      controlPlaneId: 0949471e-b759-45ba-87ab-ee63fb781388\n      domain: example.com\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_cloud_gateway_custom_domain.my_konnect_cloud_gateway_custom_domain\n\n  id = \"39ed3790-085d-4605-9627-f96d86aaf425\"\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/cloudGatewayCustomDomain:CloudGatewayCustomDomain my_konnect_cloud_gateway_custom_domain \"39ed3790-085d-4605-9627-f96d86aaf425\"\n```\n\n","properties":{"certificateId":{"type":"string","description":"Certificate ID for the certificate representing this domain and stored on data-planes for this\ncontrol-plane. Can be retrieved via the control-planes API for this custom domain's control-plane.\n"},"controlPlaneGeo":{"type":"string","description":"Set of control-plane geos supported for deploying cloud-gateways configurations. must be one of [\"us\", \"eu\", \"au\", \"me\", \"in\", \"sg\"]; Requires replacement if changed.\n"},"controlPlaneId":{"type":"string","description":"Requires replacement if changed.\n"},"createdAt":{"type":"string","description":"An RFC-3339 timestamp representation of custom domain creation date.\n"},"domain":{"type":"string","description":"Domain name of the custom domain. Requires replacement if changed.\n"},"entityVersion":{"type":"number","description":"Monotonically-increasing version count of the custom domain, to indicate the order of updates to the custom\ndomain.\n"},"sniId":{"type":"string","description":"Server Name Indication ID for this domain and stored on data-planes for this control-plane. Can be retrieved\nvia the control-planes API for this custom domain's control-plane.\n"},"state":{"type":"string","description":"State of the custom domain.\n"},"stateMetadata":{"$ref":"#/types/konnect:index%2FCloudGatewayCustomDomainStateMetadata:CloudGatewayCustomDomainStateMetadata","description":"Metadata describing the backing state of the custom domain and why it may be in an erroneous state.\n"},"updatedAt":{"type":"string","description":"An RFC-3339 timestamp representation of custom domain update date.\n"}},"type":"object","required":["certificateId","controlPlaneGeo","controlPlaneId","createdAt","domain","entityVersion","sniId","state","stateMetadata","updatedAt"],"inputProperties":{"controlPlaneGeo":{"type":"string","description":"Set of control-plane geos supported for deploying cloud-gateways configurations. must be one of [\"us\", \"eu\", \"au\", \"me\", \"in\", \"sg\"]; Requires replacement if changed.\n"},"controlPlaneId":{"type":"string","description":"Requires replacement if changed.\n"},"domain":{"type":"string","description":"Domain name of the custom domain. Requires replacement if changed.\n"}},"requiredInputs":["controlPlaneGeo","controlPlaneId","domain"],"stateInputs":{"description":"Input properties used for looking up and filtering CloudGatewayCustomDomain resources.\n","properties":{"certificateId":{"type":"string","description":"Certificate ID for the certificate representing this domain and stored on data-planes for this\ncontrol-plane. Can be retrieved via the control-planes API for this custom domain's control-plane.\n"},"controlPlaneGeo":{"type":"string","description":"Set of control-plane geos supported for deploying cloud-gateways configurations. must be one of [\"us\", \"eu\", \"au\", \"me\", \"in\", \"sg\"]; Requires replacement if changed.\n"},"controlPlaneId":{"type":"string","description":"Requires replacement if changed.\n"},"createdAt":{"type":"string","description":"An RFC-3339 timestamp representation of custom domain creation date.\n"},"domain":{"type":"string","description":"Domain name of the custom domain. Requires replacement if changed.\n"},"entityVersion":{"type":"number","description":"Monotonically-increasing version count of the custom domain, to indicate the order of updates to the custom\ndomain.\n"},"sniId":{"type":"string","description":"Server Name Indication ID for this domain and stored on data-planes for this control-plane. Can be retrieved\nvia the control-planes API for this custom domain's control-plane.\n"},"state":{"type":"string","description":"State of the custom domain.\n"},"stateMetadata":{"$ref":"#/types/konnect:index%2FCloudGatewayCustomDomainStateMetadata:CloudGatewayCustomDomainStateMetadata","description":"Metadata describing the backing state of the custom domain and why it may be in an erroneous state.\n"},"updatedAt":{"type":"string","description":"An RFC-3339 timestamp representation of custom domain update date.\n"}},"type":"object"}},"konnect:index/cloudGatewayNetwork:CloudGatewayNetwork":{"description":"CloudGatewayNetwork Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myCloudgatewaynetwork = new konnect.CloudGatewayNetwork(\"my_cloudgatewaynetwork\", {\n    availabilityZones: [\n        \"use2-az1\",\n        \"use2-az2\",\n        \"use2-az3\",\n    ],\n    cidrBlock: \"10.0.0.0/8\",\n    cloudGatewayProviderAccountId: \"929b2449-c69f-44c4-b6ad-9ecec6f811ae\",\n    name: \"us-east-2 network\",\n    region: \"us-east-2\",\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_cloudgatewaynetwork = konnect.CloudGatewayNetwork(\"my_cloudgatewaynetwork\",\n    availability_zones=[\n        \"use2-az1\",\n        \"use2-az2\",\n        \"use2-az3\",\n    ],\n    cidr_block=\"10.0.0.0/8\",\n    cloud_gateway_provider_account_id=\"929b2449-c69f-44c4-b6ad-9ecec6f811ae\",\n    name=\"us-east-2 network\",\n    region=\"us-east-2\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myCloudgatewaynetwork = new Konnect.CloudGatewayNetwork(\"my_cloudgatewaynetwork\", new()\n    {\n        AvailabilityZones = new[]\n        {\n            \"use2-az1\",\n            \"use2-az2\",\n            \"use2-az3\",\n        },\n        CidrBlock = \"10.0.0.0/8\",\n        CloudGatewayProviderAccountId = \"929b2449-c69f-44c4-b6ad-9ecec6f811ae\",\n        Name = \"us-east-2 network\",\n        Region = \"us-east-2\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewCloudGatewayNetwork(ctx, \"my_cloudgatewaynetwork\", \u0026konnect.CloudGatewayNetworkArgs{\n\t\t\tAvailabilityZones: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"use2-az1\"),\n\t\t\t\tpulumi.String(\"use2-az2\"),\n\t\t\t\tpulumi.String(\"use2-az3\"),\n\t\t\t},\n\t\t\tCidrBlock:                     pulumi.String(\"10.0.0.0/8\"),\n\t\t\tCloudGatewayProviderAccountId: pulumi.String(\"929b2449-c69f-44c4-b6ad-9ecec6f811ae\"),\n\t\t\tName:                          pulumi.String(\"us-east-2 network\"),\n\t\t\tRegion:                        pulumi.String(\"us-east-2\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.CloudGatewayNetwork;\nimport com.pulumi.konnect.CloudGatewayNetworkArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myCloudgatewaynetwork = new CloudGatewayNetwork(\"myCloudgatewaynetwork\", CloudGatewayNetworkArgs.builder()\n            .availabilityZones(            \n                \"use2-az1\",\n                \"use2-az2\",\n                \"use2-az3\")\n            .cidrBlock(\"10.0.0.0/8\")\n            .cloudGatewayProviderAccountId(\"929b2449-c69f-44c4-b6ad-9ecec6f811ae\")\n            .name(\"us-east-2 network\")\n            .region(\"us-east-2\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myCloudgatewaynetwork:\n    type: konnect:CloudGatewayNetwork\n    name: my_cloudgatewaynetwork\n    properties:\n      availabilityZones:\n        - use2-az1\n        - use2-az2\n        - use2-az3\n      cidrBlock: 10.0.0.0/8\n      cloudGatewayProviderAccountId: 929b2449-c69f-44c4-b6ad-9ecec6f811ae\n      name: us-east-2 network\n      region: us-east-2\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_cloud_gateway_network.my_konnect_cloud_gateway_network\n\n  id = \"36ae63d3-efd1-4bec-b246-62aa5d3f5695\"\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/cloudGatewayNetwork:CloudGatewayNetwork my_konnect_cloud_gateway_network \"36ae63d3-efd1-4bec-b246-62aa5d3f5695\"\n```\n\n","properties":{"availabilityZones":{"type":"array","items":{"type":"string"},"description":"List of availability zones that the network is attached to. Requires replacement if changed.\n"},"cidrBlock":{"type":"string","description":"CIDR block configuration for the network. Requires replacement if changed.\n"},"cloudGatewayProviderAccountId":{"type":"string","description":"Requires replacement if changed.\n"},"configurationReferenceCount":{"type":"number","description":"The number of configurations that reference this network.\n"},"createdAt":{"type":"string","description":"An RFC-3339 timestamp representation of network creation date.\n"},"default":{"type":"boolean","description":"Whether the network is a default network or not. Default networks are Networks that are created\nautomatically by Konnect when an organization is linked to a provider account.\n"},"entityVersion":{"type":"number","description":"Monotonically-increasing version count of the network, to indicate the order of updates to the network.\n"},"name":{"type":"string","description":"Human-readable name of the network.\n"},"providerMetadata":{"$ref":"#/types/konnect:index%2FCloudGatewayNetworkProviderMetadata:CloudGatewayNetworkProviderMetadata","description":"Metadata describing attributes returned by cloud-provider for the network.\n"},"region":{"type":"string","description":"Region ID for cloud provider region. Requires replacement if changed.\n"},"transitGatewayCount":{"type":"number","description":"The number of transit gateways attached to this network.\n"},"updatedAt":{"type":"string","description":"An RFC-3339 timestamp representation of network update date.\n"}},"type":"object","required":["availabilityZones","cidrBlock","cloudGatewayProviderAccountId","configurationReferenceCount","createdAt","default","entityVersion","name","providerMetadata","region","transitGatewayCount","updatedAt"],"inputProperties":{"availabilityZones":{"type":"array","items":{"type":"string"},"description":"List of availability zones that the network is attached to. Requires replacement if changed.\n"},"cidrBlock":{"type":"string","description":"CIDR block configuration for the network. Requires replacement if changed.\n"},"cloudGatewayProviderAccountId":{"type":"string","description":"Requires replacement if changed.\n"},"name":{"type":"string","description":"Human-readable name of the network.\n"},"region":{"type":"string","description":"Region ID for cloud provider region. Requires replacement if changed.\n"}},"requiredInputs":["availabilityZones","cidrBlock","cloudGatewayProviderAccountId","region"],"stateInputs":{"description":"Input properties used for looking up and filtering CloudGatewayNetwork resources.\n","properties":{"availabilityZones":{"type":"array","items":{"type":"string"},"description":"List of availability zones that the network is attached to. Requires replacement if changed.\n"},"cidrBlock":{"type":"string","description":"CIDR block configuration for the network. Requires replacement if changed.\n"},"cloudGatewayProviderAccountId":{"type":"string","description":"Requires replacement if changed.\n"},"configurationReferenceCount":{"type":"number","description":"The number of configurations that reference this network.\n"},"createdAt":{"type":"string","description":"An RFC-3339 timestamp representation of network creation date.\n"},"default":{"type":"boolean","description":"Whether the network is a default network or not. Default networks are Networks that are created\nautomatically by Konnect when an organization is linked to a provider account.\n"},"entityVersion":{"type":"number","description":"Monotonically-increasing version count of the network, to indicate the order of updates to the network.\n"},"name":{"type":"string","description":"Human-readable name of the network.\n"},"providerMetadata":{"$ref":"#/types/konnect:index%2FCloudGatewayNetworkProviderMetadata:CloudGatewayNetworkProviderMetadata","description":"Metadata describing attributes returned by cloud-provider for the network.\n"},"region":{"type":"string","description":"Region ID for cloud provider region. Requires replacement if changed.\n"},"transitGatewayCount":{"type":"number","description":"The number of transit gateways attached to this network.\n"},"updatedAt":{"type":"string","description":"An RFC-3339 timestamp representation of network update date.\n"}},"type":"object"}},"konnect:index/cloudGatewayPrivateDns:CloudGatewayPrivateDns":{"description":"CloudGatewayPrivateDNS Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myCloudgatewayprivatedns = new konnect.CloudGatewayPrivateDns(\"my_cloudgatewayprivatedns\", {\n    name: \"us-east-2 private dns\",\n    networkId: \"36ae63d3-efd1-4bec-b246-62aa5d3f5695\",\n    privateDnsAttachmentConfig: {\n        awsPrivateDnsResolverAttachmentConfig: {\n            dnsConfig: {\n                key: {\n                    remoteDnsServerIpAddresses: [\"10.0.0.2\"],\n                },\n            },\n            kind: \"aws-outbound-resolver\",\n        },\n        azurePrivateDnsResolverAttachmentConfig: {\n            dnsConfig: {\n                key: {\n                    remoteDnsServerIpAddresses: [\"10.0.0.2\"],\n                },\n            },\n            kind: \"azure-outbound-resolver\",\n        },\n    },\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_cloudgatewayprivatedns = konnect.CloudGatewayPrivateDns(\"my_cloudgatewayprivatedns\",\n    name=\"us-east-2 private dns\",\n    network_id=\"36ae63d3-efd1-4bec-b246-62aa5d3f5695\",\n    private_dns_attachment_config={\n        \"aws_private_dns_resolver_attachment_config\": {\n            \"dns_config\": {\n                \"key\": {\n                    \"remote_dns_server_ip_addresses\": [\"10.0.0.2\"],\n                },\n            },\n            \"kind\": \"aws-outbound-resolver\",\n        },\n        \"azure_private_dns_resolver_attachment_config\": {\n            \"dns_config\": {\n                \"key\": {\n                    \"remote_dns_server_ip_addresses\": [\"10.0.0.2\"],\n                },\n            },\n            \"kind\": \"azure-outbound-resolver\",\n        },\n    })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myCloudgatewayprivatedns = new Konnect.CloudGatewayPrivateDns(\"my_cloudgatewayprivatedns\", new()\n    {\n        Name = \"us-east-2 private dns\",\n        NetworkId = \"36ae63d3-efd1-4bec-b246-62aa5d3f5695\",\n        PrivateDnsAttachmentConfig = new Konnect.Inputs.CloudGatewayPrivateDnsPrivateDnsAttachmentConfigArgs\n        {\n            AwsPrivateDnsResolverAttachmentConfig = new Konnect.Inputs.CloudGatewayPrivateDnsPrivateDnsAttachmentConfigAwsPrivateDnsResolverAttachmentConfigArgs\n            {\n                DnsConfig = \n                {\n                    { \"key\", new Konnect.Inputs.CloudGatewayPrivateDnsPrivateDnsAttachmentConfigAwsPrivateDnsResolverAttachmentConfigDnsConfigArgs\n                    {\n                        RemoteDnsServerIpAddresses = new[]\n                        {\n                            \"10.0.0.2\",\n                        },\n                    } },\n                },\n                Kind = \"aws-outbound-resolver\",\n            },\n            AzurePrivateDnsResolverAttachmentConfig = new Konnect.Inputs.CloudGatewayPrivateDnsPrivateDnsAttachmentConfigAzurePrivateDnsResolverAttachmentConfigArgs\n            {\n                DnsConfig = \n                {\n                    { \"key\", new Konnect.Inputs.CloudGatewayPrivateDnsPrivateDnsAttachmentConfigAzurePrivateDnsResolverAttachmentConfigDnsConfigArgs\n                    {\n                        RemoteDnsServerIpAddresses = new[]\n                        {\n                            \"10.0.0.2\",\n                        },\n                    } },\n                },\n                Kind = \"azure-outbound-resolver\",\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewCloudGatewayPrivateDns(ctx, \"my_cloudgatewayprivatedns\", \u0026konnect.CloudGatewayPrivateDnsArgs{\n\t\t\tName:      pulumi.String(\"us-east-2 private dns\"),\n\t\t\tNetworkId: pulumi.String(\"36ae63d3-efd1-4bec-b246-62aa5d3f5695\"),\n\t\t\tPrivateDnsAttachmentConfig: \u0026konnect.CloudGatewayPrivateDnsPrivateDnsAttachmentConfigArgs{\n\t\t\t\tAwsPrivateDnsResolverAttachmentConfig: \u0026konnect.CloudGatewayPrivateDnsPrivateDnsAttachmentConfigAwsPrivateDnsResolverAttachmentConfigArgs{\n\t\t\t\t\tDnsConfig: konnect.CloudGatewayPrivateDnsPrivateDnsAttachmentConfigAwsPrivateDnsResolverAttachmentConfigDnsConfigMap{\n\t\t\t\t\t\t\"key\": \u0026konnect.CloudGatewayPrivateDnsPrivateDnsAttachmentConfigAwsPrivateDnsResolverAttachmentConfigDnsConfigArgs{\n\t\t\t\t\t\t\tRemoteDnsServerIpAddresses: pulumi.StringArray{\n\t\t\t\t\t\t\t\tpulumi.String(\"10.0.0.2\"),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tKind: pulumi.String(\"aws-outbound-resolver\"),\n\t\t\t\t},\n\t\t\t\tAzurePrivateDnsResolverAttachmentConfig: \u0026konnect.CloudGatewayPrivateDnsPrivateDnsAttachmentConfigAzurePrivateDnsResolverAttachmentConfigArgs{\n\t\t\t\t\tDnsConfig: konnect.CloudGatewayPrivateDnsPrivateDnsAttachmentConfigAzurePrivateDnsResolverAttachmentConfigDnsConfigMap{\n\t\t\t\t\t\t\"key\": \u0026konnect.CloudGatewayPrivateDnsPrivateDnsAttachmentConfigAzurePrivateDnsResolverAttachmentConfigDnsConfigArgs{\n\t\t\t\t\t\t\tRemoteDnsServerIpAddresses: pulumi.StringArray{\n\t\t\t\t\t\t\t\tpulumi.String(\"10.0.0.2\"),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tKind: pulumi.String(\"azure-outbound-resolver\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.CloudGatewayPrivateDns;\nimport com.pulumi.konnect.CloudGatewayPrivateDnsArgs;\nimport com.pulumi.konnect.inputs.CloudGatewayPrivateDnsPrivateDnsAttachmentConfigArgs;\nimport com.pulumi.konnect.inputs.CloudGatewayPrivateDnsPrivateDnsAttachmentConfigAwsPrivateDnsResolverAttachmentConfigArgs;\nimport com.pulumi.konnect.inputs.CloudGatewayPrivateDnsPrivateDnsAttachmentConfigAzurePrivateDnsResolverAttachmentConfigArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myCloudgatewayprivatedns = new CloudGatewayPrivateDns(\"myCloudgatewayprivatedns\", CloudGatewayPrivateDnsArgs.builder()\n            .name(\"us-east-2 private dns\")\n            .networkId(\"36ae63d3-efd1-4bec-b246-62aa5d3f5695\")\n            .privateDnsAttachmentConfig(CloudGatewayPrivateDnsPrivateDnsAttachmentConfigArgs.builder()\n                .awsPrivateDnsResolverAttachmentConfig(CloudGatewayPrivateDnsPrivateDnsAttachmentConfigAwsPrivateDnsResolverAttachmentConfigArgs.builder()\n                    .dnsConfig(Map.of(\"key\", CloudGatewayPrivateDnsPrivateDnsAttachmentConfigAwsPrivateDnsResolverAttachmentConfigDnsConfigArgs.builder()\n                        .remoteDnsServerIpAddresses(\"10.0.0.2\")\n                        .build()))\n                    .kind(\"aws-outbound-resolver\")\n                    .build())\n                .azurePrivateDnsResolverAttachmentConfig(CloudGatewayPrivateDnsPrivateDnsAttachmentConfigAzurePrivateDnsResolverAttachmentConfigArgs.builder()\n                    .dnsConfig(Map.of(\"key\", CloudGatewayPrivateDnsPrivateDnsAttachmentConfigAzurePrivateDnsResolverAttachmentConfigDnsConfigArgs.builder()\n                        .remoteDnsServerIpAddresses(\"10.0.0.2\")\n                        .build()))\n                    .kind(\"azure-outbound-resolver\")\n                    .build())\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myCloudgatewayprivatedns:\n    type: konnect:CloudGatewayPrivateDns\n    name: my_cloudgatewayprivatedns\n    properties:\n      name: us-east-2 private dns\n      networkId: 36ae63d3-efd1-4bec-b246-62aa5d3f5695\n      privateDnsAttachmentConfig:\n        awsPrivateDnsResolverAttachmentConfig:\n          dnsConfig:\n            key:\n              remoteDnsServerIpAddresses:\n                - 10.0.0.2\n          kind: aws-outbound-resolver\n        azurePrivateDnsResolverAttachmentConfig:\n          dnsConfig:\n            key:\n              remoteDnsServerIpAddresses:\n                - 10.0.0.2\n          kind: azure-outbound-resolver\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_cloud_gateway_private_dns.my_konnect_cloud_gateway_private_dns\n\n  id = jsonencode({\n\n    id = \"1850820b-c69f-4a2a-b9be-bbcdbc5cd618\"\n\n    network_id = \"36ae63d3-efd1-4bec-b246-62aa5d3f5695\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/cloudGatewayPrivateDns:CloudGatewayPrivateDns my_konnect_cloud_gateway_private_dns '{\"id\": \"1850820b-c69f-4a2a-b9be-bbcdbc5cd618\", \"network_id\": \"36ae63d3-efd1-4bec-b246-62aa5d3f5695\"}'\n```\n\n","properties":{"awsPrivateDnsResolverResponse":{"$ref":"#/types/konnect:index%2FCloudGatewayPrivateDnsAwsPrivateDnsResolverResponse:CloudGatewayPrivateDnsAwsPrivateDnsResolverResponse"},"awsPrivateHostedZoneResponse":{"$ref":"#/types/konnect:index%2FCloudGatewayPrivateDnsAwsPrivateHostedZoneResponse:CloudGatewayPrivateDnsAwsPrivateHostedZoneResponse"},"azurePrivateDnsResolverResponse":{"$ref":"#/types/konnect:index%2FCloudGatewayPrivateDnsAzurePrivateDnsResolverResponse:CloudGatewayPrivateDnsAzurePrivateDnsResolverResponse"},"azurePrivateHostedZoneResponse":{"$ref":"#/types/konnect:index%2FCloudGatewayPrivateDnsAzurePrivateHostedZoneResponse:CloudGatewayPrivateDnsAzurePrivateHostedZoneResponse"},"entityVersion":{"type":"number","description":"Monotonically-increasing version count of the Private DNS, to indicate the order of updates to the\nPrivate DNS.\n"},"gcpPrivateHostedZoneResponse":{"$ref":"#/types/konnect:index%2FCloudGatewayPrivateDnsGcpPrivateHostedZoneResponse:CloudGatewayPrivateDnsGcpPrivateHostedZoneResponse"},"name":{"type":"string","description":"Human-readable name of the Private DNS. Requires replacement if changed.\n"},"networkId":{"type":"string","description":"The network to operate on. Requires replacement if changed.\n"},"privateDnsAttachmentConfig":{"$ref":"#/types/konnect:index%2FCloudGatewayPrivateDnsPrivateDnsAttachmentConfig:CloudGatewayPrivateDnsPrivateDnsAttachmentConfig","description":"Requires replacement if changed.\n"},"state":{"type":"string","description":"The current state of the Private DNS attachment. Possible values:\n"}},"type":"object","required":["awsPrivateDnsResolverResponse","awsPrivateHostedZoneResponse","azurePrivateDnsResolverResponse","azurePrivateHostedZoneResponse","entityVersion","gcpPrivateHostedZoneResponse","name","networkId","state"],"inputProperties":{"name":{"type":"string","description":"Human-readable name of the Private DNS. Requires replacement if changed.\n"},"networkId":{"type":"string","description":"The network to operate on. Requires replacement if changed.\n"},"privateDnsAttachmentConfig":{"$ref":"#/types/konnect:index%2FCloudGatewayPrivateDnsPrivateDnsAttachmentConfig:CloudGatewayPrivateDnsPrivateDnsAttachmentConfig","description":"Requires replacement if changed.\n"}},"requiredInputs":["networkId"],"stateInputs":{"description":"Input properties used for looking up and filtering CloudGatewayPrivateDns resources.\n","properties":{"awsPrivateDnsResolverResponse":{"$ref":"#/types/konnect:index%2FCloudGatewayPrivateDnsAwsPrivateDnsResolverResponse:CloudGatewayPrivateDnsAwsPrivateDnsResolverResponse"},"awsPrivateHostedZoneResponse":{"$ref":"#/types/konnect:index%2FCloudGatewayPrivateDnsAwsPrivateHostedZoneResponse:CloudGatewayPrivateDnsAwsPrivateHostedZoneResponse"},"azurePrivateDnsResolverResponse":{"$ref":"#/types/konnect:index%2FCloudGatewayPrivateDnsAzurePrivateDnsResolverResponse:CloudGatewayPrivateDnsAzurePrivateDnsResolverResponse"},"azurePrivateHostedZoneResponse":{"$ref":"#/types/konnect:index%2FCloudGatewayPrivateDnsAzurePrivateHostedZoneResponse:CloudGatewayPrivateDnsAzurePrivateHostedZoneResponse"},"entityVersion":{"type":"number","description":"Monotonically-increasing version count of the Private DNS, to indicate the order of updates to the\nPrivate DNS.\n"},"gcpPrivateHostedZoneResponse":{"$ref":"#/types/konnect:index%2FCloudGatewayPrivateDnsGcpPrivateHostedZoneResponse:CloudGatewayPrivateDnsGcpPrivateHostedZoneResponse"},"name":{"type":"string","description":"Human-readable name of the Private DNS. Requires replacement if changed.\n"},"networkId":{"type":"string","description":"The network to operate on. Requires replacement if changed.\n"},"privateDnsAttachmentConfig":{"$ref":"#/types/konnect:index%2FCloudGatewayPrivateDnsPrivateDnsAttachmentConfig:CloudGatewayPrivateDnsPrivateDnsAttachmentConfig","description":"Requires replacement if changed.\n"},"state":{"type":"string","description":"The current state of the Private DNS attachment. Possible values:\n"}},"type":"object"}},"konnect:index/cloudGatewayTransitGateway:CloudGatewayTransitGateway":{"description":"CloudGatewayTransitGateway Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myCloudgatewaytransitgateway = new konnect.CloudGatewayTransitGateway(\"my_cloudgatewaytransitgateway\", {\n    awsResourceEndpointGateway: {\n        dnsConfigs: [{\n            domainProxyLists: [\"foobar.com\"],\n            remoteDnsServerIpAddresses: [\"10.0.0.2\"],\n        }],\n        name: \"us-east-2 transit gateway\",\n        transitGatewayAttachmentConfig: {\n            kind: \"aws-resource-endpoint-attachment\",\n            ramShareArn: \"...my_ram_share_arn...\",\n            resourceConfigs: [{\n                domainName: \"...my_domain_name...\",\n                resourceConfigId: \"...my_resource_config_id...\",\n            }],\n        },\n    },\n    awsTransitGateway: {\n        cidrBlocks: [\n            \"10.0.0.0/8\",\n            \"100.64.0.0/10\",\n            \"172.16.0.0/12\",\n        ],\n        dnsConfigs: [{\n            domainProxyLists: [\"foobar.com\"],\n            remoteDnsServerIpAddresses: [\"10.0.0.2\"],\n        }],\n        name: \"us-east-2 transit gateway\",\n        transitGatewayAttachmentConfig: {\n            kind: \"aws-transit-gateway-attachment\",\n            ramShareArn: \"...my_ram_share_arn...\",\n            transitGatewayId: \"...my_transit_gateway_id...\",\n        },\n    },\n    awsVpcPeeringGateway: {\n        cidrBlocks: [\n            \"10.0.0.0/8\",\n            \"100.64.0.0/10\",\n            \"172.16.0.0/12\",\n        ],\n        dnsConfigs: [{\n            domainProxyLists: [\"foobar.com\"],\n            remoteDnsServerIpAddresses: [\"10.0.0.2\"],\n        }],\n        name: \"us-east-2 transit gateway\",\n        transitGatewayAttachmentConfig: {\n            kind: \"aws-vpc-peering-attachment\",\n            peerAccountId: \"...my_peer_account_id...\",\n            peerVpcId: \"...my_peer_vpc_id...\",\n            peerVpcRegion: \"...my_peer_vpc_region...\",\n        },\n    },\n    azureTransitGateway: {\n        dnsConfigs: [{\n            domainProxyLists: [\"foobar.com\"],\n            remoteDnsServerIpAddresses: [\"10.0.0.2\"],\n        }],\n        name: \"us-east-2 transit gateway\",\n        transitGatewayAttachmentConfig: {\n            kind: \"azure-vnet-peering-attachment\",\n            resourceGroupName: \"...my_resource_group_name...\",\n            subscriptionId: \"...my_subscription_id...\",\n            tenantId: \"...my_tenant_id...\",\n            vnetName: \"...my_vnet_name...\",\n        },\n    },\n    azureVhubPeeringGateway: {\n        dnsConfigs: [{\n            domainProxyLists: [\"foobar.com\"],\n            remoteDnsServerIpAddresses: [\"10.0.0.2\"],\n        }],\n        name: \"us-east-2 transit gateway\",\n    },\n    gcpVpcPeeringTransitGateway: {\n        dnsConfigs: [{\n            domainProxyLists: [\"foobar.com\"],\n            remoteDnsServerIpAddresses: [\"10.0.0.2\"],\n        }],\n        name: \"us-east-2 transit gateway\",\n        transitGatewayAttachmentConfig: {\n            kind: \"gcp-vpc-peering-attachment\",\n            peerProjectId: \"...my_peer_project_id...\",\n            peerVpcName: \"...my_peer_vpc_name...\",\n        },\n    },\n    networkId: \"36ae63d3-efd1-4bec-b246-62aa5d3f5695\",\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_cloudgatewaytransitgateway = konnect.CloudGatewayTransitGateway(\"my_cloudgatewaytransitgateway\",\n    aws_resource_endpoint_gateway={\n        \"dns_configs\": [{\n            \"domain_proxy_lists\": [\"foobar.com\"],\n            \"remote_dns_server_ip_addresses\": [\"10.0.0.2\"],\n        }],\n        \"name\": \"us-east-2 transit gateway\",\n        \"transit_gateway_attachment_config\": {\n            \"kind\": \"aws-resource-endpoint-attachment\",\n            \"ram_share_arn\": \"...my_ram_share_arn...\",\n            \"resource_configs\": [{\n                \"domain_name\": \"...my_domain_name...\",\n                \"resource_config_id\": \"...my_resource_config_id...\",\n            }],\n        },\n    },\n    aws_transit_gateway={\n        \"cidr_blocks\": [\n            \"10.0.0.0/8\",\n            \"100.64.0.0/10\",\n            \"172.16.0.0/12\",\n        ],\n        \"dns_configs\": [{\n            \"domain_proxy_lists\": [\"foobar.com\"],\n            \"remote_dns_server_ip_addresses\": [\"10.0.0.2\"],\n        }],\n        \"name\": \"us-east-2 transit gateway\",\n        \"transit_gateway_attachment_config\": {\n            \"kind\": \"aws-transit-gateway-attachment\",\n            \"ram_share_arn\": \"...my_ram_share_arn...\",\n            \"transit_gateway_id\": \"...my_transit_gateway_id...\",\n        },\n    },\n    aws_vpc_peering_gateway={\n        \"cidr_blocks\": [\n            \"10.0.0.0/8\",\n            \"100.64.0.0/10\",\n            \"172.16.0.0/12\",\n        ],\n        \"dns_configs\": [{\n            \"domain_proxy_lists\": [\"foobar.com\"],\n            \"remote_dns_server_ip_addresses\": [\"10.0.0.2\"],\n        }],\n        \"name\": \"us-east-2 transit gateway\",\n        \"transit_gateway_attachment_config\": {\n            \"kind\": \"aws-vpc-peering-attachment\",\n            \"peer_account_id\": \"...my_peer_account_id...\",\n            \"peer_vpc_id\": \"...my_peer_vpc_id...\",\n            \"peer_vpc_region\": \"...my_peer_vpc_region...\",\n        },\n    },\n    azure_transit_gateway={\n        \"dns_configs\": [{\n            \"domain_proxy_lists\": [\"foobar.com\"],\n            \"remote_dns_server_ip_addresses\": [\"10.0.0.2\"],\n        }],\n        \"name\": \"us-east-2 transit gateway\",\n        \"transit_gateway_attachment_config\": {\n            \"kind\": \"azure-vnet-peering-attachment\",\n            \"resource_group_name\": \"...my_resource_group_name...\",\n            \"subscription_id\": \"...my_subscription_id...\",\n            \"tenant_id\": \"...my_tenant_id...\",\n            \"vnet_name\": \"...my_vnet_name...\",\n        },\n    },\n    azure_vhub_peering_gateway={\n        \"dns_configs\": [{\n            \"domain_proxy_lists\": [\"foobar.com\"],\n            \"remote_dns_server_ip_addresses\": [\"10.0.0.2\"],\n        }],\n        \"name\": \"us-east-2 transit gateway\",\n    },\n    gcp_vpc_peering_transit_gateway={\n        \"dns_configs\": [{\n            \"domain_proxy_lists\": [\"foobar.com\"],\n            \"remote_dns_server_ip_addresses\": [\"10.0.0.2\"],\n        }],\n        \"name\": \"us-east-2 transit gateway\",\n        \"transit_gateway_attachment_config\": {\n            \"kind\": \"gcp-vpc-peering-attachment\",\n            \"peer_project_id\": \"...my_peer_project_id...\",\n            \"peer_vpc_name\": \"...my_peer_vpc_name...\",\n        },\n    },\n    network_id=\"36ae63d3-efd1-4bec-b246-62aa5d3f5695\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myCloudgatewaytransitgateway = new Konnect.CloudGatewayTransitGateway(\"my_cloudgatewaytransitgateway\", new()\n    {\n        AwsResourceEndpointGateway = new Konnect.Inputs.CloudGatewayTransitGatewayAwsResourceEndpointGatewayArgs\n        {\n            DnsConfigs = new[]\n            {\n                new Konnect.Inputs.CloudGatewayTransitGatewayAwsResourceEndpointGatewayDnsConfigArgs\n                {\n                    DomainProxyLists = new[]\n                    {\n                        \"foobar.com\",\n                    },\n                    RemoteDnsServerIpAddresses = new[]\n                    {\n                        \"10.0.0.2\",\n                    },\n                },\n            },\n            Name = \"us-east-2 transit gateway\",\n            TransitGatewayAttachmentConfig = new Konnect.Inputs.CloudGatewayTransitGatewayAwsResourceEndpointGatewayTransitGatewayAttachmentConfigArgs\n            {\n                Kind = \"aws-resource-endpoint-attachment\",\n                RamShareArn = \"...my_ram_share_arn...\",\n                ResourceConfigs = new[]\n                {\n                    new Konnect.Inputs.CloudGatewayTransitGatewayAwsResourceEndpointGatewayTransitGatewayAttachmentConfigResourceConfigArgs\n                    {\n                        DomainName = \"...my_domain_name...\",\n                        ResourceConfigId = \"...my_resource_config_id...\",\n                    },\n                },\n            },\n        },\n        AwsTransitGateway = new Konnect.Inputs.CloudGatewayTransitGatewayAwsTransitGatewayArgs\n        {\n            CidrBlocks = new[]\n            {\n                \"10.0.0.0/8\",\n                \"100.64.0.0/10\",\n                \"172.16.0.0/12\",\n            },\n            DnsConfigs = new[]\n            {\n                new Konnect.Inputs.CloudGatewayTransitGatewayAwsTransitGatewayDnsConfigArgs\n                {\n                    DomainProxyLists = new[]\n                    {\n                        \"foobar.com\",\n                    },\n                    RemoteDnsServerIpAddresses = new[]\n                    {\n                        \"10.0.0.2\",\n                    },\n                },\n            },\n            Name = \"us-east-2 transit gateway\",\n            TransitGatewayAttachmentConfig = new Konnect.Inputs.CloudGatewayTransitGatewayAwsTransitGatewayTransitGatewayAttachmentConfigArgs\n            {\n                Kind = \"aws-transit-gateway-attachment\",\n                RamShareArn = \"...my_ram_share_arn...\",\n                TransitGatewayId = \"...my_transit_gateway_id...\",\n            },\n        },\n        AwsVpcPeeringGateway = new Konnect.Inputs.CloudGatewayTransitGatewayAwsVpcPeeringGatewayArgs\n        {\n            CidrBlocks = new[]\n            {\n                \"10.0.0.0/8\",\n                \"100.64.0.0/10\",\n                \"172.16.0.0/12\",\n            },\n            DnsConfigs = new[]\n            {\n                new Konnect.Inputs.CloudGatewayTransitGatewayAwsVpcPeeringGatewayDnsConfigArgs\n                {\n                    DomainProxyLists = new[]\n                    {\n                        \"foobar.com\",\n                    },\n                    RemoteDnsServerIpAddresses = new[]\n                    {\n                        \"10.0.0.2\",\n                    },\n                },\n            },\n            Name = \"us-east-2 transit gateway\",\n            TransitGatewayAttachmentConfig = new Konnect.Inputs.CloudGatewayTransitGatewayAwsVpcPeeringGatewayTransitGatewayAttachmentConfigArgs\n            {\n                Kind = \"aws-vpc-peering-attachment\",\n                PeerAccountId = \"...my_peer_account_id...\",\n                PeerVpcId = \"...my_peer_vpc_id...\",\n                PeerVpcRegion = \"...my_peer_vpc_region...\",\n            },\n        },\n        AzureTransitGateway = new Konnect.Inputs.CloudGatewayTransitGatewayAzureTransitGatewayArgs\n        {\n            DnsConfigs = new[]\n            {\n                new Konnect.Inputs.CloudGatewayTransitGatewayAzureTransitGatewayDnsConfigArgs\n                {\n                    DomainProxyLists = new[]\n                    {\n                        \"foobar.com\",\n                    },\n                    RemoteDnsServerIpAddresses = new[]\n                    {\n                        \"10.0.0.2\",\n                    },\n                },\n            },\n            Name = \"us-east-2 transit gateway\",\n            TransitGatewayAttachmentConfig = new Konnect.Inputs.CloudGatewayTransitGatewayAzureTransitGatewayTransitGatewayAttachmentConfigArgs\n            {\n                Kind = \"azure-vnet-peering-attachment\",\n                ResourceGroupName = \"...my_resource_group_name...\",\n                SubscriptionId = \"...my_subscription_id...\",\n                TenantId = \"...my_tenant_id...\",\n                VnetName = \"...my_vnet_name...\",\n            },\n        },\n        AzureVhubPeeringGateway = new Konnect.Inputs.CloudGatewayTransitGatewayAzureVhubPeeringGatewayArgs\n        {\n            DnsConfigs = new[]\n            {\n                new Konnect.Inputs.CloudGatewayTransitGatewayAzureVhubPeeringGatewayDnsConfigArgs\n                {\n                    DomainProxyLists = new[]\n                    {\n                        \"foobar.com\",\n                    },\n                    RemoteDnsServerIpAddresses = new[]\n                    {\n                        \"10.0.0.2\",\n                    },\n                },\n            },\n            Name = \"us-east-2 transit gateway\",\n        },\n        GcpVpcPeeringTransitGateway = new Konnect.Inputs.CloudGatewayTransitGatewayGcpVpcPeeringTransitGatewayArgs\n        {\n            DnsConfigs = new[]\n            {\n                new Konnect.Inputs.CloudGatewayTransitGatewayGcpVpcPeeringTransitGatewayDnsConfigArgs\n                {\n                    DomainProxyLists = new[]\n                    {\n                        \"foobar.com\",\n                    },\n                    RemoteDnsServerIpAddresses = new[]\n                    {\n                        \"10.0.0.2\",\n                    },\n                },\n            },\n            Name = \"us-east-2 transit gateway\",\n            TransitGatewayAttachmentConfig = new Konnect.Inputs.CloudGatewayTransitGatewayGcpVpcPeeringTransitGatewayTransitGatewayAttachmentConfigArgs\n            {\n                Kind = \"gcp-vpc-peering-attachment\",\n                PeerProjectId = \"...my_peer_project_id...\",\n                PeerVpcName = \"...my_peer_vpc_name...\",\n            },\n        },\n        NetworkId = \"36ae63d3-efd1-4bec-b246-62aa5d3f5695\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewCloudGatewayTransitGateway(ctx, \"my_cloudgatewaytransitgateway\", \u0026konnect.CloudGatewayTransitGatewayArgs{\n\t\t\tAwsResourceEndpointGateway: \u0026konnect.CloudGatewayTransitGatewayAwsResourceEndpointGatewayArgs{\n\t\t\t\tDnsConfigs: konnect.CloudGatewayTransitGatewayAwsResourceEndpointGatewayDnsConfigArray{\n\t\t\t\t\t\u0026konnect.CloudGatewayTransitGatewayAwsResourceEndpointGatewayDnsConfigArgs{\n\t\t\t\t\t\tDomainProxyLists: pulumi.StringArray{\n\t\t\t\t\t\t\tpulumi.String(\"foobar.com\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\tRemoteDnsServerIpAddresses: pulumi.StringArray{\n\t\t\t\t\t\t\tpulumi.String(\"10.0.0.2\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tName: pulumi.String(\"us-east-2 transit gateway\"),\n\t\t\t\tTransitGatewayAttachmentConfig: \u0026konnect.CloudGatewayTransitGatewayAwsResourceEndpointGatewayTransitGatewayAttachmentConfigArgs{\n\t\t\t\t\tKind:        pulumi.String(\"aws-resource-endpoint-attachment\"),\n\t\t\t\t\tRamShareArn: pulumi.String(\"...my_ram_share_arn...\"),\n\t\t\t\t\tResourceConfigs: konnect.CloudGatewayTransitGatewayAwsResourceEndpointGatewayTransitGatewayAttachmentConfigResourceConfigArray{\n\t\t\t\t\t\t\u0026konnect.CloudGatewayTransitGatewayAwsResourceEndpointGatewayTransitGatewayAttachmentConfigResourceConfigArgs{\n\t\t\t\t\t\t\tDomainName:       pulumi.String(\"...my_domain_name...\"),\n\t\t\t\t\t\t\tResourceConfigId: pulumi.String(\"...my_resource_config_id...\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tAwsTransitGateway: \u0026konnect.CloudGatewayTransitGatewayAwsTransitGatewayArgs{\n\t\t\t\tCidrBlocks: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"10.0.0.0/8\"),\n\t\t\t\t\tpulumi.String(\"100.64.0.0/10\"),\n\t\t\t\t\tpulumi.String(\"172.16.0.0/12\"),\n\t\t\t\t},\n\t\t\t\tDnsConfigs: konnect.CloudGatewayTransitGatewayAwsTransitGatewayDnsConfigArray{\n\t\t\t\t\t\u0026konnect.CloudGatewayTransitGatewayAwsTransitGatewayDnsConfigArgs{\n\t\t\t\t\t\tDomainProxyLists: pulumi.StringArray{\n\t\t\t\t\t\t\tpulumi.String(\"foobar.com\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\tRemoteDnsServerIpAddresses: pulumi.StringArray{\n\t\t\t\t\t\t\tpulumi.String(\"10.0.0.2\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tName: pulumi.String(\"us-east-2 transit gateway\"),\n\t\t\t\tTransitGatewayAttachmentConfig: \u0026konnect.CloudGatewayTransitGatewayAwsTransitGatewayTransitGatewayAttachmentConfigArgs{\n\t\t\t\t\tKind:             pulumi.String(\"aws-transit-gateway-attachment\"),\n\t\t\t\t\tRamShareArn:      pulumi.String(\"...my_ram_share_arn...\"),\n\t\t\t\t\tTransitGatewayId: pulumi.String(\"...my_transit_gateway_id...\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tAwsVpcPeeringGateway: \u0026konnect.CloudGatewayTransitGatewayAwsVpcPeeringGatewayArgs{\n\t\t\t\tCidrBlocks: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"10.0.0.0/8\"),\n\t\t\t\t\tpulumi.String(\"100.64.0.0/10\"),\n\t\t\t\t\tpulumi.String(\"172.16.0.0/12\"),\n\t\t\t\t},\n\t\t\t\tDnsConfigs: konnect.CloudGatewayTransitGatewayAwsVpcPeeringGatewayDnsConfigArray{\n\t\t\t\t\t\u0026konnect.CloudGatewayTransitGatewayAwsVpcPeeringGatewayDnsConfigArgs{\n\t\t\t\t\t\tDomainProxyLists: pulumi.StringArray{\n\t\t\t\t\t\t\tpulumi.String(\"foobar.com\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\tRemoteDnsServerIpAddresses: pulumi.StringArray{\n\t\t\t\t\t\t\tpulumi.String(\"10.0.0.2\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tName: pulumi.String(\"us-east-2 transit gateway\"),\n\t\t\t\tTransitGatewayAttachmentConfig: \u0026konnect.CloudGatewayTransitGatewayAwsVpcPeeringGatewayTransitGatewayAttachmentConfigArgs{\n\t\t\t\t\tKind:          pulumi.String(\"aws-vpc-peering-attachment\"),\n\t\t\t\t\tPeerAccountId: pulumi.String(\"...my_peer_account_id...\"),\n\t\t\t\t\tPeerVpcId:     pulumi.String(\"...my_peer_vpc_id...\"),\n\t\t\t\t\tPeerVpcRegion: pulumi.String(\"...my_peer_vpc_region...\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tAzureTransitGateway: \u0026konnect.CloudGatewayTransitGatewayAzureTransitGatewayArgs{\n\t\t\t\tDnsConfigs: konnect.CloudGatewayTransitGatewayAzureTransitGatewayDnsConfigArray{\n\t\t\t\t\t\u0026konnect.CloudGatewayTransitGatewayAzureTransitGatewayDnsConfigArgs{\n\t\t\t\t\t\tDomainProxyLists: pulumi.StringArray{\n\t\t\t\t\t\t\tpulumi.String(\"foobar.com\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\tRemoteDnsServerIpAddresses: pulumi.StringArray{\n\t\t\t\t\t\t\tpulumi.String(\"10.0.0.2\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tName: pulumi.String(\"us-east-2 transit gateway\"),\n\t\t\t\tTransitGatewayAttachmentConfig: \u0026konnect.CloudGatewayTransitGatewayAzureTransitGatewayTransitGatewayAttachmentConfigArgs{\n\t\t\t\t\tKind:              pulumi.String(\"azure-vnet-peering-attachment\"),\n\t\t\t\t\tResourceGroupName: pulumi.String(\"...my_resource_group_name...\"),\n\t\t\t\t\tSubscriptionId:    pulumi.String(\"...my_subscription_id...\"),\n\t\t\t\t\tTenantId:          pulumi.String(\"...my_tenant_id...\"),\n\t\t\t\t\tVnetName:          pulumi.String(\"...my_vnet_name...\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tAzureVhubPeeringGateway: \u0026konnect.CloudGatewayTransitGatewayAzureVhubPeeringGatewayArgs{\n\t\t\t\tDnsConfigs: konnect.CloudGatewayTransitGatewayAzureVhubPeeringGatewayDnsConfigArray{\n\t\t\t\t\t\u0026konnect.CloudGatewayTransitGatewayAzureVhubPeeringGatewayDnsConfigArgs{\n\t\t\t\t\t\tDomainProxyLists: pulumi.StringArray{\n\t\t\t\t\t\t\tpulumi.String(\"foobar.com\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\tRemoteDnsServerIpAddresses: pulumi.StringArray{\n\t\t\t\t\t\t\tpulumi.String(\"10.0.0.2\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tName: pulumi.String(\"us-east-2 transit gateway\"),\n\t\t\t},\n\t\t\tGcpVpcPeeringTransitGateway: \u0026konnect.CloudGatewayTransitGatewayGcpVpcPeeringTransitGatewayArgs{\n\t\t\t\tDnsConfigs: konnect.CloudGatewayTransitGatewayGcpVpcPeeringTransitGatewayDnsConfigArray{\n\t\t\t\t\t\u0026konnect.CloudGatewayTransitGatewayGcpVpcPeeringTransitGatewayDnsConfigArgs{\n\t\t\t\t\t\tDomainProxyLists: pulumi.StringArray{\n\t\t\t\t\t\t\tpulumi.String(\"foobar.com\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\tRemoteDnsServerIpAddresses: pulumi.StringArray{\n\t\t\t\t\t\t\tpulumi.String(\"10.0.0.2\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tName: pulumi.String(\"us-east-2 transit gateway\"),\n\t\t\t\tTransitGatewayAttachmentConfig: \u0026konnect.CloudGatewayTransitGatewayGcpVpcPeeringTransitGatewayTransitGatewayAttachmentConfigArgs{\n\t\t\t\t\tKind:          pulumi.String(\"gcp-vpc-peering-attachment\"),\n\t\t\t\t\tPeerProjectId: pulumi.String(\"...my_peer_project_id...\"),\n\t\t\t\t\tPeerVpcName:   pulumi.String(\"...my_peer_vpc_name...\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tNetworkId: pulumi.String(\"36ae63d3-efd1-4bec-b246-62aa5d3f5695\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.CloudGatewayTransitGateway;\nimport com.pulumi.konnect.CloudGatewayTransitGatewayArgs;\nimport com.pulumi.konnect.inputs.CloudGatewayTransitGatewayAwsResourceEndpointGatewayArgs;\nimport com.pulumi.konnect.inputs.CloudGatewayTransitGatewayAwsResourceEndpointGatewayTransitGatewayAttachmentConfigArgs;\nimport com.pulumi.konnect.inputs.CloudGatewayTransitGatewayAwsTransitGatewayArgs;\nimport com.pulumi.konnect.inputs.CloudGatewayTransitGatewayAwsTransitGatewayTransitGatewayAttachmentConfigArgs;\nimport com.pulumi.konnect.inputs.CloudGatewayTransitGatewayAwsVpcPeeringGatewayArgs;\nimport com.pulumi.konnect.inputs.CloudGatewayTransitGatewayAwsVpcPeeringGatewayTransitGatewayAttachmentConfigArgs;\nimport com.pulumi.konnect.inputs.CloudGatewayTransitGatewayAzureTransitGatewayArgs;\nimport com.pulumi.konnect.inputs.CloudGatewayTransitGatewayAzureTransitGatewayTransitGatewayAttachmentConfigArgs;\nimport com.pulumi.konnect.inputs.CloudGatewayTransitGatewayAzureVhubPeeringGatewayArgs;\nimport com.pulumi.konnect.inputs.CloudGatewayTransitGatewayGcpVpcPeeringTransitGatewayArgs;\nimport com.pulumi.konnect.inputs.CloudGatewayTransitGatewayGcpVpcPeeringTransitGatewayTransitGatewayAttachmentConfigArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myCloudgatewaytransitgateway = new CloudGatewayTransitGateway(\"myCloudgatewaytransitgateway\", CloudGatewayTransitGatewayArgs.builder()\n            .awsResourceEndpointGateway(CloudGatewayTransitGatewayAwsResourceEndpointGatewayArgs.builder()\n                .dnsConfigs(CloudGatewayTransitGatewayAwsResourceEndpointGatewayDnsConfigArgs.builder()\n                    .domainProxyLists(\"foobar.com\")\n                    .remoteDnsServerIpAddresses(\"10.0.0.2\")\n                    .build())\n                .name(\"us-east-2 transit gateway\")\n                .transitGatewayAttachmentConfig(CloudGatewayTransitGatewayAwsResourceEndpointGatewayTransitGatewayAttachmentConfigArgs.builder()\n                    .kind(\"aws-resource-endpoint-attachment\")\n                    .ramShareArn(\"...my_ram_share_arn...\")\n                    .resourceConfigs(CloudGatewayTransitGatewayAwsResourceEndpointGatewayTransitGatewayAttachmentConfigResourceConfigArgs.builder()\n                        .domainName(\"...my_domain_name...\")\n                        .resourceConfigId(\"...my_resource_config_id...\")\n                        .build())\n                    .build())\n                .build())\n            .awsTransitGateway(CloudGatewayTransitGatewayAwsTransitGatewayArgs.builder()\n                .cidrBlocks(                \n                    \"10.0.0.0/8\",\n                    \"100.64.0.0/10\",\n                    \"172.16.0.0/12\")\n                .dnsConfigs(CloudGatewayTransitGatewayAwsTransitGatewayDnsConfigArgs.builder()\n                    .domainProxyLists(\"foobar.com\")\n                    .remoteDnsServerIpAddresses(\"10.0.0.2\")\n                    .build())\n                .name(\"us-east-2 transit gateway\")\n                .transitGatewayAttachmentConfig(CloudGatewayTransitGatewayAwsTransitGatewayTransitGatewayAttachmentConfigArgs.builder()\n                    .kind(\"aws-transit-gateway-attachment\")\n                    .ramShareArn(\"...my_ram_share_arn...\")\n                    .transitGatewayId(\"...my_transit_gateway_id...\")\n                    .build())\n                .build())\n            .awsVpcPeeringGateway(CloudGatewayTransitGatewayAwsVpcPeeringGatewayArgs.builder()\n                .cidrBlocks(                \n                    \"10.0.0.0/8\",\n                    \"100.64.0.0/10\",\n                    \"172.16.0.0/12\")\n                .dnsConfigs(CloudGatewayTransitGatewayAwsVpcPeeringGatewayDnsConfigArgs.builder()\n                    .domainProxyLists(\"foobar.com\")\n                    .remoteDnsServerIpAddresses(\"10.0.0.2\")\n                    .build())\n                .name(\"us-east-2 transit gateway\")\n                .transitGatewayAttachmentConfig(CloudGatewayTransitGatewayAwsVpcPeeringGatewayTransitGatewayAttachmentConfigArgs.builder()\n                    .kind(\"aws-vpc-peering-attachment\")\n                    .peerAccountId(\"...my_peer_account_id...\")\n                    .peerVpcId(\"...my_peer_vpc_id...\")\n                    .peerVpcRegion(\"...my_peer_vpc_region...\")\n                    .build())\n                .build())\n            .azureTransitGateway(CloudGatewayTransitGatewayAzureTransitGatewayArgs.builder()\n                .dnsConfigs(CloudGatewayTransitGatewayAzureTransitGatewayDnsConfigArgs.builder()\n                    .domainProxyLists(\"foobar.com\")\n                    .remoteDnsServerIpAddresses(\"10.0.0.2\")\n                    .build())\n                .name(\"us-east-2 transit gateway\")\n                .transitGatewayAttachmentConfig(CloudGatewayTransitGatewayAzureTransitGatewayTransitGatewayAttachmentConfigArgs.builder()\n                    .kind(\"azure-vnet-peering-attachment\")\n                    .resourceGroupName(\"...my_resource_group_name...\")\n                    .subscriptionId(\"...my_subscription_id...\")\n                    .tenantId(\"...my_tenant_id...\")\n                    .vnetName(\"...my_vnet_name...\")\n                    .build())\n                .build())\n            .azureVhubPeeringGateway(CloudGatewayTransitGatewayAzureVhubPeeringGatewayArgs.builder()\n                .dnsConfigs(CloudGatewayTransitGatewayAzureVhubPeeringGatewayDnsConfigArgs.builder()\n                    .domainProxyLists(\"foobar.com\")\n                    .remoteDnsServerIpAddresses(\"10.0.0.2\")\n                    .build())\n                .name(\"us-east-2 transit gateway\")\n                .build())\n            .gcpVpcPeeringTransitGateway(CloudGatewayTransitGatewayGcpVpcPeeringTransitGatewayArgs.builder()\n                .dnsConfigs(CloudGatewayTransitGatewayGcpVpcPeeringTransitGatewayDnsConfigArgs.builder()\n                    .domainProxyLists(\"foobar.com\")\n                    .remoteDnsServerIpAddresses(\"10.0.0.2\")\n                    .build())\n                .name(\"us-east-2 transit gateway\")\n                .transitGatewayAttachmentConfig(CloudGatewayTransitGatewayGcpVpcPeeringTransitGatewayTransitGatewayAttachmentConfigArgs.builder()\n                    .kind(\"gcp-vpc-peering-attachment\")\n                    .peerProjectId(\"...my_peer_project_id...\")\n                    .peerVpcName(\"...my_peer_vpc_name...\")\n                    .build())\n                .build())\n            .networkId(\"36ae63d3-efd1-4bec-b246-62aa5d3f5695\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myCloudgatewaytransitgateway:\n    type: konnect:CloudGatewayTransitGateway\n    name: my_cloudgatewaytransitgateway\n    properties:\n      awsResourceEndpointGateway:\n        dnsConfigs:\n          - domainProxyLists:\n              - foobar.com\n            remoteDnsServerIpAddresses:\n              - 10.0.0.2\n        name: us-east-2 transit gateway\n        transitGatewayAttachmentConfig:\n          kind: aws-resource-endpoint-attachment\n          ramShareArn: '...my_ram_share_arn...'\n          resourceConfigs:\n            - domainName: '...my_domain_name...'\n              resourceConfigId: '...my_resource_config_id...'\n      awsTransitGateway:\n        cidrBlocks:\n          - 10.0.0.0/8\n          - 100.64.0.0/10\n          - 172.16.0.0/12\n        dnsConfigs:\n          - domainProxyLists:\n              - foobar.com\n            remoteDnsServerIpAddresses:\n              - 10.0.0.2\n        name: us-east-2 transit gateway\n        transitGatewayAttachmentConfig:\n          kind: aws-transit-gateway-attachment\n          ramShareArn: '...my_ram_share_arn...'\n          transitGatewayId: '...my_transit_gateway_id...'\n      awsVpcPeeringGateway:\n        cidrBlocks:\n          - 10.0.0.0/8\n          - 100.64.0.0/10\n          - 172.16.0.0/12\n        dnsConfigs:\n          - domainProxyLists:\n              - foobar.com\n            remoteDnsServerIpAddresses:\n              - 10.0.0.2\n        name: us-east-2 transit gateway\n        transitGatewayAttachmentConfig:\n          kind: aws-vpc-peering-attachment\n          peerAccountId: '...my_peer_account_id...'\n          peerVpcId: '...my_peer_vpc_id...'\n          peerVpcRegion: '...my_peer_vpc_region...'\n      azureTransitGateway:\n        dnsConfigs:\n          - domainProxyLists:\n              - foobar.com\n            remoteDnsServerIpAddresses:\n              - 10.0.0.2\n        name: us-east-2 transit gateway\n        transitGatewayAttachmentConfig:\n          kind: azure-vnet-peering-attachment\n          resourceGroupName: '...my_resource_group_name...'\n          subscriptionId: '...my_subscription_id...'\n          tenantId: '...my_tenant_id...'\n          vnetName: '...my_vnet_name...'\n      azureVhubPeeringGateway:\n        dnsConfigs:\n          - domainProxyLists:\n              - foobar.com\n            remoteDnsServerIpAddresses:\n              - 10.0.0.2\n        name: us-east-2 transit gateway\n      gcpVpcPeeringTransitGateway:\n        dnsConfigs:\n          - domainProxyLists:\n              - foobar.com\n            remoteDnsServerIpAddresses:\n              - 10.0.0.2\n        name: us-east-2 transit gateway\n        transitGatewayAttachmentConfig:\n          kind: gcp-vpc-peering-attachment\n          peerProjectId: '...my_peer_project_id...'\n          peerVpcName: '...my_peer_vpc_name...'\n      networkId: 36ae63d3-efd1-4bec-b246-62aa5d3f5695\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_cloud_gateway_transit_gateway.my_konnect_cloud_gateway_transit_gateway\n\n  id = jsonencode({\n\n    id = \"0850820b-d153-4a2a-b9be-7d2204779139\"\n\n    network_id = \"36ae63d3-efd1-4bec-b246-62aa5d3f5695\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/cloudGatewayTransitGateway:CloudGatewayTransitGateway my_konnect_cloud_gateway_transit_gateway '{\"id\": \"0850820b-d153-4a2a-b9be-7d2204779139\", \"network_id\": \"36ae63d3-efd1-4bec-b246-62aa5d3f5695\"}'\n```\n\n","properties":{"awsResourceEndpointGateway":{"$ref":"#/types/konnect:index%2FCloudGatewayTransitGatewayAwsResourceEndpointGateway:CloudGatewayTransitGatewayAwsResourceEndpointGateway","description":"Request schema for updating AWS Resource Endpoint.\n"},"awsResourceEndpointGatewayResponse":{"$ref":"#/types/konnect:index%2FCloudGatewayTransitGatewayAwsResourceEndpointGatewayResponse:CloudGatewayTransitGatewayAwsResourceEndpointGatewayResponse"},"awsTransitGateway":{"$ref":"#/types/konnect:index%2FCloudGatewayTransitGatewayAwsTransitGateway:CloudGatewayTransitGatewayAwsTransitGateway","description":"Request schema for updating AWS Transit Gateway\n"},"awsTransitGatewayResponse":{"$ref":"#/types/konnect:index%2FCloudGatewayTransitGatewayAwsTransitGatewayResponse:CloudGatewayTransitGatewayAwsTransitGatewayResponse"},"awsVpcPeeringGateway":{"$ref":"#/types/konnect:index%2FCloudGatewayTransitGatewayAwsVpcPeeringGateway:CloudGatewayTransitGatewayAwsVpcPeeringGateway","description":"Requires replacement if changed.\n"},"awsVpcPeeringGatewayResponse":{"$ref":"#/types/konnect:index%2FCloudGatewayTransitGatewayAwsVpcPeeringGatewayResponse:CloudGatewayTransitGatewayAwsVpcPeeringGatewayResponse"},"azureTransitGateway":{"$ref":"#/types/konnect:index%2FCloudGatewayTransitGatewayAzureTransitGateway:CloudGatewayTransitGatewayAzureTransitGateway","description":"Requires replacement if changed.\n"},"azureTransitGatewayResponse":{"$ref":"#/types/konnect:index%2FCloudGatewayTransitGatewayAzureTransitGatewayResponse:CloudGatewayTransitGatewayAzureTransitGatewayResponse"},"azureVhubPeeringGateway":{"$ref":"#/types/konnect:index%2FCloudGatewayTransitGatewayAzureVhubPeeringGateway:CloudGatewayTransitGatewayAzureVhubPeeringGateway","description":"Requires replacement if changed.\n"},"azureVhubPeeringGatewayResponse":{"$ref":"#/types/konnect:index%2FCloudGatewayTransitGatewayAzureVhubPeeringGatewayResponse:CloudGatewayTransitGatewayAzureVhubPeeringGatewayResponse"},"entityVersion":{"type":"number","description":"Monotonically-increasing version count of the transit gateway, to indicate the order of updates to the\ntransit gateway.\n"},"gcpVpcPeeringTransitGateway":{"$ref":"#/types/konnect:index%2FCloudGatewayTransitGatewayGcpVpcPeeringTransitGateway:CloudGatewayTransitGatewayGcpVpcPeeringTransitGateway","description":"Requires replacement if changed.\n"},"gcpvpcPeeringGatewayResponse":{"$ref":"#/types/konnect:index%2FCloudGatewayTransitGatewayGcpvpcPeeringGatewayResponse:CloudGatewayTransitGatewayGcpvpcPeeringGatewayResponse"},"name":{"type":"string","description":"Human-readable name of the transit gateway.\n"},"networkId":{"type":"string","description":"The network to operate on. Requires replacement if changed.\n"},"state":{"type":"string","description":"The current state of the Transit Gateway. Possible values:\n"}},"type":"object","required":["awsResourceEndpointGatewayResponse","awsTransitGatewayResponse","awsVpcPeeringGatewayResponse","azureTransitGatewayResponse","azureVhubPeeringGatewayResponse","entityVersion","gcpvpcPeeringGatewayResponse","name","networkId","state"],"inputProperties":{"awsResourceEndpointGateway":{"$ref":"#/types/konnect:index%2FCloudGatewayTransitGatewayAwsResourceEndpointGateway:CloudGatewayTransitGatewayAwsResourceEndpointGateway","description":"Request schema for updating AWS Resource Endpoint.\n"},"awsTransitGateway":{"$ref":"#/types/konnect:index%2FCloudGatewayTransitGatewayAwsTransitGateway:CloudGatewayTransitGatewayAwsTransitGateway","description":"Request schema for updating AWS Transit Gateway\n"},"awsVpcPeeringGateway":{"$ref":"#/types/konnect:index%2FCloudGatewayTransitGatewayAwsVpcPeeringGateway:CloudGatewayTransitGatewayAwsVpcPeeringGateway","description":"Requires replacement if changed.\n"},"azureTransitGateway":{"$ref":"#/types/konnect:index%2FCloudGatewayTransitGatewayAzureTransitGateway:CloudGatewayTransitGatewayAzureTransitGateway","description":"Requires replacement if changed.\n"},"azureVhubPeeringGateway":{"$ref":"#/types/konnect:index%2FCloudGatewayTransitGatewayAzureVhubPeeringGateway:CloudGatewayTransitGatewayAzureVhubPeeringGateway","description":"Requires replacement if changed.\n"},"gcpVpcPeeringTransitGateway":{"$ref":"#/types/konnect:index%2FCloudGatewayTransitGatewayGcpVpcPeeringTransitGateway:CloudGatewayTransitGatewayGcpVpcPeeringTransitGateway","description":"Requires replacement if changed.\n"},"networkId":{"type":"string","description":"The network to operate on. Requires replacement if changed.\n"}},"requiredInputs":["networkId"],"stateInputs":{"description":"Input properties used for looking up and filtering CloudGatewayTransitGateway resources.\n","properties":{"awsResourceEndpointGateway":{"$ref":"#/types/konnect:index%2FCloudGatewayTransitGatewayAwsResourceEndpointGateway:CloudGatewayTransitGatewayAwsResourceEndpointGateway","description":"Request schema for updating AWS Resource Endpoint.\n"},"awsResourceEndpointGatewayResponse":{"$ref":"#/types/konnect:index%2FCloudGatewayTransitGatewayAwsResourceEndpointGatewayResponse:CloudGatewayTransitGatewayAwsResourceEndpointGatewayResponse"},"awsTransitGateway":{"$ref":"#/types/konnect:index%2FCloudGatewayTransitGatewayAwsTransitGateway:CloudGatewayTransitGatewayAwsTransitGateway","description":"Request schema for updating AWS Transit Gateway\n"},"awsTransitGatewayResponse":{"$ref":"#/types/konnect:index%2FCloudGatewayTransitGatewayAwsTransitGatewayResponse:CloudGatewayTransitGatewayAwsTransitGatewayResponse"},"awsVpcPeeringGateway":{"$ref":"#/types/konnect:index%2FCloudGatewayTransitGatewayAwsVpcPeeringGateway:CloudGatewayTransitGatewayAwsVpcPeeringGateway","description":"Requires replacement if changed.\n"},"awsVpcPeeringGatewayResponse":{"$ref":"#/types/konnect:index%2FCloudGatewayTransitGatewayAwsVpcPeeringGatewayResponse:CloudGatewayTransitGatewayAwsVpcPeeringGatewayResponse"},"azureTransitGateway":{"$ref":"#/types/konnect:index%2FCloudGatewayTransitGatewayAzureTransitGateway:CloudGatewayTransitGatewayAzureTransitGateway","description":"Requires replacement if changed.\n"},"azureTransitGatewayResponse":{"$ref":"#/types/konnect:index%2FCloudGatewayTransitGatewayAzureTransitGatewayResponse:CloudGatewayTransitGatewayAzureTransitGatewayResponse"},"azureVhubPeeringGateway":{"$ref":"#/types/konnect:index%2FCloudGatewayTransitGatewayAzureVhubPeeringGateway:CloudGatewayTransitGatewayAzureVhubPeeringGateway","description":"Requires replacement if changed.\n"},"azureVhubPeeringGatewayResponse":{"$ref":"#/types/konnect:index%2FCloudGatewayTransitGatewayAzureVhubPeeringGatewayResponse:CloudGatewayTransitGatewayAzureVhubPeeringGatewayResponse"},"entityVersion":{"type":"number","description":"Monotonically-increasing version count of the transit gateway, to indicate the order of updates to the\ntransit gateway.\n"},"gcpVpcPeeringTransitGateway":{"$ref":"#/types/konnect:index%2FCloudGatewayTransitGatewayGcpVpcPeeringTransitGateway:CloudGatewayTransitGatewayGcpVpcPeeringTransitGateway","description":"Requires replacement if changed.\n"},"gcpvpcPeeringGatewayResponse":{"$ref":"#/types/konnect:index%2FCloudGatewayTransitGatewayGcpvpcPeeringGatewayResponse:CloudGatewayTransitGatewayGcpvpcPeeringGatewayResponse"},"name":{"type":"string","description":"Human-readable name of the transit gateway.\n"},"networkId":{"type":"string","description":"The network to operate on. Requires replacement if changed.\n"},"state":{"type":"string","description":"The current state of the Transit Gateway. Possible values:\n"}},"type":"object"}},"konnect:index/cmek:Cmek":{"description":"Cmek Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myCmek = new konnect.Cmek(\"my_cmek\", {\n    description: \"My Key Description\",\n    cmekId: \"default\",\n    keyArn: \"arn:aws:kms:us-east-1:123456789012:key/mrk-12345678123412341234123456789012\",\n    name: \"My KMS Key\",\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_cmek = konnect.Cmek(\"my_cmek\",\n    description=\"My Key Description\",\n    cmek_id=\"default\",\n    key_arn=\"arn:aws:kms:us-east-1:123456789012:key/mrk-12345678123412341234123456789012\",\n    name=\"My KMS Key\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myCmek = new Konnect.Cmek(\"my_cmek\", new()\n    {\n        Description = \"My Key Description\",\n        CmekId = \"default\",\n        KeyArn = \"arn:aws:kms:us-east-1:123456789012:key/mrk-12345678123412341234123456789012\",\n        Name = \"My KMS Key\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewCmek(ctx, \"my_cmek\", \u0026konnect.CmekArgs{\n\t\t\tDescription: pulumi.String(\"My Key Description\"),\n\t\t\tCmekId:      pulumi.String(\"default\"),\n\t\t\tKeyArn:      pulumi.String(\"arn:aws:kms:us-east-1:123456789012:key/mrk-12345678123412341234123456789012\"),\n\t\t\tName:        pulumi.String(\"My KMS Key\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.Cmek;\nimport com.pulumi.konnect.CmekArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myCmek = new Cmek(\"myCmek\", CmekArgs.builder()\n            .description(\"My Key Description\")\n            .cmekId(\"default\")\n            .keyArn(\"arn:aws:kms:us-east-1:123456789012:key/mrk-12345678123412341234123456789012\")\n            .name(\"My KMS Key\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myCmek:\n    type: konnect:Cmek\n    name: my_cmek\n    properties:\n      description: My Key Description\n      cmekId: default\n      keyArn: arn:aws:kms:us-east-1:123456789012:key/mrk-12345678123412341234123456789012\n      name: My KMS Key\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_cmek.my_konnect_cmek\n\n  id = \"default\"\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/cmek:Cmek my_konnect_cmek \"default\"\n```\n\n","properties":{"cmekId":{"type":"string","description":"Customer Managed Encryption Key identifier. This ID is selected from a predefined, Konnect-specific list of allowed values and uniquely identifies a CMEK configuration within a given organization and Konnect region. While not global in function, these IDs behave like scoped namespaces with enforced uniqueness and enumeration constraints. Default: \"default\"; must be \"default\"\n"},"createdAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity creation date.\n"},"description":{"type":"string","description":"An optional description of the CMEK.\n"},"keyArn":{"type":"string","description":"The Amazon Resource Name (ARN) of the Key Management Service (KMS) key to use for encryption and decryption. We recommend using one multi-region key (MRK) per Konnect region to enhance security and compliance, while also supporting failover to other AWS regions.\n"},"name":{"type":"string","description":"The name of the CMEK. We recommend you match the key's name used in KMS.\n"},"updatedAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity update date.\n"}},"type":"object","required":["cmekId","createdAt","description","keyArn","name","updatedAt"],"inputProperties":{"cmekId":{"type":"string","description":"Customer Managed Encryption Key identifier. This ID is selected from a predefined, Konnect-specific list of allowed values and uniquely identifies a CMEK configuration within a given organization and Konnect region. While not global in function, these IDs behave like scoped namespaces with enforced uniqueness and enumeration constraints. Default: \"default\"; must be \"default\"\n"},"description":{"type":"string","description":"An optional description of the CMEK.\n"},"keyArn":{"type":"string","description":"The Amazon Resource Name (ARN) of the Key Management Service (KMS) key to use for encryption and decryption. We recommend using one multi-region key (MRK) per Konnect region to enhance security and compliance, while also supporting failover to other AWS regions.\n"},"name":{"type":"string","description":"The name of the CMEK. We recommend you match the key's name used in KMS.\n"}},"requiredInputs":["keyArn"],"stateInputs":{"description":"Input properties used for looking up and filtering Cmek resources.\n","properties":{"cmekId":{"type":"string","description":"Customer Managed Encryption Key identifier. This ID is selected from a predefined, Konnect-specific list of allowed values and uniquely identifies a CMEK configuration within a given organization and Konnect region. While not global in function, these IDs behave like scoped namespaces with enforced uniqueness and enumeration constraints. Default: \"default\"; must be \"default\"\n"},"createdAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity creation date.\n"},"description":{"type":"string","description":"An optional description of the CMEK.\n"},"keyArn":{"type":"string","description":"The Amazon Resource Name (ARN) of the Key Management Service (KMS) key to use for encryption and decryption. We recommend using one multi-region key (MRK) per Konnect region to enhance security and compliance, while also supporting failover to other AWS regions.\n"},"name":{"type":"string","description":"The name of the CMEK. We recommend you match the key's name used in KMS.\n"},"updatedAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity update date.\n"}},"type":"object"}},"konnect:index/eventGateway:EventGateway":{"description":"EventGateway Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myEventgateway = new konnect.EventGateway(\"my_eventgateway\", {\n    description: \"...my_description...\",\n    labels: {\n        key: \"value\",\n    },\n    minRuntimeVersion: \"1.1\",\n    name: \"...my_name...\",\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_eventgateway = konnect.EventGateway(\"my_eventgateway\",\n    description=\"...my_description...\",\n    labels={\n        \"key\": \"value\",\n    },\n    min_runtime_version=\"1.1\",\n    name=\"...my_name...\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myEventgateway = new Konnect.EventGateway(\"my_eventgateway\", new()\n    {\n        Description = \"...my_description...\",\n        Labels = \n        {\n            { \"key\", \"value\" },\n        },\n        MinRuntimeVersion = \"1.1\",\n        Name = \"...my_name...\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewEventGateway(ctx, \"my_eventgateway\", \u0026konnect.EventGatewayArgs{\n\t\t\tDescription: pulumi.String(\"...my_description...\"),\n\t\t\tLabels: pulumi.StringMap{\n\t\t\t\t\"key\": pulumi.String(\"value\"),\n\t\t\t},\n\t\t\tMinRuntimeVersion: pulumi.String(\"1.1\"),\n\t\t\tName:              pulumi.String(\"...my_name...\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.EventGateway;\nimport com.pulumi.konnect.EventGatewayArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myEventgateway = new EventGateway(\"myEventgateway\", EventGatewayArgs.builder()\n            .description(\"...my_description...\")\n            .labels(Map.of(\"key\", \"value\"))\n            .minRuntimeVersion(\"1.1\")\n            .name(\"...my_name...\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myEventgateway:\n    type: konnect:EventGateway\n    name: my_eventgateway\n    properties:\n      description: '...my_description...'\n      labels:\n        key: value\n      minRuntimeVersion: '1.1'\n      name: '...my_name...'\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_event_gateway.my_konnect_event_gateway\n\n  id = \"7f9fd312-a987-4628-b4c5-bb4f4fddd5f7\"\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/eventGateway:EventGateway my_konnect_event_gateway \"7f9fd312-a987-4628-b4c5-bb4f4fddd5f7\"\n```\n\n","properties":{"description":{"type":"string","description":"A human-readable description of the Gateway.\n"},"labels":{"type":"object","additionalProperties":{"type":"string"},"description":"Labels store metadata of an entity that can be used for filtering an entity list or for searching across entity types.\n"},"minRuntimeVersion":{"type":"string","description":"The minimum runtime version supported by the API. This is the lowest version of the data plane\nrelease that can be used with the entity model.\nWhen not specified, the minimum runtime version will be pinned to the latest available release."},"name":{"type":"string","description":"The name of the Gateway.\n"},"nodesTotal":{"type":"number","description":"The total number of nodes associated with the Event Gateway."},"version":{"type":"string","description":"The version number of the event gateway. Every change to an entity\nunder this gateway will modify the version."},"virtualClustersTotal":{"type":"number","description":"The total number of virtual clusters associated with the Event Gateway."}},"type":"object","required":["description","labels","minRuntimeVersion","name","nodesTotal","version","virtualClustersTotal"],"inputProperties":{"description":{"type":"string","description":"A human-readable description of the Gateway.\n"},"labels":{"type":"object","additionalProperties":{"type":"string"},"description":"Labels store metadata of an entity that can be used for filtering an entity list or for searching across entity types.\n"},"minRuntimeVersion":{"type":"string","description":"The minimum runtime version supported by the API. This is the lowest version of the data plane\nrelease that can be used with the entity model.\nWhen not specified, the minimum runtime version will be pinned to the latest available release."},"name":{"type":"string","description":"The name of the Gateway.\n"}},"stateInputs":{"description":"Input properties used for looking up and filtering EventGateway resources.\n","properties":{"description":{"type":"string","description":"A human-readable description of the Gateway.\n"},"labels":{"type":"object","additionalProperties":{"type":"string"},"description":"Labels store metadata of an entity that can be used for filtering an entity list or for searching across entity types.\n"},"minRuntimeVersion":{"type":"string","description":"The minimum runtime version supported by the API. This is the lowest version of the data plane\nrelease that can be used with the entity model.\nWhen not specified, the minimum runtime version will be pinned to the latest available release."},"name":{"type":"string","description":"The name of the Gateway.\n"},"nodesTotal":{"type":"number","description":"The total number of nodes associated with the Event Gateway."},"version":{"type":"string","description":"The version number of the event gateway. Every change to an entity\nunder this gateway will modify the version."},"virtualClustersTotal":{"type":"number","description":"The total number of virtual clusters associated with the Event Gateway."}},"type":"object"}},"konnect:index/eventGatewayBackendCluster:EventGatewayBackendCluster":{"description":"EventGatewayBackendCluster Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myEventgatewaybackendcluster = new konnect.EventGatewayBackendCluster(\"my_eventgatewaybackendcluster\", {\n    authentication: {\n        saslScram: {\n            algorithm: \"sha256\",\n            password: \"${vault.env['MY_ENV_VAR']}\",\n            username: \"...my_username...\",\n        },\n    },\n    bootstrapServers: [\"...\"],\n    description: \"...my_description...\",\n    gatewayId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    insecureAllowAnonymousVirtualClusterAuth: false,\n    labels: {\n        key: \"value\",\n    },\n    metadataUpdateIntervalSeconds: 22808,\n    name: \"...my_name...\",\n    tls: {\n        caBundle: \"...my_ca_bundle...\",\n        clientIdentity: {\n            certificate: \"...my_certificate...\",\n            key: \"${vault.env['MY_ENV_VAR']}\",\n        },\n        enabled: false,\n        insecureSkipVerify: false,\n        tlsVersions: [\"tls12\"],\n    },\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_eventgatewaybackendcluster = konnect.EventGatewayBackendCluster(\"my_eventgatewaybackendcluster\",\n    authentication={\n        \"sasl_scram\": {\n            \"algorithm\": \"sha256\",\n            \"password\": \"${vault.env['MY_ENV_VAR']}\",\n            \"username\": \"...my_username...\",\n        },\n    },\n    bootstrap_servers=[\"...\"],\n    description=\"...my_description...\",\n    gateway_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    insecure_allow_anonymous_virtual_cluster_auth=False,\n    labels={\n        \"key\": \"value\",\n    },\n    metadata_update_interval_seconds=22808,\n    name=\"...my_name...\",\n    tls={\n        \"ca_bundle\": \"...my_ca_bundle...\",\n        \"client_identity\": {\n            \"certificate\": \"...my_certificate...\",\n            \"key\": \"${vault.env['MY_ENV_VAR']}\",\n        },\n        \"enabled\": False,\n        \"insecure_skip_verify\": False,\n        \"tls_versions\": [\"tls12\"],\n    })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myEventgatewaybackendcluster = new Konnect.EventGatewayBackendCluster(\"my_eventgatewaybackendcluster\", new()\n    {\n        Authentication = new Konnect.Inputs.EventGatewayBackendClusterAuthenticationArgs\n        {\n            SaslScram = new Konnect.Inputs.EventGatewayBackendClusterAuthenticationSaslScramArgs\n            {\n                Algorithm = \"sha256\",\n                Password = \"${vault.env['MY_ENV_VAR']}\",\n                Username = \"...my_username...\",\n            },\n        },\n        BootstrapServers = new[]\n        {\n            \"...\",\n        },\n        Description = \"...my_description...\",\n        GatewayId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        InsecureAllowAnonymousVirtualClusterAuth = false,\n        Labels = \n        {\n            { \"key\", \"value\" },\n        },\n        MetadataUpdateIntervalSeconds = 22808,\n        Name = \"...my_name...\",\n        Tls = new Konnect.Inputs.EventGatewayBackendClusterTlsArgs\n        {\n            CaBundle = \"...my_ca_bundle...\",\n            ClientIdentity = new Konnect.Inputs.EventGatewayBackendClusterTlsClientIdentityArgs\n            {\n                Certificate = \"...my_certificate...\",\n                Key = \"${vault.env['MY_ENV_VAR']}\",\n            },\n            Enabled = false,\n            InsecureSkipVerify = false,\n            TlsVersions = new[]\n            {\n                \"tls12\",\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewEventGatewayBackendCluster(ctx, \"my_eventgatewaybackendcluster\", \u0026konnect.EventGatewayBackendClusterArgs{\n\t\t\tAuthentication: \u0026konnect.EventGatewayBackendClusterAuthenticationArgs{\n\t\t\t\tSaslScram: \u0026konnect.EventGatewayBackendClusterAuthenticationSaslScramArgs{\n\t\t\t\t\tAlgorithm: pulumi.String(\"sha256\"),\n\t\t\t\t\tPassword:  pulumi.String(\"${vault.env['MY_ENV_VAR']}\"),\n\t\t\t\t\tUsername:  pulumi.String(\"...my_username...\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tBootstrapServers: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"...\"),\n\t\t\t},\n\t\t\tDescription:                              pulumi.String(\"...my_description...\"),\n\t\t\tGatewayId:                                pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tInsecureAllowAnonymousVirtualClusterAuth: pulumi.Bool(false),\n\t\t\tLabels: pulumi.StringMap{\n\t\t\t\t\"key\": pulumi.String(\"value\"),\n\t\t\t},\n\t\t\tMetadataUpdateIntervalSeconds: pulumi.Float64(22808),\n\t\t\tName:                          pulumi.String(\"...my_name...\"),\n\t\t\tTls: \u0026konnect.EventGatewayBackendClusterTlsArgs{\n\t\t\t\tCaBundle: pulumi.String(\"...my_ca_bundle...\"),\n\t\t\t\tClientIdentity: \u0026konnect.EventGatewayBackendClusterTlsClientIdentityArgs{\n\t\t\t\t\tCertificate: pulumi.String(\"...my_certificate...\"),\n\t\t\t\t\tKey:         pulumi.String(\"${vault.env['MY_ENV_VAR']}\"),\n\t\t\t\t},\n\t\t\t\tEnabled:            pulumi.Bool(false),\n\t\t\t\tInsecureSkipVerify: pulumi.Bool(false),\n\t\t\t\tTlsVersions: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"tls12\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.EventGatewayBackendCluster;\nimport com.pulumi.konnect.EventGatewayBackendClusterArgs;\nimport com.pulumi.konnect.inputs.EventGatewayBackendClusterAuthenticationArgs;\nimport com.pulumi.konnect.inputs.EventGatewayBackendClusterAuthenticationSaslScramArgs;\nimport com.pulumi.konnect.inputs.EventGatewayBackendClusterTlsArgs;\nimport com.pulumi.konnect.inputs.EventGatewayBackendClusterTlsClientIdentityArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myEventgatewaybackendcluster = new EventGatewayBackendCluster(\"myEventgatewaybackendcluster\", EventGatewayBackendClusterArgs.builder()\n            .authentication(EventGatewayBackendClusterAuthenticationArgs.builder()\n                .saslScram(EventGatewayBackendClusterAuthenticationSaslScramArgs.builder()\n                    .algorithm(\"sha256\")\n                    .password(\"${vault.env['MY_ENV_VAR']}\")\n                    .username(\"...my_username...\")\n                    .build())\n                .build())\n            .bootstrapServers(\"...\")\n            .description(\"...my_description...\")\n            .gatewayId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .insecureAllowAnonymousVirtualClusterAuth(false)\n            .labels(Map.of(\"key\", \"value\"))\n            .metadataUpdateIntervalSeconds(22808.0)\n            .name(\"...my_name...\")\n            .tls(EventGatewayBackendClusterTlsArgs.builder()\n                .caBundle(\"...my_ca_bundle...\")\n                .clientIdentity(EventGatewayBackendClusterTlsClientIdentityArgs.builder()\n                    .certificate(\"...my_certificate...\")\n                    .key(\"${vault.env['MY_ENV_VAR']}\")\n                    .build())\n                .enabled(false)\n                .insecureSkipVerify(false)\n                .tlsVersions(\"tls12\")\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myEventgatewaybackendcluster:\n    type: konnect:EventGatewayBackendCluster\n    name: my_eventgatewaybackendcluster\n    properties:\n      authentication:\n        saslScram:\n          algorithm: sha256\n          password: $${vault.env['MY_ENV_VAR']}\n          username: '...my_username...'\n      bootstrapServers:\n        - '...'\n      description: '...my_description...'\n      gatewayId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      insecureAllowAnonymousVirtualClusterAuth: false\n      labels:\n        key: value\n      metadataUpdateIntervalSeconds: 22808\n      name: '...my_name...'\n      tls:\n        caBundle: '...my_ca_bundle...'\n        clientIdentity:\n          certificate: '...my_certificate...'\n          key: $${vault.env['MY_ENV_VAR']}\n        enabled: false\n        insecureSkipVerify: false\n        tlsVersions:\n          - tls12\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_event_gateway_backend_cluster.my_konnect_event_gateway_backend_cluster\n\n  id = jsonencode({\n\n    gateway_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"...\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/eventGatewayBackendCluster:EventGatewayBackendCluster my_konnect_event_gateway_backend_cluster '{\"gateway_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"...\"}'\n```\n\n","properties":{"authentication":{"$ref":"#/types/konnect:index%2FEventGatewayBackendClusterAuthentication:EventGatewayBackendClusterAuthentication"},"bootstrapServers":{"type":"array","items":{"type":"string"},"description":"A list of cluster bootstrap servers in the format address:port.\n"},"createdAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity creation date."},"description":{"type":"string","description":"A human-readable description of the backend cluster. Default: \"\"\n"},"gatewayId":{"type":"string","description":"The UUID of your Gateway.\n"},"insecureAllowAnonymousVirtualClusterAuth":{"type":"boolean","description":"If true, virtual clusters can have allow anonymous authentication and use this backend cluster.\nThis setting is not recommended for production use as it may create privilege escalation vulnerabilities.\nDefault: false\n"},"labels":{"type":"object","additionalProperties":{"type":"string"},"description":"Labels store metadata of an entity that can be used for filtering an entity list or for searching across entity types.\n"},"metadataUpdateIntervalSeconds":{"type":"number","description":"The interval at which metadata is updated in seconds. Default: 60"},"name":{"type":"string","description":"The unique name of the backend cluster.\n"},"tls":{"$ref":"#/types/konnect:index%2FEventGatewayBackendClusterTls:EventGatewayBackendClusterTls"},"updatedAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity update date."}},"type":"object","required":["authentication","bootstrapServers","createdAt","description","gatewayId","insecureAllowAnonymousVirtualClusterAuth","labels","metadataUpdateIntervalSeconds","name","tls","updatedAt"],"inputProperties":{"authentication":{"$ref":"#/types/konnect:index%2FEventGatewayBackendClusterAuthentication:EventGatewayBackendClusterAuthentication"},"bootstrapServers":{"type":"array","items":{"type":"string"},"description":"A list of cluster bootstrap servers in the format address:port.\n"},"description":{"type":"string","description":"A human-readable description of the backend cluster. Default: \"\"\n"},"gatewayId":{"type":"string","description":"The UUID of your Gateway.\n"},"insecureAllowAnonymousVirtualClusterAuth":{"type":"boolean","description":"If true, virtual clusters can have allow anonymous authentication and use this backend cluster.\nThis setting is not recommended for production use as it may create privilege escalation vulnerabilities.\nDefault: false\n"},"labels":{"type":"object","additionalProperties":{"type":"string"},"description":"Labels store metadata of an entity that can be used for filtering an entity list or for searching across entity types.\n"},"metadataUpdateIntervalSeconds":{"type":"number","description":"The interval at which metadata is updated in seconds. Default: 60"},"name":{"type":"string","description":"The unique name of the backend cluster.\n"},"tls":{"$ref":"#/types/konnect:index%2FEventGatewayBackendClusterTls:EventGatewayBackendClusterTls"}},"requiredInputs":["authentication","bootstrapServers","gatewayId","tls"],"stateInputs":{"description":"Input properties used for looking up and filtering EventGatewayBackendCluster resources.\n","properties":{"authentication":{"$ref":"#/types/konnect:index%2FEventGatewayBackendClusterAuthentication:EventGatewayBackendClusterAuthentication"},"bootstrapServers":{"type":"array","items":{"type":"string"},"description":"A list of cluster bootstrap servers in the format address:port.\n"},"createdAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity creation date."},"description":{"type":"string","description":"A human-readable description of the backend cluster. Default: \"\"\n"},"gatewayId":{"type":"string","description":"The UUID of your Gateway.\n"},"insecureAllowAnonymousVirtualClusterAuth":{"type":"boolean","description":"If true, virtual clusters can have allow anonymous authentication and use this backend cluster.\nThis setting is not recommended for production use as it may create privilege escalation vulnerabilities.\nDefault: false\n"},"labels":{"type":"object","additionalProperties":{"type":"string"},"description":"Labels store metadata of an entity that can be used for filtering an entity list or for searching across entity types.\n"},"metadataUpdateIntervalSeconds":{"type":"number","description":"The interval at which metadata is updated in seconds. Default: 60"},"name":{"type":"string","description":"The unique name of the backend cluster.\n"},"tls":{"$ref":"#/types/konnect:index%2FEventGatewayBackendClusterTls:EventGatewayBackendClusterTls"},"updatedAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity update date."}},"type":"object"}},"konnect:index/eventGatewayClusterPolicyAcls:EventGatewayClusterPolicyAcls":{"description":"EventGatewayClusterPolicyAcls Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myEventgatewayclusterpolicyacls = new konnect.EventGatewayClusterPolicyAcls(\"my_eventgatewayclusterpolicyacls\", {\n    condition: \"context.auth.principal.name == \\\"this-user\\\"\",\n    config: {\n        rules: [{\n            action: \"deny\",\n            operations: [{\n                name: \"describe_configs\",\n            }],\n            resourceNames: [{\n                match: \"...my_match...\",\n            }],\n            resourceType: \"transactional_id\",\n        }],\n    },\n    description: \"...my_description...\",\n    enabled: false,\n    gatewayId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    labels: {\n        key: \"value\",\n    },\n    name: \"...my_name...\",\n    virtualClusterId: \"4a444990-e7d1-4dfb-b2bf-2d8e113d1b6e\",\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_eventgatewayclusterpolicyacls = konnect.EventGatewayClusterPolicyAcls(\"my_eventgatewayclusterpolicyacls\",\n    condition=\"context.auth.principal.name == \\\"this-user\\\"\",\n    config={\n        \"rules\": [{\n            \"action\": \"deny\",\n            \"operations\": [{\n                \"name\": \"describe_configs\",\n            }],\n            \"resource_names\": [{\n                \"match\": \"...my_match...\",\n            }],\n            \"resource_type\": \"transactional_id\",\n        }],\n    },\n    description=\"...my_description...\",\n    enabled=False,\n    gateway_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    labels={\n        \"key\": \"value\",\n    },\n    name=\"...my_name...\",\n    virtual_cluster_id=\"4a444990-e7d1-4dfb-b2bf-2d8e113d1b6e\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myEventgatewayclusterpolicyacls = new Konnect.EventGatewayClusterPolicyAcls(\"my_eventgatewayclusterpolicyacls\", new()\n    {\n        Condition = \"context.auth.principal.name == \\\"this-user\\\"\",\n        Config = new Konnect.Inputs.EventGatewayClusterPolicyAclsConfigArgs\n        {\n            Rules = new[]\n            {\n                new Konnect.Inputs.EventGatewayClusterPolicyAclsConfigRuleArgs\n                {\n                    Action = \"deny\",\n                    Operations = new[]\n                    {\n                        new Konnect.Inputs.EventGatewayClusterPolicyAclsConfigRuleOperationArgs\n                        {\n                            Name = \"describe_configs\",\n                        },\n                    },\n                    ResourceNames = new[]\n                    {\n                        new Konnect.Inputs.EventGatewayClusterPolicyAclsConfigRuleResourceNameArgs\n                        {\n                            Match = \"...my_match...\",\n                        },\n                    },\n                    ResourceType = \"transactional_id\",\n                },\n            },\n        },\n        Description = \"...my_description...\",\n        Enabled = false,\n        GatewayId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        Labels = \n        {\n            { \"key\", \"value\" },\n        },\n        Name = \"...my_name...\",\n        VirtualClusterId = \"4a444990-e7d1-4dfb-b2bf-2d8e113d1b6e\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewEventGatewayClusterPolicyAcls(ctx, \"my_eventgatewayclusterpolicyacls\", \u0026konnect.EventGatewayClusterPolicyAclsArgs{\n\t\t\tCondition: pulumi.String(\"context.auth.principal.name == \\\"this-user\\\"\"),\n\t\t\tConfig: \u0026konnect.EventGatewayClusterPolicyAclsConfigArgs{\n\t\t\t\tRules: konnect.EventGatewayClusterPolicyAclsConfigRuleArray{\n\t\t\t\t\t\u0026konnect.EventGatewayClusterPolicyAclsConfigRuleArgs{\n\t\t\t\t\t\tAction: pulumi.String(\"deny\"),\n\t\t\t\t\t\tOperations: konnect.EventGatewayClusterPolicyAclsConfigRuleOperationArray{\n\t\t\t\t\t\t\t\u0026konnect.EventGatewayClusterPolicyAclsConfigRuleOperationArgs{\n\t\t\t\t\t\t\t\tName: pulumi.String(\"describe_configs\"),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t\tResourceNames: konnect.EventGatewayClusterPolicyAclsConfigRuleResourceNameArray{\n\t\t\t\t\t\t\t\u0026konnect.EventGatewayClusterPolicyAclsConfigRuleResourceNameArgs{\n\t\t\t\t\t\t\t\tMatch: pulumi.String(\"...my_match...\"),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t\tResourceType: pulumi.String(\"transactional_id\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tDescription: pulumi.String(\"...my_description...\"),\n\t\t\tEnabled:     pulumi.Bool(false),\n\t\t\tGatewayId:   pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tLabels: pulumi.StringMap{\n\t\t\t\t\"key\": pulumi.String(\"value\"),\n\t\t\t},\n\t\t\tName:             pulumi.String(\"...my_name...\"),\n\t\t\tVirtualClusterId: pulumi.String(\"4a444990-e7d1-4dfb-b2bf-2d8e113d1b6e\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.EventGatewayClusterPolicyAcls;\nimport com.pulumi.konnect.EventGatewayClusterPolicyAclsArgs;\nimport com.pulumi.konnect.inputs.EventGatewayClusterPolicyAclsConfigArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myEventgatewayclusterpolicyacls = new EventGatewayClusterPolicyAcls(\"myEventgatewayclusterpolicyacls\", EventGatewayClusterPolicyAclsArgs.builder()\n            .condition(\"context.auth.principal.name == \\\"this-user\\\"\")\n            .config(EventGatewayClusterPolicyAclsConfigArgs.builder()\n                .rules(EventGatewayClusterPolicyAclsConfigRuleArgs.builder()\n                    .action(\"deny\")\n                    .operations(EventGatewayClusterPolicyAclsConfigRuleOperationArgs.builder()\n                        .name(\"describe_configs\")\n                        .build())\n                    .resourceNames(EventGatewayClusterPolicyAclsConfigRuleResourceNameArgs.builder()\n                        .match(\"...my_match...\")\n                        .build())\n                    .resourceType(\"transactional_id\")\n                    .build())\n                .build())\n            .description(\"...my_description...\")\n            .enabled(false)\n            .gatewayId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .labels(Map.of(\"key\", \"value\"))\n            .name(\"...my_name...\")\n            .virtualClusterId(\"4a444990-e7d1-4dfb-b2bf-2d8e113d1b6e\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myEventgatewayclusterpolicyacls:\n    type: konnect:EventGatewayClusterPolicyAcls\n    name: my_eventgatewayclusterpolicyacls\n    properties:\n      condition: context.auth.principal.name == \"this-user\"\n      config:\n        rules:\n          - action: deny\n            operations:\n              - name: describe_configs\n            resourceNames:\n              - match: '...my_match...'\n            resourceType: transactional_id\n      description: '...my_description...'\n      enabled: false\n      gatewayId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      labels:\n        key: value\n      name: '...my_name...'\n      virtualClusterId: 4a444990-e7d1-4dfb-b2bf-2d8e113d1b6e\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_event_gateway_cluster_policy_acls.my_konnect_event_gateway_cluster_policy_acls\n\n  id = jsonencode({\n\n    gateway_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    virtual_cluster_id = \"...\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/eventGatewayClusterPolicyAcls:EventGatewayClusterPolicyAcls my_konnect_event_gateway_cluster_policy_acls '{\"gateway_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"virtual_cluster_id\": \"...\"}'\n```\n\n","properties":{"condition":{"type":"string","description":"A string containing the boolean expression that determines whether the policy is applied. Default: \"\"\n"},"config":{"$ref":"#/types/konnect:index%2FEventGatewayClusterPolicyAclsConfig:EventGatewayClusterPolicyAclsConfig","description":"Apply ACLs to virtual cluster traffic.\n"},"createdAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity creation date."},"description":{"type":"string","description":"A human-readable description of the policy. Default: \"\"\n"},"enabled":{"type":"boolean","description":"Whether the policy is enabled. Default: true\n"},"gatewayId":{"type":"string","description":"The UUID of your Gateway.\n"},"labels":{"type":"object","additionalProperties":{"type":"string"},"description":"Labels store metadata of an entity that can be used for filtering an entity list or for searching across entity types.\n"},"name":{"type":"string","description":"A unique user-defined name of the policy."},"parentPolicyId":{"type":"string","description":"The unique identifier of the parent policy, if any."},"updatedAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity update date."},"virtualClusterId":{"type":"string","description":"The ID of the Virtual Cluster.\n"}},"type":"object","required":["condition","config","createdAt","description","enabled","gatewayId","labels","name","parentPolicyId","updatedAt","virtualClusterId"],"inputProperties":{"condition":{"type":"string","description":"A string containing the boolean expression that determines whether the policy is applied. Default: \"\"\n"},"config":{"$ref":"#/types/konnect:index%2FEventGatewayClusterPolicyAclsConfig:EventGatewayClusterPolicyAclsConfig","description":"Apply ACLs to virtual cluster traffic.\n"},"description":{"type":"string","description":"A human-readable description of the policy. Default: \"\"\n"},"enabled":{"type":"boolean","description":"Whether the policy is enabled. Default: true\n"},"gatewayId":{"type":"string","description":"The UUID of your Gateway.\n"},"labels":{"type":"object","additionalProperties":{"type":"string"},"description":"Labels store metadata of an entity that can be used for filtering an entity list or for searching across entity types.\n"},"name":{"type":"string","description":"A unique user-defined name of the policy."},"virtualClusterId":{"type":"string","description":"The ID of the Virtual Cluster.\n"}},"requiredInputs":["config","gatewayId","virtualClusterId"],"stateInputs":{"description":"Input properties used for looking up and filtering EventGatewayClusterPolicyAcls resources.\n","properties":{"condition":{"type":"string","description":"A string containing the boolean expression that determines whether the policy is applied. Default: \"\"\n"},"config":{"$ref":"#/types/konnect:index%2FEventGatewayClusterPolicyAclsConfig:EventGatewayClusterPolicyAclsConfig","description":"Apply ACLs to virtual cluster traffic.\n"},"createdAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity creation date."},"description":{"type":"string","description":"A human-readable description of the policy. Default: \"\"\n"},"enabled":{"type":"boolean","description":"Whether the policy is enabled. Default: true\n"},"gatewayId":{"type":"string","description":"The UUID of your Gateway.\n"},"labels":{"type":"object","additionalProperties":{"type":"string"},"description":"Labels store metadata of an entity that can be used for filtering an entity list or for searching across entity types.\n"},"name":{"type":"string","description":"A unique user-defined name of the policy."},"parentPolicyId":{"type":"string","description":"The unique identifier of the parent policy, if any."},"updatedAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity update date."},"virtualClusterId":{"type":"string","description":"The ID of the Virtual Cluster.\n"}},"type":"object"}},"konnect:index/eventGatewayConsumePolicyDecrypt:EventGatewayConsumePolicyDecrypt":{"description":"EventGatewayConsumePolicyDecrypt Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myEventgatewayconsumepolicydecrypt = new konnect.EventGatewayConsumePolicyDecrypt(\"my_eventgatewayconsumepolicydecrypt\", {\n    condition: \"context.topic.name.endsWith(\\\"my_suffix\\\") \u0026\u0026 records.headers[\\\"x-flag\\\"] == \\\"a-value\\\"\",\n    config: {\n        failureMode: \"passthrough\",\n        keySources: [{\n            aws: {},\n            static: {},\n        }],\n        partOfRecords: [\"key\"],\n    },\n    description: \"...my_description...\",\n    enabled: false,\n    gatewayId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    labels: {\n        key: \"value\",\n    },\n    name: \"...my_name...\",\n    virtualClusterId: \"05c6c607-3c42-45e9-a9e8-3e6338120724\",\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_eventgatewayconsumepolicydecrypt = konnect.EventGatewayConsumePolicyDecrypt(\"my_eventgatewayconsumepolicydecrypt\",\n    condition=\"context.topic.name.endsWith(\\\"my_suffix\\\") \u0026\u0026 records.headers[\\\"x-flag\\\"] == \\\"a-value\\\"\",\n    config={\n        \"failure_mode\": \"passthrough\",\n        \"key_sources\": [{\n            \"aws\": {},\n            \"static\": {},\n        }],\n        \"part_of_records\": [\"key\"],\n    },\n    description=\"...my_description...\",\n    enabled=False,\n    gateway_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    labels={\n        \"key\": \"value\",\n    },\n    name=\"...my_name...\",\n    virtual_cluster_id=\"05c6c607-3c42-45e9-a9e8-3e6338120724\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myEventgatewayconsumepolicydecrypt = new Konnect.EventGatewayConsumePolicyDecrypt(\"my_eventgatewayconsumepolicydecrypt\", new()\n    {\n        Condition = \"context.topic.name.endsWith(\\\"my_suffix\\\") \u0026\u0026 records.headers[\\\"x-flag\\\"] == \\\"a-value\\\"\",\n        Config = new Konnect.Inputs.EventGatewayConsumePolicyDecryptConfigArgs\n        {\n            FailureMode = \"passthrough\",\n            KeySources = new[]\n            {\n                new Konnect.Inputs.EventGatewayConsumePolicyDecryptConfigKeySourceArgs\n                {\n                    Aws = null,\n                    Static = null,\n                },\n            },\n            PartOfRecords = new[]\n            {\n                \"key\",\n            },\n        },\n        Description = \"...my_description...\",\n        Enabled = false,\n        GatewayId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        Labels = \n        {\n            { \"key\", \"value\" },\n        },\n        Name = \"...my_name...\",\n        VirtualClusterId = \"05c6c607-3c42-45e9-a9e8-3e6338120724\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewEventGatewayConsumePolicyDecrypt(ctx, \"my_eventgatewayconsumepolicydecrypt\", \u0026konnect.EventGatewayConsumePolicyDecryptArgs{\n\t\t\tCondition: pulumi.String(\"context.topic.name.endsWith(\\\"my_suffix\\\") \u0026\u0026 records.headers[\\\"x-flag\\\"] == \\\"a-value\\\"\"),\n\t\t\tConfig: \u0026konnect.EventGatewayConsumePolicyDecryptConfigArgs{\n\t\t\t\tFailureMode: pulumi.String(\"passthrough\"),\n\t\t\t\tKeySources: konnect.EventGatewayConsumePolicyDecryptConfigKeySourceArray{\n\t\t\t\t\t\u0026konnect.EventGatewayConsumePolicyDecryptConfigKeySourceArgs{\n\t\t\t\t\t\tAws:    \u0026konnect.EventGatewayConsumePolicyDecryptConfigKeySourceAwsArgs{},\n\t\t\t\t\t\tStatic: \u0026konnect.EventGatewayConsumePolicyDecryptConfigKeySourceStaticArgs{},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tPartOfRecords: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"key\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tDescription: pulumi.String(\"...my_description...\"),\n\t\t\tEnabled:     pulumi.Bool(false),\n\t\t\tGatewayId:   pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tLabels: pulumi.StringMap{\n\t\t\t\t\"key\": pulumi.String(\"value\"),\n\t\t\t},\n\t\t\tName:             pulumi.String(\"...my_name...\"),\n\t\t\tVirtualClusterId: pulumi.String(\"05c6c607-3c42-45e9-a9e8-3e6338120724\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.EventGatewayConsumePolicyDecrypt;\nimport com.pulumi.konnect.EventGatewayConsumePolicyDecryptArgs;\nimport com.pulumi.konnect.inputs.EventGatewayConsumePolicyDecryptConfigArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myEventgatewayconsumepolicydecrypt = new EventGatewayConsumePolicyDecrypt(\"myEventgatewayconsumepolicydecrypt\", EventGatewayConsumePolicyDecryptArgs.builder()\n            .condition(\"context.topic.name.endsWith(\\\"my_suffix\\\") \u0026\u0026 records.headers[\\\"x-flag\\\"] == \\\"a-value\\\"\")\n            .config(EventGatewayConsumePolicyDecryptConfigArgs.builder()\n                .failureMode(\"passthrough\")\n                .keySources(EventGatewayConsumePolicyDecryptConfigKeySourceArgs.builder()\n                    .aws(EventGatewayConsumePolicyDecryptConfigKeySourceAwsArgs.builder()\n                        .build())\n                    .static_(EventGatewayConsumePolicyDecryptConfigKeySourceStaticArgs.builder()\n                        .build())\n                    .build())\n                .partOfRecords(\"key\")\n                .build())\n            .description(\"...my_description...\")\n            .enabled(false)\n            .gatewayId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .labels(Map.of(\"key\", \"value\"))\n            .name(\"...my_name...\")\n            .virtualClusterId(\"05c6c607-3c42-45e9-a9e8-3e6338120724\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myEventgatewayconsumepolicydecrypt:\n    type: konnect:EventGatewayConsumePolicyDecrypt\n    name: my_eventgatewayconsumepolicydecrypt\n    properties:\n      condition: context.topic.name.endsWith(\"my_suffix\") \u0026\u0026 records.headers[\"x-flag\"] == \"a-value\"\n      config:\n        failureMode: passthrough\n        keySources:\n          - aws: {}\n            static: {}\n        partOfRecords:\n          - key\n      description: '...my_description...'\n      enabled: false\n      gatewayId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      labels:\n        key: value\n      name: '...my_name...'\n      virtualClusterId: 05c6c607-3c42-45e9-a9e8-3e6338120724\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_event_gateway_consume_policy_decrypt.my_konnect_event_gateway_consume_policy_decrypt\n\n  id = jsonencode({\n\n    gateway_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    virtual_cluster_id = \"...\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/eventGatewayConsumePolicyDecrypt:EventGatewayConsumePolicyDecrypt my_konnect_event_gateway_consume_policy_decrypt '{\"gateway_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"virtual_cluster_id\": \"...\"}'\n```\n\n","properties":{"condition":{"type":"string","description":"A string containing the boolean expression that determines whether the policy is applied. Default: \"\"\n"},"config":{"$ref":"#/types/konnect:index%2FEventGatewayConsumePolicyDecryptConfig:EventGatewayConsumePolicyDecryptConfig","description":"The configuration of the decrypt policy.\n"},"createdAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity creation date."},"description":{"type":"string","description":"A human-readable description of the policy. Default: \"\"\n"},"enabled":{"type":"boolean","description":"Whether the policy is enabled. Default: true\n"},"gatewayId":{"type":"string","description":"The UUID of your Gateway.\n"},"labels":{"type":"object","additionalProperties":{"type":"string"},"description":"Labels store metadata of an entity that can be used for filtering an entity list or for searching across entity types.\n"},"name":{"type":"string","description":"A unique user-defined name of the policy."},"parentPolicyId":{"type":"string","description":"The unique identifier of the parent policy, if any."},"updatedAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity update date."},"virtualClusterId":{"type":"string","description":"The ID of the Virtual Cluster.\n"}},"type":"object","required":["condition","config","createdAt","description","enabled","gatewayId","labels","name","parentPolicyId","updatedAt","virtualClusterId"],"inputProperties":{"condition":{"type":"string","description":"A string containing the boolean expression that determines whether the policy is applied. Default: \"\"\n"},"config":{"$ref":"#/types/konnect:index%2FEventGatewayConsumePolicyDecryptConfig:EventGatewayConsumePolicyDecryptConfig","description":"The configuration of the decrypt policy.\n"},"description":{"type":"string","description":"A human-readable description of the policy. Default: \"\"\n"},"enabled":{"type":"boolean","description":"Whether the policy is enabled. Default: true\n"},"gatewayId":{"type":"string","description":"The UUID of your Gateway.\n"},"labels":{"type":"object","additionalProperties":{"type":"string"},"description":"Labels store metadata of an entity that can be used for filtering an entity list or for searching across entity types.\n"},"name":{"type":"string","description":"A unique user-defined name of the policy."},"virtualClusterId":{"type":"string","description":"The ID of the Virtual Cluster.\n"}},"requiredInputs":["config","gatewayId","virtualClusterId"],"stateInputs":{"description":"Input properties used for looking up and filtering EventGatewayConsumePolicyDecrypt resources.\n","properties":{"condition":{"type":"string","description":"A string containing the boolean expression that determines whether the policy is applied. Default: \"\"\n"},"config":{"$ref":"#/types/konnect:index%2FEventGatewayConsumePolicyDecryptConfig:EventGatewayConsumePolicyDecryptConfig","description":"The configuration of the decrypt policy.\n"},"createdAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity creation date."},"description":{"type":"string","description":"A human-readable description of the policy. Default: \"\"\n"},"enabled":{"type":"boolean","description":"Whether the policy is enabled. Default: true\n"},"gatewayId":{"type":"string","description":"The UUID of your Gateway.\n"},"labels":{"type":"object","additionalProperties":{"type":"string"},"description":"Labels store metadata of an entity that can be used for filtering an entity list or for searching across entity types.\n"},"name":{"type":"string","description":"A unique user-defined name of the policy."},"parentPolicyId":{"type":"string","description":"The unique identifier of the parent policy, if any."},"updatedAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity update date."},"virtualClusterId":{"type":"string","description":"The ID of the Virtual Cluster.\n"}},"type":"object"}},"konnect:index/eventGatewayConsumePolicyModifyHeaders:EventGatewayConsumePolicyModifyHeaders":{"description":"EventGatewayConsumePolicyModifyHeaders Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myEventgatewayconsumepolicymodifyheaders = new konnect.EventGatewayConsumePolicyModifyHeaders(\"my_eventgatewayconsumepolicymodifyheaders\", {\n    condition: \"record.value.content.foo.bar == \\\"a-value\\\"\",\n    config: {\n        actions: [{\n            remove: {\n                key: \"...my_key...\",\n            },\n        }],\n    },\n    description: \"...my_description...\",\n    enabled: true,\n    gatewayId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    labels: {\n        key: \"value\",\n    },\n    name: \"...my_name...\",\n    parentPolicyId: \"45b2f9d6-c646-4faa-8c5f-7d1ebf8687c1\",\n    virtualClusterId: \"58221d12-f9c8-4032-9ae2-54155e337f04\",\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_eventgatewayconsumepolicymodifyheaders = konnect.EventGatewayConsumePolicyModifyHeaders(\"my_eventgatewayconsumepolicymodifyheaders\",\n    condition=\"record.value.content.foo.bar == \\\"a-value\\\"\",\n    config={\n        \"actions\": [{\n            \"remove\": {\n                \"key\": \"...my_key...\",\n            },\n        }],\n    },\n    description=\"...my_description...\",\n    enabled=True,\n    gateway_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    labels={\n        \"key\": \"value\",\n    },\n    name=\"...my_name...\",\n    parent_policy_id=\"45b2f9d6-c646-4faa-8c5f-7d1ebf8687c1\",\n    virtual_cluster_id=\"58221d12-f9c8-4032-9ae2-54155e337f04\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myEventgatewayconsumepolicymodifyheaders = new Konnect.EventGatewayConsumePolicyModifyHeaders(\"my_eventgatewayconsumepolicymodifyheaders\", new()\n    {\n        Condition = \"record.value.content.foo.bar == \\\"a-value\\\"\",\n        Config = new Konnect.Inputs.EventGatewayConsumePolicyModifyHeadersConfigArgs\n        {\n            Actions = new[]\n            {\n                new Konnect.Inputs.EventGatewayConsumePolicyModifyHeadersConfigActionArgs\n                {\n                    Remove = new Konnect.Inputs.EventGatewayConsumePolicyModifyHeadersConfigActionRemoveArgs\n                    {\n                        Key = \"...my_key...\",\n                    },\n                },\n            },\n        },\n        Description = \"...my_description...\",\n        Enabled = true,\n        GatewayId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        Labels = \n        {\n            { \"key\", \"value\" },\n        },\n        Name = \"...my_name...\",\n        ParentPolicyId = \"45b2f9d6-c646-4faa-8c5f-7d1ebf8687c1\",\n        VirtualClusterId = \"58221d12-f9c8-4032-9ae2-54155e337f04\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewEventGatewayConsumePolicyModifyHeaders(ctx, \"my_eventgatewayconsumepolicymodifyheaders\", \u0026konnect.EventGatewayConsumePolicyModifyHeadersArgs{\n\t\t\tCondition: pulumi.String(\"record.value.content.foo.bar == \\\"a-value\\\"\"),\n\t\t\tConfig: \u0026konnect.EventGatewayConsumePolicyModifyHeadersConfigArgs{\n\t\t\t\tActions: konnect.EventGatewayConsumePolicyModifyHeadersConfigActionArray{\n\t\t\t\t\t\u0026konnect.EventGatewayConsumePolicyModifyHeadersConfigActionArgs{\n\t\t\t\t\t\tRemove: \u0026konnect.EventGatewayConsumePolicyModifyHeadersConfigActionRemoveArgs{\n\t\t\t\t\t\t\tKey: pulumi.String(\"...my_key...\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tDescription: pulumi.String(\"...my_description...\"),\n\t\t\tEnabled:     pulumi.Bool(true),\n\t\t\tGatewayId:   pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tLabels: pulumi.StringMap{\n\t\t\t\t\"key\": pulumi.String(\"value\"),\n\t\t\t},\n\t\t\tName:             pulumi.String(\"...my_name...\"),\n\t\t\tParentPolicyId:   pulumi.String(\"45b2f9d6-c646-4faa-8c5f-7d1ebf8687c1\"),\n\t\t\tVirtualClusterId: pulumi.String(\"58221d12-f9c8-4032-9ae2-54155e337f04\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.EventGatewayConsumePolicyModifyHeaders;\nimport com.pulumi.konnect.EventGatewayConsumePolicyModifyHeadersArgs;\nimport com.pulumi.konnect.inputs.EventGatewayConsumePolicyModifyHeadersConfigArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myEventgatewayconsumepolicymodifyheaders = new EventGatewayConsumePolicyModifyHeaders(\"myEventgatewayconsumepolicymodifyheaders\", EventGatewayConsumePolicyModifyHeadersArgs.builder()\n            .condition(\"record.value.content.foo.bar == \\\"a-value\\\"\")\n            .config(EventGatewayConsumePolicyModifyHeadersConfigArgs.builder()\n                .actions(EventGatewayConsumePolicyModifyHeadersConfigActionArgs.builder()\n                    .remove(EventGatewayConsumePolicyModifyHeadersConfigActionRemoveArgs.builder()\n                        .key(\"...my_key...\")\n                        .build())\n                    .build())\n                .build())\n            .description(\"...my_description...\")\n            .enabled(true)\n            .gatewayId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .labels(Map.of(\"key\", \"value\"))\n            .name(\"...my_name...\")\n            .parentPolicyId(\"45b2f9d6-c646-4faa-8c5f-7d1ebf8687c1\")\n            .virtualClusterId(\"58221d12-f9c8-4032-9ae2-54155e337f04\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myEventgatewayconsumepolicymodifyheaders:\n    type: konnect:EventGatewayConsumePolicyModifyHeaders\n    name: my_eventgatewayconsumepolicymodifyheaders\n    properties:\n      condition: record.value.content.foo.bar == \"a-value\"\n      config:\n        actions:\n          - remove:\n              key: '...my_key...'\n      description: '...my_description...'\n      enabled: true\n      gatewayId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      labels:\n        key: value\n      name: '...my_name...'\n      parentPolicyId: 45b2f9d6-c646-4faa-8c5f-7d1ebf8687c1\n      virtualClusterId: 58221d12-f9c8-4032-9ae2-54155e337f04\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_event_gateway_consume_policy_modify_headers.my_konnect_event_gateway_consume_policy_modify_headers\n\n  id = jsonencode({\n\n    gateway_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    virtual_cluster_id = \"...\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/eventGatewayConsumePolicyModifyHeaders:EventGatewayConsumePolicyModifyHeaders my_konnect_event_gateway_consume_policy_modify_headers '{\"gateway_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"virtual_cluster_id\": \"...\"}'\n```\n\n","properties":{"condition":{"type":"string","description":"A string containing the boolean expression that determines whether the policy is applied.\n"},"config":{"$ref":"#/types/konnect:index%2FEventGatewayConsumePolicyModifyHeadersConfig:EventGatewayConsumePolicyModifyHeadersConfig","description":"The configuration of the modify headers policy.\n"},"createdAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity creation date."},"description":{"type":"string","description":"A human-readable description of the policy. Default: \"\""},"enabled":{"type":"boolean","description":"Whether the policy is enabled. Default: true"},"gatewayId":{"type":"string","description":"The UUID of your Gateway.\n"},"labels":{"type":"object","additionalProperties":{"type":"string"},"description":"Labels store metadata of an entity that can be used for filtering an entity list or for searching across entity types. \n\nKeys must be of length 1-63 characters, and cannot start with \"kong\", \"konnect\", \"mesh\", \"kic\", or \"_\"."},"name":{"type":"string","description":"A unique user-defined name of the policy."},"parentPolicyId":{"type":"string","description":"The unique identifier of the parent schema validation policy, if any. Requires replacement if changed."},"updatedAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity update date."},"virtualClusterId":{"type":"string","description":"The ID of the Virtual Cluster.\n"}},"type":"object","required":["condition","config","createdAt","description","enabled","gatewayId","labels","name","updatedAt","virtualClusterId"],"inputProperties":{"condition":{"type":"string","description":"A string containing the boolean expression that determines whether the policy is applied.\n"},"config":{"$ref":"#/types/konnect:index%2FEventGatewayConsumePolicyModifyHeadersConfig:EventGatewayConsumePolicyModifyHeadersConfig","description":"The configuration of the modify headers policy.\n"},"description":{"type":"string","description":"A human-readable description of the policy. Default: \"\""},"enabled":{"type":"boolean","description":"Whether the policy is enabled. Default: true"},"gatewayId":{"type":"string","description":"The UUID of your Gateway.\n"},"labels":{"type":"object","additionalProperties":{"type":"string"},"description":"Labels store metadata of an entity that can be used for filtering an entity list or for searching across entity types. \n\nKeys must be of length 1-63 characters, and cannot start with \"kong\", \"konnect\", \"mesh\", \"kic\", or \"_\"."},"name":{"type":"string","description":"A unique user-defined name of the policy."},"parentPolicyId":{"type":"string","description":"The unique identifier of the parent schema validation policy, if any. Requires replacement if changed."},"virtualClusterId":{"type":"string","description":"The ID of the Virtual Cluster.\n"}},"requiredInputs":["config","gatewayId","virtualClusterId"],"stateInputs":{"description":"Input properties used for looking up and filtering EventGatewayConsumePolicyModifyHeaders resources.\n","properties":{"condition":{"type":"string","description":"A string containing the boolean expression that determines whether the policy is applied.\n"},"config":{"$ref":"#/types/konnect:index%2FEventGatewayConsumePolicyModifyHeadersConfig:EventGatewayConsumePolicyModifyHeadersConfig","description":"The configuration of the modify headers policy.\n"},"createdAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity creation date."},"description":{"type":"string","description":"A human-readable description of the policy. Default: \"\""},"enabled":{"type":"boolean","description":"Whether the policy is enabled. Default: true"},"gatewayId":{"type":"string","description":"The UUID of your Gateway.\n"},"labels":{"type":"object","additionalProperties":{"type":"string"},"description":"Labels store metadata of an entity that can be used for filtering an entity list or for searching across entity types. \n\nKeys must be of length 1-63 characters, and cannot start with \"kong\", \"konnect\", \"mesh\", \"kic\", or \"_\"."},"name":{"type":"string","description":"A unique user-defined name of the policy."},"parentPolicyId":{"type":"string","description":"The unique identifier of the parent schema validation policy, if any. Requires replacement if changed."},"updatedAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity update date."},"virtualClusterId":{"type":"string","description":"The ID of the Virtual Cluster.\n"}},"type":"object"}},"konnect:index/eventGatewayConsumePolicySchemaValidation:EventGatewayConsumePolicySchemaValidation":{"description":"EventGatewayConsumePolicySchemaValidation Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myEventgatewayconsumepolicyschemavalidation = new konnect.EventGatewayConsumePolicySchemaValidation(\"my_eventgatewayconsumepolicyschemavalidation\", {\n    condition: \"context.topic.name.endsWith(\\\"my_suffix\\\") \u0026\u0026 records.headers[\\\"x-flag\\\"] == \\\"a-value\\\"\",\n    config: {\n        keyValidationAction: \"mark\",\n        schemaRegistry: {\n            id: \"e1881384-290f-443c-a5bd-ed6f2e53d539\",\n        },\n        type: \"json\",\n        valueValidationAction: \"mark\",\n    },\n    description: \"...my_description...\",\n    enabled: true,\n    gatewayId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    labels: {\n        key: \"value\",\n    },\n    name: \"...my_name...\",\n    virtualClusterId: \"afccd415-a99c-4465-8754-9932a66f275f\",\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_eventgatewayconsumepolicyschemavalidation = konnect.EventGatewayConsumePolicySchemaValidation(\"my_eventgatewayconsumepolicyschemavalidation\",\n    condition=\"context.topic.name.endsWith(\\\"my_suffix\\\") \u0026\u0026 records.headers[\\\"x-flag\\\"] == \\\"a-value\\\"\",\n    config={\n        \"key_validation_action\": \"mark\",\n        \"schema_registry\": {\n            \"id\": \"e1881384-290f-443c-a5bd-ed6f2e53d539\",\n        },\n        \"type\": \"json\",\n        \"value_validation_action\": \"mark\",\n    },\n    description=\"...my_description...\",\n    enabled=True,\n    gateway_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    labels={\n        \"key\": \"value\",\n    },\n    name=\"...my_name...\",\n    virtual_cluster_id=\"afccd415-a99c-4465-8754-9932a66f275f\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myEventgatewayconsumepolicyschemavalidation = new Konnect.EventGatewayConsumePolicySchemaValidation(\"my_eventgatewayconsumepolicyschemavalidation\", new()\n    {\n        Condition = \"context.topic.name.endsWith(\\\"my_suffix\\\") \u0026\u0026 records.headers[\\\"x-flag\\\"] == \\\"a-value\\\"\",\n        Config = new Konnect.Inputs.EventGatewayConsumePolicySchemaValidationConfigArgs\n        {\n            KeyValidationAction = \"mark\",\n            SchemaRegistry = new Konnect.Inputs.EventGatewayConsumePolicySchemaValidationConfigSchemaRegistryArgs\n            {\n                Id = \"e1881384-290f-443c-a5bd-ed6f2e53d539\",\n            },\n            Type = \"json\",\n            ValueValidationAction = \"mark\",\n        },\n        Description = \"...my_description...\",\n        Enabled = true,\n        GatewayId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        Labels = \n        {\n            { \"key\", \"value\" },\n        },\n        Name = \"...my_name...\",\n        VirtualClusterId = \"afccd415-a99c-4465-8754-9932a66f275f\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewEventGatewayConsumePolicySchemaValidation(ctx, \"my_eventgatewayconsumepolicyschemavalidation\", \u0026konnect.EventGatewayConsumePolicySchemaValidationArgs{\n\t\t\tCondition: pulumi.String(\"context.topic.name.endsWith(\\\"my_suffix\\\") \u0026\u0026 records.headers[\\\"x-flag\\\"] == \\\"a-value\\\"\"),\n\t\t\tConfig: \u0026konnect.EventGatewayConsumePolicySchemaValidationConfigArgs{\n\t\t\t\tKeyValidationAction: pulumi.String(\"mark\"),\n\t\t\t\tSchemaRegistry: \u0026konnect.EventGatewayConsumePolicySchemaValidationConfigSchemaRegistryArgs{\n\t\t\t\t\tId: pulumi.String(\"e1881384-290f-443c-a5bd-ed6f2e53d539\"),\n\t\t\t\t},\n\t\t\t\tType:                  pulumi.String(\"json\"),\n\t\t\t\tValueValidationAction: pulumi.String(\"mark\"),\n\t\t\t},\n\t\t\tDescription: pulumi.String(\"...my_description...\"),\n\t\t\tEnabled:     pulumi.Bool(true),\n\t\t\tGatewayId:   pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tLabels: pulumi.StringMap{\n\t\t\t\t\"key\": pulumi.String(\"value\"),\n\t\t\t},\n\t\t\tName:             pulumi.String(\"...my_name...\"),\n\t\t\tVirtualClusterId: pulumi.String(\"afccd415-a99c-4465-8754-9932a66f275f\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.EventGatewayConsumePolicySchemaValidation;\nimport com.pulumi.konnect.EventGatewayConsumePolicySchemaValidationArgs;\nimport com.pulumi.konnect.inputs.EventGatewayConsumePolicySchemaValidationConfigArgs;\nimport com.pulumi.konnect.inputs.EventGatewayConsumePolicySchemaValidationConfigSchemaRegistryArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myEventgatewayconsumepolicyschemavalidation = new EventGatewayConsumePolicySchemaValidation(\"myEventgatewayconsumepolicyschemavalidation\", EventGatewayConsumePolicySchemaValidationArgs.builder()\n            .condition(\"context.topic.name.endsWith(\\\"my_suffix\\\") \u0026\u0026 records.headers[\\\"x-flag\\\"] == \\\"a-value\\\"\")\n            .config(EventGatewayConsumePolicySchemaValidationConfigArgs.builder()\n                .keyValidationAction(\"mark\")\n                .schemaRegistry(EventGatewayConsumePolicySchemaValidationConfigSchemaRegistryArgs.builder()\n                    .id(\"e1881384-290f-443c-a5bd-ed6f2e53d539\")\n                    .build())\n                .type(\"json\")\n                .valueValidationAction(\"mark\")\n                .build())\n            .description(\"...my_description...\")\n            .enabled(true)\n            .gatewayId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .labels(Map.of(\"key\", \"value\"))\n            .name(\"...my_name...\")\n            .virtualClusterId(\"afccd415-a99c-4465-8754-9932a66f275f\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myEventgatewayconsumepolicyschemavalidation:\n    type: konnect:EventGatewayConsumePolicySchemaValidation\n    name: my_eventgatewayconsumepolicyschemavalidation\n    properties:\n      condition: context.topic.name.endsWith(\"my_suffix\") \u0026\u0026 records.headers[\"x-flag\"] == \"a-value\"\n      config:\n        keyValidationAction: mark\n        schemaRegistry:\n          id: e1881384-290f-443c-a5bd-ed6f2e53d539\n        type: json\n        valueValidationAction: mark\n      description: '...my_description...'\n      enabled: true\n      gatewayId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      labels:\n        key: value\n      name: '...my_name...'\n      virtualClusterId: afccd415-a99c-4465-8754-9932a66f275f\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_event_gateway_consume_policy_schema_validation.my_konnect_event_gateway_consume_policy_schema_validation\n\n  id = jsonencode({\n\n    gateway_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    virtual_cluster_id = \"...\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/eventGatewayConsumePolicySchemaValidation:EventGatewayConsumePolicySchemaValidation my_konnect_event_gateway_consume_policy_schema_validation '{\"gateway_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"virtual_cluster_id\": \"...\"}'\n```\n\n","properties":{"condition":{"type":"string","description":"A string containing the boolean expression that determines whether the policy is applied. Default: \"\""},"config":{"$ref":"#/types/konnect:index%2FEventGatewayConsumePolicySchemaValidationConfig:EventGatewayConsumePolicySchemaValidationConfig","description":"The configuration of the schema validation policy."},"createdAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity creation date."},"description":{"type":"string","description":"A human-readable description of the policy. Default: \"\""},"enabled":{"type":"boolean","description":"Whether the policy is enabled. Default: true"},"gatewayId":{"type":"string","description":"The UUID of your Gateway."},"labels":{"type":"object","additionalProperties":{"type":"string"},"description":"Labels store metadata of an entity that can be used for filtering an entity list or for searching across entity types. \n\nKeys must be of length 1-63 characters, and cannot start with \"kong\", \"konnect\", \"mesh\", \"kic\", or \"_\"."},"name":{"type":"string","description":"A unique user-defined name of the policy."},"parentPolicyId":{"type":"string","description":"The unique identifier of the parent policy, if any."},"updatedAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity update date."},"virtualClusterId":{"type":"string","description":"The ID of the Virtual Cluster."}},"type":"object","required":["condition","config","createdAt","description","enabled","gatewayId","labels","name","parentPolicyId","updatedAt","virtualClusterId"],"inputProperties":{"condition":{"type":"string","description":"A string containing the boolean expression that determines whether the policy is applied. Default: \"\""},"config":{"$ref":"#/types/konnect:index%2FEventGatewayConsumePolicySchemaValidationConfig:EventGatewayConsumePolicySchemaValidationConfig","description":"The configuration of the schema validation policy."},"description":{"type":"string","description":"A human-readable description of the policy. Default: \"\""},"enabled":{"type":"boolean","description":"Whether the policy is enabled. Default: true"},"gatewayId":{"type":"string","description":"The UUID of your Gateway."},"labels":{"type":"object","additionalProperties":{"type":"string"},"description":"Labels store metadata of an entity that can be used for filtering an entity list or for searching across entity types. \n\nKeys must be of length 1-63 characters, and cannot start with \"kong\", \"konnect\", \"mesh\", \"kic\", or \"_\"."},"name":{"type":"string","description":"A unique user-defined name of the policy."},"virtualClusterId":{"type":"string","description":"The ID of the Virtual Cluster."}},"requiredInputs":["config","gatewayId","virtualClusterId"],"stateInputs":{"description":"Input properties used for looking up and filtering EventGatewayConsumePolicySchemaValidation resources.\n","properties":{"condition":{"type":"string","description":"A string containing the boolean expression that determines whether the policy is applied. Default: \"\""},"config":{"$ref":"#/types/konnect:index%2FEventGatewayConsumePolicySchemaValidationConfig:EventGatewayConsumePolicySchemaValidationConfig","description":"The configuration of the schema validation policy."},"createdAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity creation date."},"description":{"type":"string","description":"A human-readable description of the policy. Default: \"\""},"enabled":{"type":"boolean","description":"Whether the policy is enabled. Default: true"},"gatewayId":{"type":"string","description":"The UUID of your Gateway."},"labels":{"type":"object","additionalProperties":{"type":"string"},"description":"Labels store metadata of an entity that can be used for filtering an entity list or for searching across entity types. \n\nKeys must be of length 1-63 characters, and cannot start with \"kong\", \"konnect\", \"mesh\", \"kic\", or \"_\"."},"name":{"type":"string","description":"A unique user-defined name of the policy."},"parentPolicyId":{"type":"string","description":"The unique identifier of the parent policy, if any."},"updatedAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity update date."},"virtualClusterId":{"type":"string","description":"The ID of the Virtual Cluster."}},"type":"object"}},"konnect:index/eventGatewayConsumePolicySkipRecord:EventGatewayConsumePolicySkipRecord":{"description":"EventGatewayConsumePolicySkipRecord Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myEventgatewayconsumepolicyskiprecord = new konnect.EventGatewayConsumePolicySkipRecord(\"my_eventgatewayconsumepolicyskiprecord\", {\n    condition: \"record.value.content.foo.bar == \\\"a-value\\\"\",\n    description: \"...my_description...\",\n    enabled: true,\n    gatewayId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    labels: {\n        key: \"value\",\n    },\n    name: \"...my_name...\",\n    parentPolicyId: \"ed46f132-b990-42ef-9430-a541cbd0a3f7\",\n    virtualClusterId: \"d2c285d9-943d-4169-81ee-6317de3cc511\",\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_eventgatewayconsumepolicyskiprecord = konnect.EventGatewayConsumePolicySkipRecord(\"my_eventgatewayconsumepolicyskiprecord\",\n    condition=\"record.value.content.foo.bar == \\\"a-value\\\"\",\n    description=\"...my_description...\",\n    enabled=True,\n    gateway_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    labels={\n        \"key\": \"value\",\n    },\n    name=\"...my_name...\",\n    parent_policy_id=\"ed46f132-b990-42ef-9430-a541cbd0a3f7\",\n    virtual_cluster_id=\"d2c285d9-943d-4169-81ee-6317de3cc511\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myEventgatewayconsumepolicyskiprecord = new Konnect.EventGatewayConsumePolicySkipRecord(\"my_eventgatewayconsumepolicyskiprecord\", new()\n    {\n        Condition = \"record.value.content.foo.bar == \\\"a-value\\\"\",\n        Description = \"...my_description...\",\n        Enabled = true,\n        GatewayId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        Labels = \n        {\n            { \"key\", \"value\" },\n        },\n        Name = \"...my_name...\",\n        ParentPolicyId = \"ed46f132-b990-42ef-9430-a541cbd0a3f7\",\n        VirtualClusterId = \"d2c285d9-943d-4169-81ee-6317de3cc511\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewEventGatewayConsumePolicySkipRecord(ctx, \"my_eventgatewayconsumepolicyskiprecord\", \u0026konnect.EventGatewayConsumePolicySkipRecordArgs{\n\t\t\tCondition:   pulumi.String(\"record.value.content.foo.bar == \\\"a-value\\\"\"),\n\t\t\tDescription: pulumi.String(\"...my_description...\"),\n\t\t\tEnabled:     pulumi.Bool(true),\n\t\t\tGatewayId:   pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tLabels: pulumi.StringMap{\n\t\t\t\t\"key\": pulumi.String(\"value\"),\n\t\t\t},\n\t\t\tName:             pulumi.String(\"...my_name...\"),\n\t\t\tParentPolicyId:   pulumi.String(\"ed46f132-b990-42ef-9430-a541cbd0a3f7\"),\n\t\t\tVirtualClusterId: pulumi.String(\"d2c285d9-943d-4169-81ee-6317de3cc511\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.EventGatewayConsumePolicySkipRecord;\nimport com.pulumi.konnect.EventGatewayConsumePolicySkipRecordArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myEventgatewayconsumepolicyskiprecord = new EventGatewayConsumePolicySkipRecord(\"myEventgatewayconsumepolicyskiprecord\", EventGatewayConsumePolicySkipRecordArgs.builder()\n            .condition(\"record.value.content.foo.bar == \\\"a-value\\\"\")\n            .description(\"...my_description...\")\n            .enabled(true)\n            .gatewayId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .labels(Map.of(\"key\", \"value\"))\n            .name(\"...my_name...\")\n            .parentPolicyId(\"ed46f132-b990-42ef-9430-a541cbd0a3f7\")\n            .virtualClusterId(\"d2c285d9-943d-4169-81ee-6317de3cc511\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myEventgatewayconsumepolicyskiprecord:\n    type: konnect:EventGatewayConsumePolicySkipRecord\n    name: my_eventgatewayconsumepolicyskiprecord\n    properties:\n      condition: record.value.content.foo.bar == \"a-value\"\n      description: '...my_description...'\n      enabled: true\n      gatewayId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      labels:\n        key: value\n      name: '...my_name...'\n      parentPolicyId: ed46f132-b990-42ef-9430-a541cbd0a3f7\n      virtualClusterId: d2c285d9-943d-4169-81ee-6317de3cc511\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_event_gateway_consume_policy_skip_record.my_konnect_event_gateway_consume_policy_skip_record\n\n  id = jsonencode({\n\n    gateway_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    virtual_cluster_id = \"...\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/eventGatewayConsumePolicySkipRecord:EventGatewayConsumePolicySkipRecord my_konnect_event_gateway_consume_policy_skip_record '{\"gateway_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"virtual_cluster_id\": \"...\"}'\n```\n\n","properties":{"condition":{"type":"string","description":"A string containing the boolean expression that determines whether the policy is applied.\n"},"config":{"$ref":"#/types/konnect:index%2FEventGatewayConsumePolicySkipRecordConfig:EventGatewayConsumePolicySkipRecordConfig","description":"The configuration of the policy."},"createdAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity creation date."},"description":{"type":"string","description":"A human-readable description of the policy. Default: \"\""},"enabled":{"type":"boolean","description":"Whether the policy is enabled. Default: true"},"gatewayId":{"type":"string","description":"The UUID of your Gateway.\n"},"labels":{"type":"object","additionalProperties":{"type":"string"},"description":"Labels store metadata of an entity that can be used for filtering an entity list or for searching across entity types. \n\nKeys must be of length 1-63 characters, and cannot start with \"kong\", \"konnect\", \"mesh\", \"kic\", or \"_\"."},"name":{"type":"string","description":"A unique user-defined name of the policy."},"parentPolicyId":{"type":"string","description":"The unique identifier of the parent schema validation policy, if any. Requires replacement if changed."},"updatedAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity update date."},"virtualClusterId":{"type":"string","description":"The ID of the Virtual Cluster.\n"}},"type":"object","required":["condition","config","createdAt","description","enabled","gatewayId","labels","name","updatedAt","virtualClusterId"],"inputProperties":{"condition":{"type":"string","description":"A string containing the boolean expression that determines whether the policy is applied.\n"},"description":{"type":"string","description":"A human-readable description of the policy. Default: \"\""},"enabled":{"type":"boolean","description":"Whether the policy is enabled. Default: true"},"gatewayId":{"type":"string","description":"The UUID of your Gateway.\n"},"labels":{"type":"object","additionalProperties":{"type":"string"},"description":"Labels store metadata of an entity that can be used for filtering an entity list or for searching across entity types. \n\nKeys must be of length 1-63 characters, and cannot start with \"kong\", \"konnect\", \"mesh\", \"kic\", or \"_\"."},"name":{"type":"string","description":"A unique user-defined name of the policy."},"parentPolicyId":{"type":"string","description":"The unique identifier of the parent schema validation policy, if any. Requires replacement if changed."},"virtualClusterId":{"type":"string","description":"The ID of the Virtual Cluster.\n"}},"requiredInputs":["gatewayId","virtualClusterId"],"stateInputs":{"description":"Input properties used for looking up and filtering EventGatewayConsumePolicySkipRecord resources.\n","properties":{"condition":{"type":"string","description":"A string containing the boolean expression that determines whether the policy is applied.\n"},"config":{"$ref":"#/types/konnect:index%2FEventGatewayConsumePolicySkipRecordConfig:EventGatewayConsumePolicySkipRecordConfig","description":"The configuration of the policy."},"createdAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity creation date."},"description":{"type":"string","description":"A human-readable description of the policy. Default: \"\""},"enabled":{"type":"boolean","description":"Whether the policy is enabled. Default: true"},"gatewayId":{"type":"string","description":"The UUID of your Gateway.\n"},"labels":{"type":"object","additionalProperties":{"type":"string"},"description":"Labels store metadata of an entity that can be used for filtering an entity list or for searching across entity types. \n\nKeys must be of length 1-63 characters, and cannot start with \"kong\", \"konnect\", \"mesh\", \"kic\", or \"_\"."},"name":{"type":"string","description":"A unique user-defined name of the policy."},"parentPolicyId":{"type":"string","description":"The unique identifier of the parent schema validation policy, if any. Requires replacement if changed."},"updatedAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity update date."},"virtualClusterId":{"type":"string","description":"The ID of the Virtual Cluster.\n"}},"type":"object"}},"konnect:index/eventGatewayDataPlaneCertificate:EventGatewayDataPlaneCertificate":{"description":"EventGatewayDataPlaneCertificate Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myEventgatewaydataplanecertificate = new konnect.EventGatewayDataPlaneCertificate(\"my_eventgatewaydataplanecertificate\", {\n    certificate: \"...my_certificate...\",\n    description: \"...my_description...\",\n    gatewayId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    name: \"...my_name...\",\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_eventgatewaydataplanecertificate = konnect.EventGatewayDataPlaneCertificate(\"my_eventgatewaydataplanecertificate\",\n    certificate=\"...my_certificate...\",\n    description=\"...my_description...\",\n    gateway_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    name=\"...my_name...\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myEventgatewaydataplanecertificate = new Konnect.EventGatewayDataPlaneCertificate(\"my_eventgatewaydataplanecertificate\", new()\n    {\n        Certificate = \"...my_certificate...\",\n        Description = \"...my_description...\",\n        GatewayId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        Name = \"...my_name...\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewEventGatewayDataPlaneCertificate(ctx, \"my_eventgatewaydataplanecertificate\", \u0026konnect.EventGatewayDataPlaneCertificateArgs{\n\t\t\tCertificate: pulumi.String(\"...my_certificate...\"),\n\t\t\tDescription: pulumi.String(\"...my_description...\"),\n\t\t\tGatewayId:   pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tName:        pulumi.String(\"...my_name...\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.EventGatewayDataPlaneCertificate;\nimport com.pulumi.konnect.EventGatewayDataPlaneCertificateArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myEventgatewaydataplanecertificate = new EventGatewayDataPlaneCertificate(\"myEventgatewaydataplanecertificate\", EventGatewayDataPlaneCertificateArgs.builder()\n            .certificate(\"...my_certificate...\")\n            .description(\"...my_description...\")\n            .gatewayId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .name(\"...my_name...\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myEventgatewaydataplanecertificate:\n    type: konnect:EventGatewayDataPlaneCertificate\n    name: my_eventgatewaydataplanecertificate\n    properties:\n      certificate: '...my_certificate...'\n      description: '...my_description...'\n      gatewayId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      name: '...my_name...'\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_event_gateway_data_plane_certificate.my_konnect_event_gateway_data_plane_certificate\n\n  id = jsonencode({\n\n    gateway_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"...\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/eventGatewayDataPlaneCertificate:EventGatewayDataPlaneCertificate my_konnect_event_gateway_data_plane_certificate '{\"gateway_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"...\"}'\n```\n\n","properties":{"certificate":{"type":"string","description":"JSON escaped string of the certificate.\n"},"createdAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity creation date.\n"},"description":{"type":"string","description":"A description of the certificate.\n"},"gatewayId":{"type":"string","description":"The UUID of your Gateway.\n"},"metadata":{"$ref":"#/types/konnect:index%2FEventGatewayDataPlaneCertificateMetadata:EventGatewayDataPlaneCertificateMetadata","description":"Metadata extracted from a certificate.\n"},"name":{"type":"string","description":"The name to identify of the certificate.\n"},"updatedAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity update date.\n"}},"type":"object","required":["certificate","createdAt","gatewayId","metadata","name","updatedAt"],"inputProperties":{"certificate":{"type":"string","description":"JSON escaped string of the certificate.\n"},"description":{"type":"string","description":"A description of the certificate.\n"},"gatewayId":{"type":"string","description":"The UUID of your Gateway.\n"},"name":{"type":"string","description":"The name to identify of the certificate.\n"}},"requiredInputs":["certificate","gatewayId"],"stateInputs":{"description":"Input properties used for looking up and filtering EventGatewayDataPlaneCertificate resources.\n","properties":{"certificate":{"type":"string","description":"JSON escaped string of the certificate.\n"},"createdAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity creation date.\n"},"description":{"type":"string","description":"A description of the certificate.\n"},"gatewayId":{"type":"string","description":"The UUID of your Gateway.\n"},"metadata":{"$ref":"#/types/konnect:index%2FEventGatewayDataPlaneCertificateMetadata:EventGatewayDataPlaneCertificateMetadata","description":"Metadata extracted from a certificate.\n"},"name":{"type":"string","description":"The name to identify of the certificate.\n"},"updatedAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity update date.\n"}},"type":"object"}},"konnect:index/eventGatewayListener:EventGatewayListener":{"description":"EventGatewayListener Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myEventgatewaylistener = new konnect.EventGatewayListener(\"my_eventgatewaylistener\", {\n    addresses: [\"...\"],\n    description: \"...my_description...\",\n    gatewayId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    labels: {\n        key: \"value\",\n    },\n    name: \"...my_name...\",\n    ports: [\"...\"],\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_eventgatewaylistener = konnect.EventGatewayListener(\"my_eventgatewaylistener\",\n    addresses=[\"...\"],\n    description=\"...my_description...\",\n    gateway_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    labels={\n        \"key\": \"value\",\n    },\n    name=\"...my_name...\",\n    ports=[\"...\"])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myEventgatewaylistener = new Konnect.EventGatewayListener(\"my_eventgatewaylistener\", new()\n    {\n        Addresses = new[]\n        {\n            \"...\",\n        },\n        Description = \"...my_description...\",\n        GatewayId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        Labels = \n        {\n            { \"key\", \"value\" },\n        },\n        Name = \"...my_name...\",\n        Ports = new[]\n        {\n            \"...\",\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewEventGatewayListener(ctx, \"my_eventgatewaylistener\", \u0026konnect.EventGatewayListenerArgs{\n\t\t\tAddresses: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"...\"),\n\t\t\t},\n\t\t\tDescription: pulumi.String(\"...my_description...\"),\n\t\t\tGatewayId:   pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tLabels: pulumi.StringMap{\n\t\t\t\t\"key\": pulumi.String(\"value\"),\n\t\t\t},\n\t\t\tName: pulumi.String(\"...my_name...\"),\n\t\t\tPorts: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"...\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.EventGatewayListener;\nimport com.pulumi.konnect.EventGatewayListenerArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myEventgatewaylistener = new EventGatewayListener(\"myEventgatewaylistener\", EventGatewayListenerArgs.builder()\n            .addresses(\"...\")\n            .description(\"...my_description...\")\n            .gatewayId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .labels(Map.of(\"key\", \"value\"))\n            .name(\"...my_name...\")\n            .ports(\"...\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myEventgatewaylistener:\n    type: konnect:EventGatewayListener\n    name: my_eventgatewaylistener\n    properties:\n      addresses:\n        - '...'\n      description: '...my_description...'\n      gatewayId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      labels:\n        key: value\n      name: '...my_name...'\n      ports:\n        - '...'\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_event_gateway_listener.my_konnect_event_gateway_listener\n\n  id = jsonencode({\n\n    gateway_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"...\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/eventGatewayListener:EventGatewayListener my_konnect_event_gateway_listener '{\"gateway_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"...\"}'\n```\n\n","properties":{"addresses":{"type":"array","items":{"type":"string"},"description":"Which address or addresses to listen on.\n`0.0.0.0` means all addresses on the host.\n`::` means all addresses on the host in IPv6.\n"},"createdAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity creation date."},"description":{"type":"string","description":"A human-readable description of the listener. Default: \"\""},"gatewayId":{"type":"string","description":"The UUID of your Gateway."},"labels":{"type":"object","additionalProperties":{"type":"string"},"description":"Labels store metadata of an entity that can be used for filtering an entity list or for searching across entity types. \n\nKeys must be of length 1-63 characters, and cannot start with \"kong\", \"konnect\", \"mesh\", \"kic\", or \"_\"."},"name":{"type":"string","description":"The unique name of the listener."},"ports":{"type":"array","items":{"type":"string"},"description":"Which port or ports to listen on.\nThere can be multiple ways to define ports:\n  - as a single port, e.g. 9092\n  - as a range of ports, e.g. 9092-9094\n\nIt's possible to combine both, e.g. [9092, \"9093-9095\", 9096]."},"updatedAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity update date."}},"type":"object","required":["addresses","createdAt","description","gatewayId","labels","name","ports","updatedAt"],"inputProperties":{"addresses":{"type":"array","items":{"type":"string"},"description":"Which address or addresses to listen on.\n`0.0.0.0` means all addresses on the host.\n`::` means all addresses on the host in IPv6.\n"},"description":{"type":"string","description":"A human-readable description of the listener. Default: \"\""},"gatewayId":{"type":"string","description":"The UUID of your Gateway."},"labels":{"type":"object","additionalProperties":{"type":"string"},"description":"Labels store metadata of an entity that can be used for filtering an entity list or for searching across entity types. \n\nKeys must be of length 1-63 characters, and cannot start with \"kong\", \"konnect\", \"mesh\", \"kic\", or \"_\"."},"name":{"type":"string","description":"The unique name of the listener."},"ports":{"type":"array","items":{"type":"string"},"description":"Which port or ports to listen on.\nThere can be multiple ways to define ports:\n  - as a single port, e.g. 9092\n  - as a range of ports, e.g. 9092-9094\n\nIt's possible to combine both, e.g. [9092, \"9093-9095\", 9096]."}},"requiredInputs":["addresses","gatewayId","ports"],"stateInputs":{"description":"Input properties used for looking up and filtering EventGatewayListener resources.\n","properties":{"addresses":{"type":"array","items":{"type":"string"},"description":"Which address or addresses to listen on.\n`0.0.0.0` means all addresses on the host.\n`::` means all addresses on the host in IPv6.\n"},"createdAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity creation date."},"description":{"type":"string","description":"A human-readable description of the listener. Default: \"\""},"gatewayId":{"type":"string","description":"The UUID of your Gateway."},"labels":{"type":"object","additionalProperties":{"type":"string"},"description":"Labels store metadata of an entity that can be used for filtering an entity list or for searching across entity types. \n\nKeys must be of length 1-63 characters, and cannot start with \"kong\", \"konnect\", \"mesh\", \"kic\", or \"_\"."},"name":{"type":"string","description":"The unique name of the listener."},"ports":{"type":"array","items":{"type":"string"},"description":"Which port or ports to listen on.\nThere can be multiple ways to define ports:\n  - as a single port, e.g. 9092\n  - as a range of ports, e.g. 9092-9094\n\nIt's possible to combine both, e.g. [9092, \"9093-9095\", 9096]."},"updatedAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity update date."}},"type":"object"}},"konnect:index/eventGatewayListenerPolicyForwardToVirtualCluster:EventGatewayListenerPolicyForwardToVirtualCluster":{"description":"EventGatewayListenerPolicyForwardToVirtualCluster Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myEventgatewaylistenerpolicyforwardtovirtualcluster = new konnect.EventGatewayListenerPolicyForwardToVirtualCluster(\"my_eventgatewaylistenerpolicyforwardtovirtualcluster\", {\n    config: {\n        sni: {\n            advertisedPort: 61579,\n            brokerHostFormat: {\n                type: \"per_cluster_suffix\",\n            },\n            sniSuffix: \".example.com\",\n        },\n    },\n    description: \"...my_description...\",\n    enabled: false,\n    gatewayId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    labels: {\n        key: \"value\",\n    },\n    listenerId: \"bdaf2651-42bc-48ec-b29f-f4890f7f07fc\",\n    name: \"...my_name...\",\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_eventgatewaylistenerpolicyforwardtovirtualcluster = konnect.EventGatewayListenerPolicyForwardToVirtualCluster(\"my_eventgatewaylistenerpolicyforwardtovirtualcluster\",\n    config={\n        \"sni\": {\n            \"advertised_port\": 61579,\n            \"broker_host_format\": {\n                \"type\": \"per_cluster_suffix\",\n            },\n            \"sni_suffix\": \".example.com\",\n        },\n    },\n    description=\"...my_description...\",\n    enabled=False,\n    gateway_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    labels={\n        \"key\": \"value\",\n    },\n    listener_id=\"bdaf2651-42bc-48ec-b29f-f4890f7f07fc\",\n    name=\"...my_name...\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myEventgatewaylistenerpolicyforwardtovirtualcluster = new Konnect.EventGatewayListenerPolicyForwardToVirtualCluster(\"my_eventgatewaylistenerpolicyforwardtovirtualcluster\", new()\n    {\n        Config = new Konnect.Inputs.EventGatewayListenerPolicyForwardToVirtualClusterConfigArgs\n        {\n            Sni = new Konnect.Inputs.EventGatewayListenerPolicyForwardToVirtualClusterConfigSniArgs\n            {\n                AdvertisedPort = 61579,\n                BrokerHostFormat = new Konnect.Inputs.EventGatewayListenerPolicyForwardToVirtualClusterConfigSniBrokerHostFormatArgs\n                {\n                    Type = \"per_cluster_suffix\",\n                },\n                SniSuffix = \".example.com\",\n            },\n        },\n        Description = \"...my_description...\",\n        Enabled = false,\n        GatewayId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        Labels = \n        {\n            { \"key\", \"value\" },\n        },\n        ListenerId = \"bdaf2651-42bc-48ec-b29f-f4890f7f07fc\",\n        Name = \"...my_name...\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewEventGatewayListenerPolicyForwardToVirtualCluster(ctx, \"my_eventgatewaylistenerpolicyforwardtovirtualcluster\", \u0026konnect.EventGatewayListenerPolicyForwardToVirtualClusterArgs{\n\t\t\tConfig: \u0026konnect.EventGatewayListenerPolicyForwardToVirtualClusterConfigArgs{\n\t\t\t\tSni: \u0026konnect.EventGatewayListenerPolicyForwardToVirtualClusterConfigSniArgs{\n\t\t\t\t\tAdvertisedPort: pulumi.Float64(61579),\n\t\t\t\t\tBrokerHostFormat: \u0026konnect.EventGatewayListenerPolicyForwardToVirtualClusterConfigSniBrokerHostFormatArgs{\n\t\t\t\t\t\tType: pulumi.String(\"per_cluster_suffix\"),\n\t\t\t\t\t},\n\t\t\t\t\tSniSuffix: pulumi.String(\".example.com\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tDescription: pulumi.String(\"...my_description...\"),\n\t\t\tEnabled:     pulumi.Bool(false),\n\t\t\tGatewayId:   pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tLabels: pulumi.StringMap{\n\t\t\t\t\"key\": pulumi.String(\"value\"),\n\t\t\t},\n\t\t\tListenerId: pulumi.String(\"bdaf2651-42bc-48ec-b29f-f4890f7f07fc\"),\n\t\t\tName:       pulumi.String(\"...my_name...\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.EventGatewayListenerPolicyForwardToVirtualCluster;\nimport com.pulumi.konnect.EventGatewayListenerPolicyForwardToVirtualClusterArgs;\nimport com.pulumi.konnect.inputs.EventGatewayListenerPolicyForwardToVirtualClusterConfigArgs;\nimport com.pulumi.konnect.inputs.EventGatewayListenerPolicyForwardToVirtualClusterConfigSniArgs;\nimport com.pulumi.konnect.inputs.EventGatewayListenerPolicyForwardToVirtualClusterConfigSniBrokerHostFormatArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myEventgatewaylistenerpolicyforwardtovirtualcluster = new EventGatewayListenerPolicyForwardToVirtualCluster(\"myEventgatewaylistenerpolicyforwardtovirtualcluster\", EventGatewayListenerPolicyForwardToVirtualClusterArgs.builder()\n            .config(EventGatewayListenerPolicyForwardToVirtualClusterConfigArgs.builder()\n                .sni(EventGatewayListenerPolicyForwardToVirtualClusterConfigSniArgs.builder()\n                    .advertisedPort(61579.0)\n                    .brokerHostFormat(EventGatewayListenerPolicyForwardToVirtualClusterConfigSniBrokerHostFormatArgs.builder()\n                        .type(\"per_cluster_suffix\")\n                        .build())\n                    .sniSuffix(\".example.com\")\n                    .build())\n                .build())\n            .description(\"...my_description...\")\n            .enabled(false)\n            .gatewayId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .labels(Map.of(\"key\", \"value\"))\n            .listenerId(\"bdaf2651-42bc-48ec-b29f-f4890f7f07fc\")\n            .name(\"...my_name...\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myEventgatewaylistenerpolicyforwardtovirtualcluster:\n    type: konnect:EventGatewayListenerPolicyForwardToVirtualCluster\n    name: my_eventgatewaylistenerpolicyforwardtovirtualcluster\n    properties:\n      config:\n        sni:\n          advertisedPort: 61579\n          brokerHostFormat:\n            type: per_cluster_suffix\n          sniSuffix: .example.com\n      description: '...my_description...'\n      enabled: false\n      gatewayId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      labels:\n        key: value\n      listenerId: bdaf2651-42bc-48ec-b29f-f4890f7f07fc\n      name: '...my_name...'\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_event_gateway_listener_policy_forward_to_virtual_cluster.my_konnect_event_gateway_listener_policy_forward_to_virtual_cluster\n\n  id = jsonencode({\n\n    gateway_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    listener_id = \"...\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/eventGatewayListenerPolicyForwardToVirtualCluster:EventGatewayListenerPolicyForwardToVirtualCluster my_konnect_event_gateway_listener_policy_forward_to_virtual_cluster '{\"gateway_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"listener_id\": \"...\"}'\n```\n\n","properties":{"config":{"$ref":"#/types/konnect:index%2FEventGatewayListenerPolicyForwardToVirtualClusterConfig:EventGatewayListenerPolicyForwardToVirtualClusterConfig","description":"The configuration of the policy.\n"},"createdAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity creation date."},"description":{"type":"string","description":"A human-readable description of the policy. Default: \"\"\n"},"enabled":{"type":"boolean","description":"Whether the policy is enabled. Default: true\n"},"gatewayId":{"type":"string","description":"The UUID of your Gateway.\n"},"labels":{"type":"object","additionalProperties":{"type":"string"},"description":"Labels store metadata of an entity that can be used for filtering an entity list or for searching across entity types.\n"},"listenerId":{"type":"string","description":"The ID of the Event Gateway Listener.\n"},"name":{"type":"string","description":"A unique user-defined name of the policy."},"parentPolicyId":{"type":"string","description":"The unique identifier of the parent policy, if any."},"updatedAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity update date."}},"type":"object","required":["config","createdAt","description","enabled","gatewayId","labels","listenerId","name","parentPolicyId","updatedAt"],"inputProperties":{"config":{"$ref":"#/types/konnect:index%2FEventGatewayListenerPolicyForwardToVirtualClusterConfig:EventGatewayListenerPolicyForwardToVirtualClusterConfig","description":"The configuration of the policy.\n"},"description":{"type":"string","description":"A human-readable description of the policy. Default: \"\"\n"},"enabled":{"type":"boolean","description":"Whether the policy is enabled. Default: true\n"},"gatewayId":{"type":"string","description":"The UUID of your Gateway.\n"},"labels":{"type":"object","additionalProperties":{"type":"string"},"description":"Labels store metadata of an entity that can be used for filtering an entity list or for searching across entity types.\n"},"listenerId":{"type":"string","description":"The ID of the Event Gateway Listener.\n"},"name":{"type":"string","description":"A unique user-defined name of the policy."}},"requiredInputs":["config","gatewayId","listenerId"],"stateInputs":{"description":"Input properties used for looking up and filtering EventGatewayListenerPolicyForwardToVirtualCluster resources.\n","properties":{"config":{"$ref":"#/types/konnect:index%2FEventGatewayListenerPolicyForwardToVirtualClusterConfig:EventGatewayListenerPolicyForwardToVirtualClusterConfig","description":"The configuration of the policy.\n"},"createdAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity creation date."},"description":{"type":"string","description":"A human-readable description of the policy. Default: \"\"\n"},"enabled":{"type":"boolean","description":"Whether the policy is enabled. Default: true\n"},"gatewayId":{"type":"string","description":"The UUID of your Gateway.\n"},"labels":{"type":"object","additionalProperties":{"type":"string"},"description":"Labels store metadata of an entity that can be used for filtering an entity list or for searching across entity types.\n"},"listenerId":{"type":"string","description":"The ID of the Event Gateway Listener.\n"},"name":{"type":"string","description":"A unique user-defined name of the policy."},"parentPolicyId":{"type":"string","description":"The unique identifier of the parent policy, if any."},"updatedAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity update date."}},"type":"object"}},"konnect:index/eventGatewayListenerPolicyTlsServer:EventGatewayListenerPolicyTlsServer":{"description":"EventGatewayListenerPolicyTLSServer Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myEventgatewaylistenerpolicytlsserver = new konnect.EventGatewayListenerPolicyTlsServer(\"my_eventgatewaylistenerpolicytlsserver\", {\n    config: {\n        allowPlaintext: true,\n        certificates: [{\n            certificate: \"...my_certificate...\",\n            key: \"${vault.env['MY_ENV_VAR']}\",\n        }],\n        versions: {\n            max: \"TLSv1.3\",\n            min: \"TLSv1.3\",\n        },\n    },\n    description: \"...my_description...\",\n    enabled: true,\n    gatewayId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    labels: {\n        key: \"value\",\n    },\n    listenerId: \"f7d7b9be-5608-44c3-8f6a-46e055797c31\",\n    name: \"...my_name...\",\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_eventgatewaylistenerpolicytlsserver = konnect.EventGatewayListenerPolicyTlsServer(\"my_eventgatewaylistenerpolicytlsserver\",\n    config={\n        \"allow_plaintext\": True,\n        \"certificates\": [{\n            \"certificate\": \"...my_certificate...\",\n            \"key\": \"${vault.env['MY_ENV_VAR']}\",\n        }],\n        \"versions\": {\n            \"max\": \"TLSv1.3\",\n            \"min\": \"TLSv1.3\",\n        },\n    },\n    description=\"...my_description...\",\n    enabled=True,\n    gateway_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    labels={\n        \"key\": \"value\",\n    },\n    listener_id=\"f7d7b9be-5608-44c3-8f6a-46e055797c31\",\n    name=\"...my_name...\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myEventgatewaylistenerpolicytlsserver = new Konnect.EventGatewayListenerPolicyTlsServer(\"my_eventgatewaylistenerpolicytlsserver\", new()\n    {\n        Config = new Konnect.Inputs.EventGatewayListenerPolicyTlsServerConfigArgs\n        {\n            AllowPlaintext = true,\n            Certificates = new[]\n            {\n                new Konnect.Inputs.EventGatewayListenerPolicyTlsServerConfigCertificateArgs\n                {\n                    Certificate = \"...my_certificate...\",\n                    Key = \"${vault.env['MY_ENV_VAR']}\",\n                },\n            },\n            Versions = new Konnect.Inputs.EventGatewayListenerPolicyTlsServerConfigVersionsArgs\n            {\n                Max = \"TLSv1.3\",\n                Min = \"TLSv1.3\",\n            },\n        },\n        Description = \"...my_description...\",\n        Enabled = true,\n        GatewayId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        Labels = \n        {\n            { \"key\", \"value\" },\n        },\n        ListenerId = \"f7d7b9be-5608-44c3-8f6a-46e055797c31\",\n        Name = \"...my_name...\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewEventGatewayListenerPolicyTlsServer(ctx, \"my_eventgatewaylistenerpolicytlsserver\", \u0026konnect.EventGatewayListenerPolicyTlsServerArgs{\n\t\t\tConfig: \u0026konnect.EventGatewayListenerPolicyTlsServerConfigArgs{\n\t\t\t\tAllowPlaintext: pulumi.Bool(true),\n\t\t\t\tCertificates: konnect.EventGatewayListenerPolicyTlsServerConfigCertificateArray{\n\t\t\t\t\t\u0026konnect.EventGatewayListenerPolicyTlsServerConfigCertificateArgs{\n\t\t\t\t\t\tCertificate: pulumi.String(\"...my_certificate...\"),\n\t\t\t\t\t\tKey:         pulumi.String(\"${vault.env['MY_ENV_VAR']}\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tVersions: \u0026konnect.EventGatewayListenerPolicyTlsServerConfigVersionsArgs{\n\t\t\t\t\tMax: pulumi.String(\"TLSv1.3\"),\n\t\t\t\t\tMin: pulumi.String(\"TLSv1.3\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tDescription: pulumi.String(\"...my_description...\"),\n\t\t\tEnabled:     pulumi.Bool(true),\n\t\t\tGatewayId:   pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tLabels: pulumi.StringMap{\n\t\t\t\t\"key\": pulumi.String(\"value\"),\n\t\t\t},\n\t\t\tListenerId: pulumi.String(\"f7d7b9be-5608-44c3-8f6a-46e055797c31\"),\n\t\t\tName:       pulumi.String(\"...my_name...\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.EventGatewayListenerPolicyTlsServer;\nimport com.pulumi.konnect.EventGatewayListenerPolicyTlsServerArgs;\nimport com.pulumi.konnect.inputs.EventGatewayListenerPolicyTlsServerConfigArgs;\nimport com.pulumi.konnect.inputs.EventGatewayListenerPolicyTlsServerConfigVersionsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myEventgatewaylistenerpolicytlsserver = new EventGatewayListenerPolicyTlsServer(\"myEventgatewaylistenerpolicytlsserver\", EventGatewayListenerPolicyTlsServerArgs.builder()\n            .config(EventGatewayListenerPolicyTlsServerConfigArgs.builder()\n                .allowPlaintext(true)\n                .certificates(EventGatewayListenerPolicyTlsServerConfigCertificateArgs.builder()\n                    .certificate(\"...my_certificate...\")\n                    .key(\"${vault.env['MY_ENV_VAR']}\")\n                    .build())\n                .versions(EventGatewayListenerPolicyTlsServerConfigVersionsArgs.builder()\n                    .max(\"TLSv1.3\")\n                    .min(\"TLSv1.3\")\n                    .build())\n                .build())\n            .description(\"...my_description...\")\n            .enabled(true)\n            .gatewayId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .labels(Map.of(\"key\", \"value\"))\n            .listenerId(\"f7d7b9be-5608-44c3-8f6a-46e055797c31\")\n            .name(\"...my_name...\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myEventgatewaylistenerpolicytlsserver:\n    type: konnect:EventGatewayListenerPolicyTlsServer\n    name: my_eventgatewaylistenerpolicytlsserver\n    properties:\n      config:\n        allowPlaintext: true\n        certificates:\n          - certificate: '...my_certificate...'\n            key: $${vault.env['MY_ENV_VAR']}\n        versions:\n          max: TLSv1.3\n          min: TLSv1.3\n      description: '...my_description...'\n      enabled: true\n      gatewayId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      labels:\n        key: value\n      listenerId: f7d7b9be-5608-44c3-8f6a-46e055797c31\n      name: '...my_name...'\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_event_gateway_listener_policy_tls_server.my_konnect_event_gateway_listener_policy_tls_server\n\n  id = jsonencode({\n\n    gateway_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    listener_id = \"...\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/eventGatewayListenerPolicyTlsServer:EventGatewayListenerPolicyTlsServer my_konnect_event_gateway_listener_policy_tls_server '{\"gateway_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"listener_id\": \"...\"}'\n```\n\n","properties":{"config":{"$ref":"#/types/konnect:index%2FEventGatewayListenerPolicyTlsServerConfig:EventGatewayListenerPolicyTlsServerConfig","description":"The configuration of the policy.\n"},"createdAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity creation date."},"description":{"type":"string","description":"A human-readable description of the policy. Default: \"\"\n"},"enabled":{"type":"boolean","description":"Whether the policy is enabled. Default: true\n"},"gatewayId":{"type":"string","description":"The UUID of your Gateway.\n"},"labels":{"type":"object","additionalProperties":{"type":"string"},"description":"Labels store metadata of an entity that can be used for filtering an entity list or for searching across entity types.\n"},"listenerId":{"type":"string","description":"The ID of the Event Gateway Listener.\n"},"name":{"type":"string","description":"A unique user-defined name of the policy."},"parentPolicyId":{"type":"string","description":"The unique identifier of the parent policy, if any."},"updatedAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity update date."}},"type":"object","required":["config","createdAt","description","enabled","gatewayId","labels","listenerId","name","parentPolicyId","updatedAt"],"inputProperties":{"config":{"$ref":"#/types/konnect:index%2FEventGatewayListenerPolicyTlsServerConfig:EventGatewayListenerPolicyTlsServerConfig","description":"The configuration of the policy.\n"},"description":{"type":"string","description":"A human-readable description of the policy. Default: \"\"\n"},"enabled":{"type":"boolean","description":"Whether the policy is enabled. Default: true\n"},"gatewayId":{"type":"string","description":"The UUID of your Gateway.\n"},"labels":{"type":"object","additionalProperties":{"type":"string"},"description":"Labels store metadata of an entity that can be used for filtering an entity list or for searching across entity types.\n"},"listenerId":{"type":"string","description":"The ID of the Event Gateway Listener.\n"},"name":{"type":"string","description":"A unique user-defined name of the policy."}},"requiredInputs":["config","gatewayId","listenerId"],"stateInputs":{"description":"Input properties used for looking up and filtering EventGatewayListenerPolicyTlsServer resources.\n","properties":{"config":{"$ref":"#/types/konnect:index%2FEventGatewayListenerPolicyTlsServerConfig:EventGatewayListenerPolicyTlsServerConfig","description":"The configuration of the policy.\n"},"createdAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity creation date."},"description":{"type":"string","description":"A human-readable description of the policy. Default: \"\"\n"},"enabled":{"type":"boolean","description":"Whether the policy is enabled. Default: true\n"},"gatewayId":{"type":"string","description":"The UUID of your Gateway.\n"},"labels":{"type":"object","additionalProperties":{"type":"string"},"description":"Labels store metadata of an entity that can be used for filtering an entity list or for searching across entity types.\n"},"listenerId":{"type":"string","description":"The ID of the Event Gateway Listener.\n"},"name":{"type":"string","description":"A unique user-defined name of the policy."},"parentPolicyId":{"type":"string","description":"The unique identifier of the parent policy, if any."},"updatedAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity update date."}},"type":"object"}},"konnect:index/eventGatewayProducePolicyEncrypt:EventGatewayProducePolicyEncrypt":{"description":"EventGatewayProducePolicyEncrypt Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myEventgatewayproducepolicyencrypt = new konnect.EventGatewayProducePolicyEncrypt(\"my_eventgatewayproducepolicyencrypt\", {\n    condition: \"context.topic.name.endsWith(\\\"my_suffix\\\") \u0026\u0026 records.headers[\\\"x-flag\\\"] == \\\"a-value\\\"\",\n    config: {\n        encryptionKey: {\n            static: {\n                key: {\n                    id: \"6e8740c2-fb76-4269-aeef-660d701c6ea1\",\n                },\n            },\n        },\n        failureMode: \"error\",\n        partOfRecords: [\"key\"],\n    },\n    description: \"...my_description...\",\n    enabled: true,\n    gatewayId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    labels: {\n        key: \"value\",\n    },\n    name: \"...my_name...\",\n    virtualClusterId: \"6ea3798e-38ca-4c28-a68e-1a577e478f2c\",\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_eventgatewayproducepolicyencrypt = konnect.EventGatewayProducePolicyEncrypt(\"my_eventgatewayproducepolicyencrypt\",\n    condition=\"context.topic.name.endsWith(\\\"my_suffix\\\") \u0026\u0026 records.headers[\\\"x-flag\\\"] == \\\"a-value\\\"\",\n    config={\n        \"encryption_key\": {\n            \"static\": {\n                \"key\": {\n                    \"id\": \"6e8740c2-fb76-4269-aeef-660d701c6ea1\",\n                },\n            },\n        },\n        \"failure_mode\": \"error\",\n        \"part_of_records\": [\"key\"],\n    },\n    description=\"...my_description...\",\n    enabled=True,\n    gateway_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    labels={\n        \"key\": \"value\",\n    },\n    name=\"...my_name...\",\n    virtual_cluster_id=\"6ea3798e-38ca-4c28-a68e-1a577e478f2c\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myEventgatewayproducepolicyencrypt = new Konnect.EventGatewayProducePolicyEncrypt(\"my_eventgatewayproducepolicyencrypt\", new()\n    {\n        Condition = \"context.topic.name.endsWith(\\\"my_suffix\\\") \u0026\u0026 records.headers[\\\"x-flag\\\"] == \\\"a-value\\\"\",\n        Config = new Konnect.Inputs.EventGatewayProducePolicyEncryptConfigArgs\n        {\n            EncryptionKey = new Konnect.Inputs.EventGatewayProducePolicyEncryptConfigEncryptionKeyArgs\n            {\n                Static = new Konnect.Inputs.EventGatewayProducePolicyEncryptConfigEncryptionKeyStaticArgs\n                {\n                    Key = new Konnect.Inputs.EventGatewayProducePolicyEncryptConfigEncryptionKeyStaticKeyArgs\n                    {\n                        Id = \"6e8740c2-fb76-4269-aeef-660d701c6ea1\",\n                    },\n                },\n            },\n            FailureMode = \"error\",\n            PartOfRecords = new[]\n            {\n                \"key\",\n            },\n        },\n        Description = \"...my_description...\",\n        Enabled = true,\n        GatewayId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        Labels = \n        {\n            { \"key\", \"value\" },\n        },\n        Name = \"...my_name...\",\n        VirtualClusterId = \"6ea3798e-38ca-4c28-a68e-1a577e478f2c\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewEventGatewayProducePolicyEncrypt(ctx, \"my_eventgatewayproducepolicyencrypt\", \u0026konnect.EventGatewayProducePolicyEncryptArgs{\n\t\t\tCondition: pulumi.String(\"context.topic.name.endsWith(\\\"my_suffix\\\") \u0026\u0026 records.headers[\\\"x-flag\\\"] == \\\"a-value\\\"\"),\n\t\t\tConfig: \u0026konnect.EventGatewayProducePolicyEncryptConfigArgs{\n\t\t\t\tEncryptionKey: \u0026konnect.EventGatewayProducePolicyEncryptConfigEncryptionKeyArgs{\n\t\t\t\t\tStatic: \u0026konnect.EventGatewayProducePolicyEncryptConfigEncryptionKeyStaticArgs{\n\t\t\t\t\t\tKey: \u0026konnect.EventGatewayProducePolicyEncryptConfigEncryptionKeyStaticKeyArgs{\n\t\t\t\t\t\t\tId: pulumi.String(\"6e8740c2-fb76-4269-aeef-660d701c6ea1\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tFailureMode: pulumi.String(\"error\"),\n\t\t\t\tPartOfRecords: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"key\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tDescription: pulumi.String(\"...my_description...\"),\n\t\t\tEnabled:     pulumi.Bool(true),\n\t\t\tGatewayId:   pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tLabels: pulumi.StringMap{\n\t\t\t\t\"key\": pulumi.String(\"value\"),\n\t\t\t},\n\t\t\tName:             pulumi.String(\"...my_name...\"),\n\t\t\tVirtualClusterId: pulumi.String(\"6ea3798e-38ca-4c28-a68e-1a577e478f2c\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.EventGatewayProducePolicyEncrypt;\nimport com.pulumi.konnect.EventGatewayProducePolicyEncryptArgs;\nimport com.pulumi.konnect.inputs.EventGatewayProducePolicyEncryptConfigArgs;\nimport com.pulumi.konnect.inputs.EventGatewayProducePolicyEncryptConfigEncryptionKeyArgs;\nimport com.pulumi.konnect.inputs.EventGatewayProducePolicyEncryptConfigEncryptionKeyStaticArgs;\nimport com.pulumi.konnect.inputs.EventGatewayProducePolicyEncryptConfigEncryptionKeyStaticKeyArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myEventgatewayproducepolicyencrypt = new EventGatewayProducePolicyEncrypt(\"myEventgatewayproducepolicyencrypt\", EventGatewayProducePolicyEncryptArgs.builder()\n            .condition(\"context.topic.name.endsWith(\\\"my_suffix\\\") \u0026\u0026 records.headers[\\\"x-flag\\\"] == \\\"a-value\\\"\")\n            .config(EventGatewayProducePolicyEncryptConfigArgs.builder()\n                .encryptionKey(EventGatewayProducePolicyEncryptConfigEncryptionKeyArgs.builder()\n                    .static_(EventGatewayProducePolicyEncryptConfigEncryptionKeyStaticArgs.builder()\n                        .key(EventGatewayProducePolicyEncryptConfigEncryptionKeyStaticKeyArgs.builder()\n                            .id(\"6e8740c2-fb76-4269-aeef-660d701c6ea1\")\n                            .build())\n                        .build())\n                    .build())\n                .failureMode(\"error\")\n                .partOfRecords(\"key\")\n                .build())\n            .description(\"...my_description...\")\n            .enabled(true)\n            .gatewayId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .labels(Map.of(\"key\", \"value\"))\n            .name(\"...my_name...\")\n            .virtualClusterId(\"6ea3798e-38ca-4c28-a68e-1a577e478f2c\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myEventgatewayproducepolicyencrypt:\n    type: konnect:EventGatewayProducePolicyEncrypt\n    name: my_eventgatewayproducepolicyencrypt\n    properties:\n      condition: context.topic.name.endsWith(\"my_suffix\") \u0026\u0026 records.headers[\"x-flag\"] == \"a-value\"\n      config:\n        encryptionKey:\n          static:\n            key:\n              id: 6e8740c2-fb76-4269-aeef-660d701c6ea1\n        failureMode: error\n        partOfRecords:\n          - key\n      description: '...my_description...'\n      enabled: true\n      gatewayId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      labels:\n        key: value\n      name: '...my_name...'\n      virtualClusterId: 6ea3798e-38ca-4c28-a68e-1a577e478f2c\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_event_gateway_produce_policy_encrypt.my_konnect_event_gateway_produce_policy_encrypt\n\n  id = jsonencode({\n\n    gateway_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    virtual_cluster_id = \"...\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/eventGatewayProducePolicyEncrypt:EventGatewayProducePolicyEncrypt my_konnect_event_gateway_produce_policy_encrypt '{\"gateway_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"virtual_cluster_id\": \"...\"}'\n```\n\n","properties":{"condition":{"type":"string","description":"A string containing the boolean expression that determines whether the policy is applied. Default: \"\"\n"},"config":{"$ref":"#/types/konnect:index%2FEventGatewayProducePolicyEncryptConfig:EventGatewayProducePolicyEncryptConfig","description":"The configuration of the encrypt policy.\n"},"createdAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity creation date."},"description":{"type":"string","description":"A human-readable description of the policy. Default: \"\"\n"},"enabled":{"type":"boolean","description":"Whether the policy is enabled. Default: true\n"},"gatewayId":{"type":"string","description":"The UUID of your Gateway.\n"},"labels":{"type":"object","additionalProperties":{"type":"string"},"description":"Labels store metadata of an entity that can be used for filtering an entity list or for searching across entity types.\n"},"name":{"type":"string","description":"A unique user-defined name of the policy."},"parentPolicyId":{"type":"string","description":"The unique identifier of the parent policy, if any."},"updatedAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity update date."},"virtualClusterId":{"type":"string","description":"The ID of the Virtual Cluster.\n"}},"type":"object","required":["condition","config","createdAt","description","enabled","gatewayId","labels","name","parentPolicyId","updatedAt","virtualClusterId"],"inputProperties":{"condition":{"type":"string","description":"A string containing the boolean expression that determines whether the policy is applied. Default: \"\"\n"},"config":{"$ref":"#/types/konnect:index%2FEventGatewayProducePolicyEncryptConfig:EventGatewayProducePolicyEncryptConfig","description":"The configuration of the encrypt policy.\n"},"description":{"type":"string","description":"A human-readable description of the policy. Default: \"\"\n"},"enabled":{"type":"boolean","description":"Whether the policy is enabled. Default: true\n"},"gatewayId":{"type":"string","description":"The UUID of your Gateway.\n"},"labels":{"type":"object","additionalProperties":{"type":"string"},"description":"Labels store metadata of an entity that can be used for filtering an entity list or for searching across entity types.\n"},"name":{"type":"string","description":"A unique user-defined name of the policy."},"virtualClusterId":{"type":"string","description":"The ID of the Virtual Cluster.\n"}},"requiredInputs":["config","gatewayId","virtualClusterId"],"stateInputs":{"description":"Input properties used for looking up and filtering EventGatewayProducePolicyEncrypt resources.\n","properties":{"condition":{"type":"string","description":"A string containing the boolean expression that determines whether the policy is applied. Default: \"\"\n"},"config":{"$ref":"#/types/konnect:index%2FEventGatewayProducePolicyEncryptConfig:EventGatewayProducePolicyEncryptConfig","description":"The configuration of the encrypt policy.\n"},"createdAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity creation date."},"description":{"type":"string","description":"A human-readable description of the policy. Default: \"\"\n"},"enabled":{"type":"boolean","description":"Whether the policy is enabled. Default: true\n"},"gatewayId":{"type":"string","description":"The UUID of your Gateway.\n"},"labels":{"type":"object","additionalProperties":{"type":"string"},"description":"Labels store metadata of an entity that can be used for filtering an entity list or for searching across entity types.\n"},"name":{"type":"string","description":"A unique user-defined name of the policy."},"parentPolicyId":{"type":"string","description":"The unique identifier of the parent policy, if any."},"updatedAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity update date."},"virtualClusterId":{"type":"string","description":"The ID of the Virtual Cluster.\n"}},"type":"object"}},"konnect:index/eventGatewayProducePolicyModifyHeaders:EventGatewayProducePolicyModifyHeaders":{"description":"EventGatewayProducePolicyModifyHeaders Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myEventgatewayproducepolicymodifyheaders = new konnect.EventGatewayProducePolicyModifyHeaders(\"my_eventgatewayproducepolicymodifyheaders\", {\n    condition: \"record.value.content.foo.bar == \\\"a-value\\\"\",\n    config: {\n        actions: [{\n            remove: {\n                key: \"...my_key...\",\n            },\n        }],\n    },\n    description: \"...my_description...\",\n    enabled: true,\n    gatewayId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    labels: {\n        key: \"value\",\n    },\n    name: \"...my_name...\",\n    parentPolicyId: \"72c5778e-34a9-4e94-8979-28eb503453b5\",\n    virtualClusterId: \"d146afe4-4af6-420a-9a5b-d37b93117501\",\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_eventgatewayproducepolicymodifyheaders = konnect.EventGatewayProducePolicyModifyHeaders(\"my_eventgatewayproducepolicymodifyheaders\",\n    condition=\"record.value.content.foo.bar == \\\"a-value\\\"\",\n    config={\n        \"actions\": [{\n            \"remove\": {\n                \"key\": \"...my_key...\",\n            },\n        }],\n    },\n    description=\"...my_description...\",\n    enabled=True,\n    gateway_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    labels={\n        \"key\": \"value\",\n    },\n    name=\"...my_name...\",\n    parent_policy_id=\"72c5778e-34a9-4e94-8979-28eb503453b5\",\n    virtual_cluster_id=\"d146afe4-4af6-420a-9a5b-d37b93117501\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myEventgatewayproducepolicymodifyheaders = new Konnect.EventGatewayProducePolicyModifyHeaders(\"my_eventgatewayproducepolicymodifyheaders\", new()\n    {\n        Condition = \"record.value.content.foo.bar == \\\"a-value\\\"\",\n        Config = new Konnect.Inputs.EventGatewayProducePolicyModifyHeadersConfigArgs\n        {\n            Actions = new[]\n            {\n                new Konnect.Inputs.EventGatewayProducePolicyModifyHeadersConfigActionArgs\n                {\n                    Remove = new Konnect.Inputs.EventGatewayProducePolicyModifyHeadersConfigActionRemoveArgs\n                    {\n                        Key = \"...my_key...\",\n                    },\n                },\n            },\n        },\n        Description = \"...my_description...\",\n        Enabled = true,\n        GatewayId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        Labels = \n        {\n            { \"key\", \"value\" },\n        },\n        Name = \"...my_name...\",\n        ParentPolicyId = \"72c5778e-34a9-4e94-8979-28eb503453b5\",\n        VirtualClusterId = \"d146afe4-4af6-420a-9a5b-d37b93117501\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewEventGatewayProducePolicyModifyHeaders(ctx, \"my_eventgatewayproducepolicymodifyheaders\", \u0026konnect.EventGatewayProducePolicyModifyHeadersArgs{\n\t\t\tCondition: pulumi.String(\"record.value.content.foo.bar == \\\"a-value\\\"\"),\n\t\t\tConfig: \u0026konnect.EventGatewayProducePolicyModifyHeadersConfigArgs{\n\t\t\t\tActions: konnect.EventGatewayProducePolicyModifyHeadersConfigActionArray{\n\t\t\t\t\t\u0026konnect.EventGatewayProducePolicyModifyHeadersConfigActionArgs{\n\t\t\t\t\t\tRemove: \u0026konnect.EventGatewayProducePolicyModifyHeadersConfigActionRemoveArgs{\n\t\t\t\t\t\t\tKey: pulumi.String(\"...my_key...\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tDescription: pulumi.String(\"...my_description...\"),\n\t\t\tEnabled:     pulumi.Bool(true),\n\t\t\tGatewayId:   pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tLabels: pulumi.StringMap{\n\t\t\t\t\"key\": pulumi.String(\"value\"),\n\t\t\t},\n\t\t\tName:             pulumi.String(\"...my_name...\"),\n\t\t\tParentPolicyId:   pulumi.String(\"72c5778e-34a9-4e94-8979-28eb503453b5\"),\n\t\t\tVirtualClusterId: pulumi.String(\"d146afe4-4af6-420a-9a5b-d37b93117501\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.EventGatewayProducePolicyModifyHeaders;\nimport com.pulumi.konnect.EventGatewayProducePolicyModifyHeadersArgs;\nimport com.pulumi.konnect.inputs.EventGatewayProducePolicyModifyHeadersConfigArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myEventgatewayproducepolicymodifyheaders = new EventGatewayProducePolicyModifyHeaders(\"myEventgatewayproducepolicymodifyheaders\", EventGatewayProducePolicyModifyHeadersArgs.builder()\n            .condition(\"record.value.content.foo.bar == \\\"a-value\\\"\")\n            .config(EventGatewayProducePolicyModifyHeadersConfigArgs.builder()\n                .actions(EventGatewayProducePolicyModifyHeadersConfigActionArgs.builder()\n                    .remove(EventGatewayProducePolicyModifyHeadersConfigActionRemoveArgs.builder()\n                        .key(\"...my_key...\")\n                        .build())\n                    .build())\n                .build())\n            .description(\"...my_description...\")\n            .enabled(true)\n            .gatewayId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .labels(Map.of(\"key\", \"value\"))\n            .name(\"...my_name...\")\n            .parentPolicyId(\"72c5778e-34a9-4e94-8979-28eb503453b5\")\n            .virtualClusterId(\"d146afe4-4af6-420a-9a5b-d37b93117501\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myEventgatewayproducepolicymodifyheaders:\n    type: konnect:EventGatewayProducePolicyModifyHeaders\n    name: my_eventgatewayproducepolicymodifyheaders\n    properties:\n      condition: record.value.content.foo.bar == \"a-value\"\n      config:\n        actions:\n          - remove:\n              key: '...my_key...'\n      description: '...my_description...'\n      enabled: true\n      gatewayId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      labels:\n        key: value\n      name: '...my_name...'\n      parentPolicyId: 72c5778e-34a9-4e94-8979-28eb503453b5\n      virtualClusterId: d146afe4-4af6-420a-9a5b-d37b93117501\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_event_gateway_produce_policy_modify_headers.my_konnect_event_gateway_produce_policy_modify_headers\n\n  id = jsonencode({\n\n    gateway_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    virtual_cluster_id = \"...\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/eventGatewayProducePolicyModifyHeaders:EventGatewayProducePolicyModifyHeaders my_konnect_event_gateway_produce_policy_modify_headers '{\"gateway_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"virtual_cluster_id\": \"...\"}'\n```\n\n","properties":{"condition":{"type":"string","description":"A string containing the boolean expression that determines whether the policy is applied.\n"},"config":{"$ref":"#/types/konnect:index%2FEventGatewayProducePolicyModifyHeadersConfig:EventGatewayProducePolicyModifyHeadersConfig","description":"The configuration of the modify headers policy.\n"},"createdAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity creation date."},"description":{"type":"string","description":"A human-readable description of the policy. Default: \"\""},"enabled":{"type":"boolean","description":"Whether the policy is enabled. Default: true"},"gatewayId":{"type":"string","description":"The UUID of your Gateway.\n"},"labels":{"type":"object","additionalProperties":{"type":"string"},"description":"Labels store metadata of an entity that can be used for filtering an entity list or for searching across entity types. \n\nKeys must be of length 1-63 characters, and cannot start with \"kong\", \"konnect\", \"mesh\", \"kic\", or \"_\"."},"name":{"type":"string","description":"A unique user-defined name of the policy."},"parentPolicyId":{"type":"string","description":"The unique identifier of the parent schema validation policy, if any. Requires replacement if changed."},"updatedAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity update date."},"virtualClusterId":{"type":"string","description":"The ID of the Virtual Cluster.\n"}},"type":"object","required":["condition","config","createdAt","description","enabled","gatewayId","labels","name","updatedAt","virtualClusterId"],"inputProperties":{"condition":{"type":"string","description":"A string containing the boolean expression that determines whether the policy is applied.\n"},"config":{"$ref":"#/types/konnect:index%2FEventGatewayProducePolicyModifyHeadersConfig:EventGatewayProducePolicyModifyHeadersConfig","description":"The configuration of the modify headers policy.\n"},"description":{"type":"string","description":"A human-readable description of the policy. Default: \"\""},"enabled":{"type":"boolean","description":"Whether the policy is enabled. Default: true"},"gatewayId":{"type":"string","description":"The UUID of your Gateway.\n"},"labels":{"type":"object","additionalProperties":{"type":"string"},"description":"Labels store metadata of an entity that can be used for filtering an entity list or for searching across entity types. \n\nKeys must be of length 1-63 characters, and cannot start with \"kong\", \"konnect\", \"mesh\", \"kic\", or \"_\"."},"name":{"type":"string","description":"A unique user-defined name of the policy."},"parentPolicyId":{"type":"string","description":"The unique identifier of the parent schema validation policy, if any. Requires replacement if changed."},"virtualClusterId":{"type":"string","description":"The ID of the Virtual Cluster.\n"}},"requiredInputs":["config","gatewayId","virtualClusterId"],"stateInputs":{"description":"Input properties used for looking up and filtering EventGatewayProducePolicyModifyHeaders resources.\n","properties":{"condition":{"type":"string","description":"A string containing the boolean expression that determines whether the policy is applied.\n"},"config":{"$ref":"#/types/konnect:index%2FEventGatewayProducePolicyModifyHeadersConfig:EventGatewayProducePolicyModifyHeadersConfig","description":"The configuration of the modify headers policy.\n"},"createdAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity creation date."},"description":{"type":"string","description":"A human-readable description of the policy. Default: \"\""},"enabled":{"type":"boolean","description":"Whether the policy is enabled. Default: true"},"gatewayId":{"type":"string","description":"The UUID of your Gateway.\n"},"labels":{"type":"object","additionalProperties":{"type":"string"},"description":"Labels store metadata of an entity that can be used for filtering an entity list or for searching across entity types. \n\nKeys must be of length 1-63 characters, and cannot start with \"kong\", \"konnect\", \"mesh\", \"kic\", or \"_\"."},"name":{"type":"string","description":"A unique user-defined name of the policy."},"parentPolicyId":{"type":"string","description":"The unique identifier of the parent schema validation policy, if any. Requires replacement if changed."},"updatedAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity update date."},"virtualClusterId":{"type":"string","description":"The ID of the Virtual Cluster.\n"}},"type":"object"}},"konnect:index/eventGatewayProducePolicySchemaValidation:EventGatewayProducePolicySchemaValidation":{"description":"EventGatewayProducePolicySchemaValidation Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myEventgatewayproducepolicyschemavalidation = new konnect.EventGatewayProducePolicySchemaValidation(\"my_eventgatewayproducepolicyschemavalidation\", {\n    condition: \"context.topic.name.endsWith(\\\"my_suffix\\\") \u0026\u0026 records.headers[\\\"x-flag\\\"] == \\\"a-value\\\"\",\n    config: {\n        confluentSchemaRegistry: {\n            keyValidationAction: \"reject\",\n            schemaRegistry: {\n                id: \"95ce4f52-159c-43dd-a6dd-9bb6e8e07446\",\n            },\n            valueValidationAction: \"reject\",\n        },\n        json: {\n            keyValidationAction: \"mark\",\n            schemaRegistry: {\n                id: \"74577697-03b2-4d40-bfe2-929c891c4254\",\n            },\n            valueValidationAction: \"reject\",\n        },\n    },\n    description: \"...my_description...\",\n    enabled: true,\n    gatewayId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    labels: {\n        key: \"value\",\n    },\n    name: \"...my_name...\",\n    virtualClusterId: \"a3f4c612-4025-4392-861f-faa39b63e12d\",\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_eventgatewayproducepolicyschemavalidation = konnect.EventGatewayProducePolicySchemaValidation(\"my_eventgatewayproducepolicyschemavalidation\",\n    condition=\"context.topic.name.endsWith(\\\"my_suffix\\\") \u0026\u0026 records.headers[\\\"x-flag\\\"] == \\\"a-value\\\"\",\n    config={\n        \"confluent_schema_registry\": {\n            \"key_validation_action\": \"reject\",\n            \"schema_registry\": {\n                \"id\": \"95ce4f52-159c-43dd-a6dd-9bb6e8e07446\",\n            },\n            \"value_validation_action\": \"reject\",\n        },\n        \"json\": {\n            \"key_validation_action\": \"mark\",\n            \"schema_registry\": {\n                \"id\": \"74577697-03b2-4d40-bfe2-929c891c4254\",\n            },\n            \"value_validation_action\": \"reject\",\n        },\n    },\n    description=\"...my_description...\",\n    enabled=True,\n    gateway_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    labels={\n        \"key\": \"value\",\n    },\n    name=\"...my_name...\",\n    virtual_cluster_id=\"a3f4c612-4025-4392-861f-faa39b63e12d\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myEventgatewayproducepolicyschemavalidation = new Konnect.EventGatewayProducePolicySchemaValidation(\"my_eventgatewayproducepolicyschemavalidation\", new()\n    {\n        Condition = \"context.topic.name.endsWith(\\\"my_suffix\\\") \u0026\u0026 records.headers[\\\"x-flag\\\"] == \\\"a-value\\\"\",\n        Config = new Konnect.Inputs.EventGatewayProducePolicySchemaValidationConfigArgs\n        {\n            ConfluentSchemaRegistry = new Konnect.Inputs.EventGatewayProducePolicySchemaValidationConfigConfluentSchemaRegistryArgs\n            {\n                KeyValidationAction = \"reject\",\n                SchemaRegistry = new Konnect.Inputs.EventGatewayProducePolicySchemaValidationConfigConfluentSchemaRegistrySchemaRegistryArgs\n                {\n                    Id = \"95ce4f52-159c-43dd-a6dd-9bb6e8e07446\",\n                },\n                ValueValidationAction = \"reject\",\n            },\n            Json = new Konnect.Inputs.EventGatewayProducePolicySchemaValidationConfigJsonArgs\n            {\n                KeyValidationAction = \"mark\",\n                SchemaRegistry = new Konnect.Inputs.EventGatewayProducePolicySchemaValidationConfigJsonSchemaRegistryArgs\n                {\n                    Id = \"74577697-03b2-4d40-bfe2-929c891c4254\",\n                },\n                ValueValidationAction = \"reject\",\n            },\n        },\n        Description = \"...my_description...\",\n        Enabled = true,\n        GatewayId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        Labels = \n        {\n            { \"key\", \"value\" },\n        },\n        Name = \"...my_name...\",\n        VirtualClusterId = \"a3f4c612-4025-4392-861f-faa39b63e12d\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewEventGatewayProducePolicySchemaValidation(ctx, \"my_eventgatewayproducepolicyschemavalidation\", \u0026konnect.EventGatewayProducePolicySchemaValidationArgs{\n\t\t\tCondition: pulumi.String(\"context.topic.name.endsWith(\\\"my_suffix\\\") \u0026\u0026 records.headers[\\\"x-flag\\\"] == \\\"a-value\\\"\"),\n\t\t\tConfig: \u0026konnect.EventGatewayProducePolicySchemaValidationConfigArgs{\n\t\t\t\tConfluentSchemaRegistry: \u0026konnect.EventGatewayProducePolicySchemaValidationConfigConfluentSchemaRegistryArgs{\n\t\t\t\t\tKeyValidationAction: pulumi.String(\"reject\"),\n\t\t\t\t\tSchemaRegistry: \u0026konnect.EventGatewayProducePolicySchemaValidationConfigConfluentSchemaRegistrySchemaRegistryArgs{\n\t\t\t\t\t\tId: pulumi.String(\"95ce4f52-159c-43dd-a6dd-9bb6e8e07446\"),\n\t\t\t\t\t},\n\t\t\t\t\tValueValidationAction: pulumi.String(\"reject\"),\n\t\t\t\t},\n\t\t\t\tJson: \u0026konnect.EventGatewayProducePolicySchemaValidationConfigJsonArgs{\n\t\t\t\t\tKeyValidationAction: pulumi.String(\"mark\"),\n\t\t\t\t\tSchemaRegistry: \u0026konnect.EventGatewayProducePolicySchemaValidationConfigJsonSchemaRegistryArgs{\n\t\t\t\t\t\tId: pulumi.String(\"74577697-03b2-4d40-bfe2-929c891c4254\"),\n\t\t\t\t\t},\n\t\t\t\t\tValueValidationAction: pulumi.String(\"reject\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tDescription: pulumi.String(\"...my_description...\"),\n\t\t\tEnabled:     pulumi.Bool(true),\n\t\t\tGatewayId:   pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tLabels: pulumi.StringMap{\n\t\t\t\t\"key\": pulumi.String(\"value\"),\n\t\t\t},\n\t\t\tName:             pulumi.String(\"...my_name...\"),\n\t\t\tVirtualClusterId: pulumi.String(\"a3f4c612-4025-4392-861f-faa39b63e12d\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.EventGatewayProducePolicySchemaValidation;\nimport com.pulumi.konnect.EventGatewayProducePolicySchemaValidationArgs;\nimport com.pulumi.konnect.inputs.EventGatewayProducePolicySchemaValidationConfigArgs;\nimport com.pulumi.konnect.inputs.EventGatewayProducePolicySchemaValidationConfigConfluentSchemaRegistryArgs;\nimport com.pulumi.konnect.inputs.EventGatewayProducePolicySchemaValidationConfigConfluentSchemaRegistrySchemaRegistryArgs;\nimport com.pulumi.konnect.inputs.EventGatewayProducePolicySchemaValidationConfigJsonArgs;\nimport com.pulumi.konnect.inputs.EventGatewayProducePolicySchemaValidationConfigJsonSchemaRegistryArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myEventgatewayproducepolicyschemavalidation = new EventGatewayProducePolicySchemaValidation(\"myEventgatewayproducepolicyschemavalidation\", EventGatewayProducePolicySchemaValidationArgs.builder()\n            .condition(\"context.topic.name.endsWith(\\\"my_suffix\\\") \u0026\u0026 records.headers[\\\"x-flag\\\"] == \\\"a-value\\\"\")\n            .config(EventGatewayProducePolicySchemaValidationConfigArgs.builder()\n                .confluentSchemaRegistry(EventGatewayProducePolicySchemaValidationConfigConfluentSchemaRegistryArgs.builder()\n                    .keyValidationAction(\"reject\")\n                    .schemaRegistry(EventGatewayProducePolicySchemaValidationConfigConfluentSchemaRegistrySchemaRegistryArgs.builder()\n                        .id(\"95ce4f52-159c-43dd-a6dd-9bb6e8e07446\")\n                        .build())\n                    .valueValidationAction(\"reject\")\n                    .build())\n                .json(EventGatewayProducePolicySchemaValidationConfigJsonArgs.builder()\n                    .keyValidationAction(\"mark\")\n                    .schemaRegistry(EventGatewayProducePolicySchemaValidationConfigJsonSchemaRegistryArgs.builder()\n                        .id(\"74577697-03b2-4d40-bfe2-929c891c4254\")\n                        .build())\n                    .valueValidationAction(\"reject\")\n                    .build())\n                .build())\n            .description(\"...my_description...\")\n            .enabled(true)\n            .gatewayId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .labels(Map.of(\"key\", \"value\"))\n            .name(\"...my_name...\")\n            .virtualClusterId(\"a3f4c612-4025-4392-861f-faa39b63e12d\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myEventgatewayproducepolicyschemavalidation:\n    type: konnect:EventGatewayProducePolicySchemaValidation\n    name: my_eventgatewayproducepolicyschemavalidation\n    properties:\n      condition: context.topic.name.endsWith(\"my_suffix\") \u0026\u0026 records.headers[\"x-flag\"] == \"a-value\"\n      config:\n        confluentSchemaRegistry:\n          keyValidationAction: reject\n          schemaRegistry:\n            id: 95ce4f52-159c-43dd-a6dd-9bb6e8e07446\n          valueValidationAction: reject\n        json:\n          keyValidationAction: mark\n          schemaRegistry:\n            id: 74577697-03b2-4d40-bfe2-929c891c4254\n          valueValidationAction: reject\n      description: '...my_description...'\n      enabled: true\n      gatewayId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      labels:\n        key: value\n      name: '...my_name...'\n      virtualClusterId: a3f4c612-4025-4392-861f-faa39b63e12d\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_event_gateway_produce_policy_schema_validation.my_konnect_event_gateway_produce_policy_schema_validation\n\n  id = jsonencode({\n\n    gateway_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    virtual_cluster_id = \"...\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/eventGatewayProducePolicySchemaValidation:EventGatewayProducePolicySchemaValidation my_konnect_event_gateway_produce_policy_schema_validation '{\"gateway_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"virtual_cluster_id\": \"...\"}'\n```\n\n","properties":{"condition":{"type":"string","description":"A string containing the boolean expression that determines whether the policy is applied. Default: \"\""},"config":{"$ref":"#/types/konnect:index%2FEventGatewayProducePolicySchemaValidationConfig:EventGatewayProducePolicySchemaValidationConfig","description":"The configuration of the produce schema validation policy."},"createdAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity creation date."},"description":{"type":"string","description":"A human-readable description of the policy. Default: \"\""},"enabled":{"type":"boolean","description":"Whether the policy is enabled. Default: true"},"gatewayId":{"type":"string","description":"The UUID of your Gateway."},"labels":{"type":"object","additionalProperties":{"type":"string"},"description":"Labels store metadata of an entity that can be used for filtering an entity list or for searching across entity types. \n\nKeys must be of length 1-63 characters, and cannot start with \"kong\", \"konnect\", \"mesh\", \"kic\", or \"_\"."},"name":{"type":"string","description":"A unique user-defined name of the policy."},"parentPolicyId":{"type":"string","description":"The unique identifier of the parent policy, if any."},"updatedAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity update date."},"virtualClusterId":{"type":"string","description":"The ID of the Virtual Cluster."}},"type":"object","required":["condition","config","createdAt","description","enabled","gatewayId","labels","name","parentPolicyId","updatedAt","virtualClusterId"],"inputProperties":{"condition":{"type":"string","description":"A string containing the boolean expression that determines whether the policy is applied. Default: \"\""},"config":{"$ref":"#/types/konnect:index%2FEventGatewayProducePolicySchemaValidationConfig:EventGatewayProducePolicySchemaValidationConfig","description":"The configuration of the produce schema validation policy."},"description":{"type":"string","description":"A human-readable description of the policy. Default: \"\""},"enabled":{"type":"boolean","description":"Whether the policy is enabled. Default: true"},"gatewayId":{"type":"string","description":"The UUID of your Gateway."},"labels":{"type":"object","additionalProperties":{"type":"string"},"description":"Labels store metadata of an entity that can be used for filtering an entity list or for searching across entity types. \n\nKeys must be of length 1-63 characters, and cannot start with \"kong\", \"konnect\", \"mesh\", \"kic\", or \"_\"."},"name":{"type":"string","description":"A unique user-defined name of the policy."},"virtualClusterId":{"type":"string","description":"The ID of the Virtual Cluster."}},"requiredInputs":["config","gatewayId","virtualClusterId"],"stateInputs":{"description":"Input properties used for looking up and filtering EventGatewayProducePolicySchemaValidation resources.\n","properties":{"condition":{"type":"string","description":"A string containing the boolean expression that determines whether the policy is applied. Default: \"\""},"config":{"$ref":"#/types/konnect:index%2FEventGatewayProducePolicySchemaValidationConfig:EventGatewayProducePolicySchemaValidationConfig","description":"The configuration of the produce schema validation policy."},"createdAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity creation date."},"description":{"type":"string","description":"A human-readable description of the policy. Default: \"\""},"enabled":{"type":"boolean","description":"Whether the policy is enabled. Default: true"},"gatewayId":{"type":"string","description":"The UUID of your Gateway."},"labels":{"type":"object","additionalProperties":{"type":"string"},"description":"Labels store metadata of an entity that can be used for filtering an entity list or for searching across entity types. \n\nKeys must be of length 1-63 characters, and cannot start with \"kong\", \"konnect\", \"mesh\", \"kic\", or \"_\"."},"name":{"type":"string","description":"A unique user-defined name of the policy."},"parentPolicyId":{"type":"string","description":"The unique identifier of the parent policy, if any."},"updatedAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity update date."},"virtualClusterId":{"type":"string","description":"The ID of the Virtual Cluster."}},"type":"object"}},"konnect:index/eventGatewaySchemaRegistry:EventGatewaySchemaRegistry":{"description":"EventGatewaySchemaRegistry Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myEventgatewayschemaregistry = new konnect.EventGatewaySchemaRegistry(\"my_eventgatewayschemaregistry\", {\n    confluent: {\n        config: {\n            authentication: {\n                basic: {\n                    password: \"${vault.env['MY_ENV_VAR']}\",\n                    username: \"...my_username...\",\n                },\n            },\n            endpoint: \"https://key-hovercraft.com\",\n            schemaType: \"avro\",\n            timeoutSeconds: 8,\n        },\n        description: \"...my_description...\",\n        labels: {\n            key: \"value\",\n        },\n        name: \"...my_name...\",\n    },\n    gatewayId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_eventgatewayschemaregistry = konnect.EventGatewaySchemaRegistry(\"my_eventgatewayschemaregistry\",\n    confluent={\n        \"config\": {\n            \"authentication\": {\n                \"basic\": {\n                    \"password\": \"${vault.env['MY_ENV_VAR']}\",\n                    \"username\": \"...my_username...\",\n                },\n            },\n            \"endpoint\": \"https://key-hovercraft.com\",\n            \"schema_type\": \"avro\",\n            \"timeout_seconds\": 8,\n        },\n        \"description\": \"...my_description...\",\n        \"labels\": {\n            \"key\": \"value\",\n        },\n        \"name\": \"...my_name...\",\n    },\n    gateway_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myEventgatewayschemaregistry = new Konnect.EventGatewaySchemaRegistry(\"my_eventgatewayschemaregistry\", new()\n    {\n        Confluent = new Konnect.Inputs.EventGatewaySchemaRegistryConfluentArgs\n        {\n            Config = new Konnect.Inputs.EventGatewaySchemaRegistryConfluentConfigArgs\n            {\n                Authentication = new Konnect.Inputs.EventGatewaySchemaRegistryConfluentConfigAuthenticationArgs\n                {\n                    Basic = new Konnect.Inputs.EventGatewaySchemaRegistryConfluentConfigAuthenticationBasicArgs\n                    {\n                        Password = \"${vault.env['MY_ENV_VAR']}\",\n                        Username = \"...my_username...\",\n                    },\n                },\n                Endpoint = \"https://key-hovercraft.com\",\n                SchemaType = \"avro\",\n                TimeoutSeconds = 8,\n            },\n            Description = \"...my_description...\",\n            Labels = \n            {\n                { \"key\", \"value\" },\n            },\n            Name = \"...my_name...\",\n        },\n        GatewayId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewEventGatewaySchemaRegistry(ctx, \"my_eventgatewayschemaregistry\", \u0026konnect.EventGatewaySchemaRegistryArgs{\n\t\t\tConfluent: \u0026konnect.EventGatewaySchemaRegistryConfluentArgs{\n\t\t\t\tConfig: \u0026konnect.EventGatewaySchemaRegistryConfluentConfigArgs{\n\t\t\t\t\tAuthentication: \u0026konnect.EventGatewaySchemaRegistryConfluentConfigAuthenticationArgs{\n\t\t\t\t\t\tBasic: \u0026konnect.EventGatewaySchemaRegistryConfluentConfigAuthenticationBasicArgs{\n\t\t\t\t\t\t\tPassword: pulumi.String(\"${vault.env['MY_ENV_VAR']}\"),\n\t\t\t\t\t\t\tUsername: pulumi.String(\"...my_username...\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tEndpoint:       pulumi.String(\"https://key-hovercraft.com\"),\n\t\t\t\t\tSchemaType:     pulumi.String(\"avro\"),\n\t\t\t\t\tTimeoutSeconds: pulumi.Float64(8),\n\t\t\t\t},\n\t\t\t\tDescription: pulumi.String(\"...my_description...\"),\n\t\t\t\tLabels: pulumi.StringMap{\n\t\t\t\t\t\"key\": pulumi.String(\"value\"),\n\t\t\t\t},\n\t\t\t\tName: pulumi.String(\"...my_name...\"),\n\t\t\t},\n\t\t\tGatewayId: pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.EventGatewaySchemaRegistry;\nimport com.pulumi.konnect.EventGatewaySchemaRegistryArgs;\nimport com.pulumi.konnect.inputs.EventGatewaySchemaRegistryConfluentArgs;\nimport com.pulumi.konnect.inputs.EventGatewaySchemaRegistryConfluentConfigArgs;\nimport com.pulumi.konnect.inputs.EventGatewaySchemaRegistryConfluentConfigAuthenticationArgs;\nimport com.pulumi.konnect.inputs.EventGatewaySchemaRegistryConfluentConfigAuthenticationBasicArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myEventgatewayschemaregistry = new EventGatewaySchemaRegistry(\"myEventgatewayschemaregistry\", EventGatewaySchemaRegistryArgs.builder()\n            .confluent(EventGatewaySchemaRegistryConfluentArgs.builder()\n                .config(EventGatewaySchemaRegistryConfluentConfigArgs.builder()\n                    .authentication(EventGatewaySchemaRegistryConfluentConfigAuthenticationArgs.builder()\n                        .basic(EventGatewaySchemaRegistryConfluentConfigAuthenticationBasicArgs.builder()\n                            .password(\"${vault.env['MY_ENV_VAR']}\")\n                            .username(\"...my_username...\")\n                            .build())\n                        .build())\n                    .endpoint(\"https://key-hovercraft.com\")\n                    .schemaType(\"avro\")\n                    .timeoutSeconds(8.0)\n                    .build())\n                .description(\"...my_description...\")\n                .labels(Map.of(\"key\", \"value\"))\n                .name(\"...my_name...\")\n                .build())\n            .gatewayId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myEventgatewayschemaregistry:\n    type: konnect:EventGatewaySchemaRegistry\n    name: my_eventgatewayschemaregistry\n    properties:\n      confluent:\n        config:\n          authentication:\n            basic:\n              password: $${vault.env['MY_ENV_VAR']}\n              username: '...my_username...'\n          endpoint: https://key-hovercraft.com\n          schemaType: avro\n          timeoutSeconds: 8\n        description: '...my_description...'\n        labels:\n          key: value\n        name: '...my_name...'\n      gatewayId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_event_gateway_schema_registry.my_konnect_event_gateway_schema_registry\n\n  id = jsonencode({\n\n    gateway_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"...\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/eventGatewaySchemaRegistry:EventGatewaySchemaRegistry my_konnect_event_gateway_schema_registry '{\"gateway_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"...\"}'\n```\n\n","properties":{"config":{"$ref":"#/types/konnect:index%2FEventGatewaySchemaRegistryConfig:EventGatewaySchemaRegistryConfig","description":"The configuration of the schema registry.\n"},"confluent":{"$ref":"#/types/konnect:index%2FEventGatewaySchemaRegistryConfluent:EventGatewaySchemaRegistryConfluent","description":"A Confluent schema registry.\n"},"createdAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity creation date.\n"},"description":{"type":"string","description":"A human-readable description.\n"},"gatewayId":{"type":"string","description":"The UUID of your Gateway.\n"},"labels":{"type":"object","additionalProperties":{"type":"string"},"description":"Labels store metadata of an entity that can be used for filtering an entity list or for searching across entity types.\n"},"name":{"type":"string","description":"The unique name of the schema registry."},"type":{"type":"string","description":"The type of the schema registry."},"updatedAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity update date."}},"type":"object","required":["config","createdAt","description","gatewayId","labels","name","type","updatedAt"],"inputProperties":{"confluent":{"$ref":"#/types/konnect:index%2FEventGatewaySchemaRegistryConfluent:EventGatewaySchemaRegistryConfluent","description":"A Confluent schema registry.\n"},"gatewayId":{"type":"string","description":"The UUID of your Gateway.\n"}},"requiredInputs":["gatewayId"],"stateInputs":{"description":"Input properties used for looking up and filtering EventGatewaySchemaRegistry resources.\n","properties":{"config":{"$ref":"#/types/konnect:index%2FEventGatewaySchemaRegistryConfig:EventGatewaySchemaRegistryConfig","description":"The configuration of the schema registry.\n"},"confluent":{"$ref":"#/types/konnect:index%2FEventGatewaySchemaRegistryConfluent:EventGatewaySchemaRegistryConfluent","description":"A Confluent schema registry.\n"},"createdAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity creation date.\n"},"description":{"type":"string","description":"A human-readable description.\n"},"gatewayId":{"type":"string","description":"The UUID of your Gateway.\n"},"labels":{"type":"object","additionalProperties":{"type":"string"},"description":"Labels store metadata of an entity that can be used for filtering an entity list or for searching across entity types.\n"},"name":{"type":"string","description":"The unique name of the schema registry."},"type":{"type":"string","description":"The type of the schema registry."},"updatedAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity update date."}},"type":"object"}},"konnect:index/eventGatewayStaticKey:EventGatewayStaticKey":{"description":"EventGatewayStaticKey Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myEventgatewaystatickey = new konnect.EventGatewayStaticKey(\"my_eventgatewaystatickey\", {\n    description: \"...my_description...\",\n    gatewayId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    labels: {\n        key: \"value\",\n    },\n    name: \"...my_name...\",\n    value: \"${vault.env['MY_ENV_VAR']}\",\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_eventgatewaystatickey = konnect.EventGatewayStaticKey(\"my_eventgatewaystatickey\",\n    description=\"...my_description...\",\n    gateway_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    labels={\n        \"key\": \"value\",\n    },\n    name=\"...my_name...\",\n    value=\"${vault.env['MY_ENV_VAR']}\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myEventgatewaystatickey = new Konnect.EventGatewayStaticKey(\"my_eventgatewaystatickey\", new()\n    {\n        Description = \"...my_description...\",\n        GatewayId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        Labels = \n        {\n            { \"key\", \"value\" },\n        },\n        Name = \"...my_name...\",\n        Value = \"${vault.env['MY_ENV_VAR']}\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewEventGatewayStaticKey(ctx, \"my_eventgatewaystatickey\", \u0026konnect.EventGatewayStaticKeyArgs{\n\t\t\tDescription: pulumi.String(\"...my_description...\"),\n\t\t\tGatewayId:   pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tLabels: pulumi.StringMap{\n\t\t\t\t\"key\": pulumi.String(\"value\"),\n\t\t\t},\n\t\t\tName:  pulumi.String(\"...my_name...\"),\n\t\t\tValue: pulumi.String(\"${vault.env['MY_ENV_VAR']}\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.EventGatewayStaticKey;\nimport com.pulumi.konnect.EventGatewayStaticKeyArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myEventgatewaystatickey = new EventGatewayStaticKey(\"myEventgatewaystatickey\", EventGatewayStaticKeyArgs.builder()\n            .description(\"...my_description...\")\n            .gatewayId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .labels(Map.of(\"key\", \"value\"))\n            .name(\"...my_name...\")\n            .value(\"${vault.env['MY_ENV_VAR']}\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myEventgatewaystatickey:\n    type: konnect:EventGatewayStaticKey\n    name: my_eventgatewaystatickey\n    properties:\n      description: '...my_description...'\n      gatewayId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      labels:\n        key: value\n      name: '...my_name...'\n      value: $${vault.env['MY_ENV_VAR']}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_event_gateway_static_key.my_konnect_event_gateway_static_key\n\n  id = jsonencode({\n\n    gateway_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"...\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/eventGatewayStaticKey:EventGatewayStaticKey my_konnect_event_gateway_static_key '{\"gateway_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"...\"}'\n```\n\n","properties":{"createdAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity creation date."},"description":{"type":"string","description":"A human-readable description of the static key. Default: \"\"; Requires replacement if changed.\n"},"gatewayId":{"type":"string","description":"The UUID of your Gateway. Requires replacement if changed.\n"},"labels":{"type":"object","additionalProperties":{"type":"string"},"description":"Labels store metadata of an entity that can be used for filtering an entity list or for searching across entity types.\n"},"name":{"type":"string","description":"The unique name of the static key. Requires replacement if changed.\n"},"updatedAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity update date."},"value":{"type":"string","description":"A sensitive value containing the secret or a reference to a secret as a template string expression.\nIf the value is provided as plain text, it is encrypted at rest and omitted from API responses.\nIf provided as an expression, the expression itself is stored and returned by the API.\nRequires replacement if changed.\n"}},"type":"object","required":["createdAt","description","gatewayId","labels","name","updatedAt","value"],"inputProperties":{"description":{"type":"string","description":"A human-readable description of the static key. Default: \"\"; Requires replacement if changed.\n"},"gatewayId":{"type":"string","description":"The UUID of your Gateway. Requires replacement if changed.\n"},"labels":{"type":"object","additionalProperties":{"type":"string"},"description":"Labels store metadata of an entity that can be used for filtering an entity list or for searching across entity types.\n"},"name":{"type":"string","description":"The unique name of the static key. Requires replacement if changed.\n"},"value":{"type":"string","description":"A sensitive value containing the secret or a reference to a secret as a template string expression.\nIf the value is provided as plain text, it is encrypted at rest and omitted from API responses.\nIf provided as an expression, the expression itself is stored and returned by the API.\nRequires replacement if changed.\n"}},"requiredInputs":["gatewayId","value"],"stateInputs":{"description":"Input properties used for looking up and filtering EventGatewayStaticKey resources.\n","properties":{"createdAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity creation date."},"description":{"type":"string","description":"A human-readable description of the static key. Default: \"\"; Requires replacement if changed.\n"},"gatewayId":{"type":"string","description":"The UUID of your Gateway. Requires replacement if changed.\n"},"labels":{"type":"object","additionalProperties":{"type":"string"},"description":"Labels store metadata of an entity that can be used for filtering an entity list or for searching across entity types.\n"},"name":{"type":"string","description":"The unique name of the static key. Requires replacement if changed.\n"},"updatedAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity update date."},"value":{"type":"string","description":"A sensitive value containing the secret or a reference to a secret as a template string expression.\nIf the value is provided as plain text, it is encrypted at rest and omitted from API responses.\nIf provided as an expression, the expression itself is stored and returned by the API.\nRequires replacement if changed.\n"}},"type":"object"}},"konnect:index/eventGatewayVirtualCluster:EventGatewayVirtualCluster":{"description":"EventGatewayVirtualCluster Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myEventgatewayvirtualcluster = new konnect.EventGatewayVirtualCluster(\"my_eventgatewayvirtualcluster\", {\n    aclMode: \"enforce_on_gateway\",\n    authentications: [{\n        saslPlain: {\n            mediation: \"passthrough\",\n            principals: [{\n                password: \"${vault.env['MY_ENV_VAR']}\",\n                username: \"...my_username...\",\n            }],\n        },\n    }],\n    description: \"...my_description...\",\n    destination: {\n        id: \"759b5471-3de4-485c-b7d3-6e8cb8929d81\",\n    },\n    dnsLabel: \"vcluster-1\",\n    gatewayId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    labels: {\n        key: \"value\",\n    },\n    name: \"...my_name...\",\n    namespace: {\n        additional: {\n            consumerGroups: [{\n                glob: {\n                    glob: \"...my_glob...\",\n                },\n            }],\n            topics: [{\n                exactList: {\n                    conflict: \"warn\",\n                    exactLists: [{\n                        backend: \"...my_backend...\",\n                    }],\n                },\n            }],\n        },\n        mode: \"hide_prefix\",\n        prefix: \"...my_prefix...\",\n    },\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_eventgatewayvirtualcluster = konnect.EventGatewayVirtualCluster(\"my_eventgatewayvirtualcluster\",\n    acl_mode=\"enforce_on_gateway\",\n    authentications=[{\n        \"sasl_plain\": {\n            \"mediation\": \"passthrough\",\n            \"principals\": [{\n                \"password\": \"${vault.env['MY_ENV_VAR']}\",\n                \"username\": \"...my_username...\",\n            }],\n        },\n    }],\n    description=\"...my_description...\",\n    destination={\n        \"id\": \"759b5471-3de4-485c-b7d3-6e8cb8929d81\",\n    },\n    dns_label=\"vcluster-1\",\n    gateway_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    labels={\n        \"key\": \"value\",\n    },\n    name=\"...my_name...\",\n    namespace={\n        \"additional\": {\n            \"consumer_groups\": [{\n                \"glob\": {\n                    \"glob\": \"...my_glob...\",\n                },\n            }],\n            \"topics\": [{\n                \"exact_list\": {\n                    \"conflict\": \"warn\",\n                    \"exact_lists\": [{\n                        \"backend\": \"...my_backend...\",\n                    }],\n                },\n            }],\n        },\n        \"mode\": \"hide_prefix\",\n        \"prefix\": \"...my_prefix...\",\n    })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myEventgatewayvirtualcluster = new Konnect.EventGatewayVirtualCluster(\"my_eventgatewayvirtualcluster\", new()\n    {\n        AclMode = \"enforce_on_gateway\",\n        Authentications = new[]\n        {\n            new Konnect.Inputs.EventGatewayVirtualClusterAuthenticationArgs\n            {\n                SaslPlain = new Konnect.Inputs.EventGatewayVirtualClusterAuthenticationSaslPlainArgs\n                {\n                    Mediation = \"passthrough\",\n                    Principals = new[]\n                    {\n                        new Konnect.Inputs.EventGatewayVirtualClusterAuthenticationSaslPlainPrincipalArgs\n                        {\n                            Password = \"${vault.env['MY_ENV_VAR']}\",\n                            Username = \"...my_username...\",\n                        },\n                    },\n                },\n            },\n        },\n        Description = \"...my_description...\",\n        Destination = new Konnect.Inputs.EventGatewayVirtualClusterDestinationArgs\n        {\n            Id = \"759b5471-3de4-485c-b7d3-6e8cb8929d81\",\n        },\n        DnsLabel = \"vcluster-1\",\n        GatewayId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        Labels = \n        {\n            { \"key\", \"value\" },\n        },\n        Name = \"...my_name...\",\n        Namespace = new Konnect.Inputs.EventGatewayVirtualClusterNamespaceArgs\n        {\n            Additional = new Konnect.Inputs.EventGatewayVirtualClusterNamespaceAdditionalArgs\n            {\n                ConsumerGroups = new[]\n                {\n                    new Konnect.Inputs.EventGatewayVirtualClusterNamespaceAdditionalConsumerGroupArgs\n                    {\n                        Glob = new Konnect.Inputs.EventGatewayVirtualClusterNamespaceAdditionalConsumerGroupGlobArgs\n                        {\n                            Glob = \"...my_glob...\",\n                        },\n                    },\n                },\n                Topics = new[]\n                {\n                    new Konnect.Inputs.EventGatewayVirtualClusterNamespaceAdditionalTopicArgs\n                    {\n                        ExactList = new Konnect.Inputs.EventGatewayVirtualClusterNamespaceAdditionalTopicExactListArgs\n                        {\n                            Conflict = \"warn\",\n                            ExactLists = new[]\n                            {\n                                new Konnect.Inputs.EventGatewayVirtualClusterNamespaceAdditionalTopicExactListExactListArgs\n                                {\n                                    Backend = \"...my_backend...\",\n                                },\n                            },\n                        },\n                    },\n                },\n            },\n            Mode = \"hide_prefix\",\n            Prefix = \"...my_prefix...\",\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewEventGatewayVirtualCluster(ctx, \"my_eventgatewayvirtualcluster\", \u0026konnect.EventGatewayVirtualClusterArgs{\n\t\t\tAclMode: pulumi.String(\"enforce_on_gateway\"),\n\t\t\tAuthentications: konnect.EventGatewayVirtualClusterAuthenticationArray{\n\t\t\t\t\u0026konnect.EventGatewayVirtualClusterAuthenticationArgs{\n\t\t\t\t\tSaslPlain: \u0026konnect.EventGatewayVirtualClusterAuthenticationSaslPlainArgs{\n\t\t\t\t\t\tMediation: pulumi.String(\"passthrough\"),\n\t\t\t\t\t\tPrincipals: konnect.EventGatewayVirtualClusterAuthenticationSaslPlainPrincipalArray{\n\t\t\t\t\t\t\t\u0026konnect.EventGatewayVirtualClusterAuthenticationSaslPlainPrincipalArgs{\n\t\t\t\t\t\t\t\tPassword: pulumi.String(\"${vault.env['MY_ENV_VAR']}\"),\n\t\t\t\t\t\t\t\tUsername: pulumi.String(\"...my_username...\"),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tDescription: pulumi.String(\"...my_description...\"),\n\t\t\tDestination: \u0026konnect.EventGatewayVirtualClusterDestinationArgs{\n\t\t\t\tId: pulumi.String(\"759b5471-3de4-485c-b7d3-6e8cb8929d81\"),\n\t\t\t},\n\t\t\tDnsLabel:  pulumi.String(\"vcluster-1\"),\n\t\t\tGatewayId: pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tLabels: pulumi.StringMap{\n\t\t\t\t\"key\": pulumi.String(\"value\"),\n\t\t\t},\n\t\t\tName: pulumi.String(\"...my_name...\"),\n\t\t\tNamespace: \u0026konnect.EventGatewayVirtualClusterNamespaceArgs{\n\t\t\t\tAdditional: \u0026konnect.EventGatewayVirtualClusterNamespaceAdditionalArgs{\n\t\t\t\t\tConsumerGroups: konnect.EventGatewayVirtualClusterNamespaceAdditionalConsumerGroupArray{\n\t\t\t\t\t\t\u0026konnect.EventGatewayVirtualClusterNamespaceAdditionalConsumerGroupArgs{\n\t\t\t\t\t\t\tGlob: \u0026konnect.EventGatewayVirtualClusterNamespaceAdditionalConsumerGroupGlobArgs{\n\t\t\t\t\t\t\t\tGlob: pulumi.String(\"...my_glob...\"),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tTopics: konnect.EventGatewayVirtualClusterNamespaceAdditionalTopicArray{\n\t\t\t\t\t\t\u0026konnect.EventGatewayVirtualClusterNamespaceAdditionalTopicArgs{\n\t\t\t\t\t\t\tExactList: \u0026konnect.EventGatewayVirtualClusterNamespaceAdditionalTopicExactListArgs{\n\t\t\t\t\t\t\t\tConflict: pulumi.String(\"warn\"),\n\t\t\t\t\t\t\t\tExactLists: konnect.EventGatewayVirtualClusterNamespaceAdditionalTopicExactListExactListArray{\n\t\t\t\t\t\t\t\t\t\u0026konnect.EventGatewayVirtualClusterNamespaceAdditionalTopicExactListExactListArgs{\n\t\t\t\t\t\t\t\t\t\tBackend: pulumi.String(\"...my_backend...\"),\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tMode:   pulumi.String(\"hide_prefix\"),\n\t\t\t\tPrefix: pulumi.String(\"...my_prefix...\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.EventGatewayVirtualCluster;\nimport com.pulumi.konnect.EventGatewayVirtualClusterArgs;\nimport com.pulumi.konnect.inputs.EventGatewayVirtualClusterAuthenticationArgs;\nimport com.pulumi.konnect.inputs.EventGatewayVirtualClusterAuthenticationSaslPlainArgs;\nimport com.pulumi.konnect.inputs.EventGatewayVirtualClusterDestinationArgs;\nimport com.pulumi.konnect.inputs.EventGatewayVirtualClusterNamespaceArgs;\nimport com.pulumi.konnect.inputs.EventGatewayVirtualClusterNamespaceAdditionalArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myEventgatewayvirtualcluster = new EventGatewayVirtualCluster(\"myEventgatewayvirtualcluster\", EventGatewayVirtualClusterArgs.builder()\n            .aclMode(\"enforce_on_gateway\")\n            .authentications(EventGatewayVirtualClusterAuthenticationArgs.builder()\n                .saslPlain(EventGatewayVirtualClusterAuthenticationSaslPlainArgs.builder()\n                    .mediation(\"passthrough\")\n                    .principals(EventGatewayVirtualClusterAuthenticationSaslPlainPrincipalArgs.builder()\n                        .password(\"${vault.env['MY_ENV_VAR']}\")\n                        .username(\"...my_username...\")\n                        .build())\n                    .build())\n                .build())\n            .description(\"...my_description...\")\n            .destination(EventGatewayVirtualClusterDestinationArgs.builder()\n                .id(\"759b5471-3de4-485c-b7d3-6e8cb8929d81\")\n                .build())\n            .dnsLabel(\"vcluster-1\")\n            .gatewayId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .labels(Map.of(\"key\", \"value\"))\n            .name(\"...my_name...\")\n            .namespace(EventGatewayVirtualClusterNamespaceArgs.builder()\n                .additional(EventGatewayVirtualClusterNamespaceAdditionalArgs.builder()\n                    .consumerGroups(EventGatewayVirtualClusterNamespaceAdditionalConsumerGroupArgs.builder()\n                        .glob(EventGatewayVirtualClusterNamespaceAdditionalConsumerGroupGlobArgs.builder()\n                            .glob(\"...my_glob...\")\n                            .build())\n                        .build())\n                    .topics(EventGatewayVirtualClusterNamespaceAdditionalTopicArgs.builder()\n                        .exactList(EventGatewayVirtualClusterNamespaceAdditionalTopicExactListArgs.builder()\n                            .conflict(\"warn\")\n                            .exactLists(EventGatewayVirtualClusterNamespaceAdditionalTopicExactListExactListArgs.builder()\n                                .backend(\"...my_backend...\")\n                                .build())\n                            .build())\n                        .build())\n                    .build())\n                .mode(\"hide_prefix\")\n                .prefix(\"...my_prefix...\")\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myEventgatewayvirtualcluster:\n    type: konnect:EventGatewayVirtualCluster\n    name: my_eventgatewayvirtualcluster\n    properties:\n      aclMode: enforce_on_gateway\n      authentications:\n        - saslPlain:\n            mediation: passthrough\n            principals:\n              - password: $${vault.env['MY_ENV_VAR']}\n                username: '...my_username...'\n      description: '...my_description...'\n      destination:\n        id: 759b5471-3de4-485c-b7d3-6e8cb8929d81\n      dnsLabel: vcluster-1\n      gatewayId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      labels:\n        key: value\n      name: '...my_name...'\n      namespace:\n        additional:\n          consumerGroups:\n            - glob:\n                glob: '...my_glob...'\n          topics:\n            - exactList:\n                conflict: warn\n                exactLists:\n                  - backend: '...my_backend...'\n        mode: hide_prefix\n        prefix: '...my_prefix...'\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_event_gateway_virtual_cluster.my_konnect_event_gateway_virtual_cluster\n\n  id = jsonencode({\n\n    gateway_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"...\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/eventGatewayVirtualCluster:EventGatewayVirtualCluster my_konnect_event_gateway_virtual_cluster '{\"gateway_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"...\"}'\n```\n\n","properties":{"aclMode":{"type":"string","description":"Configures whether or not ACL policies are enforced on the gateway.\n- \u003cspan pulumi-lang-nodejs=\"`enforceOnGateway`\" pulumi-lang-dotnet=\"`EnforceOnGateway`\" pulumi-lang-go=\"`enforceOnGateway`\" pulumi-lang-python=\"`enforce_on_gateway`\" pulumi-lang-yaml=\"`enforceOnGateway`\" pulumi-lang-java=\"`enforceOnGateway`\"\u003e`enforce_on_gateway`\u003c/span\u003e means the gateway enforces its own ACL policies for this virtual cluster\n  and does not forward ACL-related commands to the backend cluster.\n  Note that if there are no ACL policies configured, all access is denied.\n- \u003cspan pulumi-lang-nodejs=\"`passthrough`\" pulumi-lang-dotnet=\"`Passthrough`\" pulumi-lang-go=\"`passthrough`\" pulumi-lang-python=\"`passthrough`\" pulumi-lang-yaml=\"`passthrough`\" pulumi-lang-java=\"`passthrough`\"\u003e`passthrough`\u003c/span\u003e tells the gateway to forward all ACL-related commands.\nmust be one of [\u003cspan pulumi-lang-nodejs=\"\"enforceOnGateway\"\" pulumi-lang-dotnet=\"\"EnforceOnGateway\"\" pulumi-lang-go=\"\"enforceOnGateway\"\" pulumi-lang-python=\"\"enforce_on_gateway\"\" pulumi-lang-yaml=\"\"enforceOnGateway\"\" pulumi-lang-java=\"\"enforceOnGateway\"\"\u003e\"enforce_on_gateway\"\u003c/span\u003e, \"passthrough\"]"},"authentications":{"type":"array","items":{"$ref":"#/types/konnect:index%2FEventGatewayVirtualClusterAuthentication:EventGatewayVirtualClusterAuthentication"},"description":"How to handle authentication from clients.\n\nIt tries to authenticate with every rule sequentially one by one.\nIt succeeds on the first match, and fails if no rule matches."},"createdAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity creation date."},"description":{"type":"string","description":"A human-readable description of the virtual cluster. Default: \"\""},"destination":{"$ref":"#/types/konnect:index%2FEventGatewayVirtualClusterDestination:EventGatewayVirtualClusterDestination","description":"The backend cluster associated with the virtual cluster.\n\nEither \u003cspan pulumi-lang-nodejs=\"`id`\" pulumi-lang-dotnet=\"`Id`\" pulumi-lang-go=\"`id`\" pulumi-lang-python=\"`id`\" pulumi-lang-yaml=\"`id`\" pulumi-lang-java=\"`id`\"\u003e`id`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`name`\" pulumi-lang-dotnet=\"`Name`\" pulumi-lang-go=\"`name`\" pulumi-lang-python=\"`name`\" pulumi-lang-yaml=\"`name`\" pulumi-lang-java=\"`name`\"\u003e`name`\u003c/span\u003e must be provided. Following changes to the backend cluster name won't affect the\nreference, as the system will create the entities relationship by \u003cspan pulumi-lang-nodejs=\"`id`\" pulumi-lang-dotnet=\"`Id`\" pulumi-lang-go=\"`id`\" pulumi-lang-python=\"`id`\" pulumi-lang-yaml=\"`id`\" pulumi-lang-java=\"`id`\"\u003e`id`\u003c/span\u003e."},"dnsLabel":{"type":"string","description":"The DNS label used in the bootstrap server URL to identify the virtual cluster when using SNI routing.\nThe format follows the RFC1035: 1-63 chars, lowercase alphanumeric or '-', must start and end with an alphanumeric character."},"gatewayId":{"type":"string","description":"The UUID of your Gateway."},"labels":{"type":"object","additionalProperties":{"type":"string"},"description":"Labels store metadata of an entity that can be used for filtering an entity list or for searching across entity types. \n\nKeys must be of length 1-63 characters, and cannot start with \"kong\", \"konnect\", \"mesh\", \"kic\", or \"_\"."},"name":{"type":"string","description":"The name of the virtual cluster."},"namespace":{"$ref":"#/types/konnect:index%2FEventGatewayVirtualClusterNamespace:EventGatewayVirtualClusterNamespace","description":"Namespace allows to implement multitenancy using a single backend cluster.\nIt allows to either hide or enforce a static prefix on resources (topics, consumer group IDs, transaction IDs)."},"updatedAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity update date."}},"type":"object","required":["aclMode","authentications","createdAt","description","destination","dnsLabel","gatewayId","labels","name","updatedAt"],"inputProperties":{"aclMode":{"type":"string","description":"Configures whether or not ACL policies are enforced on the gateway.\n- \u003cspan pulumi-lang-nodejs=\"`enforceOnGateway`\" pulumi-lang-dotnet=\"`EnforceOnGateway`\" pulumi-lang-go=\"`enforceOnGateway`\" pulumi-lang-python=\"`enforce_on_gateway`\" pulumi-lang-yaml=\"`enforceOnGateway`\" pulumi-lang-java=\"`enforceOnGateway`\"\u003e`enforce_on_gateway`\u003c/span\u003e means the gateway enforces its own ACL policies for this virtual cluster\n  and does not forward ACL-related commands to the backend cluster.\n  Note that if there are no ACL policies configured, all access is denied.\n- \u003cspan pulumi-lang-nodejs=\"`passthrough`\" pulumi-lang-dotnet=\"`Passthrough`\" pulumi-lang-go=\"`passthrough`\" pulumi-lang-python=\"`passthrough`\" pulumi-lang-yaml=\"`passthrough`\" pulumi-lang-java=\"`passthrough`\"\u003e`passthrough`\u003c/span\u003e tells the gateway to forward all ACL-related commands.\nmust be one of [\u003cspan pulumi-lang-nodejs=\"\"enforceOnGateway\"\" pulumi-lang-dotnet=\"\"EnforceOnGateway\"\" pulumi-lang-go=\"\"enforceOnGateway\"\" pulumi-lang-python=\"\"enforce_on_gateway\"\" pulumi-lang-yaml=\"\"enforceOnGateway\"\" pulumi-lang-java=\"\"enforceOnGateway\"\"\u003e\"enforce_on_gateway\"\u003c/span\u003e, \"passthrough\"]"},"authentications":{"type":"array","items":{"$ref":"#/types/konnect:index%2FEventGatewayVirtualClusterAuthentication:EventGatewayVirtualClusterAuthentication"},"description":"How to handle authentication from clients.\n\nIt tries to authenticate with every rule sequentially one by one.\nIt succeeds on the first match, and fails if no rule matches."},"description":{"type":"string","description":"A human-readable description of the virtual cluster. Default: \"\""},"destination":{"$ref":"#/types/konnect:index%2FEventGatewayVirtualClusterDestination:EventGatewayVirtualClusterDestination","description":"The backend cluster associated with the virtual cluster.\n\nEither \u003cspan pulumi-lang-nodejs=\"`id`\" pulumi-lang-dotnet=\"`Id`\" pulumi-lang-go=\"`id`\" pulumi-lang-python=\"`id`\" pulumi-lang-yaml=\"`id`\" pulumi-lang-java=\"`id`\"\u003e`id`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`name`\" pulumi-lang-dotnet=\"`Name`\" pulumi-lang-go=\"`name`\" pulumi-lang-python=\"`name`\" pulumi-lang-yaml=\"`name`\" pulumi-lang-java=\"`name`\"\u003e`name`\u003c/span\u003e must be provided. Following changes to the backend cluster name won't affect the\nreference, as the system will create the entities relationship by \u003cspan pulumi-lang-nodejs=\"`id`\" pulumi-lang-dotnet=\"`Id`\" pulumi-lang-go=\"`id`\" pulumi-lang-python=\"`id`\" pulumi-lang-yaml=\"`id`\" pulumi-lang-java=\"`id`\"\u003e`id`\u003c/span\u003e."},"dnsLabel":{"type":"string","description":"The DNS label used in the bootstrap server URL to identify the virtual cluster when using SNI routing.\nThe format follows the RFC1035: 1-63 chars, lowercase alphanumeric or '-', must start and end with an alphanumeric character."},"gatewayId":{"type":"string","description":"The UUID of your Gateway."},"labels":{"type":"object","additionalProperties":{"type":"string"},"description":"Labels store metadata of an entity that can be used for filtering an entity list or for searching across entity types. \n\nKeys must be of length 1-63 characters, and cannot start with \"kong\", \"konnect\", \"mesh\", \"kic\", or \"_\"."},"name":{"type":"string","description":"The name of the virtual cluster."},"namespace":{"$ref":"#/types/konnect:index%2FEventGatewayVirtualClusterNamespace:EventGatewayVirtualClusterNamespace","description":"Namespace allows to implement multitenancy using a single backend cluster.\nIt allows to either hide or enforce a static prefix on resources (topics, consumer group IDs, transaction IDs)."}},"requiredInputs":["aclMode","authentications","destination","dnsLabel","gatewayId"],"stateInputs":{"description":"Input properties used for looking up and filtering EventGatewayVirtualCluster resources.\n","properties":{"aclMode":{"type":"string","description":"Configures whether or not ACL policies are enforced on the gateway.\n- \u003cspan pulumi-lang-nodejs=\"`enforceOnGateway`\" pulumi-lang-dotnet=\"`EnforceOnGateway`\" pulumi-lang-go=\"`enforceOnGateway`\" pulumi-lang-python=\"`enforce_on_gateway`\" pulumi-lang-yaml=\"`enforceOnGateway`\" pulumi-lang-java=\"`enforceOnGateway`\"\u003e`enforce_on_gateway`\u003c/span\u003e means the gateway enforces its own ACL policies for this virtual cluster\n  and does not forward ACL-related commands to the backend cluster.\n  Note that if there are no ACL policies configured, all access is denied.\n- \u003cspan pulumi-lang-nodejs=\"`passthrough`\" pulumi-lang-dotnet=\"`Passthrough`\" pulumi-lang-go=\"`passthrough`\" pulumi-lang-python=\"`passthrough`\" pulumi-lang-yaml=\"`passthrough`\" pulumi-lang-java=\"`passthrough`\"\u003e`passthrough`\u003c/span\u003e tells the gateway to forward all ACL-related commands.\nmust be one of [\u003cspan pulumi-lang-nodejs=\"\"enforceOnGateway\"\" pulumi-lang-dotnet=\"\"EnforceOnGateway\"\" pulumi-lang-go=\"\"enforceOnGateway\"\" pulumi-lang-python=\"\"enforce_on_gateway\"\" pulumi-lang-yaml=\"\"enforceOnGateway\"\" pulumi-lang-java=\"\"enforceOnGateway\"\"\u003e\"enforce_on_gateway\"\u003c/span\u003e, \"passthrough\"]"},"authentications":{"type":"array","items":{"$ref":"#/types/konnect:index%2FEventGatewayVirtualClusterAuthentication:EventGatewayVirtualClusterAuthentication"},"description":"How to handle authentication from clients.\n\nIt tries to authenticate with every rule sequentially one by one.\nIt succeeds on the first match, and fails if no rule matches."},"createdAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity creation date."},"description":{"type":"string","description":"A human-readable description of the virtual cluster. Default: \"\""},"destination":{"$ref":"#/types/konnect:index%2FEventGatewayVirtualClusterDestination:EventGatewayVirtualClusterDestination","description":"The backend cluster associated with the virtual cluster.\n\nEither \u003cspan pulumi-lang-nodejs=\"`id`\" pulumi-lang-dotnet=\"`Id`\" pulumi-lang-go=\"`id`\" pulumi-lang-python=\"`id`\" pulumi-lang-yaml=\"`id`\" pulumi-lang-java=\"`id`\"\u003e`id`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`name`\" pulumi-lang-dotnet=\"`Name`\" pulumi-lang-go=\"`name`\" pulumi-lang-python=\"`name`\" pulumi-lang-yaml=\"`name`\" pulumi-lang-java=\"`name`\"\u003e`name`\u003c/span\u003e must be provided. Following changes to the backend cluster name won't affect the\nreference, as the system will create the entities relationship by \u003cspan pulumi-lang-nodejs=\"`id`\" pulumi-lang-dotnet=\"`Id`\" pulumi-lang-go=\"`id`\" pulumi-lang-python=\"`id`\" pulumi-lang-yaml=\"`id`\" pulumi-lang-java=\"`id`\"\u003e`id`\u003c/span\u003e."},"dnsLabel":{"type":"string","description":"The DNS label used in the bootstrap server URL to identify the virtual cluster when using SNI routing.\nThe format follows the RFC1035: 1-63 chars, lowercase alphanumeric or '-', must start and end with an alphanumeric character."},"gatewayId":{"type":"string","description":"The UUID of your Gateway."},"labels":{"type":"object","additionalProperties":{"type":"string"},"description":"Labels store metadata of an entity that can be used for filtering an entity list or for searching across entity types. \n\nKeys must be of length 1-63 characters, and cannot start with \"kong\", \"konnect\", \"mesh\", \"kic\", or \"_\"."},"name":{"type":"string","description":"The name of the virtual cluster."},"namespace":{"$ref":"#/types/konnect:index%2FEventGatewayVirtualClusterNamespace:EventGatewayVirtualClusterNamespace","description":"Namespace allows to implement multitenancy using a single backend cluster.\nIt allows to either hide or enforce a static prefix on resources (topics, consumer group IDs, transaction IDs)."},"updatedAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity update date."}},"type":"object"}},"konnect:index/gatewayAcl:GatewayAcl":{"description":"GatewayACL Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myGatewayacl = new konnect.GatewayAcl(\"my_gatewayacl\", {\n    consumerId: \"f28acbfa-c866-4587-b688-0208ac24df21\",\n    controlPlaneId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    createdAt: 3,\n    group: \"...my_group...\",\n    gatewayAclId: \"...my_id...\",\n    tags: [\"...\"],\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_gatewayacl = konnect.GatewayAcl(\"my_gatewayacl\",\n    consumer_id=\"f28acbfa-c866-4587-b688-0208ac24df21\",\n    control_plane_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    created_at=3,\n    group=\"...my_group...\",\n    gateway_acl_id=\"...my_id...\",\n    tags=[\"...\"])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myGatewayacl = new Konnect.GatewayAcl(\"my_gatewayacl\", new()\n    {\n        ConsumerId = \"f28acbfa-c866-4587-b688-0208ac24df21\",\n        ControlPlaneId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        CreatedAt = 3,\n        Group = \"...my_group...\",\n        GatewayAclId = \"...my_id...\",\n        Tags = new[]\n        {\n            \"...\",\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewGatewayAcl(ctx, \"my_gatewayacl\", \u0026konnect.GatewayAclArgs{\n\t\t\tConsumerId:     pulumi.String(\"f28acbfa-c866-4587-b688-0208ac24df21\"),\n\t\t\tControlPlaneId: pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tCreatedAt:      pulumi.Float64(3),\n\t\t\tGroup:          pulumi.String(\"...my_group...\"),\n\t\t\tGatewayAclId:   pulumi.String(\"...my_id...\"),\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"...\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.GatewayAcl;\nimport com.pulumi.konnect.GatewayAclArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myGatewayacl = new GatewayAcl(\"myGatewayacl\", GatewayAclArgs.builder()\n            .consumerId(\"f28acbfa-c866-4587-b688-0208ac24df21\")\n            .controlPlaneId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .createdAt(3.0)\n            .group(\"...my_group...\")\n            .gatewayAclId(\"...my_id...\")\n            .tags(\"...\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myGatewayacl:\n    type: konnect:GatewayAcl\n    name: my_gatewayacl\n    properties:\n      consumerId: f28acbfa-c866-4587-b688-0208ac24df21\n      controlPlaneId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      createdAt: 3\n      group: '...my_group...'\n      gatewayAclId: '...my_id...'\n      tags:\n        - '...'\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_gateway_acl.my_konnect_gateway_acl\n\n  id = jsonencode({\n\n    consumer_id = \"f28acbfa-c866-4587-b688-0208ac24df21\"\n\n    control_plane_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"f28acbfa-c866-4587-b688-0208ac24df21\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/gatewayAcl:GatewayAcl my_konnect_gateway_acl '{\"consumer_id\": \"f28acbfa-c866-4587-b688-0208ac24df21\", \"control_plane_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"f28acbfa-c866-4587-b688-0208ac24df21\"}'\n```\n\n","properties":{"consumerId":{"type":"string","description":"Consumer ID for nested entities. Requires replacement if changed.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created. Requires replacement if changed.\n"},"gatewayAclId":{"type":"string","description":"A string representing a UUID (universally unique identifier). Requires replacement if changed.\n"},"group":{"type":"string","description":"Requires replacement if changed.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"A set of strings representing tags. Requires replacement if changed.\n"}},"type":"object","required":["consumerId","controlPlaneId","createdAt","gatewayAclId","group"],"inputProperties":{"consumerId":{"type":"string","description":"Consumer ID for nested entities. Requires replacement if changed.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created. Requires replacement if changed.\n"},"gatewayAclId":{"type":"string","description":"A string representing a UUID (universally unique identifier). Requires replacement if changed.\n"},"group":{"type":"string","description":"Requires replacement if changed.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"A set of strings representing tags. Requires replacement if changed.\n"}},"requiredInputs":["consumerId","controlPlaneId","group"],"stateInputs":{"description":"Input properties used for looking up and filtering GatewayAcl resources.\n","properties":{"consumerId":{"type":"string","description":"Consumer ID for nested entities. Requires replacement if changed.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created. Requires replacement if changed.\n"},"gatewayAclId":{"type":"string","description":"A string representing a UUID (universally unique identifier). Requires replacement if changed.\n"},"group":{"type":"string","description":"Requires replacement if changed.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"A set of strings representing tags. Requires replacement if changed.\n"}},"type":"object"}},"konnect:index/gatewayBasicAuth:GatewayBasicAuth":{"description":"GatewayBasicAuth Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myGatewaybasicauth = new konnect.GatewayBasicAuth(\"my_gatewaybasicauth\", {\n    consumerId: \"f28acbfa-c866-4587-b688-0208ac24df21\",\n    controlPlaneId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    createdAt: 5,\n    gatewayBasicAuthId: \"...my_id...\",\n    password: \"...my_password...\",\n    tags: [\"...\"],\n    username: \"...my_username...\",\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_gatewaybasicauth = konnect.GatewayBasicAuth(\"my_gatewaybasicauth\",\n    consumer_id=\"f28acbfa-c866-4587-b688-0208ac24df21\",\n    control_plane_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    created_at=5,\n    gateway_basic_auth_id=\"...my_id...\",\n    password=\"...my_password...\",\n    tags=[\"...\"],\n    username=\"...my_username...\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myGatewaybasicauth = new Konnect.GatewayBasicAuth(\"my_gatewaybasicauth\", new()\n    {\n        ConsumerId = \"f28acbfa-c866-4587-b688-0208ac24df21\",\n        ControlPlaneId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        CreatedAt = 5,\n        GatewayBasicAuthId = \"...my_id...\",\n        Password = \"...my_password...\",\n        Tags = new[]\n        {\n            \"...\",\n        },\n        Username = \"...my_username...\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewGatewayBasicAuth(ctx, \"my_gatewaybasicauth\", \u0026konnect.GatewayBasicAuthArgs{\n\t\t\tConsumerId:         pulumi.String(\"f28acbfa-c866-4587-b688-0208ac24df21\"),\n\t\t\tControlPlaneId:     pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tCreatedAt:          pulumi.Float64(5),\n\t\t\tGatewayBasicAuthId: pulumi.String(\"...my_id...\"),\n\t\t\tPassword:           pulumi.String(\"...my_password...\"),\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"...\"),\n\t\t\t},\n\t\t\tUsername: pulumi.String(\"...my_username...\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.GatewayBasicAuth;\nimport com.pulumi.konnect.GatewayBasicAuthArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myGatewaybasicauth = new GatewayBasicAuth(\"myGatewaybasicauth\", GatewayBasicAuthArgs.builder()\n            .consumerId(\"f28acbfa-c866-4587-b688-0208ac24df21\")\n            .controlPlaneId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .createdAt(5.0)\n            .gatewayBasicAuthId(\"...my_id...\")\n            .password(\"...my_password...\")\n            .tags(\"...\")\n            .username(\"...my_username...\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myGatewaybasicauth:\n    type: konnect:GatewayBasicAuth\n    name: my_gatewaybasicauth\n    properties:\n      consumerId: f28acbfa-c866-4587-b688-0208ac24df21\n      controlPlaneId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      createdAt: 5\n      gatewayBasicAuthId: '...my_id...'\n      password: '...my_password...'\n      tags:\n        - '...'\n      username: '...my_username...'\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_gateway_basic_auth.my_konnect_gateway_basic_auth\n\n  id = jsonencode({\n\n    consumer_id = \"f28acbfa-c866-4587-b688-0208ac24df21\"\n\n    control_plane_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"80db1b58-ca7c-4d21-b92a-64eb07725872\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/gatewayBasicAuth:GatewayBasicAuth my_konnect_gateway_basic_auth '{\"consumer_id\": \"f28acbfa-c866-4587-b688-0208ac24df21\", \"control_plane_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"80db1b58-ca7c-4d21-b92a-64eb07725872\"}'\n```\n\n","properties":{"consumerId":{"type":"string","description":"Consumer ID for nested entities. Requires replacement if changed.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created. Requires replacement if changed.\n"},"gatewayBasicAuthId":{"type":"string","description":"A string representing a UUID (universally unique identifier). Requires replacement if changed.\n"},"password":{"type":"string","description":"Requires replacement if changed.\n","secret":true},"tags":{"type":"array","items":{"type":"string"},"description":"A set of strings representing tags. Requires replacement if changed.\n"},"username":{"type":"string","description":"Requires replacement if changed.\n"}},"type":"object","required":["consumerId","controlPlaneId","createdAt","gatewayBasicAuthId","password","username"],"inputProperties":{"consumerId":{"type":"string","description":"Consumer ID for nested entities. Requires replacement if changed.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created. Requires replacement if changed.\n"},"gatewayBasicAuthId":{"type":"string","description":"A string representing a UUID (universally unique identifier). Requires replacement if changed.\n"},"password":{"type":"string","description":"Requires replacement if changed.\n","secret":true},"tags":{"type":"array","items":{"type":"string"},"description":"A set of strings representing tags. Requires replacement if changed.\n"},"username":{"type":"string","description":"Requires replacement if changed.\n"}},"requiredInputs":["consumerId","controlPlaneId","password","username"],"stateInputs":{"description":"Input properties used for looking up and filtering GatewayBasicAuth resources.\n","properties":{"consumerId":{"type":"string","description":"Consumer ID for nested entities. Requires replacement if changed.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created. Requires replacement if changed.\n"},"gatewayBasicAuthId":{"type":"string","description":"A string representing a UUID (universally unique identifier). Requires replacement if changed.\n"},"password":{"type":"string","description":"Requires replacement if changed.\n","secret":true},"tags":{"type":"array","items":{"type":"string"},"description":"A set of strings representing tags. Requires replacement if changed.\n"},"username":{"type":"string","description":"Requires replacement if changed.\n"}},"type":"object"}},"konnect:index/gatewayCaCertificate:GatewayCaCertificate":{"description":"GatewayCACertificate Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myGatewaycacertificate = new konnect.GatewayCaCertificate(\"my_gatewaycacertificate\", {\n    cert: \"...my_cert...\",\n    controlPlaneId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    createdAt: 7,\n    gatewayCaCertificateId: \"...my_id...\",\n    tags: [\"...\"],\n    updatedAt: 6,\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_gatewaycacertificate = konnect.GatewayCaCertificate(\"my_gatewaycacertificate\",\n    cert=\"...my_cert...\",\n    control_plane_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    created_at=7,\n    gateway_ca_certificate_id=\"...my_id...\",\n    tags=[\"...\"],\n    updated_at=6)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myGatewaycacertificate = new Konnect.GatewayCaCertificate(\"my_gatewaycacertificate\", new()\n    {\n        Cert = \"...my_cert...\",\n        ControlPlaneId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        CreatedAt = 7,\n        GatewayCaCertificateId = \"...my_id...\",\n        Tags = new[]\n        {\n            \"...\",\n        },\n        UpdatedAt = 6,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewGatewayCaCertificate(ctx, \"my_gatewaycacertificate\", \u0026konnect.GatewayCaCertificateArgs{\n\t\t\tCert:                   pulumi.String(\"...my_cert...\"),\n\t\t\tControlPlaneId:         pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tCreatedAt:              pulumi.Float64(7),\n\t\t\tGatewayCaCertificateId: pulumi.String(\"...my_id...\"),\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"...\"),\n\t\t\t},\n\t\t\tUpdatedAt: pulumi.Float64(6),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.GatewayCaCertificate;\nimport com.pulumi.konnect.GatewayCaCertificateArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myGatewaycacertificate = new GatewayCaCertificate(\"myGatewaycacertificate\", GatewayCaCertificateArgs.builder()\n            .cert(\"...my_cert...\")\n            .controlPlaneId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .createdAt(7.0)\n            .gatewayCaCertificateId(\"...my_id...\")\n            .tags(\"...\")\n            .updatedAt(6.0)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myGatewaycacertificate:\n    type: konnect:GatewayCaCertificate\n    name: my_gatewaycacertificate\n    properties:\n      cert: '...my_cert...'\n      controlPlaneId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      createdAt: 7\n      gatewayCaCertificateId: '...my_id...'\n      tags:\n        - '...'\n      updatedAt: 6\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_gateway_ca_certificate.my_konnect_gateway_ca_certificate\n\n  id = jsonencode({\n\n    control_plane_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"3c31f18a-f27a-4f9b-8cd4-bf841554612f\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/gatewayCaCertificate:GatewayCaCertificate my_konnect_gateway_ca_certificate '{\"control_plane_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"3c31f18a-f27a-4f9b-8cd4-bf841554612f\"}'\n```\n\n","properties":{"cert":{"type":"string","description":"PEM-encoded public certificate of the CA.\n"},"certDigest":{"type":"string","description":"SHA256 hex digest of the public certificate. This field is read-only and it cannot be set by the caller, the value is automatically computed.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"gatewayCaCertificateId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Certificate for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object","required":["cert","certDigest","controlPlaneId","createdAt","gatewayCaCertificateId","updatedAt"],"inputProperties":{"cert":{"type":"string","description":"PEM-encoded public certificate of the CA.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"gatewayCaCertificateId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Certificate for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"requiredInputs":["cert","controlPlaneId"],"stateInputs":{"description":"Input properties used for looking up and filtering GatewayCaCertificate resources.\n","properties":{"cert":{"type":"string","description":"PEM-encoded public certificate of the CA.\n"},"certDigest":{"type":"string","description":"SHA256 hex digest of the public certificate. This field is read-only and it cannot be set by the caller, the value is automatically computed.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"gatewayCaCertificateId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Certificate for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object"}},"konnect:index/gatewayCertificate:GatewayCertificate":{"description":"GatewayCertificate Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myGatewaycertificate = new konnect.GatewayCertificate(\"my_gatewaycertificate\", {\n    cert: \"...my_cert...\",\n    certAlt: \"...my_cert_alt...\",\n    controlPlaneId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    createdAt: 10,\n    gatewayCertificateId: \"...my_id...\",\n    key: \"...my_key...\",\n    keyAlt: \"...my_key_alt...\",\n    tags: [\"...\"],\n    updatedAt: 4,\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_gatewaycertificate = konnect.GatewayCertificate(\"my_gatewaycertificate\",\n    cert=\"...my_cert...\",\n    cert_alt=\"...my_cert_alt...\",\n    control_plane_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    created_at=10,\n    gateway_certificate_id=\"...my_id...\",\n    key=\"...my_key...\",\n    key_alt=\"...my_key_alt...\",\n    tags=[\"...\"],\n    updated_at=4)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myGatewaycertificate = new Konnect.GatewayCertificate(\"my_gatewaycertificate\", new()\n    {\n        Cert = \"...my_cert...\",\n        CertAlt = \"...my_cert_alt...\",\n        ControlPlaneId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        CreatedAt = 10,\n        GatewayCertificateId = \"...my_id...\",\n        Key = \"...my_key...\",\n        KeyAlt = \"...my_key_alt...\",\n        Tags = new[]\n        {\n            \"...\",\n        },\n        UpdatedAt = 4,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewGatewayCertificate(ctx, \"my_gatewaycertificate\", \u0026konnect.GatewayCertificateArgs{\n\t\t\tCert:                 pulumi.String(\"...my_cert...\"),\n\t\t\tCertAlt:              pulumi.String(\"...my_cert_alt...\"),\n\t\t\tControlPlaneId:       pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tCreatedAt:            pulumi.Float64(10),\n\t\t\tGatewayCertificateId: pulumi.String(\"...my_id...\"),\n\t\t\tKey:                  pulumi.String(\"...my_key...\"),\n\t\t\tKeyAlt:               pulumi.String(\"...my_key_alt...\"),\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"...\"),\n\t\t\t},\n\t\t\tUpdatedAt: pulumi.Float64(4),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.GatewayCertificate;\nimport com.pulumi.konnect.GatewayCertificateArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myGatewaycertificate = new GatewayCertificate(\"myGatewaycertificate\", GatewayCertificateArgs.builder()\n            .cert(\"...my_cert...\")\n            .certAlt(\"...my_cert_alt...\")\n            .controlPlaneId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .createdAt(10.0)\n            .gatewayCertificateId(\"...my_id...\")\n            .key(\"...my_key...\")\n            .keyAlt(\"...my_key_alt...\")\n            .tags(\"...\")\n            .updatedAt(4.0)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myGatewaycertificate:\n    type: konnect:GatewayCertificate\n    name: my_gatewaycertificate\n    properties:\n      cert: '...my_cert...'\n      certAlt: '...my_cert_alt...'\n      controlPlaneId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      createdAt: 10\n      gatewayCertificateId: '...my_id...'\n      key: '...my_key...'\n      keyAlt: '...my_key_alt...'\n      tags:\n        - '...'\n      updatedAt: 4\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_gateway_certificate.my_konnect_gateway_certificate\n\n  id = jsonencode({\n\n    control_plane_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"ddf3cdaa-3329-4961-822a-ce6dbd38eff7\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/gatewayCertificate:GatewayCertificate my_konnect_gateway_certificate '{\"control_plane_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"ddf3cdaa-3329-4961-822a-ce6dbd38eff7\"}'\n```\n\n","properties":{"cert":{"type":"string","description":"PEM-encoded public certificate chain of the SSL key pair. This field is *referenceable*, which means it can be securely stored as a [secret](https://www.terraform.io/gateway/latest/plan-and-deploy/security/secrets-management/getting-started) in a vault. References must follow a [specific format](https://www.terraform.io/gateway/latest/plan-and-deploy/security/secrets-management/reference-format).\n"},"certAlt":{"type":"string","description":"PEM-encoded public certificate chain of the alternate SSL key pair. This should only be set if you have both RSA and ECDSA types of certificate available and would like Kong to prefer serving using ECDSA certs when client advertises support for it. This field is *referenceable*, which means it can be securely stored as a [secret](https://www.terraform.io/gateway/latest/plan-and-deploy/security/secrets-management/getting-started) in a vault. References must follow a [specific format](https://www.terraform.io/gateway/latest/plan-and-deploy/security/secrets-management/reference-format).\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"gatewayCertificateId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"key":{"type":"string","description":"PEM-encoded private key of the SSL key pair. This field is *referenceable*, which means it can be securely stored as a [secret](https://www.terraform.io/gateway/latest/plan-and-deploy/security/secrets-management/getting-started) in a vault. References must follow a [specific format](https://www.terraform.io/gateway/latest/plan-and-deploy/security/secrets-management/reference-format).\n"},"keyAlt":{"type":"string","description":"PEM-encoded private key of the alternate SSL key pair. This should only be set if you have both RSA and ECDSA types of certificate available and would like Kong to prefer serving using ECDSA certs when client advertises support for it. This field is *referenceable*, which means it can be securely stored as a [secret](https://www.terraform.io/gateway/latest/plan-and-deploy/security/secrets-management/getting-started) in a vault. References must follow a [specific format](https://www.terraform.io/gateway/latest/plan-and-deploy/security/secrets-management/reference-format).\n"},"snis":{"type":"array","items":{"type":"string"}},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Certificate for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object","required":["cert","controlPlaneId","createdAt","gatewayCertificateId","key","snis","updatedAt"],"inputProperties":{"cert":{"type":"string","description":"PEM-encoded public certificate chain of the SSL key pair. This field is *referenceable*, which means it can be securely stored as a [secret](https://www.terraform.io/gateway/latest/plan-and-deploy/security/secrets-management/getting-started) in a vault. References must follow a [specific format](https://www.terraform.io/gateway/latest/plan-and-deploy/security/secrets-management/reference-format).\n"},"certAlt":{"type":"string","description":"PEM-encoded public certificate chain of the alternate SSL key pair. This should only be set if you have both RSA and ECDSA types of certificate available and would like Kong to prefer serving using ECDSA certs when client advertises support for it. This field is *referenceable*, which means it can be securely stored as a [secret](https://www.terraform.io/gateway/latest/plan-and-deploy/security/secrets-management/getting-started) in a vault. References must follow a [specific format](https://www.terraform.io/gateway/latest/plan-and-deploy/security/secrets-management/reference-format).\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"gatewayCertificateId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"key":{"type":"string","description":"PEM-encoded private key of the SSL key pair. This field is *referenceable*, which means it can be securely stored as a [secret](https://www.terraform.io/gateway/latest/plan-and-deploy/security/secrets-management/getting-started) in a vault. References must follow a [specific format](https://www.terraform.io/gateway/latest/plan-and-deploy/security/secrets-management/reference-format).\n"},"keyAlt":{"type":"string","description":"PEM-encoded private key of the alternate SSL key pair. This should only be set if you have both RSA and ECDSA types of certificate available and would like Kong to prefer serving using ECDSA certs when client advertises support for it. This field is *referenceable*, which means it can be securely stored as a [secret](https://www.terraform.io/gateway/latest/plan-and-deploy/security/secrets-management/getting-started) in a vault. References must follow a [specific format](https://www.terraform.io/gateway/latest/plan-and-deploy/security/secrets-management/reference-format).\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Certificate for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"requiredInputs":["cert","controlPlaneId","key"],"stateInputs":{"description":"Input properties used for looking up and filtering GatewayCertificate resources.\n","properties":{"cert":{"type":"string","description":"PEM-encoded public certificate chain of the SSL key pair. This field is *referenceable*, which means it can be securely stored as a [secret](https://www.terraform.io/gateway/latest/plan-and-deploy/security/secrets-management/getting-started) in a vault. References must follow a [specific format](https://www.terraform.io/gateway/latest/plan-and-deploy/security/secrets-management/reference-format).\n"},"certAlt":{"type":"string","description":"PEM-encoded public certificate chain of the alternate SSL key pair. This should only be set if you have both RSA and ECDSA types of certificate available and would like Kong to prefer serving using ECDSA certs when client advertises support for it. This field is *referenceable*, which means it can be securely stored as a [secret](https://www.terraform.io/gateway/latest/plan-and-deploy/security/secrets-management/getting-started) in a vault. References must follow a [specific format](https://www.terraform.io/gateway/latest/plan-and-deploy/security/secrets-management/reference-format).\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"gatewayCertificateId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"key":{"type":"string","description":"PEM-encoded private key of the SSL key pair. This field is *referenceable*, which means it can be securely stored as a [secret](https://www.terraform.io/gateway/latest/plan-and-deploy/security/secrets-management/getting-started) in a vault. References must follow a [specific format](https://www.terraform.io/gateway/latest/plan-and-deploy/security/secrets-management/reference-format).\n"},"keyAlt":{"type":"string","description":"PEM-encoded private key of the alternate SSL key pair. This should only be set if you have both RSA and ECDSA types of certificate available and would like Kong to prefer serving using ECDSA certs when client advertises support for it. This field is *referenceable*, which means it can be securely stored as a [secret](https://www.terraform.io/gateway/latest/plan-and-deploy/security/secrets-management/getting-started) in a vault. References must follow a [specific format](https://www.terraform.io/gateway/latest/plan-and-deploy/security/secrets-management/reference-format).\n"},"snis":{"type":"array","items":{"type":"string"}},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Certificate for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object"}},"konnect:index/gatewayConfigStore:GatewayConfigStore":{"description":"GatewayConfigStore Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myGatewayconfigstore = new konnect.GatewayConfigStore(\"my_gatewayconfigstore\", {\n    controlPlaneId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    name: \"Config Store\",\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_gatewayconfigstore = konnect.GatewayConfigStore(\"my_gatewayconfigstore\",\n    control_plane_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    name=\"Config Store\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myGatewayconfigstore = new Konnect.GatewayConfigStore(\"my_gatewayconfigstore\", new()\n    {\n        ControlPlaneId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        Name = \"Config Store\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewGatewayConfigStore(ctx, \"my_gatewayconfigstore\", \u0026konnect.GatewayConfigStoreArgs{\n\t\t\tControlPlaneId: pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tName:           pulumi.String(\"Config Store\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.GatewayConfigStore;\nimport com.pulumi.konnect.GatewayConfigStoreArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myGatewayconfigstore = new GatewayConfigStore(\"myGatewayconfigstore\", GatewayConfigStoreArgs.builder()\n            .controlPlaneId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .name(\"Config Store\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myGatewayconfigstore:\n    type: konnect:GatewayConfigStore\n    name: my_gatewayconfigstore\n    properties:\n      controlPlaneId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      name: Config Store\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_gateway_config_store.my_konnect_gateway_config_store\n\n  id = jsonencode({\n\n    control_plane_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"d32d905a-ed33-46a3-a093-d8f536af9a8a\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/gatewayConfigStore:GatewayConfigStore my_konnect_gateway_config_store '{\"control_plane_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"d32d905a-ed33-46a3-a093-d8f536af9a8a\"}'\n```\n\n","properties":{"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity creation date.\n"},"name":{"type":"string","description":"The name of the Config Store\n"},"updatedAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity update date.\n"}},"type":"object","required":["controlPlaneId","createdAt","name","updatedAt"],"inputProperties":{"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"name":{"type":"string","description":"The name of the Config Store\n"}},"requiredInputs":["controlPlaneId"],"stateInputs":{"description":"Input properties used for looking up and filtering GatewayConfigStore resources.\n","properties":{"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity creation date.\n"},"name":{"type":"string","description":"The name of the Config Store\n"},"updatedAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity update date.\n"}},"type":"object"}},"konnect:index/gatewayConfigStoreSecret:GatewayConfigStoreSecret":{"description":"GatewayConfigStoreSecret Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myGatewayconfigstoresecret = new konnect.GatewayConfigStoreSecret(\"my_gatewayconfigstoresecret\", {\n    configStoreId: \"d32d905a-ed33-46a3-a093-d8f536af9a8a\",\n    controlPlaneId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    key: \"ConfigStoreSecretKey\",\n    value: \"...my_value...\",\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_gatewayconfigstoresecret = konnect.GatewayConfigStoreSecret(\"my_gatewayconfigstoresecret\",\n    config_store_id=\"d32d905a-ed33-46a3-a093-d8f536af9a8a\",\n    control_plane_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    key=\"ConfigStoreSecretKey\",\n    value=\"...my_value...\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myGatewayconfigstoresecret = new Konnect.GatewayConfigStoreSecret(\"my_gatewayconfigstoresecret\", new()\n    {\n        ConfigStoreId = \"d32d905a-ed33-46a3-a093-d8f536af9a8a\",\n        ControlPlaneId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        Key = \"ConfigStoreSecretKey\",\n        Value = \"...my_value...\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewGatewayConfigStoreSecret(ctx, \"my_gatewayconfigstoresecret\", \u0026konnect.GatewayConfigStoreSecretArgs{\n\t\t\tConfigStoreId:  pulumi.String(\"d32d905a-ed33-46a3-a093-d8f536af9a8a\"),\n\t\t\tControlPlaneId: pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tKey:            pulumi.String(\"ConfigStoreSecretKey\"),\n\t\t\tValue:          pulumi.String(\"...my_value...\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.GatewayConfigStoreSecret;\nimport com.pulumi.konnect.GatewayConfigStoreSecretArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myGatewayconfigstoresecret = new GatewayConfigStoreSecret(\"myGatewayconfigstoresecret\", GatewayConfigStoreSecretArgs.builder()\n            .configStoreId(\"d32d905a-ed33-46a3-a093-d8f536af9a8a\")\n            .controlPlaneId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .key(\"ConfigStoreSecretKey\")\n            .value(\"...my_value...\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myGatewayconfigstoresecret:\n    type: konnect:GatewayConfigStoreSecret\n    name: my_gatewayconfigstoresecret\n    properties:\n      configStoreId: d32d905a-ed33-46a3-a093-d8f536af9a8a\n      controlPlaneId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      key: ConfigStoreSecretKey\n      value: '...my_value...'\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_gateway_config_store_secret.my_konnect_gateway_config_store_secret\n\n  id = jsonencode({\n\n    config_store_id = \"d32d905a-ed33-46a3-a093-d8f536af9a8a\"\n\n    control_plane_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    key = \"ConfigStoreSecretKey\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/gatewayConfigStoreSecret:GatewayConfigStoreSecret my_konnect_gateway_config_store_secret '{\"config_store_id\": \"d32d905a-ed33-46a3-a093-d8f536af9a8a\", \"control_plane_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"key\": \"ConfigStoreSecretKey\"}'\n```\n\n","properties":{"configStoreId":{"type":"string","description":"Config Store identifier\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity creation date.\n"},"key":{"type":"string","description":"Config Store Secret key. Requires replacement if changed.\n"},"updatedAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity update date.\n"},"value":{"type":"string","secret":true}},"type":"object","required":["configStoreId","controlPlaneId","createdAt","key","updatedAt","value"],"inputProperties":{"configStoreId":{"type":"string","description":"Config Store identifier\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"key":{"type":"string","description":"Config Store Secret key. Requires replacement if changed.\n"},"value":{"type":"string","secret":true}},"requiredInputs":["configStoreId","controlPlaneId","key","value"],"stateInputs":{"description":"Input properties used for looking up and filtering GatewayConfigStoreSecret resources.\n","properties":{"configStoreId":{"type":"string","description":"Config Store identifier\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity creation date.\n"},"key":{"type":"string","description":"Config Store Secret key. Requires replacement if changed.\n"},"updatedAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity update date.\n"},"value":{"type":"string","secret":true}},"type":"object"}},"konnect:index/gatewayConsumer:GatewayConsumer":{"description":"GatewayConsumer Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myGatewayconsumer = new konnect.GatewayConsumer(\"my_gatewayconsumer\", {\n    controlPlaneId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    createdAt: 5,\n    customId: \"...my_custom_id...\",\n    gatewayConsumerId: \"...my_id...\",\n    tags: [\"...\"],\n    updatedAt: 1,\n    username: \"...my_username...\",\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_gatewayconsumer = konnect.GatewayConsumer(\"my_gatewayconsumer\",\n    control_plane_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    created_at=5,\n    custom_id=\"...my_custom_id...\",\n    gateway_consumer_id=\"...my_id...\",\n    tags=[\"...\"],\n    updated_at=1,\n    username=\"...my_username...\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myGatewayconsumer = new Konnect.GatewayConsumer(\"my_gatewayconsumer\", new()\n    {\n        ControlPlaneId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        CreatedAt = 5,\n        CustomId = \"...my_custom_id...\",\n        GatewayConsumerId = \"...my_id...\",\n        Tags = new[]\n        {\n            \"...\",\n        },\n        UpdatedAt = 1,\n        Username = \"...my_username...\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewGatewayConsumer(ctx, \"my_gatewayconsumer\", \u0026konnect.GatewayConsumerArgs{\n\t\t\tControlPlaneId:    pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tCreatedAt:         pulumi.Float64(5),\n\t\t\tCustomId:          pulumi.String(\"...my_custom_id...\"),\n\t\t\tGatewayConsumerId: pulumi.String(\"...my_id...\"),\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"...\"),\n\t\t\t},\n\t\t\tUpdatedAt: pulumi.Float64(1),\n\t\t\tUsername:  pulumi.String(\"...my_username...\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.GatewayConsumer;\nimport com.pulumi.konnect.GatewayConsumerArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myGatewayconsumer = new GatewayConsumer(\"myGatewayconsumer\", GatewayConsumerArgs.builder()\n            .controlPlaneId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .createdAt(5.0)\n            .customId(\"...my_custom_id...\")\n            .gatewayConsumerId(\"...my_id...\")\n            .tags(\"...\")\n            .updatedAt(1.0)\n            .username(\"...my_username...\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myGatewayconsumer:\n    type: konnect:GatewayConsumer\n    name: my_gatewayconsumer\n    properties:\n      controlPlaneId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      createdAt: 5\n      customId: '...my_custom_id...'\n      gatewayConsumerId: '...my_id...'\n      tags:\n        - '...'\n      updatedAt: 1\n      username: '...my_username...'\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_gateway_consumer.my_konnect_gateway_consumer\n\n  id = jsonencode({\n\n    control_plane_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"c1059869-6fa7-4329-a5f5-5946d14ca2c5\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/gatewayConsumer:GatewayConsumer my_konnect_gateway_consumer '{\"control_plane_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"c1059869-6fa7-4329-a5f5-5946d14ca2c5\"}'\n```\n\n","properties":{"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"customId":{"type":"string","description":"Field for storing an existing unique ID for the Consumer - useful for mapping Kong with users in your existing database. You must send either this field or \u003cspan pulumi-lang-nodejs=\"`username`\" pulumi-lang-dotnet=\"`Username`\" pulumi-lang-go=\"`username`\" pulumi-lang-python=\"`username`\" pulumi-lang-yaml=\"`username`\" pulumi-lang-java=\"`username`\"\u003e`username`\u003c/span\u003e with the request.\n"},"gatewayConsumerId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Consumer for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"},"username":{"type":"string","description":"The unique username of the Consumer. You must send either this field or \u003cspan pulumi-lang-nodejs=\"`customId`\" pulumi-lang-dotnet=\"`CustomId`\" pulumi-lang-go=\"`customId`\" pulumi-lang-python=\"`custom_id`\" pulumi-lang-yaml=\"`customId`\" pulumi-lang-java=\"`customId`\"\u003e`custom_id`\u003c/span\u003e with the request.\n"}},"type":"object","required":["controlPlaneId","createdAt","gatewayConsumerId","updatedAt"],"inputProperties":{"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"customId":{"type":"string","description":"Field for storing an existing unique ID for the Consumer - useful for mapping Kong with users in your existing database. You must send either this field or \u003cspan pulumi-lang-nodejs=\"`username`\" pulumi-lang-dotnet=\"`Username`\" pulumi-lang-go=\"`username`\" pulumi-lang-python=\"`username`\" pulumi-lang-yaml=\"`username`\" pulumi-lang-java=\"`username`\"\u003e`username`\u003c/span\u003e with the request.\n"},"gatewayConsumerId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Consumer for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"},"username":{"type":"string","description":"The unique username of the Consumer. You must send either this field or \u003cspan pulumi-lang-nodejs=\"`customId`\" pulumi-lang-dotnet=\"`CustomId`\" pulumi-lang-go=\"`customId`\" pulumi-lang-python=\"`custom_id`\" pulumi-lang-yaml=\"`customId`\" pulumi-lang-java=\"`customId`\"\u003e`custom_id`\u003c/span\u003e with the request.\n"}},"requiredInputs":["controlPlaneId"],"stateInputs":{"description":"Input properties used for looking up and filtering GatewayConsumer resources.\n","properties":{"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"customId":{"type":"string","description":"Field for storing an existing unique ID for the Consumer - useful for mapping Kong with users in your existing database. You must send either this field or \u003cspan pulumi-lang-nodejs=\"`username`\" pulumi-lang-dotnet=\"`Username`\" pulumi-lang-go=\"`username`\" pulumi-lang-python=\"`username`\" pulumi-lang-yaml=\"`username`\" pulumi-lang-java=\"`username`\"\u003e`username`\u003c/span\u003e with the request.\n"},"gatewayConsumerId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Consumer for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"},"username":{"type":"string","description":"The unique username of the Consumer. You must send either this field or \u003cspan pulumi-lang-nodejs=\"`customId`\" pulumi-lang-dotnet=\"`CustomId`\" pulumi-lang-go=\"`customId`\" pulumi-lang-python=\"`custom_id`\" pulumi-lang-yaml=\"`customId`\" pulumi-lang-java=\"`customId`\"\u003e`custom_id`\u003c/span\u003e with the request.\n"}},"type":"object"}},"konnect:index/gatewayConsumerGroup:GatewayConsumerGroup":{"description":"GatewayConsumerGroup Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myGatewayconsumergroup = new konnect.GatewayConsumerGroup(\"my_gatewayconsumergroup\", {\n    controlPlaneId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    createdAt: 1,\n    gatewayConsumerGroupId: \"...my_id...\",\n    name: \"...my_name...\",\n    tags: [\"...\"],\n    updatedAt: 9,\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_gatewayconsumergroup = konnect.GatewayConsumerGroup(\"my_gatewayconsumergroup\",\n    control_plane_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    created_at=1,\n    gateway_consumer_group_id=\"...my_id...\",\n    name=\"...my_name...\",\n    tags=[\"...\"],\n    updated_at=9)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myGatewayconsumergroup = new Konnect.GatewayConsumerGroup(\"my_gatewayconsumergroup\", new()\n    {\n        ControlPlaneId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        CreatedAt = 1,\n        GatewayConsumerGroupId = \"...my_id...\",\n        Name = \"...my_name...\",\n        Tags = new[]\n        {\n            \"...\",\n        },\n        UpdatedAt = 9,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewGatewayConsumerGroup(ctx, \"my_gatewayconsumergroup\", \u0026konnect.GatewayConsumerGroupArgs{\n\t\t\tControlPlaneId:         pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tCreatedAt:              pulumi.Float64(1),\n\t\t\tGatewayConsumerGroupId: pulumi.String(\"...my_id...\"),\n\t\t\tName:                   pulumi.String(\"...my_name...\"),\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"...\"),\n\t\t\t},\n\t\t\tUpdatedAt: pulumi.Float64(9),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.GatewayConsumerGroup;\nimport com.pulumi.konnect.GatewayConsumerGroupArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myGatewayconsumergroup = new GatewayConsumerGroup(\"myGatewayconsumergroup\", GatewayConsumerGroupArgs.builder()\n            .controlPlaneId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .createdAt(1.0)\n            .gatewayConsumerGroupId(\"...my_id...\")\n            .name(\"...my_name...\")\n            .tags(\"...\")\n            .updatedAt(9.0)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myGatewayconsumergroup:\n    type: konnect:GatewayConsumerGroup\n    name: my_gatewayconsumergroup\n    properties:\n      controlPlaneId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      createdAt: 1\n      gatewayConsumerGroupId: '...my_id...'\n      name: '...my_name...'\n      tags:\n        - '...'\n      updatedAt: 9\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_gateway_consumer_group.my_konnect_gateway_consumer_group\n\n  id = jsonencode({\n\n    control_plane_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/gatewayConsumerGroup:GatewayConsumerGroup my_konnect_gateway_consumer_group '{\"control_plane_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"\"}'\n```\n\n","properties":{"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"gatewayConsumerGroupId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"name":{"type":"string","description":"The name of the consumer group.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"A set of strings representing tags.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object","required":["controlPlaneId","createdAt","gatewayConsumerGroupId","name","updatedAt"],"inputProperties":{"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"gatewayConsumerGroupId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"name":{"type":"string","description":"The name of the consumer group.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"A set of strings representing tags.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"requiredInputs":["controlPlaneId"],"stateInputs":{"description":"Input properties used for looking up and filtering GatewayConsumerGroup resources.\n","properties":{"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"gatewayConsumerGroupId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"name":{"type":"string","description":"The name of the consumer group.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"A set of strings representing tags.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object"}},"konnect:index/gatewayConsumerGroupMember:GatewayConsumerGroupMember":{"description":"GatewayConsumerGroupMember Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myGatewayconsumergroupmember = new konnect.GatewayConsumerGroupMember(\"my_gatewayconsumergroupmember\", {\n    consumerGroupId: \"cf4c7e60-11db-49dd-b300-7c7e5f0f7e6b\",\n    consumerId: \"cf4c7e60-11db-49dd-b300-7c7e5f0f7e6b\",\n    controlPlaneId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_gatewayconsumergroupmember = konnect.GatewayConsumerGroupMember(\"my_gatewayconsumergroupmember\",\n    consumer_group_id=\"cf4c7e60-11db-49dd-b300-7c7e5f0f7e6b\",\n    consumer_id=\"cf4c7e60-11db-49dd-b300-7c7e5f0f7e6b\",\n    control_plane_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myGatewayconsumergroupmember = new Konnect.GatewayConsumerGroupMember(\"my_gatewayconsumergroupmember\", new()\n    {\n        ConsumerGroupId = \"cf4c7e60-11db-49dd-b300-7c7e5f0f7e6b\",\n        ConsumerId = \"cf4c7e60-11db-49dd-b300-7c7e5f0f7e6b\",\n        ControlPlaneId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewGatewayConsumerGroupMember(ctx, \"my_gatewayconsumergroupmember\", \u0026konnect.GatewayConsumerGroupMemberArgs{\n\t\t\tConsumerGroupId: pulumi.String(\"cf4c7e60-11db-49dd-b300-7c7e5f0f7e6b\"),\n\t\t\tConsumerId:      pulumi.String(\"cf4c7e60-11db-49dd-b300-7c7e5f0f7e6b\"),\n\t\t\tControlPlaneId:  pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.GatewayConsumerGroupMember;\nimport com.pulumi.konnect.GatewayConsumerGroupMemberArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myGatewayconsumergroupmember = new GatewayConsumerGroupMember(\"myGatewayconsumergroupmember\", GatewayConsumerGroupMemberArgs.builder()\n            .consumerGroupId(\"cf4c7e60-11db-49dd-b300-7c7e5f0f7e6b\")\n            .consumerId(\"cf4c7e60-11db-49dd-b300-7c7e5f0f7e6b\")\n            .controlPlaneId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myGatewayconsumergroupmember:\n    type: konnect:GatewayConsumerGroupMember\n    name: my_gatewayconsumergroupmember\n    properties:\n      consumerGroupId: cf4c7e60-11db-49dd-b300-7c7e5f0f7e6b\n      consumerId: cf4c7e60-11db-49dd-b300-7c7e5f0f7e6b\n      controlPlaneId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n```\n\u003c!--End PulumiCodeChooser --\u003e\n","properties":{"consumerGroupId":{"type":"string","description":"The UUID or name of the consumer group. Requires replacement if changed.\n"},"consumerId":{"type":"string","description":"Requires replacement if changed.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"}},"type":"object","required":["consumerGroupId","controlPlaneId"],"inputProperties":{"consumerGroupId":{"type":"string","description":"The UUID or name of the consumer group. Requires replacement if changed.\n"},"consumerId":{"type":"string","description":"Requires replacement if changed.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"}},"requiredInputs":["consumerGroupId","controlPlaneId"],"stateInputs":{"description":"Input properties used for looking up and filtering GatewayConsumerGroupMember resources.\n","properties":{"consumerGroupId":{"type":"string","description":"The UUID or name of the consumer group. Requires replacement if changed.\n"},"consumerId":{"type":"string","description":"Requires replacement if changed.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"}},"type":"object"}},"konnect:index/gatewayControlPlane:GatewayControlPlane":{"description":"GatewayControlPlane Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myGatewaycontrolplane = new konnect.GatewayControlPlane(\"my_gatewaycontrolplane\", {\n    authType: \"pinned_client_certs\",\n    cloudGateway: false,\n    clusterType: \"CLUSTER_TYPE_CONTROL_PLANE\",\n    description: \"A test control plane for exploration.\",\n    labels: {\n        key: \"value\",\n    },\n    name: \"Test Control Plane\",\n    proxyUrls: [{\n        host: \"...my_host...\",\n        port: 0,\n        protocol: \"...my_protocol...\",\n    }],\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_gatewaycontrolplane = konnect.GatewayControlPlane(\"my_gatewaycontrolplane\",\n    auth_type=\"pinned_client_certs\",\n    cloud_gateway=False,\n    cluster_type=\"CLUSTER_TYPE_CONTROL_PLANE\",\n    description=\"A test control plane for exploration.\",\n    labels={\n        \"key\": \"value\",\n    },\n    name=\"Test Control Plane\",\n    proxy_urls=[{\n        \"host\": \"...my_host...\",\n        \"port\": 0,\n        \"protocol\": \"...my_protocol...\",\n    }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myGatewaycontrolplane = new Konnect.GatewayControlPlane(\"my_gatewaycontrolplane\", new()\n    {\n        AuthType = \"pinned_client_certs\",\n        CloudGateway = false,\n        ClusterType = \"CLUSTER_TYPE_CONTROL_PLANE\",\n        Description = \"A test control plane for exploration.\",\n        Labels = \n        {\n            { \"key\", \"value\" },\n        },\n        Name = \"Test Control Plane\",\n        ProxyUrls = new[]\n        {\n            new Konnect.Inputs.GatewayControlPlaneProxyUrlArgs\n            {\n                Host = \"...my_host...\",\n                Port = 0,\n                Protocol = \"...my_protocol...\",\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewGatewayControlPlane(ctx, \"my_gatewaycontrolplane\", \u0026konnect.GatewayControlPlaneArgs{\n\t\t\tAuthType:     pulumi.String(\"pinned_client_certs\"),\n\t\t\tCloudGateway: pulumi.Bool(false),\n\t\t\tClusterType:  pulumi.String(\"CLUSTER_TYPE_CONTROL_PLANE\"),\n\t\t\tDescription:  pulumi.String(\"A test control plane for exploration.\"),\n\t\t\tLabels: pulumi.StringMap{\n\t\t\t\t\"key\": pulumi.String(\"value\"),\n\t\t\t},\n\t\t\tName: pulumi.String(\"Test Control Plane\"),\n\t\t\tProxyUrls: konnect.GatewayControlPlaneProxyUrlArray{\n\t\t\t\t\u0026konnect.GatewayControlPlaneProxyUrlArgs{\n\t\t\t\t\tHost:     pulumi.String(\"...my_host...\"),\n\t\t\t\t\tPort:     pulumi.Float64(0),\n\t\t\t\t\tProtocol: pulumi.String(\"...my_protocol...\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.GatewayControlPlane;\nimport com.pulumi.konnect.GatewayControlPlaneArgs;\nimport com.pulumi.konnect.inputs.GatewayControlPlaneProxyUrlArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myGatewaycontrolplane = new GatewayControlPlane(\"myGatewaycontrolplane\", GatewayControlPlaneArgs.builder()\n            .authType(\"pinned_client_certs\")\n            .cloudGateway(false)\n            .clusterType(\"CLUSTER_TYPE_CONTROL_PLANE\")\n            .description(\"A test control plane for exploration.\")\n            .labels(Map.of(\"key\", \"value\"))\n            .name(\"Test Control Plane\")\n            .proxyUrls(GatewayControlPlaneProxyUrlArgs.builder()\n                .host(\"...my_host...\")\n                .port(0.0)\n                .protocol(\"...my_protocol...\")\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myGatewaycontrolplane:\n    type: konnect:GatewayControlPlane\n    name: my_gatewaycontrolplane\n    properties:\n      authType: pinned_client_certs\n      cloudGateway: false\n      clusterType: CLUSTER_TYPE_CONTROL_PLANE\n      description: A test control plane for exploration.\n      labels:\n        key: value\n      name: Test Control Plane\n      proxyUrls:\n        - host: '...my_host...'\n          port: 0\n          protocol: '...my_protocol...'\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_gateway_control_plane.my_konnect_gateway_control_plane\n\n  id = \"d32d905a-ed33-46a3-a093-d8f536af9a8a\"\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/gatewayControlPlane:GatewayControlPlane my_konnect_gateway_control_plane \"d32d905a-ed33-46a3-a093-d8f536af9a8a\"\n```\n\n","properties":{"authType":{"type":"string","description":"The auth type value of the cluster associated with the Runtime Group. must be one of [\"pinned*client*certs\", \"pki*client*certs\"]\n"},"cloudGateway":{"type":"boolean","description":"Whether this control-plane can be used for cloud-gateways. Requires replacement if changed.\n"},"clusterType":{"type":"string","description":"The ClusterType value of the cluster associated with the Control Plane. must be one of [\"CLUSTER*TYPE*CONTROL*PLANE\", \"CLUSTER*TYPE*K8S*INGRESS*CONTROLLER\", \"CLUSTER*TYPE*CONTROL*PLANE*GROUP\", \"CLUSTER*TYPE*SERVERLESS\", \"CLUSTER*TYPE*HYBRID\", \"CLUSTER*TYPE*CLOUD*API_GATEWAY\"]; Requires replacement if changed.\n"},"config":{"$ref":"#/types/konnect:index%2FGatewayControlPlaneConfig:GatewayControlPlaneConfig","description":"CP configuration object for related access endpoints."},"description":{"type":"string","description":"The description of the control plane in Konnect.\n"},"labels":{"type":"object","additionalProperties":{"type":"string"},"description":"Labels store metadata of an entity that can be used for filtering an entity list or for searching across entity types.\n"},"name":{"type":"string","description":"The name of the control plane.\n"},"proxyUrls":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayControlPlaneProxyUrl:GatewayControlPlaneProxyUrl"},"description":"Array of proxy URLs associated with reaching the data-planes connected to a control-plane."}},"type":"object","required":["config","description","labels","name"],"inputProperties":{"authType":{"type":"string","description":"The auth type value of the cluster associated with the Runtime Group. must be one of [\"pinned*client*certs\", \"pki*client*certs\"]\n"},"cloudGateway":{"type":"boolean","description":"Whether this control-plane can be used for cloud-gateways. Requires replacement if changed.\n"},"clusterType":{"type":"string","description":"The ClusterType value of the cluster associated with the Control Plane. must be one of [\"CLUSTER*TYPE*CONTROL*PLANE\", \"CLUSTER*TYPE*K8S*INGRESS*CONTROLLER\", \"CLUSTER*TYPE*CONTROL*PLANE*GROUP\", \"CLUSTER*TYPE*SERVERLESS\", \"CLUSTER*TYPE*HYBRID\", \"CLUSTER*TYPE*CLOUD*API_GATEWAY\"]; Requires replacement if changed.\n"},"description":{"type":"string","description":"The description of the control plane in Konnect.\n"},"labels":{"type":"object","additionalProperties":{"type":"string"},"description":"Labels store metadata of an entity that can be used for filtering an entity list or for searching across entity types.\n"},"name":{"type":"string","description":"The name of the control plane.\n"},"proxyUrls":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayControlPlaneProxyUrl:GatewayControlPlaneProxyUrl"},"description":"Array of proxy URLs associated with reaching the data-planes connected to a control-plane."}},"stateInputs":{"description":"Input properties used for looking up and filtering GatewayControlPlane resources.\n","properties":{"authType":{"type":"string","description":"The auth type value of the cluster associated with the Runtime Group. must be one of [\"pinned*client*certs\", \"pki*client*certs\"]\n"},"cloudGateway":{"type":"boolean","description":"Whether this control-plane can be used for cloud-gateways. Requires replacement if changed.\n"},"clusterType":{"type":"string","description":"The ClusterType value of the cluster associated with the Control Plane. must be one of [\"CLUSTER*TYPE*CONTROL*PLANE\", \"CLUSTER*TYPE*K8S*INGRESS*CONTROLLER\", \"CLUSTER*TYPE*CONTROL*PLANE*GROUP\", \"CLUSTER*TYPE*SERVERLESS\", \"CLUSTER*TYPE*HYBRID\", \"CLUSTER*TYPE*CLOUD*API_GATEWAY\"]; Requires replacement if changed.\n"},"config":{"$ref":"#/types/konnect:index%2FGatewayControlPlaneConfig:GatewayControlPlaneConfig","description":"CP configuration object for related access endpoints."},"description":{"type":"string","description":"The description of the control plane in Konnect.\n"},"labels":{"type":"object","additionalProperties":{"type":"string"},"description":"Labels store metadata of an entity that can be used for filtering an entity list or for searching across entity types.\n"},"name":{"type":"string","description":"The name of the control plane.\n"},"proxyUrls":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayControlPlaneProxyUrl:GatewayControlPlaneProxyUrl"},"description":"Array of proxy URLs associated with reaching the data-planes connected to a control-plane."}},"type":"object"}},"konnect:index/gatewayControlPlaneMembership:GatewayControlPlaneMembership":{"description":"GatewayControlPlaneMembership Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myGatewaycontrolplanemembership = new konnect.GatewayControlPlaneMembership(\"my_gatewaycontrolplanemembership\", {\n    gatewayControlPlaneMembershipId: \"...my_id...\",\n    members: [{\n        id: \"...my_id...\",\n    }],\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_gatewaycontrolplanemembership = konnect.GatewayControlPlaneMembership(\"my_gatewaycontrolplanemembership\",\n    gateway_control_plane_membership_id=\"...my_id...\",\n    members=[{\n        \"id\": \"...my_id...\",\n    }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myGatewaycontrolplanemembership = new Konnect.GatewayControlPlaneMembership(\"my_gatewaycontrolplanemembership\", new()\n    {\n        GatewayControlPlaneMembershipId = \"...my_id...\",\n        Members = new[]\n        {\n            new Konnect.Inputs.GatewayControlPlaneMembershipMemberArgs\n            {\n                Id = \"...my_id...\",\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewGatewayControlPlaneMembership(ctx, \"my_gatewaycontrolplanemembership\", \u0026konnect.GatewayControlPlaneMembershipArgs{\n\t\t\tGatewayControlPlaneMembershipId: pulumi.String(\"...my_id...\"),\n\t\t\tMembers: konnect.GatewayControlPlaneMembershipMemberArray{\n\t\t\t\t\u0026konnect.GatewayControlPlaneMembershipMemberArgs{\n\t\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.GatewayControlPlaneMembership;\nimport com.pulumi.konnect.GatewayControlPlaneMembershipArgs;\nimport com.pulumi.konnect.inputs.GatewayControlPlaneMembershipMemberArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myGatewaycontrolplanemembership = new GatewayControlPlaneMembership(\"myGatewaycontrolplanemembership\", GatewayControlPlaneMembershipArgs.builder()\n            .gatewayControlPlaneMembershipId(\"...my_id...\")\n            .members(GatewayControlPlaneMembershipMemberArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myGatewaycontrolplanemembership:\n    type: konnect:GatewayControlPlaneMembership\n    name: my_gatewaycontrolplanemembership\n    properties:\n      gatewayControlPlaneMembershipId: '...my_id...'\n      members:\n        - id: '...my_id...'\n```\n\u003c!--End PulumiCodeChooser --\u003e\n","properties":{"gatewayControlPlaneMembershipId":{"type":"string","description":"ID of a control plane group. Requires replacement if changed.\n"},"members":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayControlPlaneMembershipMember:GatewayControlPlaneMembershipMember"},"description":"Requires replacement if changed.\n"}},"type":"object","required":["gatewayControlPlaneMembershipId","members"],"inputProperties":{"gatewayControlPlaneMembershipId":{"type":"string","description":"ID of a control plane group. Requires replacement if changed.\n"},"members":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayControlPlaneMembershipMember:GatewayControlPlaneMembershipMember"},"description":"Requires replacement if changed.\n"}},"requiredInputs":["gatewayControlPlaneMembershipId","members"],"stateInputs":{"description":"Input properties used for looking up and filtering GatewayControlPlaneMembership resources.\n","properties":{"gatewayControlPlaneMembershipId":{"type":"string","description":"ID of a control plane group. Requires replacement if changed.\n"},"members":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayControlPlaneMembershipMember:GatewayControlPlaneMembershipMember"},"description":"Requires replacement if changed.\n"}},"type":"object"}},"konnect:index/gatewayCustomPlugin:GatewayCustomPlugin":{"description":"Gateway Custom Plugin Resource\n","properties":{"config":{"$ref":"pulumi.json#/Any","description":"Configuration\n"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayCustomPluginConsumer:GatewayCustomPluginConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"consumerGroup":{"$ref":"#/types/konnect:index%2FGatewayCustomPluginConsumerGroup:GatewayCustomPluginConsumerGroup"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied.\n"},"instanceName":{"type":"string"},"name":{"type":"string","description":"Plugin Name\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayCustomPluginOrdering:GatewayCustomPluginOrdering"},"protocols":{"type":"array","items":{"type":"string"},"description":"A list of the request protocols that will trigger this plugin. The default value, as well as the possible values allowed on this field, may change depending on the plugin type. For example, plugins that only work in stream mode will only support `\"tcp\"` and `\"tls\"`.\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayCustomPluginRoute:GatewayCustomPluginRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the Route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayCustomPluginService:GatewayCustomPluginService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object","required":["config","consumer","consumerGroup","controlPlaneId","createdAt","enabled","instanceName","name","ordering","protocols","route","service","tags","updatedAt"],"inputProperties":{"config":{"$ref":"pulumi.json#/Any","description":"Configuration\n"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayCustomPluginConsumer:GatewayCustomPluginConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"consumerGroup":{"$ref":"#/types/konnect:index%2FGatewayCustomPluginConsumerGroup:GatewayCustomPluginConsumerGroup"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied.\n"},"instanceName":{"type":"string"},"name":{"type":"string","description":"Plugin Name\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayCustomPluginOrdering:GatewayCustomPluginOrdering"},"protocols":{"type":"array","items":{"type":"string"},"description":"A list of the request protocols that will trigger this plugin. The default value, as well as the possible values allowed on this field, may change depending on the plugin type. For example, plugins that only work in stream mode will only support `\"tcp\"` and `\"tls\"`.\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayCustomPluginRoute:GatewayCustomPluginRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the Route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayCustomPluginService:GatewayCustomPluginService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"}},"requiredInputs":["config","controlPlaneId"],"stateInputs":{"description":"Input properties used for looking up and filtering GatewayCustomPlugin resources.\n","properties":{"config":{"$ref":"pulumi.json#/Any","description":"Configuration\n"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayCustomPluginConsumer:GatewayCustomPluginConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"consumerGroup":{"$ref":"#/types/konnect:index%2FGatewayCustomPluginConsumerGroup:GatewayCustomPluginConsumerGroup"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied.\n"},"instanceName":{"type":"string"},"name":{"type":"string","description":"Plugin Name\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayCustomPluginOrdering:GatewayCustomPluginOrdering"},"protocols":{"type":"array","items":{"type":"string"},"description":"A list of the request protocols that will trigger this plugin. The default value, as well as the possible values allowed on this field, may change depending on the plugin type. For example, plugins that only work in stream mode will only support `\"tcp\"` and `\"tls\"`.\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayCustomPluginRoute:GatewayCustomPluginRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the Route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayCustomPluginService:GatewayCustomPluginService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object"}},"konnect:index/gatewayCustomPluginSchema:GatewayCustomPluginSchema":{"description":"GatewayCustomPluginSchema Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myGatewaycustompluginschema = new konnect.GatewayCustomPluginSchema(\"my_gatewaycustompluginschema\", {\n    controlPlaneId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    luaSchema: \"return { name = \\\"myplugin\\\", fields = { { config = { type = \\\"record\\\", fields = { } } } } }\",\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_gatewaycustompluginschema = konnect.GatewayCustomPluginSchema(\"my_gatewaycustompluginschema\",\n    control_plane_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    lua_schema=\"return { name = \\\"myplugin\\\", fields = { { config = { type = \\\"record\\\", fields = { } } } } }\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myGatewaycustompluginschema = new Konnect.GatewayCustomPluginSchema(\"my_gatewaycustompluginschema\", new()\n    {\n        ControlPlaneId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        LuaSchema = \"return { name = \\\"myplugin\\\", fields = { { config = { type = \\\"record\\\", fields = { } } } } }\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewGatewayCustomPluginSchema(ctx, \"my_gatewaycustompluginschema\", \u0026konnect.GatewayCustomPluginSchemaArgs{\n\t\t\tControlPlaneId: pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tLuaSchema:      pulumi.String(\"return { name = \\\"myplugin\\\", fields = { { config = { type = \\\"record\\\", fields = { } } } } }\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.GatewayCustomPluginSchema;\nimport com.pulumi.konnect.GatewayCustomPluginSchemaArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myGatewaycustompluginschema = new GatewayCustomPluginSchema(\"myGatewaycustompluginschema\", GatewayCustomPluginSchemaArgs.builder()\n            .controlPlaneId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .luaSchema(\"return { name = \\\"myplugin\\\", fields = { { config = { type = \\\"record\\\", fields = { } } } } }\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myGatewaycustompluginschema:\n    type: konnect:GatewayCustomPluginSchema\n    name: my_gatewaycustompluginschema\n    properties:\n      controlPlaneId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      luaSchema: return { name = \"myplugin\", fields = { { config = { type = \"record\", fields = { } } } } }\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_gateway_custom_plugin_schema.my_konnect_gateway_custom_plugin_schema\n\n  id = jsonencode({\n\n    control_plane_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    name = \"myplugin\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/gatewayCustomPluginSchema:GatewayCustomPluginSchema my_konnect_gateway_custom_plugin_schema '{\"control_plane_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"name\": \"myplugin\"}'\n```\n\n","properties":{"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"An ISO-8604 timestamp representation of custom plugin schema creation date.\n"},"luaSchema":{"type":"string","description":"The custom plugin schema; `jq -Rs '.' schema.lua`.\n"},"name":{"type":"string","description":"The custom plugin name\n"},"updatedAt":{"type":"number","description":"An ISO-8604 timestamp representation of custom plugin schema update date.\n"}},"type":"object","required":["controlPlaneId","createdAt","luaSchema","name","updatedAt"],"inputProperties":{"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"luaSchema":{"type":"string","description":"The custom plugin schema; `jq -Rs '.' schema.lua`.\n"}},"requiredInputs":["controlPlaneId","luaSchema"],"stateInputs":{"description":"Input properties used for looking up and filtering GatewayCustomPluginSchema resources.\n","properties":{"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"An ISO-8604 timestamp representation of custom plugin schema creation date.\n"},"luaSchema":{"type":"string","description":"The custom plugin schema; `jq -Rs '.' schema.lua`.\n"},"name":{"type":"string","description":"The custom plugin name\n"},"updatedAt":{"type":"number","description":"An ISO-8604 timestamp representation of custom plugin schema update date.\n"}},"type":"object"}},"konnect:index/gatewayCustomPluginStreaming:GatewayCustomPluginStreaming":{"description":"GatewayCustomPluginStreaming Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myGatewaycustompluginstreaming = new konnect.GatewayCustomPluginStreaming(\"my_gatewaycustompluginstreaming\", {\n    controlPlaneId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    createdAt: 10,\n    handler: \"...my_handler...\",\n    gatewayCustomPluginStreamingId: \"...my_id...\",\n    name: \"...my_name...\",\n    schema: \"...my_schema...\",\n    tags: [\"...\"],\n    updatedAt: 1,\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_gatewaycustompluginstreaming = konnect.GatewayCustomPluginStreaming(\"my_gatewaycustompluginstreaming\",\n    control_plane_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    created_at=10,\n    handler=\"...my_handler...\",\n    gateway_custom_plugin_streaming_id=\"...my_id...\",\n    name=\"...my_name...\",\n    schema=\"...my_schema...\",\n    tags=[\"...\"],\n    updated_at=1)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myGatewaycustompluginstreaming = new Konnect.GatewayCustomPluginStreaming(\"my_gatewaycustompluginstreaming\", new()\n    {\n        ControlPlaneId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        CreatedAt = 10,\n        Handler = \"...my_handler...\",\n        GatewayCustomPluginStreamingId = \"...my_id...\",\n        Name = \"...my_name...\",\n        Schema = \"...my_schema...\",\n        Tags = new[]\n        {\n            \"...\",\n        },\n        UpdatedAt = 1,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewGatewayCustomPluginStreaming(ctx, \"my_gatewaycustompluginstreaming\", \u0026konnect.GatewayCustomPluginStreamingArgs{\n\t\t\tControlPlaneId:                 pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tCreatedAt:                      pulumi.Float64(10),\n\t\t\tHandler:                        pulumi.String(\"...my_handler...\"),\n\t\t\tGatewayCustomPluginStreamingId: pulumi.String(\"...my_id...\"),\n\t\t\tName:                           pulumi.String(\"...my_name...\"),\n\t\t\tSchema:                         pulumi.String(\"...my_schema...\"),\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"...\"),\n\t\t\t},\n\t\t\tUpdatedAt: pulumi.Float64(1),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.GatewayCustomPluginStreaming;\nimport com.pulumi.konnect.GatewayCustomPluginStreamingArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myGatewaycustompluginstreaming = new GatewayCustomPluginStreaming(\"myGatewaycustompluginstreaming\", GatewayCustomPluginStreamingArgs.builder()\n            .controlPlaneId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .createdAt(10.0)\n            .handler(\"...my_handler...\")\n            .gatewayCustomPluginStreamingId(\"...my_id...\")\n            .name(\"...my_name...\")\n            .schema(\"...my_schema...\")\n            .tags(\"...\")\n            .updatedAt(1.0)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myGatewaycustompluginstreaming:\n    type: konnect:GatewayCustomPluginStreaming\n    name: my_gatewaycustompluginstreaming\n    properties:\n      controlPlaneId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      createdAt: 10\n      handler: '...my_handler...'\n      gatewayCustomPluginStreamingId: '...my_id...'\n      name: '...my_name...'\n      schema: '...my_schema...'\n      tags:\n        - '...'\n      updatedAt: 1\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_gateway_custom_plugin_streaming.my_konnect_gateway_custom_plugin_streaming\n\n  id = jsonencode({\n\n    control_plane_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/gatewayCustomPluginStreaming:GatewayCustomPluginStreaming my_konnect_gateway_custom_plugin_streaming '{\"control_plane_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"\"}'\n```\n\n","properties":{"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"gatewayCustomPluginStreamingId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"handler":{"type":"string","description":"The handler for the given custom plugin.\n"},"name":{"type":"string","description":"The name to associate with the given custom plugin.\n"},"schema":{"type":"string","description":"The schema for the given custom plugin.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"A set of strings representing tags.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object","required":["controlPlaneId","createdAt","gatewayCustomPluginStreamingId","handler","name","schema","updatedAt"],"inputProperties":{"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"gatewayCustomPluginStreamingId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"handler":{"type":"string","description":"The handler for the given custom plugin.\n"},"name":{"type":"string","description":"The name to associate with the given custom plugin.\n"},"schema":{"type":"string","description":"The schema for the given custom plugin.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"A set of strings representing tags.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"requiredInputs":["controlPlaneId","handler","schema"],"stateInputs":{"description":"Input properties used for looking up and filtering GatewayCustomPluginStreaming resources.\n","properties":{"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"gatewayCustomPluginStreamingId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"handler":{"type":"string","description":"The handler for the given custom plugin.\n"},"name":{"type":"string","description":"The name to associate with the given custom plugin.\n"},"schema":{"type":"string","description":"The schema for the given custom plugin.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"A set of strings representing tags.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object"}},"konnect:index/gatewayDataPlaneClientCertificate:GatewayDataPlaneClientCertificate":{"description":"GatewayDataPlaneClientCertificate Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myGatewaydataplaneclientcertificate = new konnect.GatewayDataPlaneClientCertificate(\"my_gatewaydataplaneclientcertificate\", {\n    cert: \"...my_cert...\",\n    controlPlaneId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_gatewaydataplaneclientcertificate = konnect.GatewayDataPlaneClientCertificate(\"my_gatewaydataplaneclientcertificate\",\n    cert=\"...my_cert...\",\n    control_plane_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myGatewaydataplaneclientcertificate = new Konnect.GatewayDataPlaneClientCertificate(\"my_gatewaydataplaneclientcertificate\", new()\n    {\n        Cert = \"...my_cert...\",\n        ControlPlaneId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewGatewayDataPlaneClientCertificate(ctx, \"my_gatewaydataplaneclientcertificate\", \u0026konnect.GatewayDataPlaneClientCertificateArgs{\n\t\t\tCert:           pulumi.String(\"...my_cert...\"),\n\t\t\tControlPlaneId: pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.GatewayDataPlaneClientCertificate;\nimport com.pulumi.konnect.GatewayDataPlaneClientCertificateArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myGatewaydataplaneclientcertificate = new GatewayDataPlaneClientCertificate(\"myGatewaydataplaneclientcertificate\", GatewayDataPlaneClientCertificateArgs.builder()\n            .cert(\"...my_cert...\")\n            .controlPlaneId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myGatewaydataplaneclientcertificate:\n    type: konnect:GatewayDataPlaneClientCertificate\n    name: my_gatewaydataplaneclientcertificate\n    properties:\n      cert: '...my_cert...'\n      controlPlaneId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_gateway_data_plane_client_certificate.my_konnect_gateway_data_plane_client_certificate\n\n  id = jsonencode({\n\n    control_plane_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"...\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/gatewayDataPlaneClientCertificate:GatewayDataPlaneClientCertificate my_konnect_gateway_data_plane_client_certificate '{\"control_plane_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"...\"}'\n```\n\n","properties":{"cert":{"type":"string","description":"JSON escaped string of the certificate. Requires replacement if changed.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Date certificate was created.\n"},"updatedAt":{"type":"number","description":"Date certificate was last updated.\n"}},"type":"object","required":["cert","controlPlaneId","createdAt","updatedAt"],"inputProperties":{"cert":{"type":"string","description":"JSON escaped string of the certificate. Requires replacement if changed.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"}},"requiredInputs":["cert","controlPlaneId"],"stateInputs":{"description":"Input properties used for looking up and filtering GatewayDataPlaneClientCertificate resources.\n","properties":{"cert":{"type":"string","description":"JSON escaped string of the certificate. Requires replacement if changed.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Date certificate was created.\n"},"updatedAt":{"type":"number","description":"Date certificate was last updated.\n"}},"type":"object"}},"konnect:index/gatewayHmacAuth:GatewayHmacAuth":{"description":"GatewayHMACAuth Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myGatewayhmacauth = new konnect.GatewayHmacAuth(\"my_gatewayhmacauth\", {\n    consumerId: \"f28acbfa-c866-4587-b688-0208ac24df21\",\n    controlPlaneId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    createdAt: 9,\n    gatewayHmacAuthId: \"...my_id...\",\n    secret: \"...my_secret...\",\n    tags: [\"...\"],\n    username: \"...my_username...\",\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_gatewayhmacauth = konnect.GatewayHmacAuth(\"my_gatewayhmacauth\",\n    consumer_id=\"f28acbfa-c866-4587-b688-0208ac24df21\",\n    control_plane_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    created_at=9,\n    gateway_hmac_auth_id=\"...my_id...\",\n    secret=\"...my_secret...\",\n    tags=[\"...\"],\n    username=\"...my_username...\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myGatewayhmacauth = new Konnect.GatewayHmacAuth(\"my_gatewayhmacauth\", new()\n    {\n        ConsumerId = \"f28acbfa-c866-4587-b688-0208ac24df21\",\n        ControlPlaneId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        CreatedAt = 9,\n        GatewayHmacAuthId = \"...my_id...\",\n        Secret = \"...my_secret...\",\n        Tags = new[]\n        {\n            \"...\",\n        },\n        Username = \"...my_username...\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewGatewayHmacAuth(ctx, \"my_gatewayhmacauth\", \u0026konnect.GatewayHmacAuthArgs{\n\t\t\tConsumerId:        pulumi.String(\"f28acbfa-c866-4587-b688-0208ac24df21\"),\n\t\t\tControlPlaneId:    pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tCreatedAt:         pulumi.Float64(9),\n\t\t\tGatewayHmacAuthId: pulumi.String(\"...my_id...\"),\n\t\t\tSecret:            pulumi.String(\"...my_secret...\"),\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"...\"),\n\t\t\t},\n\t\t\tUsername: pulumi.String(\"...my_username...\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.GatewayHmacAuth;\nimport com.pulumi.konnect.GatewayHmacAuthArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myGatewayhmacauth = new GatewayHmacAuth(\"myGatewayhmacauth\", GatewayHmacAuthArgs.builder()\n            .consumerId(\"f28acbfa-c866-4587-b688-0208ac24df21\")\n            .controlPlaneId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .createdAt(9.0)\n            .gatewayHmacAuthId(\"...my_id...\")\n            .secret(\"...my_secret...\")\n            .tags(\"...\")\n            .username(\"...my_username...\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myGatewayhmacauth:\n    type: konnect:GatewayHmacAuth\n    name: my_gatewayhmacauth\n    properties:\n      consumerId: f28acbfa-c866-4587-b688-0208ac24df21\n      controlPlaneId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      createdAt: 9\n      gatewayHmacAuthId: '...my_id...'\n      secret: '...my_secret...'\n      tags:\n        - '...'\n      username: '...my_username...'\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_gateway_hmac_auth.my_konnect_gateway_hmac_auth\n\n  id = jsonencode({\n\n    consumer_id = \"f28acbfa-c866-4587-b688-0208ac24df21\"\n\n    control_plane_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"70e7b00b-72f2-471b-a5ce-9c4171775360\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/gatewayHmacAuth:GatewayHmacAuth my_konnect_gateway_hmac_auth '{\"consumer_id\": \"f28acbfa-c866-4587-b688-0208ac24df21\", \"control_plane_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"70e7b00b-72f2-471b-a5ce-9c4171775360\"}'\n```\n\n","properties":{"consumerId":{"type":"string","description":"Consumer ID for nested entities. Requires replacement if changed.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created. Requires replacement if changed.\n"},"gatewayHmacAuthId":{"type":"string","description":"A string representing a UUID (universally unique identifier). Requires replacement if changed.\n"},"secret":{"type":"string","description":"Requires replacement if changed.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"A set of strings representing tags. Requires replacement if changed.\n"},"username":{"type":"string","description":"Requires replacement if changed.\n"}},"type":"object","required":["consumerId","controlPlaneId","createdAt","gatewayHmacAuthId","secret","username"],"inputProperties":{"consumerId":{"type":"string","description":"Consumer ID for nested entities. Requires replacement if changed.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created. Requires replacement if changed.\n"},"gatewayHmacAuthId":{"type":"string","description":"A string representing a UUID (universally unique identifier). Requires replacement if changed.\n"},"secret":{"type":"string","description":"Requires replacement if changed.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"A set of strings representing tags. Requires replacement if changed.\n"},"username":{"type":"string","description":"Requires replacement if changed.\n"}},"requiredInputs":["consumerId","controlPlaneId","username"],"stateInputs":{"description":"Input properties used for looking up and filtering GatewayHmacAuth resources.\n","properties":{"consumerId":{"type":"string","description":"Consumer ID for nested entities. Requires replacement if changed.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created. Requires replacement if changed.\n"},"gatewayHmacAuthId":{"type":"string","description":"A string representing a UUID (universally unique identifier). Requires replacement if changed.\n"},"secret":{"type":"string","description":"Requires replacement if changed.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"A set of strings representing tags. Requires replacement if changed.\n"},"username":{"type":"string","description":"Requires replacement if changed.\n"}},"type":"object"}},"konnect:index/gatewayJwt:GatewayJwt":{"description":"GatewayJWT Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myGatewayjwt = new konnect.GatewayJwt(\"my_gatewayjwt\", {\n    algorithm: \"PS384\",\n    consumerId: \"f28acbfa-c866-4587-b688-0208ac24df21\",\n    controlPlaneId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    createdAt: 8,\n    gatewayJwtId: \"...my_id...\",\n    key: \"...my_key...\",\n    rsaPublicKey: \"...my_rsa_public_key...\",\n    secret: \"...my_secret...\",\n    tags: [\"...\"],\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_gatewayjwt = konnect.GatewayJwt(\"my_gatewayjwt\",\n    algorithm=\"PS384\",\n    consumer_id=\"f28acbfa-c866-4587-b688-0208ac24df21\",\n    control_plane_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    created_at=8,\n    gateway_jwt_id=\"...my_id...\",\n    key=\"...my_key...\",\n    rsa_public_key=\"...my_rsa_public_key...\",\n    secret=\"...my_secret...\",\n    tags=[\"...\"])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myGatewayjwt = new Konnect.GatewayJwt(\"my_gatewayjwt\", new()\n    {\n        Algorithm = \"PS384\",\n        ConsumerId = \"f28acbfa-c866-4587-b688-0208ac24df21\",\n        ControlPlaneId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        CreatedAt = 8,\n        GatewayJwtId = \"...my_id...\",\n        Key = \"...my_key...\",\n        RsaPublicKey = \"...my_rsa_public_key...\",\n        Secret = \"...my_secret...\",\n        Tags = new[]\n        {\n            \"...\",\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewGatewayJwt(ctx, \"my_gatewayjwt\", \u0026konnect.GatewayJwtArgs{\n\t\t\tAlgorithm:      pulumi.String(\"PS384\"),\n\t\t\tConsumerId:     pulumi.String(\"f28acbfa-c866-4587-b688-0208ac24df21\"),\n\t\t\tControlPlaneId: pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tCreatedAt:      pulumi.Float64(8),\n\t\t\tGatewayJwtId:   pulumi.String(\"...my_id...\"),\n\t\t\tKey:            pulumi.String(\"...my_key...\"),\n\t\t\tRsaPublicKey:   pulumi.String(\"...my_rsa_public_key...\"),\n\t\t\tSecret:         pulumi.String(\"...my_secret...\"),\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"...\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.GatewayJwt;\nimport com.pulumi.konnect.GatewayJwtArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myGatewayjwt = new GatewayJwt(\"myGatewayjwt\", GatewayJwtArgs.builder()\n            .algorithm(\"PS384\")\n            .consumerId(\"f28acbfa-c866-4587-b688-0208ac24df21\")\n            .controlPlaneId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .createdAt(8.0)\n            .gatewayJwtId(\"...my_id...\")\n            .key(\"...my_key...\")\n            .rsaPublicKey(\"...my_rsa_public_key...\")\n            .secret(\"...my_secret...\")\n            .tags(\"...\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myGatewayjwt:\n    type: konnect:GatewayJwt\n    name: my_gatewayjwt\n    properties:\n      algorithm: PS384\n      consumerId: f28acbfa-c866-4587-b688-0208ac24df21\n      controlPlaneId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      createdAt: 8\n      gatewayJwtId: '...my_id...'\n      key: '...my_key...'\n      rsaPublicKey: '...my_rsa_public_key...'\n      secret: '...my_secret...'\n      tags:\n        - '...'\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_gateway_jwt.my_konnect_gateway_jwt\n\n  id = jsonencode({\n\n    consumer_id = \"f28acbfa-c866-4587-b688-0208ac24df21\"\n\n    control_plane_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"4a7f5faa-8c96-46d6-8214-c87573ef2ac4\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/gatewayJwt:GatewayJwt my_konnect_gateway_jwt '{\"consumer_id\": \"f28acbfa-c866-4587-b688-0208ac24df21\", \"control_plane_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"4a7f5faa-8c96-46d6-8214-c87573ef2ac4\"}'\n```\n\n","properties":{"algorithm":{"type":"string","description":"Default: \"HS256\"; must be one of [\"ES256\", \"ES256K\", \"ES384\", \"ES512\", \"ESB256\", \"ESB320\", \"ESB384\", \"ESB512\", \"ESP256\", \"ESP384\", \"ESP512\", \"Ed25519\", \"Ed448\", \"EdDSA\", \"HS256\", \"HS384\", \"HS512\", \"PS256\", \"PS384\", \"PS512\", \"RS256\", \"RS384\", \"RS512\"]; Requires replacement if changed.\n"},"consumerId":{"type":"string","description":"Consumer ID for nested entities. Requires replacement if changed.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created. Requires replacement if changed.\n"},"gatewayJwtId":{"type":"string","description":"A string representing a UUID (universally unique identifier). Requires replacement if changed.\n"},"key":{"type":"string","description":"Requires replacement if changed.\n"},"rsaPublicKey":{"type":"string","description":"Requires replacement if changed.\n"},"secret":{"type":"string","description":"Requires replacement if changed.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"A set of strings representing tags. Requires replacement if changed.\n"}},"type":"object","required":["algorithm","consumerId","controlPlaneId","createdAt","gatewayJwtId","key","secret"],"inputProperties":{"algorithm":{"type":"string","description":"Default: \"HS256\"; must be one of [\"ES256\", \"ES256K\", \"ES384\", \"ES512\", \"ESB256\", \"ESB320\", \"ESB384\", \"ESB512\", \"ESP256\", \"ESP384\", \"ESP512\", \"Ed25519\", \"Ed448\", \"EdDSA\", \"HS256\", \"HS384\", \"HS512\", \"PS256\", \"PS384\", \"PS512\", \"RS256\", \"RS384\", \"RS512\"]; Requires replacement if changed.\n"},"consumerId":{"type":"string","description":"Consumer ID for nested entities. Requires replacement if changed.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created. Requires replacement if changed.\n"},"gatewayJwtId":{"type":"string","description":"A string representing a UUID (universally unique identifier). Requires replacement if changed.\n"},"key":{"type":"string","description":"Requires replacement if changed.\n"},"rsaPublicKey":{"type":"string","description":"Requires replacement if changed.\n"},"secret":{"type":"string","description":"Requires replacement if changed.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"A set of strings representing tags. Requires replacement if changed.\n"}},"requiredInputs":["consumerId","controlPlaneId"],"stateInputs":{"description":"Input properties used for looking up and filtering GatewayJwt resources.\n","properties":{"algorithm":{"type":"string","description":"Default: \"HS256\"; must be one of [\"ES256\", \"ES256K\", \"ES384\", \"ES512\", \"ESB256\", \"ESB320\", \"ESB384\", \"ESB512\", \"ESP256\", \"ESP384\", \"ESP512\", \"Ed25519\", \"Ed448\", \"EdDSA\", \"HS256\", \"HS384\", \"HS512\", \"PS256\", \"PS384\", \"PS512\", \"RS256\", \"RS384\", \"RS512\"]; Requires replacement if changed.\n"},"consumerId":{"type":"string","description":"Consumer ID for nested entities. Requires replacement if changed.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created. Requires replacement if changed.\n"},"gatewayJwtId":{"type":"string","description":"A string representing a UUID (universally unique identifier). Requires replacement if changed.\n"},"key":{"type":"string","description":"Requires replacement if changed.\n"},"rsaPublicKey":{"type":"string","description":"Requires replacement if changed.\n"},"secret":{"type":"string","description":"Requires replacement if changed.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"A set of strings representing tags. Requires replacement if changed.\n"}},"type":"object"}},"konnect:index/gatewayKey:GatewayKey":{"description":"GatewayKey Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myGatewaykey = new konnect.GatewayKey(\"my_gatewaykey\", {\n    controlPlaneId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    createdAt: 3,\n    gatewayKeyId: \"...my_id...\",\n    jwk: \"...my_jwk...\",\n    kid: \"...my_kid...\",\n    name: \"...my_name...\",\n    pem: {\n        privateKey: \"...my_private_key...\",\n        publicKey: \"...my_public_key...\",\n    },\n    set: {\n        id: \"...my_id...\",\n    },\n    tags: [\"...\"],\n    updatedAt: 2,\n    x5t: \"...my_x5t...\",\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_gatewaykey = konnect.GatewayKey(\"my_gatewaykey\",\n    control_plane_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    created_at=3,\n    gateway_key_id=\"...my_id...\",\n    jwk=\"...my_jwk...\",\n    kid=\"...my_kid...\",\n    name=\"...my_name...\",\n    pem={\n        \"private_key\": \"...my_private_key...\",\n        \"public_key\": \"...my_public_key...\",\n    },\n    set={\n        \"id\": \"...my_id...\",\n    },\n    tags=[\"...\"],\n    updated_at=2,\n    x5t=\"...my_x5t...\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myGatewaykey = new Konnect.GatewayKey(\"my_gatewaykey\", new()\n    {\n        ControlPlaneId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        CreatedAt = 3,\n        GatewayKeyId = \"...my_id...\",\n        Jwk = \"...my_jwk...\",\n        Kid = \"...my_kid...\",\n        Name = \"...my_name...\",\n        Pem = new Konnect.Inputs.GatewayKeyPemArgs\n        {\n            PrivateKey = \"...my_private_key...\",\n            PublicKey = \"...my_public_key...\",\n        },\n        Set = new Konnect.Inputs.GatewayKeySetArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Tags = new[]\n        {\n            \"...\",\n        },\n        UpdatedAt = 2,\n        X5t = \"...my_x5t...\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewGatewayKey(ctx, \"my_gatewaykey\", \u0026konnect.GatewayKeyArgs{\n\t\t\tControlPlaneId: pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tCreatedAt:      pulumi.Float64(3),\n\t\t\tGatewayKeyId:   pulumi.String(\"...my_id...\"),\n\t\t\tJwk:            pulumi.String(\"...my_jwk...\"),\n\t\t\tKid:            pulumi.String(\"...my_kid...\"),\n\t\t\tName:           pulumi.String(\"...my_name...\"),\n\t\t\tPem: \u0026konnect.GatewayKeyPemArgs{\n\t\t\t\tPrivateKey: pulumi.String(\"...my_private_key...\"),\n\t\t\t\tPublicKey:  pulumi.String(\"...my_public_key...\"),\n\t\t\t},\n\t\t\tSet: \u0026konnect.GatewayKeySetTypeArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"...\"),\n\t\t\t},\n\t\t\tUpdatedAt: pulumi.Float64(2),\n\t\t\tX5t:       pulumi.String(\"...my_x5t...\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.GatewayKey;\nimport com.pulumi.konnect.GatewayKeyArgs;\nimport com.pulumi.konnect.inputs.GatewayKeyPemArgs;\nimport com.pulumi.konnect.inputs.GatewayKeySetArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myGatewaykey = new GatewayKey(\"myGatewaykey\", GatewayKeyArgs.builder()\n            .controlPlaneId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .createdAt(3.0)\n            .gatewayKeyId(\"...my_id...\")\n            .jwk(\"...my_jwk...\")\n            .kid(\"...my_kid...\")\n            .name(\"...my_name...\")\n            .pem(GatewayKeyPemArgs.builder()\n                .privateKey(\"...my_private_key...\")\n                .publicKey(\"...my_public_key...\")\n                .build())\n            .set(GatewayKeySetArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .tags(\"...\")\n            .updatedAt(2.0)\n            .x5t(\"...my_x5t...\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myGatewaykey:\n    type: konnect:GatewayKey\n    name: my_gatewaykey\n    properties:\n      controlPlaneId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      createdAt: 3\n      gatewayKeyId: '...my_id...'\n      jwk: '...my_jwk...'\n      kid: '...my_kid...'\n      name: '...my_name...'\n      pem:\n        privateKey: '...my_private_key...'\n        publicKey: '...my_public_key...'\n      set:\n        id: '...my_id...'\n      tags:\n        - '...'\n      updatedAt: 2\n      x5t: '...my_x5t...'\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_gateway_key.my_konnect_gateway_key\n\n  id = jsonencode({\n\n    control_plane_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"bba22c06-a632-42be-a018-1b9ff357b5b9\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/gatewayKey:GatewayKey my_konnect_gateway_key '{\"control_plane_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"bba22c06-a632-42be-a018-1b9ff357b5b9\"}'\n```\n\n","properties":{"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"gatewayKeyId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"jwk":{"type":"string","description":"A JSON Web Key represented as a string.\n"},"kid":{"type":"string","description":"A unique identifier for a key.\n"},"name":{"type":"string","description":"The name to associate with the given keys.\n"},"pem":{"$ref":"#/types/konnect:index%2FGatewayKeyPem:GatewayKeyPem","description":"A keypair in PEM format.\n"},"set":{"$ref":"#/types/konnect:index%2FGatewayKeySet:GatewayKeySet","description":"The id (an UUID) of the key-set with which to associate the key.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Key for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"},"x5t":{"type":"string","description":"X.509 certificate SHA-1 thumbprint.\n"}},"type":"object","required":["controlPlaneId","createdAt","gatewayKeyId","kid","name","pem","set","updatedAt"],"inputProperties":{"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"gatewayKeyId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"jwk":{"type":"string","description":"A JSON Web Key represented as a string.\n"},"kid":{"type":"string","description":"A unique identifier for a key.\n"},"name":{"type":"string","description":"The name to associate with the given keys.\n"},"pem":{"$ref":"#/types/konnect:index%2FGatewayKeyPem:GatewayKeyPem","description":"A keypair in PEM format.\n"},"set":{"$ref":"#/types/konnect:index%2FGatewayKeySet:GatewayKeySet","description":"The id (an UUID) of the key-set with which to associate the key.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Key for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"},"x5t":{"type":"string","description":"X.509 certificate SHA-1 thumbprint.\n"}},"requiredInputs":["controlPlaneId","kid"],"stateInputs":{"description":"Input properties used for looking up and filtering GatewayKey resources.\n","properties":{"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"gatewayKeyId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"jwk":{"type":"string","description":"A JSON Web Key represented as a string.\n"},"kid":{"type":"string","description":"A unique identifier for a key.\n"},"name":{"type":"string","description":"The name to associate with the given keys.\n"},"pem":{"$ref":"#/types/konnect:index%2FGatewayKeyPem:GatewayKeyPem","description":"A keypair in PEM format.\n"},"set":{"$ref":"#/types/konnect:index%2FGatewayKeySet:GatewayKeySet","description":"The id (an UUID) of the key-set with which to associate the key.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Key for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"},"x5t":{"type":"string","description":"X.509 certificate SHA-1 thumbprint.\n"}},"type":"object"}},"konnect:index/gatewayKeyAuth:GatewayKeyAuth":{"description":"GatewayKeyAuth Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myGatewaykeyauth = new konnect.GatewayKeyAuth(\"my_gatewaykeyauth\", {\n    consumerId: \"f28acbfa-c866-4587-b688-0208ac24df21\",\n    controlPlaneId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    createdAt: 5,\n    gatewayKeyAuthId: \"...my_id...\",\n    key: \"...my_key...\",\n    tags: [\"...\"],\n    ttl: 5,\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_gatewaykeyauth = konnect.GatewayKeyAuth(\"my_gatewaykeyauth\",\n    consumer_id=\"f28acbfa-c866-4587-b688-0208ac24df21\",\n    control_plane_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    created_at=5,\n    gateway_key_auth_id=\"...my_id...\",\n    key=\"...my_key...\",\n    tags=[\"...\"],\n    ttl=5)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myGatewaykeyauth = new Konnect.GatewayKeyAuth(\"my_gatewaykeyauth\", new()\n    {\n        ConsumerId = \"f28acbfa-c866-4587-b688-0208ac24df21\",\n        ControlPlaneId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        CreatedAt = 5,\n        GatewayKeyAuthId = \"...my_id...\",\n        Key = \"...my_key...\",\n        Tags = new[]\n        {\n            \"...\",\n        },\n        Ttl = 5,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewGatewayKeyAuth(ctx, \"my_gatewaykeyauth\", \u0026konnect.GatewayKeyAuthArgs{\n\t\t\tConsumerId:       pulumi.String(\"f28acbfa-c866-4587-b688-0208ac24df21\"),\n\t\t\tControlPlaneId:   pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tCreatedAt:        pulumi.Float64(5),\n\t\t\tGatewayKeyAuthId: pulumi.String(\"...my_id...\"),\n\t\t\tKey:              pulumi.String(\"...my_key...\"),\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"...\"),\n\t\t\t},\n\t\t\tTtl: pulumi.Float64(5),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.GatewayKeyAuth;\nimport com.pulumi.konnect.GatewayKeyAuthArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myGatewaykeyauth = new GatewayKeyAuth(\"myGatewaykeyauth\", GatewayKeyAuthArgs.builder()\n            .consumerId(\"f28acbfa-c866-4587-b688-0208ac24df21\")\n            .controlPlaneId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .createdAt(5.0)\n            .gatewayKeyAuthId(\"...my_id...\")\n            .key(\"...my_key...\")\n            .tags(\"...\")\n            .ttl(5.0)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myGatewaykeyauth:\n    type: konnect:GatewayKeyAuth\n    name: my_gatewaykeyauth\n    properties:\n      consumerId: f28acbfa-c866-4587-b688-0208ac24df21\n      controlPlaneId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      createdAt: 5\n      gatewayKeyAuthId: '...my_id...'\n      key: '...my_key...'\n      tags:\n        - '...'\n      ttl: 5\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_gateway_key_auth.my_konnect_gateway_key_auth\n\n  id = jsonencode({\n\n    consumer_id = \"f28acbfa-c866-4587-b688-0208ac24df21\"\n\n    control_plane_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/gatewayKeyAuth:GatewayKeyAuth my_konnect_gateway_key_auth '{\"consumer_id\": \"f28acbfa-c866-4587-b688-0208ac24df21\", \"control_plane_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"\"}'\n```\n\n","properties":{"consumerId":{"type":"string","description":"Consumer ID for nested entities. Requires replacement if changed.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created. Requires replacement if changed.\n"},"gatewayKeyAuthId":{"type":"string","description":"A string representing a UUID (universally unique identifier). Requires replacement if changed.\n"},"key":{"type":"string","description":"Requires replacement if changed.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"A set of strings representing tags. Requires replacement if changed.\n"},"ttl":{"type":"number","description":"key-auth ttl in seconds. Requires replacement if changed.\n"}},"type":"object","required":["consumerId","controlPlaneId","createdAt","gatewayKeyAuthId","key","ttl"],"inputProperties":{"consumerId":{"type":"string","description":"Consumer ID for nested entities. Requires replacement if changed.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created. Requires replacement if changed.\n"},"gatewayKeyAuthId":{"type":"string","description":"A string representing a UUID (universally unique identifier). Requires replacement if changed.\n"},"key":{"type":"string","description":"Requires replacement if changed.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"A set of strings representing tags. Requires replacement if changed.\n"},"ttl":{"type":"number","description":"key-auth ttl in seconds. Requires replacement if changed.\n"}},"requiredInputs":["consumerId","controlPlaneId"],"stateInputs":{"description":"Input properties used for looking up and filtering GatewayKeyAuth resources.\n","properties":{"consumerId":{"type":"string","description":"Consumer ID for nested entities. Requires replacement if changed.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created. Requires replacement if changed.\n"},"gatewayKeyAuthId":{"type":"string","description":"A string representing a UUID (universally unique identifier). Requires replacement if changed.\n"},"key":{"type":"string","description":"Requires replacement if changed.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"A set of strings representing tags. Requires replacement if changed.\n"},"ttl":{"type":"number","description":"key-auth ttl in seconds. Requires replacement if changed.\n"}},"type":"object"}},"konnect:index/gatewayKeySet:GatewayKeySet":{"description":"GatewayKeySet Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myGatewaykeyset = new konnect.GatewayKeySet(\"my_gatewaykeyset\", {\n    controlPlaneId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    createdAt: 3,\n    gatewayKeySetId: \"...my_id...\",\n    name: \"...my_name...\",\n    tags: [\"...\"],\n    updatedAt: 0,\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_gatewaykeyset = konnect.GatewayKeySet(\"my_gatewaykeyset\",\n    control_plane_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    created_at=3,\n    gateway_key_set_id=\"...my_id...\",\n    name=\"...my_name...\",\n    tags=[\"...\"],\n    updated_at=0)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myGatewaykeyset = new Konnect.GatewayKeySet(\"my_gatewaykeyset\", new()\n    {\n        ControlPlaneId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        CreatedAt = 3,\n        GatewayKeySetId = \"...my_id...\",\n        Name = \"...my_name...\",\n        Tags = new[]\n        {\n            \"...\",\n        },\n        UpdatedAt = 0,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewGatewayKeySet(ctx, \"my_gatewaykeyset\", \u0026konnect.GatewayKeySetArgs{\n\t\t\tControlPlaneId:  pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tCreatedAt:       pulumi.Float64(3),\n\t\t\tGatewayKeySetId: pulumi.String(\"...my_id...\"),\n\t\t\tName:            pulumi.String(\"...my_name...\"),\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"...\"),\n\t\t\t},\n\t\t\tUpdatedAt: pulumi.Float64(0),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.GatewayKeySet;\nimport com.pulumi.konnect.GatewayKeySetArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myGatewaykeyset = new GatewayKeySet(\"myGatewaykeyset\", GatewayKeySetArgs.builder()\n            .controlPlaneId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .createdAt(3.0)\n            .gatewayKeySetId(\"...my_id...\")\n            .name(\"...my_name...\")\n            .tags(\"...\")\n            .updatedAt(0.0)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myGatewaykeyset:\n    type: konnect:GatewayKeySet\n    name: my_gatewaykeyset\n    properties:\n      controlPlaneId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      createdAt: 3\n      gatewayKeySetId: '...my_id...'\n      name: '...my_name...'\n      tags:\n        - '...'\n      updatedAt: 0\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_gateway_key_set.my_konnect_gateway_key_set\n\n  id = jsonencode({\n\n    control_plane_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"6cc34248-50b4-4a81-9201-3bdf7a83f712\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/gatewayKeySet:GatewayKeySet my_konnect_gateway_key_set '{\"control_plane_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"6cc34248-50b4-4a81-9201-3bdf7a83f712\"}'\n```\n\n","properties":{"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"gatewayKeySetId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"name":{"type":"string","description":"The name to associate with the given key-set.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"A set of strings representing tags.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object","required":["controlPlaneId","createdAt","gatewayKeySetId","name","updatedAt"],"inputProperties":{"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"gatewayKeySetId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"name":{"type":"string","description":"The name to associate with the given key-set.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"A set of strings representing tags.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"requiredInputs":["controlPlaneId"],"stateInputs":{"description":"Input properties used for looking up and filtering GatewayKeySet resources.\n","properties":{"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"gatewayKeySetId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"name":{"type":"string","description":"The name to associate with the given key-set.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"A set of strings representing tags.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object"}},"konnect:index/gatewayMtlsAuth:GatewayMtlsAuth":{"description":"GatewayMTLSAuth Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myGatewaymtlsauth = new konnect.GatewayMtlsAuth(\"my_gatewaymtlsauth\", {\n    caCertificate: {\n        id: \"...my_id...\",\n    },\n    consumerId: \"f28acbfa-c866-4587-b688-0208ac24df21\",\n    controlPlaneId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    createdAt: 6,\n    gatewayMtlsAuthId: \"...my_id...\",\n    subjectName: \"...my_subject_name...\",\n    tags: [\"...\"],\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_gatewaymtlsauth = konnect.GatewayMtlsAuth(\"my_gatewaymtlsauth\",\n    ca_certificate={\n        \"id\": \"...my_id...\",\n    },\n    consumer_id=\"f28acbfa-c866-4587-b688-0208ac24df21\",\n    control_plane_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    created_at=6,\n    gateway_mtls_auth_id=\"...my_id...\",\n    subject_name=\"...my_subject_name...\",\n    tags=[\"...\"])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myGatewaymtlsauth = new Konnect.GatewayMtlsAuth(\"my_gatewaymtlsauth\", new()\n    {\n        CaCertificate = new Konnect.Inputs.GatewayMtlsAuthCaCertificateArgs\n        {\n            Id = \"...my_id...\",\n        },\n        ConsumerId = \"f28acbfa-c866-4587-b688-0208ac24df21\",\n        ControlPlaneId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        CreatedAt = 6,\n        GatewayMtlsAuthId = \"...my_id...\",\n        SubjectName = \"...my_subject_name...\",\n        Tags = new[]\n        {\n            \"...\",\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewGatewayMtlsAuth(ctx, \"my_gatewaymtlsauth\", \u0026konnect.GatewayMtlsAuthArgs{\n\t\t\tCaCertificate: \u0026konnect.GatewayMtlsAuthCaCertificateArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tConsumerId:        pulumi.String(\"f28acbfa-c866-4587-b688-0208ac24df21\"),\n\t\t\tControlPlaneId:    pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tCreatedAt:         pulumi.Float64(6),\n\t\t\tGatewayMtlsAuthId: pulumi.String(\"...my_id...\"),\n\t\t\tSubjectName:       pulumi.String(\"...my_subject_name...\"),\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"...\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.GatewayMtlsAuth;\nimport com.pulumi.konnect.GatewayMtlsAuthArgs;\nimport com.pulumi.konnect.inputs.GatewayMtlsAuthCaCertificateArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myGatewaymtlsauth = new GatewayMtlsAuth(\"myGatewaymtlsauth\", GatewayMtlsAuthArgs.builder()\n            .caCertificate(GatewayMtlsAuthCaCertificateArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .consumerId(\"f28acbfa-c866-4587-b688-0208ac24df21\")\n            .controlPlaneId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .createdAt(6.0)\n            .gatewayMtlsAuthId(\"...my_id...\")\n            .subjectName(\"...my_subject_name...\")\n            .tags(\"...\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myGatewaymtlsauth:\n    type: konnect:GatewayMtlsAuth\n    name: my_gatewaymtlsauth\n    properties:\n      caCertificate:\n        id: '...my_id...'\n      consumerId: f28acbfa-c866-4587-b688-0208ac24df21\n      controlPlaneId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      createdAt: 6\n      gatewayMtlsAuthId: '...my_id...'\n      subjectName: '...my_subject_name...'\n      tags:\n        - '...'\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_gateway_mtls_auth.my_konnect_gateway_mtls_auth\n\n  id = jsonencode({\n\n    consumer_id = \"f28acbfa-c866-4587-b688-0208ac24df21\"\n\n    control_plane_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/gatewayMtlsAuth:GatewayMtlsAuth my_konnect_gateway_mtls_auth '{\"consumer_id\": \"f28acbfa-c866-4587-b688-0208ac24df21\", \"control_plane_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"\"}'\n```\n\n","properties":{"caCertificate":{"$ref":"#/types/konnect:index%2FGatewayMtlsAuthCaCertificate:GatewayMtlsAuthCaCertificate","description":"Requires replacement if changed.\n"},"consumerId":{"type":"string","description":"Consumer ID for nested entities. Requires replacement if changed.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created. Requires replacement if changed.\n"},"gatewayMtlsAuthId":{"type":"string","description":"A string representing a UUID (universally unique identifier). Requires replacement if changed.\n"},"subjectName":{"type":"string","description":"Requires replacement if changed.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"A set of strings representing tags. Requires replacement if changed.\n"}},"type":"object","required":["caCertificate","consumerId","controlPlaneId","createdAt","gatewayMtlsAuthId","subjectName"],"inputProperties":{"caCertificate":{"$ref":"#/types/konnect:index%2FGatewayMtlsAuthCaCertificate:GatewayMtlsAuthCaCertificate","description":"Requires replacement if changed.\n"},"consumerId":{"type":"string","description":"Consumer ID for nested entities. Requires replacement if changed.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created. Requires replacement if changed.\n"},"gatewayMtlsAuthId":{"type":"string","description":"A string representing a UUID (universally unique identifier). Requires replacement if changed.\n"},"subjectName":{"type":"string","description":"Requires replacement if changed.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"A set of strings representing tags. Requires replacement if changed.\n"}},"requiredInputs":["consumerId","controlPlaneId","subjectName"],"stateInputs":{"description":"Input properties used for looking up and filtering GatewayMtlsAuth resources.\n","properties":{"caCertificate":{"$ref":"#/types/konnect:index%2FGatewayMtlsAuthCaCertificate:GatewayMtlsAuthCaCertificate","description":"Requires replacement if changed.\n"},"consumerId":{"type":"string","description":"Consumer ID for nested entities. Requires replacement if changed.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created. Requires replacement if changed.\n"},"gatewayMtlsAuthId":{"type":"string","description":"A string representing a UUID (universally unique identifier). Requires replacement if changed.\n"},"subjectName":{"type":"string","description":"Requires replacement if changed.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"A set of strings representing tags. Requires replacement if changed.\n"}},"type":"object"}},"konnect:index/gatewayPartial:GatewayPartial":{"description":"GatewayPartial Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myGatewaypartial = new konnect.GatewayPartial(\"my_gatewaypartial\", {\n    controlPlaneId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    redisCe: {\n        config: {\n            cloudAuthentication: {\n                authProvider: \"gcp\",\n                awsAccessKeyId: \"...my_aws_access_key_id...\",\n                awsAssumeRoleArn: \"...my_aws_assume_role_arn...\",\n                awsCacheName: \"...my_aws_cache_name...\",\n                awsIsServerless: false,\n                awsRegion: \"...my_aws_region...\",\n                awsRoleSessionName: \"...my_aws_role_session_name...\",\n                awsSecretAccessKey: \"...my_aws_secret_access_key...\",\n                azureClientId: \"...my_azure_client_id...\",\n                azureClientSecret: \"...my_azure_client_secret...\",\n                azureTenantId: \"...my_azure_tenant_id...\",\n                gcpServiceAccountJson: \"...my_gcp_service_account_json...\",\n            },\n            database: 5,\n            host: \"...my_host...\",\n            password: \"...my_password...\",\n            port: 8055,\n            serverName: \"...my_server_name...\",\n            ssl: true,\n            sslVerify: true,\n            timeout: 2089324356,\n            username: \"...my_username...\",\n        },\n        createdAt: 10,\n        id: \"...my_id...\",\n        name: \"...my_name...\",\n        tags: [\"...\"],\n        updatedAt: 2,\n    },\n    redisEe: {\n        config: {\n            cloudAuthentication: {\n                authProvider: \"gcp\",\n                awsAccessKeyId: \"...my_aws_access_key_id...\",\n                awsAssumeRoleArn: \"...my_aws_assume_role_arn...\",\n                awsCacheName: \"...my_aws_cache_name...\",\n                awsIsServerless: false,\n                awsRegion: \"...my_aws_region...\",\n                awsRoleSessionName: \"...my_aws_role_session_name...\",\n                awsSecretAccessKey: \"...my_aws_secret_access_key...\",\n                azureClientId: \"...my_azure_client_id...\",\n                azureClientSecret: \"...my_azure_client_secret...\",\n                azureTenantId: \"...my_azure_tenant_id...\",\n                gcpServiceAccountJson: \"...my_gcp_service_account_json...\",\n            },\n            clusterMaxRedirections: 4,\n            clusterNodes: [{\n                ip: \"...my_ip...\",\n                port: 13662,\n            }],\n            connectTimeout: 1346533360,\n            connectionIsProxied: false,\n            database: 1,\n            host: \"...my_host...\",\n            keepaliveBacklog: 259647341,\n            keepalivePoolSize: 1491672736,\n            password: \"...my_password...\",\n            port: 17730,\n            readTimeout: 1431389868,\n            sendTimeout: 1316344582,\n            sentinelMaster: \"...my_sentinel_master...\",\n            sentinelNodes: [{\n                host: \"...my_host...\",\n                port: 32792,\n            }],\n            sentinelPassword: \"...my_sentinel_password...\",\n            sentinelRole: \"slave\",\n            sentinelUsername: \"...my_sentinel_username...\",\n            serverName: \"...my_server_name...\",\n            ssl: false,\n            sslVerify: false,\n            username: \"...my_username...\",\n        },\n        createdAt: 2,\n        id: \"...my_id...\",\n        name: \"...my_name...\",\n        tags: [\"...\"],\n        updatedAt: 8,\n    },\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_gatewaypartial = konnect.GatewayPartial(\"my_gatewaypartial\",\n    control_plane_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    redis_ce={\n        \"config\": {\n            \"cloud_authentication\": {\n                \"auth_provider\": \"gcp\",\n                \"aws_access_key_id\": \"...my_aws_access_key_id...\",\n                \"aws_assume_role_arn\": \"...my_aws_assume_role_arn...\",\n                \"aws_cache_name\": \"...my_aws_cache_name...\",\n                \"aws_is_serverless\": False,\n                \"aws_region\": \"...my_aws_region...\",\n                \"aws_role_session_name\": \"...my_aws_role_session_name...\",\n                \"aws_secret_access_key\": \"...my_aws_secret_access_key...\",\n                \"azure_client_id\": \"...my_azure_client_id...\",\n                \"azure_client_secret\": \"...my_azure_client_secret...\",\n                \"azure_tenant_id\": \"...my_azure_tenant_id...\",\n                \"gcp_service_account_json\": \"...my_gcp_service_account_json...\",\n            },\n            \"database\": 5,\n            \"host\": \"...my_host...\",\n            \"password\": \"...my_password...\",\n            \"port\": 8055,\n            \"server_name\": \"...my_server_name...\",\n            \"ssl\": True,\n            \"ssl_verify\": True,\n            \"timeout\": 2089324356,\n            \"username\": \"...my_username...\",\n        },\n        \"created_at\": 10,\n        \"id\": \"...my_id...\",\n        \"name\": \"...my_name...\",\n        \"tags\": [\"...\"],\n        \"updated_at\": 2,\n    },\n    redis_ee={\n        \"config\": {\n            \"cloud_authentication\": {\n                \"auth_provider\": \"gcp\",\n                \"aws_access_key_id\": \"...my_aws_access_key_id...\",\n                \"aws_assume_role_arn\": \"...my_aws_assume_role_arn...\",\n                \"aws_cache_name\": \"...my_aws_cache_name...\",\n                \"aws_is_serverless\": False,\n                \"aws_region\": \"...my_aws_region...\",\n                \"aws_role_session_name\": \"...my_aws_role_session_name...\",\n                \"aws_secret_access_key\": \"...my_aws_secret_access_key...\",\n                \"azure_client_id\": \"...my_azure_client_id...\",\n                \"azure_client_secret\": \"...my_azure_client_secret...\",\n                \"azure_tenant_id\": \"...my_azure_tenant_id...\",\n                \"gcp_service_account_json\": \"...my_gcp_service_account_json...\",\n            },\n            \"cluster_max_redirections\": 4,\n            \"cluster_nodes\": [{\n                \"ip\": \"...my_ip...\",\n                \"port\": 13662,\n            }],\n            \"connect_timeout\": 1346533360,\n            \"connection_is_proxied\": False,\n            \"database\": 1,\n            \"host\": \"...my_host...\",\n            \"keepalive_backlog\": 259647341,\n            \"keepalive_pool_size\": 1491672736,\n            \"password\": \"...my_password...\",\n            \"port\": 17730,\n            \"read_timeout\": 1431389868,\n            \"send_timeout\": 1316344582,\n            \"sentinel_master\": \"...my_sentinel_master...\",\n            \"sentinel_nodes\": [{\n                \"host\": \"...my_host...\",\n                \"port\": 32792,\n            }],\n            \"sentinel_password\": \"...my_sentinel_password...\",\n            \"sentinel_role\": \"slave\",\n            \"sentinel_username\": \"...my_sentinel_username...\",\n            \"server_name\": \"...my_server_name...\",\n            \"ssl\": False,\n            \"ssl_verify\": False,\n            \"username\": \"...my_username...\",\n        },\n        \"created_at\": 2,\n        \"id\": \"...my_id...\",\n        \"name\": \"...my_name...\",\n        \"tags\": [\"...\"],\n        \"updated_at\": 8,\n    })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myGatewaypartial = new Konnect.GatewayPartial(\"my_gatewaypartial\", new()\n    {\n        ControlPlaneId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        RedisCe = new Konnect.Inputs.GatewayPartialRedisCeArgs\n        {\n            Config = new Konnect.Inputs.GatewayPartialRedisCeConfigArgs\n            {\n                CloudAuthentication = new Konnect.Inputs.GatewayPartialRedisCeConfigCloudAuthenticationArgs\n                {\n                    AuthProvider = \"gcp\",\n                    AwsAccessKeyId = \"...my_aws_access_key_id...\",\n                    AwsAssumeRoleArn = \"...my_aws_assume_role_arn...\",\n                    AwsCacheName = \"...my_aws_cache_name...\",\n                    AwsIsServerless = false,\n                    AwsRegion = \"...my_aws_region...\",\n                    AwsRoleSessionName = \"...my_aws_role_session_name...\",\n                    AwsSecretAccessKey = \"...my_aws_secret_access_key...\",\n                    AzureClientId = \"...my_azure_client_id...\",\n                    AzureClientSecret = \"...my_azure_client_secret...\",\n                    AzureTenantId = \"...my_azure_tenant_id...\",\n                    GcpServiceAccountJson = \"...my_gcp_service_account_json...\",\n                },\n                Database = 5,\n                Host = \"...my_host...\",\n                Password = \"...my_password...\",\n                Port = 8055,\n                ServerName = \"...my_server_name...\",\n                Ssl = true,\n                SslVerify = true,\n                Timeout = 2089324356,\n                Username = \"...my_username...\",\n            },\n            CreatedAt = 10,\n            Id = \"...my_id...\",\n            Name = \"...my_name...\",\n            Tags = new[]\n            {\n                \"...\",\n            },\n            UpdatedAt = 2,\n        },\n        RedisEe = new Konnect.Inputs.GatewayPartialRedisEeArgs\n        {\n            Config = new Konnect.Inputs.GatewayPartialRedisEeConfigArgs\n            {\n                CloudAuthentication = new Konnect.Inputs.GatewayPartialRedisEeConfigCloudAuthenticationArgs\n                {\n                    AuthProvider = \"gcp\",\n                    AwsAccessKeyId = \"...my_aws_access_key_id...\",\n                    AwsAssumeRoleArn = \"...my_aws_assume_role_arn...\",\n                    AwsCacheName = \"...my_aws_cache_name...\",\n                    AwsIsServerless = false,\n                    AwsRegion = \"...my_aws_region...\",\n                    AwsRoleSessionName = \"...my_aws_role_session_name...\",\n                    AwsSecretAccessKey = \"...my_aws_secret_access_key...\",\n                    AzureClientId = \"...my_azure_client_id...\",\n                    AzureClientSecret = \"...my_azure_client_secret...\",\n                    AzureTenantId = \"...my_azure_tenant_id...\",\n                    GcpServiceAccountJson = \"...my_gcp_service_account_json...\",\n                },\n                ClusterMaxRedirections = 4,\n                ClusterNodes = new[]\n                {\n                    new Konnect.Inputs.GatewayPartialRedisEeConfigClusterNodeArgs\n                    {\n                        Ip = \"...my_ip...\",\n                        Port = 13662,\n                    },\n                },\n                ConnectTimeout = 1346533360,\n                ConnectionIsProxied = false,\n                Database = 1,\n                Host = \"...my_host...\",\n                KeepaliveBacklog = 259647341,\n                KeepalivePoolSize = 1491672736,\n                Password = \"...my_password...\",\n                Port = 17730,\n                ReadTimeout = 1431389868,\n                SendTimeout = 1316344582,\n                SentinelMaster = \"...my_sentinel_master...\",\n                SentinelNodes = new[]\n                {\n                    new Konnect.Inputs.GatewayPartialRedisEeConfigSentinelNodeArgs\n                    {\n                        Host = \"...my_host...\",\n                        Port = 32792,\n                    },\n                },\n                SentinelPassword = \"...my_sentinel_password...\",\n                SentinelRole = \"slave\",\n                SentinelUsername = \"...my_sentinel_username...\",\n                ServerName = \"...my_server_name...\",\n                Ssl = false,\n                SslVerify = false,\n                Username = \"...my_username...\",\n            },\n            CreatedAt = 2,\n            Id = \"...my_id...\",\n            Name = \"...my_name...\",\n            Tags = new[]\n            {\n                \"...\",\n            },\n            UpdatedAt = 8,\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewGatewayPartial(ctx, \"my_gatewaypartial\", \u0026konnect.GatewayPartialArgs{\n\t\t\tControlPlaneId: pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tRedisCe: \u0026konnect.GatewayPartialRedisCeArgs{\n\t\t\t\tConfig: \u0026konnect.GatewayPartialRedisCeConfigArgs{\n\t\t\t\t\tCloudAuthentication: \u0026konnect.GatewayPartialRedisCeConfigCloudAuthenticationArgs{\n\t\t\t\t\t\tAuthProvider:          pulumi.String(\"gcp\"),\n\t\t\t\t\t\tAwsAccessKeyId:        pulumi.String(\"...my_aws_access_key_id...\"),\n\t\t\t\t\t\tAwsAssumeRoleArn:      pulumi.String(\"...my_aws_assume_role_arn...\"),\n\t\t\t\t\t\tAwsCacheName:          pulumi.String(\"...my_aws_cache_name...\"),\n\t\t\t\t\t\tAwsIsServerless:       pulumi.Bool(false),\n\t\t\t\t\t\tAwsRegion:             pulumi.String(\"...my_aws_region...\"),\n\t\t\t\t\t\tAwsRoleSessionName:    pulumi.String(\"...my_aws_role_session_name...\"),\n\t\t\t\t\t\tAwsSecretAccessKey:    pulumi.String(\"...my_aws_secret_access_key...\"),\n\t\t\t\t\t\tAzureClientId:         pulumi.String(\"...my_azure_client_id...\"),\n\t\t\t\t\t\tAzureClientSecret:     pulumi.String(\"...my_azure_client_secret...\"),\n\t\t\t\t\t\tAzureTenantId:         pulumi.String(\"...my_azure_tenant_id...\"),\n\t\t\t\t\t\tGcpServiceAccountJson: pulumi.String(\"...my_gcp_service_account_json...\"),\n\t\t\t\t\t},\n\t\t\t\t\tDatabase:   pulumi.Float64(5),\n\t\t\t\t\tHost:       pulumi.String(\"...my_host...\"),\n\t\t\t\t\tPassword:   pulumi.String(\"...my_password...\"),\n\t\t\t\t\tPort:       pulumi.Float64(8055),\n\t\t\t\t\tServerName: pulumi.String(\"...my_server_name...\"),\n\t\t\t\t\tSsl:        pulumi.Bool(true),\n\t\t\t\t\tSslVerify:  pulumi.Bool(true),\n\t\t\t\t\tTimeout:    pulumi.Float64(2089324356),\n\t\t\t\t\tUsername:   pulumi.String(\"...my_username...\"),\n\t\t\t\t},\n\t\t\t\tCreatedAt: pulumi.Float64(10),\n\t\t\t\tId:        pulumi.String(\"...my_id...\"),\n\t\t\t\tName:      pulumi.String(\"...my_name...\"),\n\t\t\t\tTags: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tUpdatedAt: pulumi.Float64(2),\n\t\t\t},\n\t\t\tRedisEe: \u0026konnect.GatewayPartialRedisEeArgs{\n\t\t\t\tConfig: \u0026konnect.GatewayPartialRedisEeConfigArgs{\n\t\t\t\t\tCloudAuthentication: \u0026konnect.GatewayPartialRedisEeConfigCloudAuthenticationArgs{\n\t\t\t\t\t\tAuthProvider:          pulumi.String(\"gcp\"),\n\t\t\t\t\t\tAwsAccessKeyId:        pulumi.String(\"...my_aws_access_key_id...\"),\n\t\t\t\t\t\tAwsAssumeRoleArn:      pulumi.String(\"...my_aws_assume_role_arn...\"),\n\t\t\t\t\t\tAwsCacheName:          pulumi.String(\"...my_aws_cache_name...\"),\n\t\t\t\t\t\tAwsIsServerless:       pulumi.Bool(false),\n\t\t\t\t\t\tAwsRegion:             pulumi.String(\"...my_aws_region...\"),\n\t\t\t\t\t\tAwsRoleSessionName:    pulumi.String(\"...my_aws_role_session_name...\"),\n\t\t\t\t\t\tAwsSecretAccessKey:    pulumi.String(\"...my_aws_secret_access_key...\"),\n\t\t\t\t\t\tAzureClientId:         pulumi.String(\"...my_azure_client_id...\"),\n\t\t\t\t\t\tAzureClientSecret:     pulumi.String(\"...my_azure_client_secret...\"),\n\t\t\t\t\t\tAzureTenantId:         pulumi.String(\"...my_azure_tenant_id...\"),\n\t\t\t\t\t\tGcpServiceAccountJson: pulumi.String(\"...my_gcp_service_account_json...\"),\n\t\t\t\t\t},\n\t\t\t\t\tClusterMaxRedirections: pulumi.Float64(4),\n\t\t\t\t\tClusterNodes: konnect.GatewayPartialRedisEeConfigClusterNodeArray{\n\t\t\t\t\t\t\u0026konnect.GatewayPartialRedisEeConfigClusterNodeArgs{\n\t\t\t\t\t\t\tIp:   pulumi.String(\"...my_ip...\"),\n\t\t\t\t\t\t\tPort: pulumi.Float64(13662),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tConnectTimeout:      pulumi.Float64(1346533360),\n\t\t\t\t\tConnectionIsProxied: pulumi.Bool(false),\n\t\t\t\t\tDatabase:            pulumi.Float64(1),\n\t\t\t\t\tHost:                pulumi.String(\"...my_host...\"),\n\t\t\t\t\tKeepaliveBacklog:    pulumi.Float64(259647341),\n\t\t\t\t\tKeepalivePoolSize:   pulumi.Float64(1491672736),\n\t\t\t\t\tPassword:            pulumi.String(\"...my_password...\"),\n\t\t\t\t\tPort:                pulumi.Float64(17730),\n\t\t\t\t\tReadTimeout:         pulumi.Float64(1431389868),\n\t\t\t\t\tSendTimeout:         pulumi.Float64(1316344582),\n\t\t\t\t\tSentinelMaster:      pulumi.String(\"...my_sentinel_master...\"),\n\t\t\t\t\tSentinelNodes: konnect.GatewayPartialRedisEeConfigSentinelNodeArray{\n\t\t\t\t\t\t\u0026konnect.GatewayPartialRedisEeConfigSentinelNodeArgs{\n\t\t\t\t\t\t\tHost: pulumi.String(\"...my_host...\"),\n\t\t\t\t\t\t\tPort: pulumi.Float64(32792),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tSentinelPassword: pulumi.String(\"...my_sentinel_password...\"),\n\t\t\t\t\tSentinelRole:     pulumi.String(\"slave\"),\n\t\t\t\t\tSentinelUsername: pulumi.String(\"...my_sentinel_username...\"),\n\t\t\t\t\tServerName:       pulumi.String(\"...my_server_name...\"),\n\t\t\t\t\tSsl:              pulumi.Bool(false),\n\t\t\t\t\tSslVerify:        pulumi.Bool(false),\n\t\t\t\t\tUsername:         pulumi.String(\"...my_username...\"),\n\t\t\t\t},\n\t\t\t\tCreatedAt: pulumi.Float64(2),\n\t\t\t\tId:        pulumi.String(\"...my_id...\"),\n\t\t\t\tName:      pulumi.String(\"...my_name...\"),\n\t\t\t\tTags: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tUpdatedAt: pulumi.Float64(8),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.GatewayPartial;\nimport com.pulumi.konnect.GatewayPartialArgs;\nimport com.pulumi.konnect.inputs.GatewayPartialRedisCeArgs;\nimport com.pulumi.konnect.inputs.GatewayPartialRedisCeConfigArgs;\nimport com.pulumi.konnect.inputs.GatewayPartialRedisCeConfigCloudAuthenticationArgs;\nimport com.pulumi.konnect.inputs.GatewayPartialRedisEeArgs;\nimport com.pulumi.konnect.inputs.GatewayPartialRedisEeConfigArgs;\nimport com.pulumi.konnect.inputs.GatewayPartialRedisEeConfigCloudAuthenticationArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myGatewaypartial = new GatewayPartial(\"myGatewaypartial\", GatewayPartialArgs.builder()\n            .controlPlaneId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .redisCe(GatewayPartialRedisCeArgs.builder()\n                .config(GatewayPartialRedisCeConfigArgs.builder()\n                    .cloudAuthentication(GatewayPartialRedisCeConfigCloudAuthenticationArgs.builder()\n                        .authProvider(\"gcp\")\n                        .awsAccessKeyId(\"...my_aws_access_key_id...\")\n                        .awsAssumeRoleArn(\"...my_aws_assume_role_arn...\")\n                        .awsCacheName(\"...my_aws_cache_name...\")\n                        .awsIsServerless(false)\n                        .awsRegion(\"...my_aws_region...\")\n                        .awsRoleSessionName(\"...my_aws_role_session_name...\")\n                        .awsSecretAccessKey(\"...my_aws_secret_access_key...\")\n                        .azureClientId(\"...my_azure_client_id...\")\n                        .azureClientSecret(\"...my_azure_client_secret...\")\n                        .azureTenantId(\"...my_azure_tenant_id...\")\n                        .gcpServiceAccountJson(\"...my_gcp_service_account_json...\")\n                        .build())\n                    .database(5.0)\n                    .host(\"...my_host...\")\n                    .password(\"...my_password...\")\n                    .port(8055.0)\n                    .serverName(\"...my_server_name...\")\n                    .ssl(true)\n                    .sslVerify(true)\n                    .timeout(2089324356.0)\n                    .username(\"...my_username...\")\n                    .build())\n                .createdAt(10.0)\n                .id(\"...my_id...\")\n                .name(\"...my_name...\")\n                .tags(\"...\")\n                .updatedAt(2.0)\n                .build())\n            .redisEe(GatewayPartialRedisEeArgs.builder()\n                .config(GatewayPartialRedisEeConfigArgs.builder()\n                    .cloudAuthentication(GatewayPartialRedisEeConfigCloudAuthenticationArgs.builder()\n                        .authProvider(\"gcp\")\n                        .awsAccessKeyId(\"...my_aws_access_key_id...\")\n                        .awsAssumeRoleArn(\"...my_aws_assume_role_arn...\")\n                        .awsCacheName(\"...my_aws_cache_name...\")\n                        .awsIsServerless(false)\n                        .awsRegion(\"...my_aws_region...\")\n                        .awsRoleSessionName(\"...my_aws_role_session_name...\")\n                        .awsSecretAccessKey(\"...my_aws_secret_access_key...\")\n                        .azureClientId(\"...my_azure_client_id...\")\n                        .azureClientSecret(\"...my_azure_client_secret...\")\n                        .azureTenantId(\"...my_azure_tenant_id...\")\n                        .gcpServiceAccountJson(\"...my_gcp_service_account_json...\")\n                        .build())\n                    .clusterMaxRedirections(4.0)\n                    .clusterNodes(GatewayPartialRedisEeConfigClusterNodeArgs.builder()\n                        .ip(\"...my_ip...\")\n                        .port(13662.0)\n                        .build())\n                    .connectTimeout(1346533360.0)\n                    .connectionIsProxied(false)\n                    .database(1.0)\n                    .host(\"...my_host...\")\n                    .keepaliveBacklog(259647341.0)\n                    .keepalivePoolSize(1491672736.0)\n                    .password(\"...my_password...\")\n                    .port(17730.0)\n                    .readTimeout(1431389868.0)\n                    .sendTimeout(1316344582.0)\n                    .sentinelMaster(\"...my_sentinel_master...\")\n                    .sentinelNodes(GatewayPartialRedisEeConfigSentinelNodeArgs.builder()\n                        .host(\"...my_host...\")\n                        .port(32792.0)\n                        .build())\n                    .sentinelPassword(\"...my_sentinel_password...\")\n                    .sentinelRole(\"slave\")\n                    .sentinelUsername(\"...my_sentinel_username...\")\n                    .serverName(\"...my_server_name...\")\n                    .ssl(false)\n                    .sslVerify(false)\n                    .username(\"...my_username...\")\n                    .build())\n                .createdAt(2.0)\n                .id(\"...my_id...\")\n                .name(\"...my_name...\")\n                .tags(\"...\")\n                .updatedAt(8.0)\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myGatewaypartial:\n    type: konnect:GatewayPartial\n    name: my_gatewaypartial\n    properties:\n      controlPlaneId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      redisCe:\n        config:\n          cloudAuthentication:\n            authProvider: gcp\n            awsAccessKeyId: '...my_aws_access_key_id...'\n            awsAssumeRoleArn: '...my_aws_assume_role_arn...'\n            awsCacheName: '...my_aws_cache_name...'\n            awsIsServerless: false\n            awsRegion: '...my_aws_region...'\n            awsRoleSessionName: '...my_aws_role_session_name...'\n            awsSecretAccessKey: '...my_aws_secret_access_key...'\n            azureClientId: '...my_azure_client_id...'\n            azureClientSecret: '...my_azure_client_secret...'\n            azureTenantId: '...my_azure_tenant_id...'\n            gcpServiceAccountJson: '...my_gcp_service_account_json...'\n          database: 5\n          host: '...my_host...'\n          password: '...my_password...'\n          port: 8055\n          serverName: '...my_server_name...'\n          ssl: true\n          sslVerify: true\n          timeout: 2.089324356e+09\n          username: '...my_username...'\n        createdAt: 10\n        id: '...my_id...'\n        name: '...my_name...'\n        tags:\n          - '...'\n        updatedAt: 2\n      redisEe:\n        config:\n          cloudAuthentication:\n            authProvider: gcp\n            awsAccessKeyId: '...my_aws_access_key_id...'\n            awsAssumeRoleArn: '...my_aws_assume_role_arn...'\n            awsCacheName: '...my_aws_cache_name...'\n            awsIsServerless: false\n            awsRegion: '...my_aws_region...'\n            awsRoleSessionName: '...my_aws_role_session_name...'\n            awsSecretAccessKey: '...my_aws_secret_access_key...'\n            azureClientId: '...my_azure_client_id...'\n            azureClientSecret: '...my_azure_client_secret...'\n            azureTenantId: '...my_azure_tenant_id...'\n            gcpServiceAccountJson: '...my_gcp_service_account_json...'\n          clusterMaxRedirections: 4\n          clusterNodes:\n            - ip: '...my_ip...'\n              port: 13662\n          connectTimeout: 1.34653336e+09\n          connectionIsProxied: false\n          database: 1\n          host: '...my_host...'\n          keepaliveBacklog: 2.59647341e+08\n          keepalivePoolSize: 1.491672736e+09\n          password: '...my_password...'\n          port: 17730\n          readTimeout: 1.431389868e+09\n          sendTimeout: 1.316344582e+09\n          sentinelMaster: '...my_sentinel_master...'\n          sentinelNodes:\n            - host: '...my_host...'\n              port: 32792\n          sentinelPassword: '...my_sentinel_password...'\n          sentinelRole: slave\n          sentinelUsername: '...my_sentinel_username...'\n          serverName: '...my_server_name...'\n          ssl: false\n          sslVerify: false\n          username: '...my_username...'\n        createdAt: 2\n        id: '...my_id...'\n        name: '...my_name...'\n        tags:\n          - '...'\n        updatedAt: 8\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_gateway_partial.my_konnect_gateway_partial\n\n  id = jsonencode({\n\n    control_plane_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/gatewayPartial:GatewayPartial my_konnect_gateway_partial '{\"control_plane_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"\"}'\n```\n\n","properties":{"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"name":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"redisCe":{"$ref":"#/types/konnect:index%2FGatewayPartialRedisCe:GatewayPartialRedisCe"},"redisEe":{"$ref":"#/types/konnect:index%2FGatewayPartialRedisEe:GatewayPartialRedisEe"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object","required":["controlPlaneId","createdAt","name","updatedAt"],"inputProperties":{"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"redisCe":{"$ref":"#/types/konnect:index%2FGatewayPartialRedisCe:GatewayPartialRedisCe"},"redisEe":{"$ref":"#/types/konnect:index%2FGatewayPartialRedisEe:GatewayPartialRedisEe"}},"requiredInputs":["controlPlaneId"],"stateInputs":{"description":"Input properties used for looking up and filtering GatewayPartial resources.\n","properties":{"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"name":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"redisCe":{"$ref":"#/types/konnect:index%2FGatewayPartialRedisCe:GatewayPartialRedisCe"},"redisEe":{"$ref":"#/types/konnect:index%2FGatewayPartialRedisEe:GatewayPartialRedisEe"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object"}},"konnect:index/gatewayPluginAce:GatewayPluginAce":{"description":"GatewayPluginAce Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myGatewaypluginace = new konnect.GatewayPluginAce(\"my_gatewaypluginace\", {\n    config: {\n        anonymous: \"...my_anonymous...\",\n        matchPolicy: \"required\",\n        rateLimiting: {\n            redis: {\n                cloudAuthentication: {\n                    authProvider: \"azure\",\n                    awsAccessKeyId: \"...my_aws_access_key_id...\",\n                    awsAssumeRoleArn: \"...my_aws_assume_role_arn...\",\n                    awsCacheName: \"...my_aws_cache_name...\",\n                    awsIsServerless: false,\n                    awsRegion: \"...my_aws_region...\",\n                    awsRoleSessionName: \"...my_aws_role_session_name...\",\n                    awsSecretAccessKey: \"...my_aws_secret_access_key...\",\n                    azureClientId: \"...my_azure_client_id...\",\n                    azureClientSecret: \"...my_azure_client_secret...\",\n                    azureTenantId: \"...my_azure_tenant_id...\",\n                    gcpServiceAccountJson: \"...my_gcp_service_account_json...\",\n                },\n                clusterMaxRedirections: 10,\n                clusterNodes: [{\n                    ip: \"...my_ip...\",\n                    port: 57941,\n                }],\n                connectTimeout: 1979030271,\n                connectionIsProxied: false,\n                database: 7,\n                host: \"...my_host...\",\n                keepaliveBacklog: 162019354,\n                keepalivePoolSize: 1227973735,\n                password: \"...my_password...\",\n                port: 61563,\n                readTimeout: 837560096,\n                sendTimeout: 1354140762,\n                sentinelMaster: \"...my_sentinel_master...\",\n                sentinelNodes: [{\n                    host: \"...my_host...\",\n                    port: 41842,\n                }],\n                sentinelPassword: \"...my_sentinel_password...\",\n                sentinelRole: \"any\",\n                sentinelUsername: \"...my_sentinel_username...\",\n                serverName: \"...my_server_name...\",\n                ssl: true,\n                sslVerify: false,\n                username: \"...my_username...\",\n            },\n            syncRate: 161.65,\n        },\n    },\n    controlPlaneId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    createdAt: 6,\n    enabled: true,\n    gatewayPluginAceId: \"...my_id...\",\n    instanceName: \"...my_instance_name...\",\n    ordering: {\n        after: {\n            accesses: [\"...\"],\n        },\n        before: {\n            accesses: [\"...\"],\n        },\n    },\n    partials: [{\n        id: \"...my_id...\",\n        name: \"...my_name...\",\n        path: \"...my_path...\",\n    }],\n    protocols: [\"https\"],\n    route: {\n        id: \"...my_id...\",\n    },\n    service: {\n        id: \"...my_id...\",\n    },\n    tags: [\"...\"],\n    updatedAt: 7,\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_gatewaypluginace = konnect.GatewayPluginAce(\"my_gatewaypluginace\",\n    config={\n        \"anonymous\": \"...my_anonymous...\",\n        \"match_policy\": \"required\",\n        \"rate_limiting\": {\n            \"redis\": {\n                \"cloud_authentication\": {\n                    \"auth_provider\": \"azure\",\n                    \"aws_access_key_id\": \"...my_aws_access_key_id...\",\n                    \"aws_assume_role_arn\": \"...my_aws_assume_role_arn...\",\n                    \"aws_cache_name\": \"...my_aws_cache_name...\",\n                    \"aws_is_serverless\": False,\n                    \"aws_region\": \"...my_aws_region...\",\n                    \"aws_role_session_name\": \"...my_aws_role_session_name...\",\n                    \"aws_secret_access_key\": \"...my_aws_secret_access_key...\",\n                    \"azure_client_id\": \"...my_azure_client_id...\",\n                    \"azure_client_secret\": \"...my_azure_client_secret...\",\n                    \"azure_tenant_id\": \"...my_azure_tenant_id...\",\n                    \"gcp_service_account_json\": \"...my_gcp_service_account_json...\",\n                },\n                \"cluster_max_redirections\": 10,\n                \"cluster_nodes\": [{\n                    \"ip\": \"...my_ip...\",\n                    \"port\": 57941,\n                }],\n                \"connect_timeout\": 1979030271,\n                \"connection_is_proxied\": False,\n                \"database\": 7,\n                \"host\": \"...my_host...\",\n                \"keepalive_backlog\": 162019354,\n                \"keepalive_pool_size\": 1227973735,\n                \"password\": \"...my_password...\",\n                \"port\": 61563,\n                \"read_timeout\": 837560096,\n                \"send_timeout\": 1354140762,\n                \"sentinel_master\": \"...my_sentinel_master...\",\n                \"sentinel_nodes\": [{\n                    \"host\": \"...my_host...\",\n                    \"port\": 41842,\n                }],\n                \"sentinel_password\": \"...my_sentinel_password...\",\n                \"sentinel_role\": \"any\",\n                \"sentinel_username\": \"...my_sentinel_username...\",\n                \"server_name\": \"...my_server_name...\",\n                \"ssl\": True,\n                \"ssl_verify\": False,\n                \"username\": \"...my_username...\",\n            },\n            \"sync_rate\": 161.65,\n        },\n    },\n    control_plane_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    created_at=6,\n    enabled=True,\n    gateway_plugin_ace_id=\"...my_id...\",\n    instance_name=\"...my_instance_name...\",\n    ordering={\n        \"after\": {\n            \"accesses\": [\"...\"],\n        },\n        \"before\": {\n            \"accesses\": [\"...\"],\n        },\n    },\n    partials=[{\n        \"id\": \"...my_id...\",\n        \"name\": \"...my_name...\",\n        \"path\": \"...my_path...\",\n    }],\n    protocols=[\"https\"],\n    route={\n        \"id\": \"...my_id...\",\n    },\n    service={\n        \"id\": \"...my_id...\",\n    },\n    tags=[\"...\"],\n    updated_at=7)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myGatewaypluginace = new Konnect.GatewayPluginAce(\"my_gatewaypluginace\", new()\n    {\n        Config = new Konnect.Inputs.GatewayPluginAceConfigArgs\n        {\n            Anonymous = \"...my_anonymous...\",\n            MatchPolicy = \"required\",\n            RateLimiting = new Konnect.Inputs.GatewayPluginAceConfigRateLimitingArgs\n            {\n                Redis = new Konnect.Inputs.GatewayPluginAceConfigRateLimitingRedisArgs\n                {\n                    CloudAuthentication = new Konnect.Inputs.GatewayPluginAceConfigRateLimitingRedisCloudAuthenticationArgs\n                    {\n                        AuthProvider = \"azure\",\n                        AwsAccessKeyId = \"...my_aws_access_key_id...\",\n                        AwsAssumeRoleArn = \"...my_aws_assume_role_arn...\",\n                        AwsCacheName = \"...my_aws_cache_name...\",\n                        AwsIsServerless = false,\n                        AwsRegion = \"...my_aws_region...\",\n                        AwsRoleSessionName = \"...my_aws_role_session_name...\",\n                        AwsSecretAccessKey = \"...my_aws_secret_access_key...\",\n                        AzureClientId = \"...my_azure_client_id...\",\n                        AzureClientSecret = \"...my_azure_client_secret...\",\n                        AzureTenantId = \"...my_azure_tenant_id...\",\n                        GcpServiceAccountJson = \"...my_gcp_service_account_json...\",\n                    },\n                    ClusterMaxRedirections = 10,\n                    ClusterNodes = new[]\n                    {\n                        new Konnect.Inputs.GatewayPluginAceConfigRateLimitingRedisClusterNodeArgs\n                        {\n                            Ip = \"...my_ip...\",\n                            Port = 57941,\n                        },\n                    },\n                    ConnectTimeout = 1979030271,\n                    ConnectionIsProxied = false,\n                    Database = 7,\n                    Host = \"...my_host...\",\n                    KeepaliveBacklog = 162019354,\n                    KeepalivePoolSize = 1227973735,\n                    Password = \"...my_password...\",\n                    Port = 61563,\n                    ReadTimeout = 837560096,\n                    SendTimeout = 1354140762,\n                    SentinelMaster = \"...my_sentinel_master...\",\n                    SentinelNodes = new[]\n                    {\n                        new Konnect.Inputs.GatewayPluginAceConfigRateLimitingRedisSentinelNodeArgs\n                        {\n                            Host = \"...my_host...\",\n                            Port = 41842,\n                        },\n                    },\n                    SentinelPassword = \"...my_sentinel_password...\",\n                    SentinelRole = \"any\",\n                    SentinelUsername = \"...my_sentinel_username...\",\n                    ServerName = \"...my_server_name...\",\n                    Ssl = true,\n                    SslVerify = false,\n                    Username = \"...my_username...\",\n                },\n                SyncRate = 161.65,\n            },\n        },\n        ControlPlaneId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        CreatedAt = 6,\n        Enabled = true,\n        GatewayPluginAceId = \"...my_id...\",\n        InstanceName = \"...my_instance_name...\",\n        Ordering = new Konnect.Inputs.GatewayPluginAceOrderingArgs\n        {\n            After = new Konnect.Inputs.GatewayPluginAceOrderingAfterArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n            Before = new Konnect.Inputs.GatewayPluginAceOrderingBeforeArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n        },\n        Partials = new[]\n        {\n            new Konnect.Inputs.GatewayPluginAcePartialArgs\n            {\n                Id = \"...my_id...\",\n                Name = \"...my_name...\",\n                Path = \"...my_path...\",\n            },\n        },\n        Protocols = new[]\n        {\n            \"https\",\n        },\n        Route = new Konnect.Inputs.GatewayPluginAceRouteArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Service = new Konnect.Inputs.GatewayPluginAceServiceArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Tags = new[]\n        {\n            \"...\",\n        },\n        UpdatedAt = 7,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewGatewayPluginAce(ctx, \"my_gatewaypluginace\", \u0026konnect.GatewayPluginAceArgs{\n\t\t\tConfig: \u0026konnect.GatewayPluginAceConfigArgs{\n\t\t\t\tAnonymous:   pulumi.String(\"...my_anonymous...\"),\n\t\t\t\tMatchPolicy: pulumi.String(\"required\"),\n\t\t\t\tRateLimiting: \u0026konnect.GatewayPluginAceConfigRateLimitingArgs{\n\t\t\t\t\tRedis: \u0026konnect.GatewayPluginAceConfigRateLimitingRedisArgs{\n\t\t\t\t\t\tCloudAuthentication: \u0026konnect.GatewayPluginAceConfigRateLimitingRedisCloudAuthenticationArgs{\n\t\t\t\t\t\t\tAuthProvider:          pulumi.String(\"azure\"),\n\t\t\t\t\t\t\tAwsAccessKeyId:        pulumi.String(\"...my_aws_access_key_id...\"),\n\t\t\t\t\t\t\tAwsAssumeRoleArn:      pulumi.String(\"...my_aws_assume_role_arn...\"),\n\t\t\t\t\t\t\tAwsCacheName:          pulumi.String(\"...my_aws_cache_name...\"),\n\t\t\t\t\t\t\tAwsIsServerless:       pulumi.Bool(false),\n\t\t\t\t\t\t\tAwsRegion:             pulumi.String(\"...my_aws_region...\"),\n\t\t\t\t\t\t\tAwsRoleSessionName:    pulumi.String(\"...my_aws_role_session_name...\"),\n\t\t\t\t\t\t\tAwsSecretAccessKey:    pulumi.String(\"...my_aws_secret_access_key...\"),\n\t\t\t\t\t\t\tAzureClientId:         pulumi.String(\"...my_azure_client_id...\"),\n\t\t\t\t\t\t\tAzureClientSecret:     pulumi.String(\"...my_azure_client_secret...\"),\n\t\t\t\t\t\t\tAzureTenantId:         pulumi.String(\"...my_azure_tenant_id...\"),\n\t\t\t\t\t\t\tGcpServiceAccountJson: pulumi.String(\"...my_gcp_service_account_json...\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\tClusterMaxRedirections: pulumi.Float64(10),\n\t\t\t\t\t\tClusterNodes: konnect.GatewayPluginAceConfigRateLimitingRedisClusterNodeArray{\n\t\t\t\t\t\t\t\u0026konnect.GatewayPluginAceConfigRateLimitingRedisClusterNodeArgs{\n\t\t\t\t\t\t\t\tIp:   pulumi.String(\"...my_ip...\"),\n\t\t\t\t\t\t\t\tPort: pulumi.Float64(57941),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t\tConnectTimeout:      pulumi.Float64(1979030271),\n\t\t\t\t\t\tConnectionIsProxied: pulumi.Bool(false),\n\t\t\t\t\t\tDatabase:            pulumi.Float64(7),\n\t\t\t\t\t\tHost:                pulumi.String(\"...my_host...\"),\n\t\t\t\t\t\tKeepaliveBacklog:    pulumi.Float64(162019354),\n\t\t\t\t\t\tKeepalivePoolSize:   pulumi.Float64(1227973735),\n\t\t\t\t\t\tPassword:            pulumi.String(\"...my_password...\"),\n\t\t\t\t\t\tPort:                pulumi.Float64(61563),\n\t\t\t\t\t\tReadTimeout:         pulumi.Float64(837560096),\n\t\t\t\t\t\tSendTimeout:         pulumi.Float64(1354140762),\n\t\t\t\t\t\tSentinelMaster:      pulumi.String(\"...my_sentinel_master...\"),\n\t\t\t\t\t\tSentinelNodes: konnect.GatewayPluginAceConfigRateLimitingRedisSentinelNodeArray{\n\t\t\t\t\t\t\t\u0026konnect.GatewayPluginAceConfigRateLimitingRedisSentinelNodeArgs{\n\t\t\t\t\t\t\t\tHost: pulumi.String(\"...my_host...\"),\n\t\t\t\t\t\t\t\tPort: pulumi.Float64(41842),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t\tSentinelPassword: pulumi.String(\"...my_sentinel_password...\"),\n\t\t\t\t\t\tSentinelRole:     pulumi.String(\"any\"),\n\t\t\t\t\t\tSentinelUsername: pulumi.String(\"...my_sentinel_username...\"),\n\t\t\t\t\t\tServerName:       pulumi.String(\"...my_server_name...\"),\n\t\t\t\t\t\tSsl:              pulumi.Bool(true),\n\t\t\t\t\t\tSslVerify:        pulumi.Bool(false),\n\t\t\t\t\t\tUsername:         pulumi.String(\"...my_username...\"),\n\t\t\t\t\t},\n\t\t\t\t\tSyncRate: pulumi.Float64(161.65),\n\t\t\t\t},\n\t\t\t},\n\t\t\tControlPlaneId:     pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tCreatedAt:          pulumi.Float64(6),\n\t\t\tEnabled:            pulumi.Bool(true),\n\t\t\tGatewayPluginAceId: pulumi.String(\"...my_id...\"),\n\t\t\tInstanceName:       pulumi.String(\"...my_instance_name...\"),\n\t\t\tOrdering: \u0026konnect.GatewayPluginAceOrderingArgs{\n\t\t\t\tAfter: \u0026konnect.GatewayPluginAceOrderingAfterArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tBefore: \u0026konnect.GatewayPluginAceOrderingBeforeArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tPartials: konnect.GatewayPluginAcePartialArray{\n\t\t\t\t\u0026konnect.GatewayPluginAcePartialArgs{\n\t\t\t\t\tId:   pulumi.String(\"...my_id...\"),\n\t\t\t\t\tName: pulumi.String(\"...my_name...\"),\n\t\t\t\t\tPath: pulumi.String(\"...my_path...\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tProtocols: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"https\"),\n\t\t\t},\n\t\t\tRoute: \u0026konnect.GatewayPluginAceRouteArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tService: \u0026konnect.GatewayPluginAceServiceArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"...\"),\n\t\t\t},\n\t\t\tUpdatedAt: pulumi.Float64(7),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.GatewayPluginAce;\nimport com.pulumi.konnect.GatewayPluginAceArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAceConfigArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAceConfigRateLimitingArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAceConfigRateLimitingRedisArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAceConfigRateLimitingRedisCloudAuthenticationArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAceOrderingArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAceOrderingAfterArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAceOrderingBeforeArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAcePartialArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAceRouteArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAceServiceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myGatewaypluginace = new GatewayPluginAce(\"myGatewaypluginace\", GatewayPluginAceArgs.builder()\n            .config(GatewayPluginAceConfigArgs.builder()\n                .anonymous(\"...my_anonymous...\")\n                .matchPolicy(\"required\")\n                .rateLimiting(GatewayPluginAceConfigRateLimitingArgs.builder()\n                    .redis(GatewayPluginAceConfigRateLimitingRedisArgs.builder()\n                        .cloudAuthentication(GatewayPluginAceConfigRateLimitingRedisCloudAuthenticationArgs.builder()\n                            .authProvider(\"azure\")\n                            .awsAccessKeyId(\"...my_aws_access_key_id...\")\n                            .awsAssumeRoleArn(\"...my_aws_assume_role_arn...\")\n                            .awsCacheName(\"...my_aws_cache_name...\")\n                            .awsIsServerless(false)\n                            .awsRegion(\"...my_aws_region...\")\n                            .awsRoleSessionName(\"...my_aws_role_session_name...\")\n                            .awsSecretAccessKey(\"...my_aws_secret_access_key...\")\n                            .azureClientId(\"...my_azure_client_id...\")\n                            .azureClientSecret(\"...my_azure_client_secret...\")\n                            .azureTenantId(\"...my_azure_tenant_id...\")\n                            .gcpServiceAccountJson(\"...my_gcp_service_account_json...\")\n                            .build())\n                        .clusterMaxRedirections(10.0)\n                        .clusterNodes(GatewayPluginAceConfigRateLimitingRedisClusterNodeArgs.builder()\n                            .ip(\"...my_ip...\")\n                            .port(57941.0)\n                            .build())\n                        .connectTimeout(1979030271.0)\n                        .connectionIsProxied(false)\n                        .database(7.0)\n                        .host(\"...my_host...\")\n                        .keepaliveBacklog(162019354.0)\n                        .keepalivePoolSize(1227973735.0)\n                        .password(\"...my_password...\")\n                        .port(61563.0)\n                        .readTimeout(837560096.0)\n                        .sendTimeout(1354140762.0)\n                        .sentinelMaster(\"...my_sentinel_master...\")\n                        .sentinelNodes(GatewayPluginAceConfigRateLimitingRedisSentinelNodeArgs.builder()\n                            .host(\"...my_host...\")\n                            .port(41842.0)\n                            .build())\n                        .sentinelPassword(\"...my_sentinel_password...\")\n                        .sentinelRole(\"any\")\n                        .sentinelUsername(\"...my_sentinel_username...\")\n                        .serverName(\"...my_server_name...\")\n                        .ssl(true)\n                        .sslVerify(false)\n                        .username(\"...my_username...\")\n                        .build())\n                    .syncRate(161.65)\n                    .build())\n                .build())\n            .controlPlaneId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .createdAt(6.0)\n            .enabled(true)\n            .gatewayPluginAceId(\"...my_id...\")\n            .instanceName(\"...my_instance_name...\")\n            .ordering(GatewayPluginAceOrderingArgs.builder()\n                .after(GatewayPluginAceOrderingAfterArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .before(GatewayPluginAceOrderingBeforeArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .build())\n            .partials(GatewayPluginAcePartialArgs.builder()\n                .id(\"...my_id...\")\n                .name(\"...my_name...\")\n                .path(\"...my_path...\")\n                .build())\n            .protocols(\"https\")\n            .route(GatewayPluginAceRouteArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .service(GatewayPluginAceServiceArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .tags(\"...\")\n            .updatedAt(7.0)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myGatewaypluginace:\n    type: konnect:GatewayPluginAce\n    name: my_gatewaypluginace\n    properties:\n      config:\n        anonymous: '...my_anonymous...'\n        matchPolicy: required\n        rateLimiting:\n          redis:\n            cloudAuthentication:\n              authProvider: azure\n              awsAccessKeyId: '...my_aws_access_key_id...'\n              awsAssumeRoleArn: '...my_aws_assume_role_arn...'\n              awsCacheName: '...my_aws_cache_name...'\n              awsIsServerless: false\n              awsRegion: '...my_aws_region...'\n              awsRoleSessionName: '...my_aws_role_session_name...'\n              awsSecretAccessKey: '...my_aws_secret_access_key...'\n              azureClientId: '...my_azure_client_id...'\n              azureClientSecret: '...my_azure_client_secret...'\n              azureTenantId: '...my_azure_tenant_id...'\n              gcpServiceAccountJson: '...my_gcp_service_account_json...'\n            clusterMaxRedirections: 10\n            clusterNodes:\n              - ip: '...my_ip...'\n                port: 57941\n            connectTimeout: 1.979030271e+09\n            connectionIsProxied: false\n            database: 7\n            host: '...my_host...'\n            keepaliveBacklog: 1.62019354e+08\n            keepalivePoolSize: 1.227973735e+09\n            password: '...my_password...'\n            port: 61563\n            readTimeout: 8.37560096e+08\n            sendTimeout: 1.354140762e+09\n            sentinelMaster: '...my_sentinel_master...'\n            sentinelNodes:\n              - host: '...my_host...'\n                port: 41842\n            sentinelPassword: '...my_sentinel_password...'\n            sentinelRole: any\n            sentinelUsername: '...my_sentinel_username...'\n            serverName: '...my_server_name...'\n            ssl: true\n            sslVerify: false\n            username: '...my_username...'\n          syncRate: 161.65\n      controlPlaneId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      createdAt: 6\n      enabled: true\n      gatewayPluginAceId: '...my_id...'\n      instanceName: '...my_instance_name...'\n      ordering:\n        after:\n          accesses:\n            - '...'\n        before:\n          accesses:\n            - '...'\n      partials:\n        - id: '...my_id...'\n          name: '...my_name...'\n          path: '...my_path...'\n      protocols:\n        - https\n      route:\n        id: '...my_id...'\n      service:\n        id: '...my_id...'\n      tags:\n        - '...'\n      updatedAt: 7\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_gateway_plugin_ace.my_konnect_gateway_plugin_ace\n\n  id = jsonencode({\n\n    control_plane_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/gatewayPluginAce:GatewayPluginAce my_konnect_gateway_plugin_ace '{\"control_plane_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"}'\n```\n\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginAceConfig:GatewayPluginAceConfig"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginAceId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginAceOrdering:GatewayPluginAceOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginAcePartial:GatewayPluginAcePartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginAceRoute:GatewayPluginAceRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginAceService:GatewayPluginAceService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object","required":["config","controlPlaneId","createdAt","enabled","gatewayPluginAceId","ordering","protocols","route","service","updatedAt"],"inputProperties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginAceConfig:GatewayPluginAceConfig"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginAceId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginAceOrdering:GatewayPluginAceOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginAcePartial:GatewayPluginAcePartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginAceRoute:GatewayPluginAceRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginAceService:GatewayPluginAceService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"requiredInputs":["controlPlaneId"],"stateInputs":{"description":"Input properties used for looking up and filtering GatewayPluginAce resources.\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginAceConfig:GatewayPluginAceConfig"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginAceId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginAceOrdering:GatewayPluginAceOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginAcePartial:GatewayPluginAcePartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginAceRoute:GatewayPluginAceRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginAceService:GatewayPluginAceService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object"}},"konnect:index/gatewayPluginAcl:GatewayPluginAcl":{"description":"GatewayPluginACL Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myGatewaypluginacl = new konnect.GatewayPluginAcl(\"my_gatewaypluginacl\", {\n    config: {\n        allows: [\"...\"],\n        alwaysUseAuthenticatedGroups: false,\n        denies: [\"...\"],\n        hideGroupsHeader: false,\n        includeConsumerGroups: false,\n    },\n    controlPlaneId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    createdAt: 2,\n    enabled: false,\n    gatewayPluginAclId: \"...my_id...\",\n    instanceName: \"...my_instance_name...\",\n    ordering: {\n        after: {\n            accesses: [\"...\"],\n        },\n        before: {\n            accesses: [\"...\"],\n        },\n    },\n    partials: [{\n        id: \"...my_id...\",\n        name: \"...my_name...\",\n        path: \"...my_path...\",\n    }],\n    protocols: [\"grpc\"],\n    route: {\n        id: \"...my_id...\",\n    },\n    service: {\n        id: \"...my_id...\",\n    },\n    tags: [\"...\"],\n    updatedAt: 4,\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_gatewaypluginacl = konnect.GatewayPluginAcl(\"my_gatewaypluginacl\",\n    config={\n        \"allows\": [\"...\"],\n        \"always_use_authenticated_groups\": False,\n        \"denies\": [\"...\"],\n        \"hide_groups_header\": False,\n        \"include_consumer_groups\": False,\n    },\n    control_plane_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    created_at=2,\n    enabled=False,\n    gateway_plugin_acl_id=\"...my_id...\",\n    instance_name=\"...my_instance_name...\",\n    ordering={\n        \"after\": {\n            \"accesses\": [\"...\"],\n        },\n        \"before\": {\n            \"accesses\": [\"...\"],\n        },\n    },\n    partials=[{\n        \"id\": \"...my_id...\",\n        \"name\": \"...my_name...\",\n        \"path\": \"...my_path...\",\n    }],\n    protocols=[\"grpc\"],\n    route={\n        \"id\": \"...my_id...\",\n    },\n    service={\n        \"id\": \"...my_id...\",\n    },\n    tags=[\"...\"],\n    updated_at=4)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myGatewaypluginacl = new Konnect.GatewayPluginAcl(\"my_gatewaypluginacl\", new()\n    {\n        Config = new Konnect.Inputs.GatewayPluginAclConfigArgs\n        {\n            Allows = new[]\n            {\n                \"...\",\n            },\n            AlwaysUseAuthenticatedGroups = false,\n            Denies = new[]\n            {\n                \"...\",\n            },\n            HideGroupsHeader = false,\n            IncludeConsumerGroups = false,\n        },\n        ControlPlaneId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        CreatedAt = 2,\n        Enabled = false,\n        GatewayPluginAclId = \"...my_id...\",\n        InstanceName = \"...my_instance_name...\",\n        Ordering = new Konnect.Inputs.GatewayPluginAclOrderingArgs\n        {\n            After = new Konnect.Inputs.GatewayPluginAclOrderingAfterArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n            Before = new Konnect.Inputs.GatewayPluginAclOrderingBeforeArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n        },\n        Partials = new[]\n        {\n            new Konnect.Inputs.GatewayPluginAclPartialArgs\n            {\n                Id = \"...my_id...\",\n                Name = \"...my_name...\",\n                Path = \"...my_path...\",\n            },\n        },\n        Protocols = new[]\n        {\n            \"grpc\",\n        },\n        Route = new Konnect.Inputs.GatewayPluginAclRouteArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Service = new Konnect.Inputs.GatewayPluginAclServiceArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Tags = new[]\n        {\n            \"...\",\n        },\n        UpdatedAt = 4,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewGatewayPluginAcl(ctx, \"my_gatewaypluginacl\", \u0026konnect.GatewayPluginAclArgs{\n\t\t\tConfig: \u0026konnect.GatewayPluginAclConfigArgs{\n\t\t\t\tAllows: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tAlwaysUseAuthenticatedGroups: pulumi.Bool(false),\n\t\t\t\tDenies: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tHideGroupsHeader:      pulumi.Bool(false),\n\t\t\t\tIncludeConsumerGroups: pulumi.Bool(false),\n\t\t\t},\n\t\t\tControlPlaneId:     pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tCreatedAt:          pulumi.Float64(2),\n\t\t\tEnabled:            pulumi.Bool(false),\n\t\t\tGatewayPluginAclId: pulumi.String(\"...my_id...\"),\n\t\t\tInstanceName:       pulumi.String(\"...my_instance_name...\"),\n\t\t\tOrdering: \u0026konnect.GatewayPluginAclOrderingArgs{\n\t\t\t\tAfter: \u0026konnect.GatewayPluginAclOrderingAfterArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tBefore: \u0026konnect.GatewayPluginAclOrderingBeforeArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tPartials: konnect.GatewayPluginAclPartialArray{\n\t\t\t\t\u0026konnect.GatewayPluginAclPartialArgs{\n\t\t\t\t\tId:   pulumi.String(\"...my_id...\"),\n\t\t\t\t\tName: pulumi.String(\"...my_name...\"),\n\t\t\t\t\tPath: pulumi.String(\"...my_path...\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tProtocols: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"grpc\"),\n\t\t\t},\n\t\t\tRoute: \u0026konnect.GatewayPluginAclRouteArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tService: \u0026konnect.GatewayPluginAclServiceArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"...\"),\n\t\t\t},\n\t\t\tUpdatedAt: pulumi.Float64(4),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.GatewayPluginAcl;\nimport com.pulumi.konnect.GatewayPluginAclArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAclConfigArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAclOrderingArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAclOrderingAfterArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAclOrderingBeforeArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAclPartialArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAclRouteArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAclServiceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myGatewaypluginacl = new GatewayPluginAcl(\"myGatewaypluginacl\", GatewayPluginAclArgs.builder()\n            .config(GatewayPluginAclConfigArgs.builder()\n                .allows(\"...\")\n                .alwaysUseAuthenticatedGroups(false)\n                .denies(\"...\")\n                .hideGroupsHeader(false)\n                .includeConsumerGroups(false)\n                .build())\n            .controlPlaneId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .createdAt(2.0)\n            .enabled(false)\n            .gatewayPluginAclId(\"...my_id...\")\n            .instanceName(\"...my_instance_name...\")\n            .ordering(GatewayPluginAclOrderingArgs.builder()\n                .after(GatewayPluginAclOrderingAfterArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .before(GatewayPluginAclOrderingBeforeArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .build())\n            .partials(GatewayPluginAclPartialArgs.builder()\n                .id(\"...my_id...\")\n                .name(\"...my_name...\")\n                .path(\"...my_path...\")\n                .build())\n            .protocols(\"grpc\")\n            .route(GatewayPluginAclRouteArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .service(GatewayPluginAclServiceArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .tags(\"...\")\n            .updatedAt(4.0)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myGatewaypluginacl:\n    type: konnect:GatewayPluginAcl\n    name: my_gatewaypluginacl\n    properties:\n      config:\n        allows:\n          - '...'\n        alwaysUseAuthenticatedGroups: false\n        denies:\n          - '...'\n        hideGroupsHeader: false\n        includeConsumerGroups: false\n      controlPlaneId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      createdAt: 2\n      enabled: false\n      gatewayPluginAclId: '...my_id...'\n      instanceName: '...my_instance_name...'\n      ordering:\n        after:\n          accesses:\n            - '...'\n        before:\n          accesses:\n            - '...'\n      partials:\n        - id: '...my_id...'\n          name: '...my_name...'\n          path: '...my_path...'\n      protocols:\n        - grpc\n      route:\n        id: '...my_id...'\n      service:\n        id: '...my_id...'\n      tags:\n        - '...'\n      updatedAt: 4\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_gateway_plugin_acl.my_konnect_gateway_plugin_acl\n\n  id = jsonencode({\n\n    control_plane_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/gatewayPluginAcl:GatewayPluginAcl my_konnect_gateway_plugin_acl '{\"control_plane_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"}'\n```\n\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginAclConfig:GatewayPluginAclConfig"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginAclId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginAclOrdering:GatewayPluginAclOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginAclPartial:GatewayPluginAclPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginAclRoute:GatewayPluginAclRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginAclService:GatewayPluginAclService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object","required":["config","controlPlaneId","createdAt","enabled","gatewayPluginAclId","ordering","protocols","route","service","updatedAt"],"inputProperties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginAclConfig:GatewayPluginAclConfig"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginAclId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginAclOrdering:GatewayPluginAclOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginAclPartial:GatewayPluginAclPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginAclRoute:GatewayPluginAclRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginAclService:GatewayPluginAclService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"requiredInputs":["controlPlaneId"],"stateInputs":{"description":"Input properties used for looking up and filtering GatewayPluginAcl resources.\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginAclConfig:GatewayPluginAclConfig"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginAclId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginAclOrdering:GatewayPluginAclOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginAclPartial:GatewayPluginAclPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginAclRoute:GatewayPluginAclRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginAclService:GatewayPluginAclService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object"}},"konnect:index/gatewayPluginAcme:GatewayPluginAcme":{"description":"GatewayPluginAcme Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myGatewaypluginacme = new konnect.GatewayPluginAcme(\"my_gatewaypluginacme\", {\n    config: {\n        accountEmail: \"...my_account_email...\",\n        accountKey: {\n            keyId: \"...my_key_id...\",\n            keySet: \"...my_key_set...\",\n        },\n        allowAnyDomain: false,\n        apiUri: \"...my_api_uri...\",\n        certType: \"ecc\",\n        domains: [\"...\"],\n        eabHmacKey: \"...my_eab_hmac_key...\",\n        eabKid: \"...my_eab_kid...\",\n        enableIpv4CommonName: false,\n        failBackoffMinutes: 7.02,\n        preferredChain: \"...my_preferred_chain...\",\n        renewThresholdDays: 1.5,\n        rsaKeySize: 3072,\n        storage: \"kong\",\n        storageConfig: {\n            consul: {\n                host: \"...my_host...\",\n                https: false,\n                kvPath: \"...my_kv_path...\",\n                port: 27961,\n                timeout: 6.85,\n                token: \"...my_token...\",\n            },\n            kong: {\n                key: JSON.stringify(\"value\"),\n            },\n            redis: {\n                cloudAuthentication: {\n                    authProvider: \"gcp\",\n                    awsAccessKeyId: \"...my_aws_access_key_id...\",\n                    awsAssumeRoleArn: \"...my_aws_assume_role_arn...\",\n                    awsCacheName: \"...my_aws_cache_name...\",\n                    awsIsServerless: false,\n                    awsRegion: \"...my_aws_region...\",\n                    awsRoleSessionName: \"...my_aws_role_session_name...\",\n                    awsSecretAccessKey: \"...my_aws_secret_access_key...\",\n                    azureClientId: \"...my_azure_client_id...\",\n                    azureClientSecret: \"...my_azure_client_secret...\",\n                    azureTenantId: \"...my_azure_tenant_id...\",\n                    gcpServiceAccountJson: \"...my_gcp_service_account_json...\",\n                },\n                database: 6,\n                extraOptions: {\n                    namespace: \"...my_namespace...\",\n                    scanCount: 4.65,\n                },\n                host: \"...my_host...\",\n                password: \"...my_password...\",\n                port: 60103,\n                serverName: \"...my_server_name...\",\n                ssl: true,\n                sslVerify: false,\n                timeout: 1734626631,\n                username: \"...my_username...\",\n            },\n            shm: {\n                shmName: \"...my_shm_name...\",\n            },\n            vault: {\n                authMethod: \"token\",\n                authPath: \"...my_auth_path...\",\n                authRole: \"...my_auth_role...\",\n                host: \"...my_host...\",\n                https: false,\n                jwtPath: \"...my_jwt_path...\",\n                kvPath: \"...my_kv_path...\",\n                port: 58658,\n                timeout: 3.3,\n                tlsServerName: \"...my_tls_server_name...\",\n                tlsVerify: true,\n                token: \"...my_token...\",\n            },\n        },\n        tosAccepted: true,\n    },\n    controlPlaneId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    createdAt: 0,\n    enabled: true,\n    gatewayPluginAcmeId: \"...my_id...\",\n    instanceName: \"...my_instance_name...\",\n    ordering: {\n        after: {\n            accesses: [\"...\"],\n        },\n        before: {\n            accesses: [\"...\"],\n        },\n    },\n    partials: [{\n        id: \"...my_id...\",\n        name: \"...my_name...\",\n        path: \"...my_path...\",\n    }],\n    protocols: [\"grpc\"],\n    tags: [\"...\"],\n    updatedAt: 9,\n});\n```\n```python\nimport pulumi\nimport json\nimport pulumi_konnect as konnect\n\nmy_gatewaypluginacme = konnect.GatewayPluginAcme(\"my_gatewaypluginacme\",\n    config={\n        \"account_email\": \"...my_account_email...\",\n        \"account_key\": {\n            \"key_id\": \"...my_key_id...\",\n            \"key_set\": \"...my_key_set...\",\n        },\n        \"allow_any_domain\": False,\n        \"api_uri\": \"...my_api_uri...\",\n        \"cert_type\": \"ecc\",\n        \"domains\": [\"...\"],\n        \"eab_hmac_key\": \"...my_eab_hmac_key...\",\n        \"eab_kid\": \"...my_eab_kid...\",\n        \"enable_ipv4_common_name\": False,\n        \"fail_backoff_minutes\": 7.02,\n        \"preferred_chain\": \"...my_preferred_chain...\",\n        \"renew_threshold_days\": 1.5,\n        \"rsa_key_size\": 3072,\n        \"storage\": \"kong\",\n        \"storage_config\": {\n            \"consul\": {\n                \"host\": \"...my_host...\",\n                \"https\": False,\n                \"kv_path\": \"...my_kv_path...\",\n                \"port\": 27961,\n                \"timeout\": 6.85,\n                \"token\": \"...my_token...\",\n            },\n            \"kong\": {\n                \"key\": json.dumps(\"value\"),\n            },\n            \"redis\": {\n                \"cloud_authentication\": {\n                    \"auth_provider\": \"gcp\",\n                    \"aws_access_key_id\": \"...my_aws_access_key_id...\",\n                    \"aws_assume_role_arn\": \"...my_aws_assume_role_arn...\",\n                    \"aws_cache_name\": \"...my_aws_cache_name...\",\n                    \"aws_is_serverless\": False,\n                    \"aws_region\": \"...my_aws_region...\",\n                    \"aws_role_session_name\": \"...my_aws_role_session_name...\",\n                    \"aws_secret_access_key\": \"...my_aws_secret_access_key...\",\n                    \"azure_client_id\": \"...my_azure_client_id...\",\n                    \"azure_client_secret\": \"...my_azure_client_secret...\",\n                    \"azure_tenant_id\": \"...my_azure_tenant_id...\",\n                    \"gcp_service_account_json\": \"...my_gcp_service_account_json...\",\n                },\n                \"database\": 6,\n                \"extra_options\": {\n                    \"namespace\": \"...my_namespace...\",\n                    \"scan_count\": 4.65,\n                },\n                \"host\": \"...my_host...\",\n                \"password\": \"...my_password...\",\n                \"port\": 60103,\n                \"server_name\": \"...my_server_name...\",\n                \"ssl\": True,\n                \"ssl_verify\": False,\n                \"timeout\": 1734626631,\n                \"username\": \"...my_username...\",\n            },\n            \"shm\": {\n                \"shm_name\": \"...my_shm_name...\",\n            },\n            \"vault\": {\n                \"auth_method\": \"token\",\n                \"auth_path\": \"...my_auth_path...\",\n                \"auth_role\": \"...my_auth_role...\",\n                \"host\": \"...my_host...\",\n                \"https\": False,\n                \"jwt_path\": \"...my_jwt_path...\",\n                \"kv_path\": \"...my_kv_path...\",\n                \"port\": 58658,\n                \"timeout\": 3.3,\n                \"tls_server_name\": \"...my_tls_server_name...\",\n                \"tls_verify\": True,\n                \"token\": \"...my_token...\",\n            },\n        },\n        \"tos_accepted\": True,\n    },\n    control_plane_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    created_at=0,\n    enabled=True,\n    gateway_plugin_acme_id=\"...my_id...\",\n    instance_name=\"...my_instance_name...\",\n    ordering={\n        \"after\": {\n            \"accesses\": [\"...\"],\n        },\n        \"before\": {\n            \"accesses\": [\"...\"],\n        },\n    },\n    partials=[{\n        \"id\": \"...my_id...\",\n        \"name\": \"...my_name...\",\n        \"path\": \"...my_path...\",\n    }],\n    protocols=[\"grpc\"],\n    tags=[\"...\"],\n    updated_at=9)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text.Json;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myGatewaypluginacme = new Konnect.GatewayPluginAcme(\"my_gatewaypluginacme\", new()\n    {\n        Config = new Konnect.Inputs.GatewayPluginAcmeConfigArgs\n        {\n            AccountEmail = \"...my_account_email...\",\n            AccountKey = new Konnect.Inputs.GatewayPluginAcmeConfigAccountKeyArgs\n            {\n                KeyId = \"...my_key_id...\",\n                KeySet = \"...my_key_set...\",\n            },\n            AllowAnyDomain = false,\n            ApiUri = \"...my_api_uri...\",\n            CertType = \"ecc\",\n            Domains = new[]\n            {\n                \"...\",\n            },\n            EabHmacKey = \"...my_eab_hmac_key...\",\n            EabKid = \"...my_eab_kid...\",\n            EnableIpv4CommonName = false,\n            FailBackoffMinutes = 7.02,\n            PreferredChain = \"...my_preferred_chain...\",\n            RenewThresholdDays = 1.5,\n            RsaKeySize = 3072,\n            Storage = \"kong\",\n            StorageConfig = new Konnect.Inputs.GatewayPluginAcmeConfigStorageConfigArgs\n            {\n                Consul = new Konnect.Inputs.GatewayPluginAcmeConfigStorageConfigConsulArgs\n                {\n                    Host = \"...my_host...\",\n                    Https = false,\n                    KvPath = \"...my_kv_path...\",\n                    Port = 27961,\n                    Timeout = 6.85,\n                    Token = \"...my_token...\",\n                },\n                Kong = \n                {\n                    { \"key\", JsonSerializer.Serialize(\"value\") },\n                },\n                Redis = new Konnect.Inputs.GatewayPluginAcmeConfigStorageConfigRedisArgs\n                {\n                    CloudAuthentication = new Konnect.Inputs.GatewayPluginAcmeConfigStorageConfigRedisCloudAuthenticationArgs\n                    {\n                        AuthProvider = \"gcp\",\n                        AwsAccessKeyId = \"...my_aws_access_key_id...\",\n                        AwsAssumeRoleArn = \"...my_aws_assume_role_arn...\",\n                        AwsCacheName = \"...my_aws_cache_name...\",\n                        AwsIsServerless = false,\n                        AwsRegion = \"...my_aws_region...\",\n                        AwsRoleSessionName = \"...my_aws_role_session_name...\",\n                        AwsSecretAccessKey = \"...my_aws_secret_access_key...\",\n                        AzureClientId = \"...my_azure_client_id...\",\n                        AzureClientSecret = \"...my_azure_client_secret...\",\n                        AzureTenantId = \"...my_azure_tenant_id...\",\n                        GcpServiceAccountJson = \"...my_gcp_service_account_json...\",\n                    },\n                    Database = 6,\n                    ExtraOptions = new Konnect.Inputs.GatewayPluginAcmeConfigStorageConfigRedisExtraOptionsArgs\n                    {\n                        Namespace = \"...my_namespace...\",\n                        ScanCount = 4.65,\n                    },\n                    Host = \"...my_host...\",\n                    Password = \"...my_password...\",\n                    Port = 60103,\n                    ServerName = \"...my_server_name...\",\n                    Ssl = true,\n                    SslVerify = false,\n                    Timeout = 1734626631,\n                    Username = \"...my_username...\",\n                },\n                Shm = new Konnect.Inputs.GatewayPluginAcmeConfigStorageConfigShmArgs\n                {\n                    ShmName = \"...my_shm_name...\",\n                },\n                Vault = new Konnect.Inputs.GatewayPluginAcmeConfigStorageConfigVaultArgs\n                {\n                    AuthMethod = \"token\",\n                    AuthPath = \"...my_auth_path...\",\n                    AuthRole = \"...my_auth_role...\",\n                    Host = \"...my_host...\",\n                    Https = false,\n                    JwtPath = \"...my_jwt_path...\",\n                    KvPath = \"...my_kv_path...\",\n                    Port = 58658,\n                    Timeout = 3.3,\n                    TlsServerName = \"...my_tls_server_name...\",\n                    TlsVerify = true,\n                    Token = \"...my_token...\",\n                },\n            },\n            TosAccepted = true,\n        },\n        ControlPlaneId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        CreatedAt = 0,\n        Enabled = true,\n        GatewayPluginAcmeId = \"...my_id...\",\n        InstanceName = \"...my_instance_name...\",\n        Ordering = new Konnect.Inputs.GatewayPluginAcmeOrderingArgs\n        {\n            After = new Konnect.Inputs.GatewayPluginAcmeOrderingAfterArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n            Before = new Konnect.Inputs.GatewayPluginAcmeOrderingBeforeArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n        },\n        Partials = new[]\n        {\n            new Konnect.Inputs.GatewayPluginAcmePartialArgs\n            {\n                Id = \"...my_id...\",\n                Name = \"...my_name...\",\n                Path = \"...my_path...\",\n            },\n        },\n        Protocols = new[]\n        {\n            \"grpc\",\n        },\n        Tags = new[]\n        {\n            \"...\",\n        },\n        UpdatedAt = 9,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"encoding/json\"\n\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\ttmpJSON0, err := json.Marshal(\"value\")\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tjson0 := string(tmpJSON0)\n\t\t_, err = konnect.NewGatewayPluginAcme(ctx, \"my_gatewaypluginacme\", \u0026konnect.GatewayPluginAcmeArgs{\n\t\t\tConfig: \u0026konnect.GatewayPluginAcmeConfigArgs{\n\t\t\t\tAccountEmail: pulumi.String(\"...my_account_email...\"),\n\t\t\t\tAccountKey: \u0026konnect.GatewayPluginAcmeConfigAccountKeyArgs{\n\t\t\t\t\tKeyId:  pulumi.String(\"...my_key_id...\"),\n\t\t\t\t\tKeySet: pulumi.String(\"...my_key_set...\"),\n\t\t\t\t},\n\t\t\t\tAllowAnyDomain: pulumi.Bool(false),\n\t\t\t\tApiUri:         pulumi.String(\"...my_api_uri...\"),\n\t\t\t\tCertType:       pulumi.String(\"ecc\"),\n\t\t\t\tDomains: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tEabHmacKey:           pulumi.String(\"...my_eab_hmac_key...\"),\n\t\t\t\tEabKid:               pulumi.String(\"...my_eab_kid...\"),\n\t\t\t\tEnableIpv4CommonName: pulumi.Bool(false),\n\t\t\t\tFailBackoffMinutes:   pulumi.Float64(7.02),\n\t\t\t\tPreferredChain:       pulumi.String(\"...my_preferred_chain...\"),\n\t\t\t\tRenewThresholdDays:   pulumi.Float64(1.5),\n\t\t\t\tRsaKeySize:           pulumi.Float64(3072),\n\t\t\t\tStorage:              pulumi.String(\"kong\"),\n\t\t\t\tStorageConfig: \u0026konnect.GatewayPluginAcmeConfigStorageConfigArgs{\n\t\t\t\t\tConsul: \u0026konnect.GatewayPluginAcmeConfigStorageConfigConsulArgs{\n\t\t\t\t\t\tHost:    pulumi.String(\"...my_host...\"),\n\t\t\t\t\t\tHttps:   pulumi.Bool(false),\n\t\t\t\t\t\tKvPath:  pulumi.String(\"...my_kv_path...\"),\n\t\t\t\t\t\tPort:    pulumi.Float64(27961),\n\t\t\t\t\t\tTimeout: pulumi.Float64(6.85),\n\t\t\t\t\t\tToken:   pulumi.String(\"...my_token...\"),\n\t\t\t\t\t},\n\t\t\t\t\tKong: pulumi.StringMap{\n\t\t\t\t\t\t\"key\": pulumi.String(json0),\n\t\t\t\t\t},\n\t\t\t\t\tRedis: \u0026konnect.GatewayPluginAcmeConfigStorageConfigRedisArgs{\n\t\t\t\t\t\tCloudAuthentication: \u0026konnect.GatewayPluginAcmeConfigStorageConfigRedisCloudAuthenticationArgs{\n\t\t\t\t\t\t\tAuthProvider:          pulumi.String(\"gcp\"),\n\t\t\t\t\t\t\tAwsAccessKeyId:        pulumi.String(\"...my_aws_access_key_id...\"),\n\t\t\t\t\t\t\tAwsAssumeRoleArn:      pulumi.String(\"...my_aws_assume_role_arn...\"),\n\t\t\t\t\t\t\tAwsCacheName:          pulumi.String(\"...my_aws_cache_name...\"),\n\t\t\t\t\t\t\tAwsIsServerless:       pulumi.Bool(false),\n\t\t\t\t\t\t\tAwsRegion:             pulumi.String(\"...my_aws_region...\"),\n\t\t\t\t\t\t\tAwsRoleSessionName:    pulumi.String(\"...my_aws_role_session_name...\"),\n\t\t\t\t\t\t\tAwsSecretAccessKey:    pulumi.String(\"...my_aws_secret_access_key...\"),\n\t\t\t\t\t\t\tAzureClientId:         pulumi.String(\"...my_azure_client_id...\"),\n\t\t\t\t\t\t\tAzureClientSecret:     pulumi.String(\"...my_azure_client_secret...\"),\n\t\t\t\t\t\t\tAzureTenantId:         pulumi.String(\"...my_azure_tenant_id...\"),\n\t\t\t\t\t\t\tGcpServiceAccountJson: pulumi.String(\"...my_gcp_service_account_json...\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\tDatabase: pulumi.Float64(6),\n\t\t\t\t\t\tExtraOptions: \u0026konnect.GatewayPluginAcmeConfigStorageConfigRedisExtraOptionsArgs{\n\t\t\t\t\t\t\tNamespace: pulumi.String(\"...my_namespace...\"),\n\t\t\t\t\t\t\tScanCount: pulumi.Float64(4.65),\n\t\t\t\t\t\t},\n\t\t\t\t\t\tHost:       pulumi.String(\"...my_host...\"),\n\t\t\t\t\t\tPassword:   pulumi.String(\"...my_password...\"),\n\t\t\t\t\t\tPort:       pulumi.Float64(60103),\n\t\t\t\t\t\tServerName: pulumi.String(\"...my_server_name...\"),\n\t\t\t\t\t\tSsl:        pulumi.Bool(true),\n\t\t\t\t\t\tSslVerify:  pulumi.Bool(false),\n\t\t\t\t\t\tTimeout:    pulumi.Float64(1734626631),\n\t\t\t\t\t\tUsername:   pulumi.String(\"...my_username...\"),\n\t\t\t\t\t},\n\t\t\t\t\tShm: \u0026konnect.GatewayPluginAcmeConfigStorageConfigShmArgs{\n\t\t\t\t\t\tShmName: pulumi.String(\"...my_shm_name...\"),\n\t\t\t\t\t},\n\t\t\t\t\tVault: \u0026konnect.GatewayPluginAcmeConfigStorageConfigVaultArgs{\n\t\t\t\t\t\tAuthMethod:    pulumi.String(\"token\"),\n\t\t\t\t\t\tAuthPath:      pulumi.String(\"...my_auth_path...\"),\n\t\t\t\t\t\tAuthRole:      pulumi.String(\"...my_auth_role...\"),\n\t\t\t\t\t\tHost:          pulumi.String(\"...my_host...\"),\n\t\t\t\t\t\tHttps:         pulumi.Bool(false),\n\t\t\t\t\t\tJwtPath:       pulumi.String(\"...my_jwt_path...\"),\n\t\t\t\t\t\tKvPath:        pulumi.String(\"...my_kv_path...\"),\n\t\t\t\t\t\tPort:          pulumi.Float64(58658),\n\t\t\t\t\t\tTimeout:       pulumi.Float64(3.3),\n\t\t\t\t\t\tTlsServerName: pulumi.String(\"...my_tls_server_name...\"),\n\t\t\t\t\t\tTlsVerify:     pulumi.Bool(true),\n\t\t\t\t\t\tToken:         pulumi.String(\"...my_token...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tTosAccepted: pulumi.Bool(true),\n\t\t\t},\n\t\t\tControlPlaneId:      pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tCreatedAt:           pulumi.Float64(0),\n\t\t\tEnabled:             pulumi.Bool(true),\n\t\t\tGatewayPluginAcmeId: pulumi.String(\"...my_id...\"),\n\t\t\tInstanceName:        pulumi.String(\"...my_instance_name...\"),\n\t\t\tOrdering: \u0026konnect.GatewayPluginAcmeOrderingArgs{\n\t\t\t\tAfter: \u0026konnect.GatewayPluginAcmeOrderingAfterArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tBefore: \u0026konnect.GatewayPluginAcmeOrderingBeforeArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tPartials: konnect.GatewayPluginAcmePartialArray{\n\t\t\t\t\u0026konnect.GatewayPluginAcmePartialArgs{\n\t\t\t\t\tId:   pulumi.String(\"...my_id...\"),\n\t\t\t\t\tName: pulumi.String(\"...my_name...\"),\n\t\t\t\t\tPath: pulumi.String(\"...my_path...\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tProtocols: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"grpc\"),\n\t\t\t},\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"...\"),\n\t\t\t},\n\t\t\tUpdatedAt: pulumi.Float64(9),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.GatewayPluginAcme;\nimport com.pulumi.konnect.GatewayPluginAcmeArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAcmeConfigArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAcmeConfigAccountKeyArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAcmeConfigStorageConfigArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAcmeConfigStorageConfigConsulArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAcmeConfigStorageConfigRedisArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAcmeConfigStorageConfigRedisCloudAuthenticationArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAcmeConfigStorageConfigRedisExtraOptionsArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAcmeConfigStorageConfigShmArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAcmeConfigStorageConfigVaultArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAcmeOrderingArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAcmeOrderingAfterArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAcmeOrderingBeforeArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAcmePartialArgs;\nimport static com.pulumi.codegen.internal.Serialization.*;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myGatewaypluginacme = new GatewayPluginAcme(\"myGatewaypluginacme\", GatewayPluginAcmeArgs.builder()\n            .config(GatewayPluginAcmeConfigArgs.builder()\n                .accountEmail(\"...my_account_email...\")\n                .accountKey(GatewayPluginAcmeConfigAccountKeyArgs.builder()\n                    .keyId(\"...my_key_id...\")\n                    .keySet(\"...my_key_set...\")\n                    .build())\n                .allowAnyDomain(false)\n                .apiUri(\"...my_api_uri...\")\n                .certType(\"ecc\")\n                .domains(\"...\")\n                .eabHmacKey(\"...my_eab_hmac_key...\")\n                .eabKid(\"...my_eab_kid...\")\n                .enableIpv4CommonName(false)\n                .failBackoffMinutes(7.02)\n                .preferredChain(\"...my_preferred_chain...\")\n                .renewThresholdDays(1.5)\n                .rsaKeySize(3072.0)\n                .storage(\"kong\")\n                .storageConfig(GatewayPluginAcmeConfigStorageConfigArgs.builder()\n                    .consul(GatewayPluginAcmeConfigStorageConfigConsulArgs.builder()\n                        .host(\"...my_host...\")\n                        .https(false)\n                        .kvPath(\"...my_kv_path...\")\n                        .port(27961.0)\n                        .timeout(6.85)\n                        .token(\"...my_token...\")\n                        .build())\n                    .kong(Map.of(\"key\", serializeJson(\n                        \"value\")))\n                    .redis(GatewayPluginAcmeConfigStorageConfigRedisArgs.builder()\n                        .cloudAuthentication(GatewayPluginAcmeConfigStorageConfigRedisCloudAuthenticationArgs.builder()\n                            .authProvider(\"gcp\")\n                            .awsAccessKeyId(\"...my_aws_access_key_id...\")\n                            .awsAssumeRoleArn(\"...my_aws_assume_role_arn...\")\n                            .awsCacheName(\"...my_aws_cache_name...\")\n                            .awsIsServerless(false)\n                            .awsRegion(\"...my_aws_region...\")\n                            .awsRoleSessionName(\"...my_aws_role_session_name...\")\n                            .awsSecretAccessKey(\"...my_aws_secret_access_key...\")\n                            .azureClientId(\"...my_azure_client_id...\")\n                            .azureClientSecret(\"...my_azure_client_secret...\")\n                            .azureTenantId(\"...my_azure_tenant_id...\")\n                            .gcpServiceAccountJson(\"...my_gcp_service_account_json...\")\n                            .build())\n                        .database(6.0)\n                        .extraOptions(GatewayPluginAcmeConfigStorageConfigRedisExtraOptionsArgs.builder()\n                            .namespace(\"...my_namespace...\")\n                            .scanCount(4.65)\n                            .build())\n                        .host(\"...my_host...\")\n                        .password(\"...my_password...\")\n                        .port(60103.0)\n                        .serverName(\"...my_server_name...\")\n                        .ssl(true)\n                        .sslVerify(false)\n                        .timeout(1734626631.0)\n                        .username(\"...my_username...\")\n                        .build())\n                    .shm(GatewayPluginAcmeConfigStorageConfigShmArgs.builder()\n                        .shmName(\"...my_shm_name...\")\n                        .build())\n                    .vault(GatewayPluginAcmeConfigStorageConfigVaultArgs.builder()\n                        .authMethod(\"token\")\n                        .authPath(\"...my_auth_path...\")\n                        .authRole(\"...my_auth_role...\")\n                        .host(\"...my_host...\")\n                        .https(false)\n                        .jwtPath(\"...my_jwt_path...\")\n                        .kvPath(\"...my_kv_path...\")\n                        .port(58658.0)\n                        .timeout(3.3)\n                        .tlsServerName(\"...my_tls_server_name...\")\n                        .tlsVerify(true)\n                        .token(\"...my_token...\")\n                        .build())\n                    .build())\n                .tosAccepted(true)\n                .build())\n            .controlPlaneId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .createdAt(0.0)\n            .enabled(true)\n            .gatewayPluginAcmeId(\"...my_id...\")\n            .instanceName(\"...my_instance_name...\")\n            .ordering(GatewayPluginAcmeOrderingArgs.builder()\n                .after(GatewayPluginAcmeOrderingAfterArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .before(GatewayPluginAcmeOrderingBeforeArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .build())\n            .partials(GatewayPluginAcmePartialArgs.builder()\n                .id(\"...my_id...\")\n                .name(\"...my_name...\")\n                .path(\"...my_path...\")\n                .build())\n            .protocols(\"grpc\")\n            .tags(\"...\")\n            .updatedAt(9.0)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myGatewaypluginacme:\n    type: konnect:GatewayPluginAcme\n    name: my_gatewaypluginacme\n    properties:\n      config:\n        accountEmail: '...my_account_email...'\n        accountKey:\n          keyId: '...my_key_id...'\n          keySet: '...my_key_set...'\n        allowAnyDomain: false\n        apiUri: '...my_api_uri...'\n        certType: ecc\n        domains:\n          - '...'\n        eabHmacKey: '...my_eab_hmac_key...'\n        eabKid: '...my_eab_kid...'\n        enableIpv4CommonName: false\n        failBackoffMinutes: 7.02\n        preferredChain: '...my_preferred_chain...'\n        renewThresholdDays: 1.5\n        rsaKeySize: 3072\n        storage: kong\n        storageConfig:\n          consul:\n            host: '...my_host...'\n            https: false\n            kvPath: '...my_kv_path...'\n            port: 27961\n            timeout: 6.85\n            token: '...my_token...'\n          kong:\n            key:\n              fn::toJSON: value\n          redis:\n            cloudAuthentication:\n              authProvider: gcp\n              awsAccessKeyId: '...my_aws_access_key_id...'\n              awsAssumeRoleArn: '...my_aws_assume_role_arn...'\n              awsCacheName: '...my_aws_cache_name...'\n              awsIsServerless: false\n              awsRegion: '...my_aws_region...'\n              awsRoleSessionName: '...my_aws_role_session_name...'\n              awsSecretAccessKey: '...my_aws_secret_access_key...'\n              azureClientId: '...my_azure_client_id...'\n              azureClientSecret: '...my_azure_client_secret...'\n              azureTenantId: '...my_azure_tenant_id...'\n              gcpServiceAccountJson: '...my_gcp_service_account_json...'\n            database: 6\n            extraOptions:\n              namespace: '...my_namespace...'\n              scanCount: 4.65\n            host: '...my_host...'\n            password: '...my_password...'\n            port: 60103\n            serverName: '...my_server_name...'\n            ssl: true\n            sslVerify: false\n            timeout: 1.734626631e+09\n            username: '...my_username...'\n          shm:\n            shmName: '...my_shm_name...'\n          vault:\n            authMethod: token\n            authPath: '...my_auth_path...'\n            authRole: '...my_auth_role...'\n            host: '...my_host...'\n            https: false\n            jwtPath: '...my_jwt_path...'\n            kvPath: '...my_kv_path...'\n            port: 58658\n            timeout: 3.3\n            tlsServerName: '...my_tls_server_name...'\n            tlsVerify: true\n            token: '...my_token...'\n        tosAccepted: true\n      controlPlaneId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      createdAt: 0\n      enabled: true\n      gatewayPluginAcmeId: '...my_id...'\n      instanceName: '...my_instance_name...'\n      ordering:\n        after:\n          accesses:\n            - '...'\n        before:\n          accesses:\n            - '...'\n      partials:\n        - id: '...my_id...'\n          name: '...my_name...'\n          path: '...my_path...'\n      protocols:\n        - grpc\n      tags:\n        - '...'\n      updatedAt: 9\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_gateway_plugin_acme.my_konnect_gateway_plugin_acme\n\n  id = jsonencode({\n\n    control_plane_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/gatewayPluginAcme:GatewayPluginAcme my_konnect_gateway_plugin_acme '{\"control_plane_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"}'\n```\n\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginAcmeConfig:GatewayPluginAcmeConfig"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginAcmeId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginAcmeOrdering:GatewayPluginAcmeOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginAcmePartial:GatewayPluginAcmePartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object","required":["config","controlPlaneId","createdAt","enabled","gatewayPluginAcmeId","ordering","protocols","updatedAt"],"inputProperties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginAcmeConfig:GatewayPluginAcmeConfig"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginAcmeId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginAcmeOrdering:GatewayPluginAcmeOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginAcmePartial:GatewayPluginAcmePartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"requiredInputs":["config","controlPlaneId"],"stateInputs":{"description":"Input properties used for looking up and filtering GatewayPluginAcme resources.\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginAcmeConfig:GatewayPluginAcmeConfig"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginAcmeId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginAcmeOrdering:GatewayPluginAcmeOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginAcmePartial:GatewayPluginAcmePartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object"}},"konnect:index/gatewayPluginAiAwsGuardrails:GatewayPluginAiAwsGuardrails":{"description":"GatewayPluginAiAwsGuardrails Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myGatewaypluginaiawsguardrails = new konnect.GatewayPluginAiAwsGuardrails(\"my_gatewaypluginaiawsguardrails\", {\n    config: {\n        allowMasking: true,\n        awsAccessKeyId: \"...my_aws_access_key_id...\",\n        awsAssumeRoleArn: \"...my_aws_assume_role_arn...\",\n        awsRegion: \"...my_aws_region...\",\n        awsRoleSessionName: \"...my_aws_role_session_name...\",\n        awsSecretAccessKey: \"...my_aws_secret_access_key...\",\n        awsStsEndpointUrl: \"...my_aws_sts_endpoint_url...\",\n        guardingMode: \"INPUT\",\n        guardrailsId: \"...my_guardrails_id...\",\n        guardrailsVersion: \"...my_guardrails_version...\",\n        responseBufferSize: 4.85,\n        sslVerify: true,\n        stopOnError: false,\n        textSource: \"concatenate_all_content\",\n        timeout: 4.59,\n    },\n    consumer: {\n        id: \"...my_id...\",\n    },\n    consumerGroup: {\n        id: \"...my_id...\",\n    },\n    controlPlaneId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    createdAt: 4,\n    enabled: true,\n    gatewayPluginAiAwsGuardrailsId: \"...my_id...\",\n    instanceName: \"...my_instance_name...\",\n    ordering: {\n        after: {\n            accesses: [\"...\"],\n        },\n        before: {\n            accesses: [\"...\"],\n        },\n    },\n    partials: [{\n        id: \"...my_id...\",\n        name: \"...my_name...\",\n        path: \"...my_path...\",\n    }],\n    protocols: [\"grpc\"],\n    route: {\n        id: \"...my_id...\",\n    },\n    service: {\n        id: \"...my_id...\",\n    },\n    tags: [\"...\"],\n    updatedAt: 9,\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_gatewaypluginaiawsguardrails = konnect.GatewayPluginAiAwsGuardrails(\"my_gatewaypluginaiawsguardrails\",\n    config={\n        \"allow_masking\": True,\n        \"aws_access_key_id\": \"...my_aws_access_key_id...\",\n        \"aws_assume_role_arn\": \"...my_aws_assume_role_arn...\",\n        \"aws_region\": \"...my_aws_region...\",\n        \"aws_role_session_name\": \"...my_aws_role_session_name...\",\n        \"aws_secret_access_key\": \"...my_aws_secret_access_key...\",\n        \"aws_sts_endpoint_url\": \"...my_aws_sts_endpoint_url...\",\n        \"guarding_mode\": \"INPUT\",\n        \"guardrails_id\": \"...my_guardrails_id...\",\n        \"guardrails_version\": \"...my_guardrails_version...\",\n        \"response_buffer_size\": 4.85,\n        \"ssl_verify\": True,\n        \"stop_on_error\": False,\n        \"text_source\": \"concatenate_all_content\",\n        \"timeout\": 4.59,\n    },\n    consumer={\n        \"id\": \"...my_id...\",\n    },\n    consumer_group={\n        \"id\": \"...my_id...\",\n    },\n    control_plane_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    created_at=4,\n    enabled=True,\n    gateway_plugin_ai_aws_guardrails_id=\"...my_id...\",\n    instance_name=\"...my_instance_name...\",\n    ordering={\n        \"after\": {\n            \"accesses\": [\"...\"],\n        },\n        \"before\": {\n            \"accesses\": [\"...\"],\n        },\n    },\n    partials=[{\n        \"id\": \"...my_id...\",\n        \"name\": \"...my_name...\",\n        \"path\": \"...my_path...\",\n    }],\n    protocols=[\"grpc\"],\n    route={\n        \"id\": \"...my_id...\",\n    },\n    service={\n        \"id\": \"...my_id...\",\n    },\n    tags=[\"...\"],\n    updated_at=9)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myGatewaypluginaiawsguardrails = new Konnect.GatewayPluginAiAwsGuardrails(\"my_gatewaypluginaiawsguardrails\", new()\n    {\n        Config = new Konnect.Inputs.GatewayPluginAiAwsGuardrailsConfigArgs\n        {\n            AllowMasking = true,\n            AwsAccessKeyId = \"...my_aws_access_key_id...\",\n            AwsAssumeRoleArn = \"...my_aws_assume_role_arn...\",\n            AwsRegion = \"...my_aws_region...\",\n            AwsRoleSessionName = \"...my_aws_role_session_name...\",\n            AwsSecretAccessKey = \"...my_aws_secret_access_key...\",\n            AwsStsEndpointUrl = \"...my_aws_sts_endpoint_url...\",\n            GuardingMode = \"INPUT\",\n            GuardrailsId = \"...my_guardrails_id...\",\n            GuardrailsVersion = \"...my_guardrails_version...\",\n            ResponseBufferSize = 4.85,\n            SslVerify = true,\n            StopOnError = false,\n            TextSource = \"concatenate_all_content\",\n            Timeout = 4.59,\n        },\n        Consumer = new Konnect.Inputs.GatewayPluginAiAwsGuardrailsConsumerArgs\n        {\n            Id = \"...my_id...\",\n        },\n        ConsumerGroup = new Konnect.Inputs.GatewayPluginAiAwsGuardrailsConsumerGroupArgs\n        {\n            Id = \"...my_id...\",\n        },\n        ControlPlaneId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        CreatedAt = 4,\n        Enabled = true,\n        GatewayPluginAiAwsGuardrailsId = \"...my_id...\",\n        InstanceName = \"...my_instance_name...\",\n        Ordering = new Konnect.Inputs.GatewayPluginAiAwsGuardrailsOrderingArgs\n        {\n            After = new Konnect.Inputs.GatewayPluginAiAwsGuardrailsOrderingAfterArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n            Before = new Konnect.Inputs.GatewayPluginAiAwsGuardrailsOrderingBeforeArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n        },\n        Partials = new[]\n        {\n            new Konnect.Inputs.GatewayPluginAiAwsGuardrailsPartialArgs\n            {\n                Id = \"...my_id...\",\n                Name = \"...my_name...\",\n                Path = \"...my_path...\",\n            },\n        },\n        Protocols = new[]\n        {\n            \"grpc\",\n        },\n        Route = new Konnect.Inputs.GatewayPluginAiAwsGuardrailsRouteArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Service = new Konnect.Inputs.GatewayPluginAiAwsGuardrailsServiceArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Tags = new[]\n        {\n            \"...\",\n        },\n        UpdatedAt = 9,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewGatewayPluginAiAwsGuardrails(ctx, \"my_gatewaypluginaiawsguardrails\", \u0026konnect.GatewayPluginAiAwsGuardrailsArgs{\n\t\t\tConfig: \u0026konnect.GatewayPluginAiAwsGuardrailsConfigArgs{\n\t\t\t\tAllowMasking:       pulumi.Bool(true),\n\t\t\t\tAwsAccessKeyId:     pulumi.String(\"...my_aws_access_key_id...\"),\n\t\t\t\tAwsAssumeRoleArn:   pulumi.String(\"...my_aws_assume_role_arn...\"),\n\t\t\t\tAwsRegion:          pulumi.String(\"...my_aws_region...\"),\n\t\t\t\tAwsRoleSessionName: pulumi.String(\"...my_aws_role_session_name...\"),\n\t\t\t\tAwsSecretAccessKey: pulumi.String(\"...my_aws_secret_access_key...\"),\n\t\t\t\tAwsStsEndpointUrl:  pulumi.String(\"...my_aws_sts_endpoint_url...\"),\n\t\t\t\tGuardingMode:       pulumi.String(\"INPUT\"),\n\t\t\t\tGuardrailsId:       pulumi.String(\"...my_guardrails_id...\"),\n\t\t\t\tGuardrailsVersion:  pulumi.String(\"...my_guardrails_version...\"),\n\t\t\t\tResponseBufferSize: pulumi.Float64(4.85),\n\t\t\t\tSslVerify:          pulumi.Bool(true),\n\t\t\t\tStopOnError:        pulumi.Bool(false),\n\t\t\t\tTextSource:         pulumi.String(\"concatenate_all_content\"),\n\t\t\t\tTimeout:            pulumi.Float64(4.59),\n\t\t\t},\n\t\t\tConsumer: \u0026konnect.GatewayPluginAiAwsGuardrailsConsumerArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tConsumerGroup: \u0026konnect.GatewayPluginAiAwsGuardrailsConsumerGroupArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tControlPlaneId:                 pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tCreatedAt:                      pulumi.Float64(4),\n\t\t\tEnabled:                        pulumi.Bool(true),\n\t\t\tGatewayPluginAiAwsGuardrailsId: pulumi.String(\"...my_id...\"),\n\t\t\tInstanceName:                   pulumi.String(\"...my_instance_name...\"),\n\t\t\tOrdering: \u0026konnect.GatewayPluginAiAwsGuardrailsOrderingArgs{\n\t\t\t\tAfter: \u0026konnect.GatewayPluginAiAwsGuardrailsOrderingAfterArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tBefore: \u0026konnect.GatewayPluginAiAwsGuardrailsOrderingBeforeArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tPartials: konnect.GatewayPluginAiAwsGuardrailsPartialArray{\n\t\t\t\t\u0026konnect.GatewayPluginAiAwsGuardrailsPartialArgs{\n\t\t\t\t\tId:   pulumi.String(\"...my_id...\"),\n\t\t\t\t\tName: pulumi.String(\"...my_name...\"),\n\t\t\t\t\tPath: pulumi.String(\"...my_path...\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tProtocols: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"grpc\"),\n\t\t\t},\n\t\t\tRoute: \u0026konnect.GatewayPluginAiAwsGuardrailsRouteArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tService: \u0026konnect.GatewayPluginAiAwsGuardrailsServiceArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"...\"),\n\t\t\t},\n\t\t\tUpdatedAt: pulumi.Float64(9),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.GatewayPluginAiAwsGuardrails;\nimport com.pulumi.konnect.GatewayPluginAiAwsGuardrailsArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiAwsGuardrailsConfigArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiAwsGuardrailsConsumerArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiAwsGuardrailsConsumerGroupArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiAwsGuardrailsOrderingArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiAwsGuardrailsOrderingAfterArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiAwsGuardrailsOrderingBeforeArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiAwsGuardrailsPartialArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiAwsGuardrailsRouteArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiAwsGuardrailsServiceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myGatewaypluginaiawsguardrails = new GatewayPluginAiAwsGuardrails(\"myGatewaypluginaiawsguardrails\", GatewayPluginAiAwsGuardrailsArgs.builder()\n            .config(GatewayPluginAiAwsGuardrailsConfigArgs.builder()\n                .allowMasking(true)\n                .awsAccessKeyId(\"...my_aws_access_key_id...\")\n                .awsAssumeRoleArn(\"...my_aws_assume_role_arn...\")\n                .awsRegion(\"...my_aws_region...\")\n                .awsRoleSessionName(\"...my_aws_role_session_name...\")\n                .awsSecretAccessKey(\"...my_aws_secret_access_key...\")\n                .awsStsEndpointUrl(\"...my_aws_sts_endpoint_url...\")\n                .guardingMode(\"INPUT\")\n                .guardrailsId(\"...my_guardrails_id...\")\n                .guardrailsVersion(\"...my_guardrails_version...\")\n                .responseBufferSize(4.85)\n                .sslVerify(true)\n                .stopOnError(false)\n                .textSource(\"concatenate_all_content\")\n                .timeout(4.59)\n                .build())\n            .consumer(GatewayPluginAiAwsGuardrailsConsumerArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .consumerGroup(GatewayPluginAiAwsGuardrailsConsumerGroupArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .controlPlaneId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .createdAt(4.0)\n            .enabled(true)\n            .gatewayPluginAiAwsGuardrailsId(\"...my_id...\")\n            .instanceName(\"...my_instance_name...\")\n            .ordering(GatewayPluginAiAwsGuardrailsOrderingArgs.builder()\n                .after(GatewayPluginAiAwsGuardrailsOrderingAfterArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .before(GatewayPluginAiAwsGuardrailsOrderingBeforeArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .build())\n            .partials(GatewayPluginAiAwsGuardrailsPartialArgs.builder()\n                .id(\"...my_id...\")\n                .name(\"...my_name...\")\n                .path(\"...my_path...\")\n                .build())\n            .protocols(\"grpc\")\n            .route(GatewayPluginAiAwsGuardrailsRouteArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .service(GatewayPluginAiAwsGuardrailsServiceArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .tags(\"...\")\n            .updatedAt(9.0)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myGatewaypluginaiawsguardrails:\n    type: konnect:GatewayPluginAiAwsGuardrails\n    name: my_gatewaypluginaiawsguardrails\n    properties:\n      config:\n        allowMasking: true\n        awsAccessKeyId: '...my_aws_access_key_id...'\n        awsAssumeRoleArn: '...my_aws_assume_role_arn...'\n        awsRegion: '...my_aws_region...'\n        awsRoleSessionName: '...my_aws_role_session_name...'\n        awsSecretAccessKey: '...my_aws_secret_access_key...'\n        awsStsEndpointUrl: '...my_aws_sts_endpoint_url...'\n        guardingMode: INPUT\n        guardrailsId: '...my_guardrails_id...'\n        guardrailsVersion: '...my_guardrails_version...'\n        responseBufferSize: 4.85\n        sslVerify: true\n        stopOnError: false\n        textSource: concatenate_all_content\n        timeout: 4.59\n      consumer:\n        id: '...my_id...'\n      consumerGroup:\n        id: '...my_id...'\n      controlPlaneId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      createdAt: 4\n      enabled: true\n      gatewayPluginAiAwsGuardrailsId: '...my_id...'\n      instanceName: '...my_instance_name...'\n      ordering:\n        after:\n          accesses:\n            - '...'\n        before:\n          accesses:\n            - '...'\n      partials:\n        - id: '...my_id...'\n          name: '...my_name...'\n          path: '...my_path...'\n      protocols:\n        - grpc\n      route:\n        id: '...my_id...'\n      service:\n        id: '...my_id...'\n      tags:\n        - '...'\n      updatedAt: 9\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_gateway_plugin_ai_aws_guardrails.my_konnect_gateway_plugin_ai_aws_guardrails\n\n  id = jsonencode({\n\n    control_plane_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/gatewayPluginAiAwsGuardrails:GatewayPluginAiAwsGuardrails my_konnect_gateway_plugin_ai_aws_guardrails '{\"control_plane_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"}'\n```\n\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginAiAwsGuardrailsConfig:GatewayPluginAiAwsGuardrailsConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginAiAwsGuardrailsConsumer:GatewayPluginAiAwsGuardrailsConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"consumerGroup":{"$ref":"#/types/konnect:index%2FGatewayPluginAiAwsGuardrailsConsumerGroup:GatewayPluginAiAwsGuardrailsConsumerGroup","description":"If set, the plugin will activate only for requests where the specified consumer group has been authenticated. (Note that some plugins can not be restricted to consumers groups this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer Groups\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginAiAwsGuardrailsId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginAiAwsGuardrailsOrdering:GatewayPluginAiAwsGuardrailsOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginAiAwsGuardrailsPartial:GatewayPluginAiAwsGuardrailsPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginAiAwsGuardrailsRoute:GatewayPluginAiAwsGuardrailsRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginAiAwsGuardrailsService:GatewayPluginAiAwsGuardrailsService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object","required":["config","consumer","consumerGroup","controlPlaneId","createdAt","enabled","gatewayPluginAiAwsGuardrailsId","ordering","protocols","route","service","updatedAt"],"inputProperties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginAiAwsGuardrailsConfig:GatewayPluginAiAwsGuardrailsConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginAiAwsGuardrailsConsumer:GatewayPluginAiAwsGuardrailsConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"consumerGroup":{"$ref":"#/types/konnect:index%2FGatewayPluginAiAwsGuardrailsConsumerGroup:GatewayPluginAiAwsGuardrailsConsumerGroup","description":"If set, the plugin will activate only for requests where the specified consumer group has been authenticated. (Note that some plugins can not be restricted to consumers groups this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer Groups\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginAiAwsGuardrailsId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginAiAwsGuardrailsOrdering:GatewayPluginAiAwsGuardrailsOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginAiAwsGuardrailsPartial:GatewayPluginAiAwsGuardrailsPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginAiAwsGuardrailsRoute:GatewayPluginAiAwsGuardrailsRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginAiAwsGuardrailsService:GatewayPluginAiAwsGuardrailsService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"requiredInputs":["config","controlPlaneId"],"stateInputs":{"description":"Input properties used for looking up and filtering GatewayPluginAiAwsGuardrails resources.\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginAiAwsGuardrailsConfig:GatewayPluginAiAwsGuardrailsConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginAiAwsGuardrailsConsumer:GatewayPluginAiAwsGuardrailsConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"consumerGroup":{"$ref":"#/types/konnect:index%2FGatewayPluginAiAwsGuardrailsConsumerGroup:GatewayPluginAiAwsGuardrailsConsumerGroup","description":"If set, the plugin will activate only for requests where the specified consumer group has been authenticated. (Note that some plugins can not be restricted to consumers groups this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer Groups\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginAiAwsGuardrailsId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginAiAwsGuardrailsOrdering:GatewayPluginAiAwsGuardrailsOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginAiAwsGuardrailsPartial:GatewayPluginAiAwsGuardrailsPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginAiAwsGuardrailsRoute:GatewayPluginAiAwsGuardrailsRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginAiAwsGuardrailsService:GatewayPluginAiAwsGuardrailsService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object"}},"konnect:index/gatewayPluginAiAzureContentSafety:GatewayPluginAiAzureContentSafety":{"description":"GatewayPluginAiAzureContentSafety Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myGatewaypluginaiazurecontentsafety = new konnect.GatewayPluginAiAzureContentSafety(\"my_gatewaypluginaiazurecontentsafety\", {\n    config: {\n        azureApiVersion: \"...my_azure_api_version...\",\n        azureClientId: \"...my_azure_client_id...\",\n        azureClientSecret: \"...my_azure_client_secret...\",\n        azureTenantId: \"...my_azure_tenant_id...\",\n        azureUseManagedIdentity: true,\n        blocklistNames: [\"...\"],\n        categories: [{\n            name: \"...my_name...\",\n            rejectionLevel: 9,\n        }],\n        contentSafetyKey: \"...my_content_safety_key...\",\n        contentSafetyUrl: \"...my_content_safety_url...\",\n        guardingMode: \"INPUT\",\n        haltOnBlocklistHit: false,\n        outputType: \"FourSeverityLevels\",\n        responseBufferSize: 7.56,\n        revealFailureReason: false,\n        sslVerify: false,\n        stopOnError: false,\n        textSource: \"concatenate_user_content\",\n    },\n    controlPlaneId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    createdAt: 10,\n    enabled: true,\n    gatewayPluginAiAzureContentSafetyId: \"...my_id...\",\n    instanceName: \"...my_instance_name...\",\n    ordering: {\n        after: {\n            accesses: [\"...\"],\n        },\n        before: {\n            accesses: [\"...\"],\n        },\n    },\n    partials: [{\n        id: \"...my_id...\",\n        name: \"...my_name...\",\n        path: \"...my_path...\",\n    }],\n    protocols: [\"https\"],\n    route: {\n        id: \"...my_id...\",\n    },\n    service: {\n        id: \"...my_id...\",\n    },\n    tags: [\"...\"],\n    updatedAt: 10,\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_gatewaypluginaiazurecontentsafety = konnect.GatewayPluginAiAzureContentSafety(\"my_gatewaypluginaiazurecontentsafety\",\n    config={\n        \"azure_api_version\": \"...my_azure_api_version...\",\n        \"azure_client_id\": \"...my_azure_client_id...\",\n        \"azure_client_secret\": \"...my_azure_client_secret...\",\n        \"azure_tenant_id\": \"...my_azure_tenant_id...\",\n        \"azure_use_managed_identity\": True,\n        \"blocklist_names\": [\"...\"],\n        \"categories\": [{\n            \"name\": \"...my_name...\",\n            \"rejection_level\": 9,\n        }],\n        \"content_safety_key\": \"...my_content_safety_key...\",\n        \"content_safety_url\": \"...my_content_safety_url...\",\n        \"guarding_mode\": \"INPUT\",\n        \"halt_on_blocklist_hit\": False,\n        \"output_type\": \"FourSeverityLevels\",\n        \"response_buffer_size\": 7.56,\n        \"reveal_failure_reason\": False,\n        \"ssl_verify\": False,\n        \"stop_on_error\": False,\n        \"text_source\": \"concatenate_user_content\",\n    },\n    control_plane_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    created_at=10,\n    enabled=True,\n    gateway_plugin_ai_azure_content_safety_id=\"...my_id...\",\n    instance_name=\"...my_instance_name...\",\n    ordering={\n        \"after\": {\n            \"accesses\": [\"...\"],\n        },\n        \"before\": {\n            \"accesses\": [\"...\"],\n        },\n    },\n    partials=[{\n        \"id\": \"...my_id...\",\n        \"name\": \"...my_name...\",\n        \"path\": \"...my_path...\",\n    }],\n    protocols=[\"https\"],\n    route={\n        \"id\": \"...my_id...\",\n    },\n    service={\n        \"id\": \"...my_id...\",\n    },\n    tags=[\"...\"],\n    updated_at=10)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myGatewaypluginaiazurecontentsafety = new Konnect.GatewayPluginAiAzureContentSafety(\"my_gatewaypluginaiazurecontentsafety\", new()\n    {\n        Config = new Konnect.Inputs.GatewayPluginAiAzureContentSafetyConfigArgs\n        {\n            AzureApiVersion = \"...my_azure_api_version...\",\n            AzureClientId = \"...my_azure_client_id...\",\n            AzureClientSecret = \"...my_azure_client_secret...\",\n            AzureTenantId = \"...my_azure_tenant_id...\",\n            AzureUseManagedIdentity = true,\n            BlocklistNames = new[]\n            {\n                \"...\",\n            },\n            Categories = new[]\n            {\n                new Konnect.Inputs.GatewayPluginAiAzureContentSafetyConfigCategoryArgs\n                {\n                    Name = \"...my_name...\",\n                    RejectionLevel = 9,\n                },\n            },\n            ContentSafetyKey = \"...my_content_safety_key...\",\n            ContentSafetyUrl = \"...my_content_safety_url...\",\n            GuardingMode = \"INPUT\",\n            HaltOnBlocklistHit = false,\n            OutputType = \"FourSeverityLevels\",\n            ResponseBufferSize = 7.56,\n            RevealFailureReason = false,\n            SslVerify = false,\n            StopOnError = false,\n            TextSource = \"concatenate_user_content\",\n        },\n        ControlPlaneId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        CreatedAt = 10,\n        Enabled = true,\n        GatewayPluginAiAzureContentSafetyId = \"...my_id...\",\n        InstanceName = \"...my_instance_name...\",\n        Ordering = new Konnect.Inputs.GatewayPluginAiAzureContentSafetyOrderingArgs\n        {\n            After = new Konnect.Inputs.GatewayPluginAiAzureContentSafetyOrderingAfterArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n            Before = new Konnect.Inputs.GatewayPluginAiAzureContentSafetyOrderingBeforeArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n        },\n        Partials = new[]\n        {\n            new Konnect.Inputs.GatewayPluginAiAzureContentSafetyPartialArgs\n            {\n                Id = \"...my_id...\",\n                Name = \"...my_name...\",\n                Path = \"...my_path...\",\n            },\n        },\n        Protocols = new[]\n        {\n            \"https\",\n        },\n        Route = new Konnect.Inputs.GatewayPluginAiAzureContentSafetyRouteArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Service = new Konnect.Inputs.GatewayPluginAiAzureContentSafetyServiceArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Tags = new[]\n        {\n            \"...\",\n        },\n        UpdatedAt = 10,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewGatewayPluginAiAzureContentSafety(ctx, \"my_gatewaypluginaiazurecontentsafety\", \u0026konnect.GatewayPluginAiAzureContentSafetyArgs{\n\t\t\tConfig: \u0026konnect.GatewayPluginAiAzureContentSafetyConfigArgs{\n\t\t\t\tAzureApiVersion:         pulumi.String(\"...my_azure_api_version...\"),\n\t\t\t\tAzureClientId:           pulumi.String(\"...my_azure_client_id...\"),\n\t\t\t\tAzureClientSecret:       pulumi.String(\"...my_azure_client_secret...\"),\n\t\t\t\tAzureTenantId:           pulumi.String(\"...my_azure_tenant_id...\"),\n\t\t\t\tAzureUseManagedIdentity: pulumi.Bool(true),\n\t\t\t\tBlocklistNames: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tCategories: konnect.GatewayPluginAiAzureContentSafetyConfigCategoryArray{\n\t\t\t\t\t\u0026konnect.GatewayPluginAiAzureContentSafetyConfigCategoryArgs{\n\t\t\t\t\t\tName:           pulumi.String(\"...my_name...\"),\n\t\t\t\t\t\tRejectionLevel: pulumi.Float64(9),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tContentSafetyKey:    pulumi.String(\"...my_content_safety_key...\"),\n\t\t\t\tContentSafetyUrl:    pulumi.String(\"...my_content_safety_url...\"),\n\t\t\t\tGuardingMode:        pulumi.String(\"INPUT\"),\n\t\t\t\tHaltOnBlocklistHit:  pulumi.Bool(false),\n\t\t\t\tOutputType:          pulumi.String(\"FourSeverityLevels\"),\n\t\t\t\tResponseBufferSize:  pulumi.Float64(7.56),\n\t\t\t\tRevealFailureReason: pulumi.Bool(false),\n\t\t\t\tSslVerify:           pulumi.Bool(false),\n\t\t\t\tStopOnError:         pulumi.Bool(false),\n\t\t\t\tTextSource:          pulumi.String(\"concatenate_user_content\"),\n\t\t\t},\n\t\t\tControlPlaneId:                      pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tCreatedAt:                           pulumi.Float64(10),\n\t\t\tEnabled:                             pulumi.Bool(true),\n\t\t\tGatewayPluginAiAzureContentSafetyId: pulumi.String(\"...my_id...\"),\n\t\t\tInstanceName:                        pulumi.String(\"...my_instance_name...\"),\n\t\t\tOrdering: \u0026konnect.GatewayPluginAiAzureContentSafetyOrderingArgs{\n\t\t\t\tAfter: \u0026konnect.GatewayPluginAiAzureContentSafetyOrderingAfterArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tBefore: \u0026konnect.GatewayPluginAiAzureContentSafetyOrderingBeforeArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tPartials: konnect.GatewayPluginAiAzureContentSafetyPartialArray{\n\t\t\t\t\u0026konnect.GatewayPluginAiAzureContentSafetyPartialArgs{\n\t\t\t\t\tId:   pulumi.String(\"...my_id...\"),\n\t\t\t\t\tName: pulumi.String(\"...my_name...\"),\n\t\t\t\t\tPath: pulumi.String(\"...my_path...\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tProtocols: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"https\"),\n\t\t\t},\n\t\t\tRoute: \u0026konnect.GatewayPluginAiAzureContentSafetyRouteArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tService: \u0026konnect.GatewayPluginAiAzureContentSafetyServiceArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"...\"),\n\t\t\t},\n\t\t\tUpdatedAt: pulumi.Float64(10),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.GatewayPluginAiAzureContentSafety;\nimport com.pulumi.konnect.GatewayPluginAiAzureContentSafetyArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiAzureContentSafetyConfigArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiAzureContentSafetyOrderingArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiAzureContentSafetyOrderingAfterArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiAzureContentSafetyOrderingBeforeArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiAzureContentSafetyPartialArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiAzureContentSafetyRouteArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiAzureContentSafetyServiceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myGatewaypluginaiazurecontentsafety = new GatewayPluginAiAzureContentSafety(\"myGatewaypluginaiazurecontentsafety\", GatewayPluginAiAzureContentSafetyArgs.builder()\n            .config(GatewayPluginAiAzureContentSafetyConfigArgs.builder()\n                .azureApiVersion(\"...my_azure_api_version...\")\n                .azureClientId(\"...my_azure_client_id...\")\n                .azureClientSecret(\"...my_azure_client_secret...\")\n                .azureTenantId(\"...my_azure_tenant_id...\")\n                .azureUseManagedIdentity(true)\n                .blocklistNames(\"...\")\n                .categories(GatewayPluginAiAzureContentSafetyConfigCategoryArgs.builder()\n                    .name(\"...my_name...\")\n                    .rejectionLevel(9.0)\n                    .build())\n                .contentSafetyKey(\"...my_content_safety_key...\")\n                .contentSafetyUrl(\"...my_content_safety_url...\")\n                .guardingMode(\"INPUT\")\n                .haltOnBlocklistHit(false)\n                .outputType(\"FourSeverityLevels\")\n                .responseBufferSize(7.56)\n                .revealFailureReason(false)\n                .sslVerify(false)\n                .stopOnError(false)\n                .textSource(\"concatenate_user_content\")\n                .build())\n            .controlPlaneId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .createdAt(10.0)\n            .enabled(true)\n            .gatewayPluginAiAzureContentSafetyId(\"...my_id...\")\n            .instanceName(\"...my_instance_name...\")\n            .ordering(GatewayPluginAiAzureContentSafetyOrderingArgs.builder()\n                .after(GatewayPluginAiAzureContentSafetyOrderingAfterArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .before(GatewayPluginAiAzureContentSafetyOrderingBeforeArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .build())\n            .partials(GatewayPluginAiAzureContentSafetyPartialArgs.builder()\n                .id(\"...my_id...\")\n                .name(\"...my_name...\")\n                .path(\"...my_path...\")\n                .build())\n            .protocols(\"https\")\n            .route(GatewayPluginAiAzureContentSafetyRouteArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .service(GatewayPluginAiAzureContentSafetyServiceArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .tags(\"...\")\n            .updatedAt(10.0)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myGatewaypluginaiazurecontentsafety:\n    type: konnect:GatewayPluginAiAzureContentSafety\n    name: my_gatewaypluginaiazurecontentsafety\n    properties:\n      config:\n        azureApiVersion: '...my_azure_api_version...'\n        azureClientId: '...my_azure_client_id...'\n        azureClientSecret: '...my_azure_client_secret...'\n        azureTenantId: '...my_azure_tenant_id...'\n        azureUseManagedIdentity: true\n        blocklistNames:\n          - '...'\n        categories:\n          - name: '...my_name...'\n            rejectionLevel: 9\n        contentSafetyKey: '...my_content_safety_key...'\n        contentSafetyUrl: '...my_content_safety_url...'\n        guardingMode: INPUT\n        haltOnBlocklistHit: false\n        outputType: FourSeverityLevels\n        responseBufferSize: 7.56\n        revealFailureReason: false\n        sslVerify: false\n        stopOnError: false\n        textSource: concatenate_user_content\n      controlPlaneId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      createdAt: 10\n      enabled: true\n      gatewayPluginAiAzureContentSafetyId: '...my_id...'\n      instanceName: '...my_instance_name...'\n      ordering:\n        after:\n          accesses:\n            - '...'\n        before:\n          accesses:\n            - '...'\n      partials:\n        - id: '...my_id...'\n          name: '...my_name...'\n          path: '...my_path...'\n      protocols:\n        - https\n      route:\n        id: '...my_id...'\n      service:\n        id: '...my_id...'\n      tags:\n        - '...'\n      updatedAt: 10\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_gateway_plugin_ai_azure_content_safety.my_konnect_gateway_plugin_ai_azure_content_safety\n\n  id = jsonencode({\n\n    control_plane_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/gatewayPluginAiAzureContentSafety:GatewayPluginAiAzureContentSafety my_konnect_gateway_plugin_ai_azure_content_safety '{\"control_plane_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"}'\n```\n\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginAiAzureContentSafetyConfig:GatewayPluginAiAzureContentSafetyConfig"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginAiAzureContentSafetyId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginAiAzureContentSafetyOrdering:GatewayPluginAiAzureContentSafetyOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginAiAzureContentSafetyPartial:GatewayPluginAiAzureContentSafetyPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginAiAzureContentSafetyRoute:GatewayPluginAiAzureContentSafetyRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginAiAzureContentSafetyService:GatewayPluginAiAzureContentSafetyService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object","required":["config","controlPlaneId","createdAt","enabled","gatewayPluginAiAzureContentSafetyId","ordering","protocols","route","service","updatedAt"],"inputProperties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginAiAzureContentSafetyConfig:GatewayPluginAiAzureContentSafetyConfig"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginAiAzureContentSafetyId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginAiAzureContentSafetyOrdering:GatewayPluginAiAzureContentSafetyOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginAiAzureContentSafetyPartial:GatewayPluginAiAzureContentSafetyPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginAiAzureContentSafetyRoute:GatewayPluginAiAzureContentSafetyRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginAiAzureContentSafetyService:GatewayPluginAiAzureContentSafetyService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"requiredInputs":["config","controlPlaneId"],"stateInputs":{"description":"Input properties used for looking up and filtering GatewayPluginAiAzureContentSafety resources.\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginAiAzureContentSafetyConfig:GatewayPluginAiAzureContentSafetyConfig"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginAiAzureContentSafetyId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginAiAzureContentSafetyOrdering:GatewayPluginAiAzureContentSafetyOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginAiAzureContentSafetyPartial:GatewayPluginAiAzureContentSafetyPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginAiAzureContentSafetyRoute:GatewayPluginAiAzureContentSafetyRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginAiAzureContentSafetyService:GatewayPluginAiAzureContentSafetyService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object"}},"konnect:index/gatewayPluginAiGcpModelArmor:GatewayPluginAiGcpModelArmor":{"description":"GatewayPluginAiGcpModelArmor Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myGatewaypluginaigcpmodelarmor = new konnect.GatewayPluginAiGcpModelArmor(\"my_gatewaypluginaigcpmodelarmor\", {\n    config: {\n        enableMultiLanguageDetection: true,\n        gcpServiceAccountJson: \"...my_gcp_service_account_json...\",\n        gcpUseServiceAccount: true,\n        guardingMode: \"INPUT\",\n        locationId: \"...my_location_id...\",\n        projectId: \"...my_project_id...\",\n        requestFailureMessage: \"...my_request_failure_message...\",\n        responseBufferSize: 8.82,\n        responseFailureMessage: \"...my_response_failure_message...\",\n        revealFailureCategories: false,\n        sourceLanguage: \"...my_source_language...\",\n        stopOnError: false,\n        templateId: \"...my_template_id...\",\n        textSource: \"concatenate_all_content\",\n        timeout: 7.5,\n    },\n    consumer: {\n        id: \"...my_id...\",\n    },\n    consumerGroup: {\n        id: \"...my_id...\",\n    },\n    controlPlaneId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    createdAt: 3,\n    enabled: false,\n    gatewayPluginAiGcpModelArmorId: \"...my_id...\",\n    instanceName: \"...my_instance_name...\",\n    ordering: {\n        after: {\n            accesses: [\"...\"],\n        },\n        before: {\n            accesses: [\"...\"],\n        },\n    },\n    partials: [{\n        id: \"...my_id...\",\n        name: \"...my_name...\",\n        path: \"...my_path...\",\n    }],\n    protocols: [\"grpcs\"],\n    route: {\n        id: \"...my_id...\",\n    },\n    service: {\n        id: \"...my_id...\",\n    },\n    tags: [\"...\"],\n    updatedAt: 4,\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_gatewaypluginaigcpmodelarmor = konnect.GatewayPluginAiGcpModelArmor(\"my_gatewaypluginaigcpmodelarmor\",\n    config={\n        \"enable_multi_language_detection\": True,\n        \"gcp_service_account_json\": \"...my_gcp_service_account_json...\",\n        \"gcp_use_service_account\": True,\n        \"guarding_mode\": \"INPUT\",\n        \"location_id\": \"...my_location_id...\",\n        \"project_id\": \"...my_project_id...\",\n        \"request_failure_message\": \"...my_request_failure_message...\",\n        \"response_buffer_size\": 8.82,\n        \"response_failure_message\": \"...my_response_failure_message...\",\n        \"reveal_failure_categories\": False,\n        \"source_language\": \"...my_source_language...\",\n        \"stop_on_error\": False,\n        \"template_id\": \"...my_template_id...\",\n        \"text_source\": \"concatenate_all_content\",\n        \"timeout\": 7.5,\n    },\n    consumer={\n        \"id\": \"...my_id...\",\n    },\n    consumer_group={\n        \"id\": \"...my_id...\",\n    },\n    control_plane_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    created_at=3,\n    enabled=False,\n    gateway_plugin_ai_gcp_model_armor_id=\"...my_id...\",\n    instance_name=\"...my_instance_name...\",\n    ordering={\n        \"after\": {\n            \"accesses\": [\"...\"],\n        },\n        \"before\": {\n            \"accesses\": [\"...\"],\n        },\n    },\n    partials=[{\n        \"id\": \"...my_id...\",\n        \"name\": \"...my_name...\",\n        \"path\": \"...my_path...\",\n    }],\n    protocols=[\"grpcs\"],\n    route={\n        \"id\": \"...my_id...\",\n    },\n    service={\n        \"id\": \"...my_id...\",\n    },\n    tags=[\"...\"],\n    updated_at=4)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myGatewaypluginaigcpmodelarmor = new Konnect.GatewayPluginAiGcpModelArmor(\"my_gatewaypluginaigcpmodelarmor\", new()\n    {\n        Config = new Konnect.Inputs.GatewayPluginAiGcpModelArmorConfigArgs\n        {\n            EnableMultiLanguageDetection = true,\n            GcpServiceAccountJson = \"...my_gcp_service_account_json...\",\n            GcpUseServiceAccount = true,\n            GuardingMode = \"INPUT\",\n            LocationId = \"...my_location_id...\",\n            ProjectId = \"...my_project_id...\",\n            RequestFailureMessage = \"...my_request_failure_message...\",\n            ResponseBufferSize = 8.82,\n            ResponseFailureMessage = \"...my_response_failure_message...\",\n            RevealFailureCategories = false,\n            SourceLanguage = \"...my_source_language...\",\n            StopOnError = false,\n            TemplateId = \"...my_template_id...\",\n            TextSource = \"concatenate_all_content\",\n            Timeout = 7.5,\n        },\n        Consumer = new Konnect.Inputs.GatewayPluginAiGcpModelArmorConsumerArgs\n        {\n            Id = \"...my_id...\",\n        },\n        ConsumerGroup = new Konnect.Inputs.GatewayPluginAiGcpModelArmorConsumerGroupArgs\n        {\n            Id = \"...my_id...\",\n        },\n        ControlPlaneId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        CreatedAt = 3,\n        Enabled = false,\n        GatewayPluginAiGcpModelArmorId = \"...my_id...\",\n        InstanceName = \"...my_instance_name...\",\n        Ordering = new Konnect.Inputs.GatewayPluginAiGcpModelArmorOrderingArgs\n        {\n            After = new Konnect.Inputs.GatewayPluginAiGcpModelArmorOrderingAfterArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n            Before = new Konnect.Inputs.GatewayPluginAiGcpModelArmorOrderingBeforeArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n        },\n        Partials = new[]\n        {\n            new Konnect.Inputs.GatewayPluginAiGcpModelArmorPartialArgs\n            {\n                Id = \"...my_id...\",\n                Name = \"...my_name...\",\n                Path = \"...my_path...\",\n            },\n        },\n        Protocols = new[]\n        {\n            \"grpcs\",\n        },\n        Route = new Konnect.Inputs.GatewayPluginAiGcpModelArmorRouteArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Service = new Konnect.Inputs.GatewayPluginAiGcpModelArmorServiceArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Tags = new[]\n        {\n            \"...\",\n        },\n        UpdatedAt = 4,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewGatewayPluginAiGcpModelArmor(ctx, \"my_gatewaypluginaigcpmodelarmor\", \u0026konnect.GatewayPluginAiGcpModelArmorArgs{\n\t\t\tConfig: \u0026konnect.GatewayPluginAiGcpModelArmorConfigArgs{\n\t\t\t\tEnableMultiLanguageDetection: pulumi.Bool(true),\n\t\t\t\tGcpServiceAccountJson:        pulumi.String(\"...my_gcp_service_account_json...\"),\n\t\t\t\tGcpUseServiceAccount:         pulumi.Bool(true),\n\t\t\t\tGuardingMode:                 pulumi.String(\"INPUT\"),\n\t\t\t\tLocationId:                   pulumi.String(\"...my_location_id...\"),\n\t\t\t\tProjectId:                    pulumi.String(\"...my_project_id...\"),\n\t\t\t\tRequestFailureMessage:        pulumi.String(\"...my_request_failure_message...\"),\n\t\t\t\tResponseBufferSize:           pulumi.Float64(8.82),\n\t\t\t\tResponseFailureMessage:       pulumi.String(\"...my_response_failure_message...\"),\n\t\t\t\tRevealFailureCategories:      pulumi.Bool(false),\n\t\t\t\tSourceLanguage:               pulumi.String(\"...my_source_language...\"),\n\t\t\t\tStopOnError:                  pulumi.Bool(false),\n\t\t\t\tTemplateId:                   pulumi.String(\"...my_template_id...\"),\n\t\t\t\tTextSource:                   pulumi.String(\"concatenate_all_content\"),\n\t\t\t\tTimeout:                      pulumi.Float64(7.5),\n\t\t\t},\n\t\t\tConsumer: \u0026konnect.GatewayPluginAiGcpModelArmorConsumerArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tConsumerGroup: \u0026konnect.GatewayPluginAiGcpModelArmorConsumerGroupArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tControlPlaneId:                 pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tCreatedAt:                      pulumi.Float64(3),\n\t\t\tEnabled:                        pulumi.Bool(false),\n\t\t\tGatewayPluginAiGcpModelArmorId: pulumi.String(\"...my_id...\"),\n\t\t\tInstanceName:                   pulumi.String(\"...my_instance_name...\"),\n\t\t\tOrdering: \u0026konnect.GatewayPluginAiGcpModelArmorOrderingArgs{\n\t\t\t\tAfter: \u0026konnect.GatewayPluginAiGcpModelArmorOrderingAfterArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tBefore: \u0026konnect.GatewayPluginAiGcpModelArmorOrderingBeforeArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tPartials: konnect.GatewayPluginAiGcpModelArmorPartialArray{\n\t\t\t\t\u0026konnect.GatewayPluginAiGcpModelArmorPartialArgs{\n\t\t\t\t\tId:   pulumi.String(\"...my_id...\"),\n\t\t\t\t\tName: pulumi.String(\"...my_name...\"),\n\t\t\t\t\tPath: pulumi.String(\"...my_path...\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tProtocols: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"grpcs\"),\n\t\t\t},\n\t\t\tRoute: \u0026konnect.GatewayPluginAiGcpModelArmorRouteArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tService: \u0026konnect.GatewayPluginAiGcpModelArmorServiceArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"...\"),\n\t\t\t},\n\t\t\tUpdatedAt: pulumi.Float64(4),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.GatewayPluginAiGcpModelArmor;\nimport com.pulumi.konnect.GatewayPluginAiGcpModelArmorArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiGcpModelArmorConfigArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiGcpModelArmorConsumerArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiGcpModelArmorConsumerGroupArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiGcpModelArmorOrderingArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiGcpModelArmorOrderingAfterArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiGcpModelArmorOrderingBeforeArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiGcpModelArmorPartialArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiGcpModelArmorRouteArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiGcpModelArmorServiceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myGatewaypluginaigcpmodelarmor = new GatewayPluginAiGcpModelArmor(\"myGatewaypluginaigcpmodelarmor\", GatewayPluginAiGcpModelArmorArgs.builder()\n            .config(GatewayPluginAiGcpModelArmorConfigArgs.builder()\n                .enableMultiLanguageDetection(true)\n                .gcpServiceAccountJson(\"...my_gcp_service_account_json...\")\n                .gcpUseServiceAccount(true)\n                .guardingMode(\"INPUT\")\n                .locationId(\"...my_location_id...\")\n                .projectId(\"...my_project_id...\")\n                .requestFailureMessage(\"...my_request_failure_message...\")\n                .responseBufferSize(8.82)\n                .responseFailureMessage(\"...my_response_failure_message...\")\n                .revealFailureCategories(false)\n                .sourceLanguage(\"...my_source_language...\")\n                .stopOnError(false)\n                .templateId(\"...my_template_id...\")\n                .textSource(\"concatenate_all_content\")\n                .timeout(7.5)\n                .build())\n            .consumer(GatewayPluginAiGcpModelArmorConsumerArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .consumerGroup(GatewayPluginAiGcpModelArmorConsumerGroupArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .controlPlaneId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .createdAt(3.0)\n            .enabled(false)\n            .gatewayPluginAiGcpModelArmorId(\"...my_id...\")\n            .instanceName(\"...my_instance_name...\")\n            .ordering(GatewayPluginAiGcpModelArmorOrderingArgs.builder()\n                .after(GatewayPluginAiGcpModelArmorOrderingAfterArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .before(GatewayPluginAiGcpModelArmorOrderingBeforeArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .build())\n            .partials(GatewayPluginAiGcpModelArmorPartialArgs.builder()\n                .id(\"...my_id...\")\n                .name(\"...my_name...\")\n                .path(\"...my_path...\")\n                .build())\n            .protocols(\"grpcs\")\n            .route(GatewayPluginAiGcpModelArmorRouteArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .service(GatewayPluginAiGcpModelArmorServiceArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .tags(\"...\")\n            .updatedAt(4.0)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myGatewaypluginaigcpmodelarmor:\n    type: konnect:GatewayPluginAiGcpModelArmor\n    name: my_gatewaypluginaigcpmodelarmor\n    properties:\n      config:\n        enableMultiLanguageDetection: true\n        gcpServiceAccountJson: '...my_gcp_service_account_json...'\n        gcpUseServiceAccount: true\n        guardingMode: INPUT\n        locationId: '...my_location_id...'\n        projectId: '...my_project_id...'\n        requestFailureMessage: '...my_request_failure_message...'\n        responseBufferSize: 8.82\n        responseFailureMessage: '...my_response_failure_message...'\n        revealFailureCategories: false\n        sourceLanguage: '...my_source_language...'\n        stopOnError: false\n        templateId: '...my_template_id...'\n        textSource: concatenate_all_content\n        timeout: 7.5\n      consumer:\n        id: '...my_id...'\n      consumerGroup:\n        id: '...my_id...'\n      controlPlaneId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      createdAt: 3\n      enabled: false\n      gatewayPluginAiGcpModelArmorId: '...my_id...'\n      instanceName: '...my_instance_name...'\n      ordering:\n        after:\n          accesses:\n            - '...'\n        before:\n          accesses:\n            - '...'\n      partials:\n        - id: '...my_id...'\n          name: '...my_name...'\n          path: '...my_path...'\n      protocols:\n        - grpcs\n      route:\n        id: '...my_id...'\n      service:\n        id: '...my_id...'\n      tags:\n        - '...'\n      updatedAt: 4\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_gateway_plugin_ai_gcp_model_armor.my_konnect_gateway_plugin_ai_gcp_model_armor\n\n  id = jsonencode({\n\n    control_plane_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/gatewayPluginAiGcpModelArmor:GatewayPluginAiGcpModelArmor my_konnect_gateway_plugin_ai_gcp_model_armor '{\"control_plane_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"}'\n```\n\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginAiGcpModelArmorConfig:GatewayPluginAiGcpModelArmorConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginAiGcpModelArmorConsumer:GatewayPluginAiGcpModelArmorConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"consumerGroup":{"$ref":"#/types/konnect:index%2FGatewayPluginAiGcpModelArmorConsumerGroup:GatewayPluginAiGcpModelArmorConsumerGroup","description":"If set, the plugin will activate only for requests where the specified consumer group has been authenticated. (Note that some plugins can not be restricted to consumers groups this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer Groups\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginAiGcpModelArmorId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginAiGcpModelArmorOrdering:GatewayPluginAiGcpModelArmorOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginAiGcpModelArmorPartial:GatewayPluginAiGcpModelArmorPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginAiGcpModelArmorRoute:GatewayPluginAiGcpModelArmorRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginAiGcpModelArmorService:GatewayPluginAiGcpModelArmorService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object","required":["config","consumer","consumerGroup","controlPlaneId","createdAt","enabled","gatewayPluginAiGcpModelArmorId","ordering","protocols","route","service","updatedAt"],"inputProperties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginAiGcpModelArmorConfig:GatewayPluginAiGcpModelArmorConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginAiGcpModelArmorConsumer:GatewayPluginAiGcpModelArmorConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"consumerGroup":{"$ref":"#/types/konnect:index%2FGatewayPluginAiGcpModelArmorConsumerGroup:GatewayPluginAiGcpModelArmorConsumerGroup","description":"If set, the plugin will activate only for requests where the specified consumer group has been authenticated. (Note that some plugins can not be restricted to consumers groups this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer Groups\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginAiGcpModelArmorId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginAiGcpModelArmorOrdering:GatewayPluginAiGcpModelArmorOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginAiGcpModelArmorPartial:GatewayPluginAiGcpModelArmorPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginAiGcpModelArmorRoute:GatewayPluginAiGcpModelArmorRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginAiGcpModelArmorService:GatewayPluginAiGcpModelArmorService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"requiredInputs":["config","controlPlaneId"],"stateInputs":{"description":"Input properties used for looking up and filtering GatewayPluginAiGcpModelArmor resources.\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginAiGcpModelArmorConfig:GatewayPluginAiGcpModelArmorConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginAiGcpModelArmorConsumer:GatewayPluginAiGcpModelArmorConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"consumerGroup":{"$ref":"#/types/konnect:index%2FGatewayPluginAiGcpModelArmorConsumerGroup:GatewayPluginAiGcpModelArmorConsumerGroup","description":"If set, the plugin will activate only for requests where the specified consumer group has been authenticated. (Note that some plugins can not be restricted to consumers groups this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer Groups\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginAiGcpModelArmorId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginAiGcpModelArmorOrdering:GatewayPluginAiGcpModelArmorOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginAiGcpModelArmorPartial:GatewayPluginAiGcpModelArmorPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginAiGcpModelArmorRoute:GatewayPluginAiGcpModelArmorRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginAiGcpModelArmorService:GatewayPluginAiGcpModelArmorService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object"}},"konnect:index/gatewayPluginAiLakeraGuard:GatewayPluginAiLakeraGuard":{"description":"GatewayPluginAiLakeraGuard Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myGatewaypluginailakeraguard = new konnect.GatewayPluginAiLakeraGuard(\"my_gatewaypluginailakeraguard\", {\n    config: {\n        apiKey: \"...my_api_key...\",\n        guardingMode: \"INPUT\",\n        lakeraServiceUrl: \"...my_lakera_service_url...\",\n        projectId: \"...my_project_id...\",\n        requestFailureMessage: \"...my_request_failure_message...\",\n        responseBufferSize: 9.27,\n        responseFailureMessage: \"...my_response_failure_message...\",\n        revealFailureCategories: true,\n        stopOnError: true,\n        textSource: \"last_message\",\n        timeout: 4.57,\n        verifySsl: false,\n    },\n    consumer: {\n        id: \"...my_id...\",\n    },\n    consumerGroup: {\n        id: \"...my_id...\",\n    },\n    controlPlaneId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    createdAt: 5,\n    enabled: false,\n    gatewayPluginAiLakeraGuardId: \"...my_id...\",\n    instanceName: \"...my_instance_name...\",\n    ordering: {\n        after: {\n            accesses: [\"...\"],\n        },\n        before: {\n            accesses: [\"...\"],\n        },\n    },\n    partials: [{\n        id: \"...my_id...\",\n        name: \"...my_name...\",\n        path: \"...my_path...\",\n    }],\n    protocols: [\"grpc\"],\n    route: {\n        id: \"...my_id...\",\n    },\n    service: {\n        id: \"...my_id...\",\n    },\n    tags: [\"...\"],\n    updatedAt: 6,\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_gatewaypluginailakeraguard = konnect.GatewayPluginAiLakeraGuard(\"my_gatewaypluginailakeraguard\",\n    config={\n        \"api_key\": \"...my_api_key...\",\n        \"guarding_mode\": \"INPUT\",\n        \"lakera_service_url\": \"...my_lakera_service_url...\",\n        \"project_id\": \"...my_project_id...\",\n        \"request_failure_message\": \"...my_request_failure_message...\",\n        \"response_buffer_size\": 9.27,\n        \"response_failure_message\": \"...my_response_failure_message...\",\n        \"reveal_failure_categories\": True,\n        \"stop_on_error\": True,\n        \"text_source\": \"last_message\",\n        \"timeout\": 4.57,\n        \"verify_ssl\": False,\n    },\n    consumer={\n        \"id\": \"...my_id...\",\n    },\n    consumer_group={\n        \"id\": \"...my_id...\",\n    },\n    control_plane_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    created_at=5,\n    enabled=False,\n    gateway_plugin_ai_lakera_guard_id=\"...my_id...\",\n    instance_name=\"...my_instance_name...\",\n    ordering={\n        \"after\": {\n            \"accesses\": [\"...\"],\n        },\n        \"before\": {\n            \"accesses\": [\"...\"],\n        },\n    },\n    partials=[{\n        \"id\": \"...my_id...\",\n        \"name\": \"...my_name...\",\n        \"path\": \"...my_path...\",\n    }],\n    protocols=[\"grpc\"],\n    route={\n        \"id\": \"...my_id...\",\n    },\n    service={\n        \"id\": \"...my_id...\",\n    },\n    tags=[\"...\"],\n    updated_at=6)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myGatewaypluginailakeraguard = new Konnect.GatewayPluginAiLakeraGuard(\"my_gatewaypluginailakeraguard\", new()\n    {\n        Config = new Konnect.Inputs.GatewayPluginAiLakeraGuardConfigArgs\n        {\n            ApiKey = \"...my_api_key...\",\n            GuardingMode = \"INPUT\",\n            LakeraServiceUrl = \"...my_lakera_service_url...\",\n            ProjectId = \"...my_project_id...\",\n            RequestFailureMessage = \"...my_request_failure_message...\",\n            ResponseBufferSize = 9.27,\n            ResponseFailureMessage = \"...my_response_failure_message...\",\n            RevealFailureCategories = true,\n            StopOnError = true,\n            TextSource = \"last_message\",\n            Timeout = 4.57,\n            VerifySsl = false,\n        },\n        Consumer = new Konnect.Inputs.GatewayPluginAiLakeraGuardConsumerArgs\n        {\n            Id = \"...my_id...\",\n        },\n        ConsumerGroup = new Konnect.Inputs.GatewayPluginAiLakeraGuardConsumerGroupArgs\n        {\n            Id = \"...my_id...\",\n        },\n        ControlPlaneId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        CreatedAt = 5,\n        Enabled = false,\n        GatewayPluginAiLakeraGuardId = \"...my_id...\",\n        InstanceName = \"...my_instance_name...\",\n        Ordering = new Konnect.Inputs.GatewayPluginAiLakeraGuardOrderingArgs\n        {\n            After = new Konnect.Inputs.GatewayPluginAiLakeraGuardOrderingAfterArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n            Before = new Konnect.Inputs.GatewayPluginAiLakeraGuardOrderingBeforeArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n        },\n        Partials = new[]\n        {\n            new Konnect.Inputs.GatewayPluginAiLakeraGuardPartialArgs\n            {\n                Id = \"...my_id...\",\n                Name = \"...my_name...\",\n                Path = \"...my_path...\",\n            },\n        },\n        Protocols = new[]\n        {\n            \"grpc\",\n        },\n        Route = new Konnect.Inputs.GatewayPluginAiLakeraGuardRouteArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Service = new Konnect.Inputs.GatewayPluginAiLakeraGuardServiceArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Tags = new[]\n        {\n            \"...\",\n        },\n        UpdatedAt = 6,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewGatewayPluginAiLakeraGuard(ctx, \"my_gatewaypluginailakeraguard\", \u0026konnect.GatewayPluginAiLakeraGuardArgs{\n\t\t\tConfig: \u0026konnect.GatewayPluginAiLakeraGuardConfigArgs{\n\t\t\t\tApiKey:                  pulumi.String(\"...my_api_key...\"),\n\t\t\t\tGuardingMode:            pulumi.String(\"INPUT\"),\n\t\t\t\tLakeraServiceUrl:        pulumi.String(\"...my_lakera_service_url...\"),\n\t\t\t\tProjectId:               pulumi.String(\"...my_project_id...\"),\n\t\t\t\tRequestFailureMessage:   pulumi.String(\"...my_request_failure_message...\"),\n\t\t\t\tResponseBufferSize:      pulumi.Float64(9.27),\n\t\t\t\tResponseFailureMessage:  pulumi.String(\"...my_response_failure_message...\"),\n\t\t\t\tRevealFailureCategories: pulumi.Bool(true),\n\t\t\t\tStopOnError:             pulumi.Bool(true),\n\t\t\t\tTextSource:              pulumi.String(\"last_message\"),\n\t\t\t\tTimeout:                 pulumi.Float64(4.57),\n\t\t\t\tVerifySsl:               pulumi.Bool(false),\n\t\t\t},\n\t\t\tConsumer: \u0026konnect.GatewayPluginAiLakeraGuardConsumerArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tConsumerGroup: \u0026konnect.GatewayPluginAiLakeraGuardConsumerGroupArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tControlPlaneId:               pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tCreatedAt:                    pulumi.Float64(5),\n\t\t\tEnabled:                      pulumi.Bool(false),\n\t\t\tGatewayPluginAiLakeraGuardId: pulumi.String(\"...my_id...\"),\n\t\t\tInstanceName:                 pulumi.String(\"...my_instance_name...\"),\n\t\t\tOrdering: \u0026konnect.GatewayPluginAiLakeraGuardOrderingArgs{\n\t\t\t\tAfter: \u0026konnect.GatewayPluginAiLakeraGuardOrderingAfterArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tBefore: \u0026konnect.GatewayPluginAiLakeraGuardOrderingBeforeArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tPartials: konnect.GatewayPluginAiLakeraGuardPartialArray{\n\t\t\t\t\u0026konnect.GatewayPluginAiLakeraGuardPartialArgs{\n\t\t\t\t\tId:   pulumi.String(\"...my_id...\"),\n\t\t\t\t\tName: pulumi.String(\"...my_name...\"),\n\t\t\t\t\tPath: pulumi.String(\"...my_path...\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tProtocols: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"grpc\"),\n\t\t\t},\n\t\t\tRoute: \u0026konnect.GatewayPluginAiLakeraGuardRouteArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tService: \u0026konnect.GatewayPluginAiLakeraGuardServiceArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"...\"),\n\t\t\t},\n\t\t\tUpdatedAt: pulumi.Float64(6),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.GatewayPluginAiLakeraGuard;\nimport com.pulumi.konnect.GatewayPluginAiLakeraGuardArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiLakeraGuardConfigArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiLakeraGuardConsumerArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiLakeraGuardConsumerGroupArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiLakeraGuardOrderingArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiLakeraGuardOrderingAfterArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiLakeraGuardOrderingBeforeArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiLakeraGuardPartialArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiLakeraGuardRouteArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiLakeraGuardServiceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myGatewaypluginailakeraguard = new GatewayPluginAiLakeraGuard(\"myGatewaypluginailakeraguard\", GatewayPluginAiLakeraGuardArgs.builder()\n            .config(GatewayPluginAiLakeraGuardConfigArgs.builder()\n                .apiKey(\"...my_api_key...\")\n                .guardingMode(\"INPUT\")\n                .lakeraServiceUrl(\"...my_lakera_service_url...\")\n                .projectId(\"...my_project_id...\")\n                .requestFailureMessage(\"...my_request_failure_message...\")\n                .responseBufferSize(9.27)\n                .responseFailureMessage(\"...my_response_failure_message...\")\n                .revealFailureCategories(true)\n                .stopOnError(true)\n                .textSource(\"last_message\")\n                .timeout(4.57)\n                .verifySsl(false)\n                .build())\n            .consumer(GatewayPluginAiLakeraGuardConsumerArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .consumerGroup(GatewayPluginAiLakeraGuardConsumerGroupArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .controlPlaneId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .createdAt(5.0)\n            .enabled(false)\n            .gatewayPluginAiLakeraGuardId(\"...my_id...\")\n            .instanceName(\"...my_instance_name...\")\n            .ordering(GatewayPluginAiLakeraGuardOrderingArgs.builder()\n                .after(GatewayPluginAiLakeraGuardOrderingAfterArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .before(GatewayPluginAiLakeraGuardOrderingBeforeArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .build())\n            .partials(GatewayPluginAiLakeraGuardPartialArgs.builder()\n                .id(\"...my_id...\")\n                .name(\"...my_name...\")\n                .path(\"...my_path...\")\n                .build())\n            .protocols(\"grpc\")\n            .route(GatewayPluginAiLakeraGuardRouteArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .service(GatewayPluginAiLakeraGuardServiceArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .tags(\"...\")\n            .updatedAt(6.0)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myGatewaypluginailakeraguard:\n    type: konnect:GatewayPluginAiLakeraGuard\n    name: my_gatewaypluginailakeraguard\n    properties:\n      config:\n        apiKey: '...my_api_key...'\n        guardingMode: INPUT\n        lakeraServiceUrl: '...my_lakera_service_url...'\n        projectId: '...my_project_id...'\n        requestFailureMessage: '...my_request_failure_message...'\n        responseBufferSize: 9.27\n        responseFailureMessage: '...my_response_failure_message...'\n        revealFailureCategories: true\n        stopOnError: true\n        textSource: last_message\n        timeout: 4.57\n        verifySsl: false\n      consumer:\n        id: '...my_id...'\n      consumerGroup:\n        id: '...my_id...'\n      controlPlaneId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      createdAt: 5\n      enabled: false\n      gatewayPluginAiLakeraGuardId: '...my_id...'\n      instanceName: '...my_instance_name...'\n      ordering:\n        after:\n          accesses:\n            - '...'\n        before:\n          accesses:\n            - '...'\n      partials:\n        - id: '...my_id...'\n          name: '...my_name...'\n          path: '...my_path...'\n      protocols:\n        - grpc\n      route:\n        id: '...my_id...'\n      service:\n        id: '...my_id...'\n      tags:\n        - '...'\n      updatedAt: 6\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_gateway_plugin_ai_lakera_guard.my_konnect_gateway_plugin_ai_lakera_guard\n\n  id = jsonencode({\n\n    control_plane_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/gatewayPluginAiLakeraGuard:GatewayPluginAiLakeraGuard my_konnect_gateway_plugin_ai_lakera_guard '{\"control_plane_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"}'\n```\n\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginAiLakeraGuardConfig:GatewayPluginAiLakeraGuardConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginAiLakeraGuardConsumer:GatewayPluginAiLakeraGuardConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"consumerGroup":{"$ref":"#/types/konnect:index%2FGatewayPluginAiLakeraGuardConsumerGroup:GatewayPluginAiLakeraGuardConsumerGroup","description":"If set, the plugin will activate only for requests where the specified consumer group has been authenticated. (Note that some plugins can not be restricted to consumers groups this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer Groups\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginAiLakeraGuardId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginAiLakeraGuardOrdering:GatewayPluginAiLakeraGuardOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginAiLakeraGuardPartial:GatewayPluginAiLakeraGuardPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginAiLakeraGuardRoute:GatewayPluginAiLakeraGuardRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginAiLakeraGuardService:GatewayPluginAiLakeraGuardService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object","required":["config","consumer","consumerGroup","controlPlaneId","createdAt","enabled","gatewayPluginAiLakeraGuardId","ordering","protocols","route","service","updatedAt"],"inputProperties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginAiLakeraGuardConfig:GatewayPluginAiLakeraGuardConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginAiLakeraGuardConsumer:GatewayPluginAiLakeraGuardConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"consumerGroup":{"$ref":"#/types/konnect:index%2FGatewayPluginAiLakeraGuardConsumerGroup:GatewayPluginAiLakeraGuardConsumerGroup","description":"If set, the plugin will activate only for requests where the specified consumer group has been authenticated. (Note that some plugins can not be restricted to consumers groups this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer Groups\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginAiLakeraGuardId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginAiLakeraGuardOrdering:GatewayPluginAiLakeraGuardOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginAiLakeraGuardPartial:GatewayPluginAiLakeraGuardPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginAiLakeraGuardRoute:GatewayPluginAiLakeraGuardRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginAiLakeraGuardService:GatewayPluginAiLakeraGuardService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"requiredInputs":["controlPlaneId"],"stateInputs":{"description":"Input properties used for looking up and filtering GatewayPluginAiLakeraGuard resources.\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginAiLakeraGuardConfig:GatewayPluginAiLakeraGuardConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginAiLakeraGuardConsumer:GatewayPluginAiLakeraGuardConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"consumerGroup":{"$ref":"#/types/konnect:index%2FGatewayPluginAiLakeraGuardConsumerGroup:GatewayPluginAiLakeraGuardConsumerGroup","description":"If set, the plugin will activate only for requests where the specified consumer group has been authenticated. (Note that some plugins can not be restricted to consumers groups this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer Groups\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginAiLakeraGuardId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginAiLakeraGuardOrdering:GatewayPluginAiLakeraGuardOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginAiLakeraGuardPartial:GatewayPluginAiLakeraGuardPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginAiLakeraGuardRoute:GatewayPluginAiLakeraGuardRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginAiLakeraGuardService:GatewayPluginAiLakeraGuardService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object"}},"konnect:index/gatewayPluginAiLlmAsJudge:GatewayPluginAiLlmAsJudge":{"description":"GatewayPluginAiLlmAsJudge Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myGatewaypluginaillmasjudge = new konnect.GatewayPluginAiLlmAsJudge(\"my_gatewaypluginaillmasjudge\", {\n    config: {\n        httpProxyHost: \"...my_http_proxy_host...\",\n        httpProxyPort: 8774,\n        httpTimeout: 0,\n        httpsProxyHost: \"...my_https_proxy_host...\",\n        httpsProxyPort: 29092,\n        httpsVerify: false,\n        ignoreAssistantPrompts: true,\n        ignoreSystemPrompts: true,\n        ignoreToolPrompts: true,\n        llm: {\n            auth: {\n                allowOverride: false,\n                awsAccessKeyId: \"...my_aws_access_key_id...\",\n                awsSecretAccessKey: \"...my_aws_secret_access_key...\",\n                azureClientId: \"...my_azure_client_id...\",\n                azureClientSecret: \"...my_azure_client_secret...\",\n                azureTenantId: \"...my_azure_tenant_id...\",\n                azureUseManagedIdentity: true,\n                gcpServiceAccountJson: \"...my_gcp_service_account_json...\",\n                gcpUseServiceAccount: false,\n                headerName: \"...my_header_name...\",\n                headerValue: \"...my_header_value...\",\n                paramLocation: \"query\",\n                paramName: \"...my_param_name...\",\n                paramValue: \"...my_param_value...\",\n            },\n            description: \"...my_description...\",\n            logging: {\n                logPayloads: false,\n                logStatistics: false,\n            },\n            metadata: {\n                key: JSON.stringify(\"value\"),\n            },\n            model: {\n                name: \"...my_name...\",\n                options: {\n                    anthropicVersion: \"...my_anthropic_version...\",\n                    azureApiVersion: \"...my_azure_api_version...\",\n                    azureDeploymentId: \"...my_azure_deployment_id...\",\n                    azureInstance: \"...my_azure_instance...\",\n                    bedrock: {\n                        awsAssumeRoleArn: \"...my_aws_assume_role_arn...\",\n                        awsRegion: \"...my_aws_region...\",\n                        awsRoleSessionName: \"...my_aws_role_session_name...\",\n                        awsStsEndpointUrl: \"...my_aws_sts_endpoint_url...\",\n                        embeddingsNormalize: false,\n                        performanceConfigLatency: \"...my_performance_config_latency...\",\n                        videoOutputS3Uri: \"...my_video_output_s3_uri...\",\n                    },\n                    cohere: {\n                        embeddingInputType: \"search_document\",\n                        waitForModel: false,\n                    },\n                    dashscope: {\n                        international: true,\n                    },\n                    embeddingsDimensions: 3,\n                    gemini: {\n                        apiEndpoint: \"...my_api_endpoint...\",\n                        endpointId: \"...my_endpoint_id...\",\n                        locationId: \"...my_location_id...\",\n                        projectId: \"...my_project_id...\",\n                    },\n                    huggingface: {\n                        useCache: false,\n                        waitForModel: false,\n                    },\n                    inputCost: 3.16,\n                    llama2Format: \"ollama\",\n                    maxTokens: 0,\n                    mistralFormat: \"openai\",\n                    outputCost: 2.67,\n                    temperature: 4.9,\n                    topK: 155,\n                    topP: 0.54,\n                    upstreamPath: \"...my_upstream_path...\",\n                    upstreamUrl: \"...my_upstream_url...\",\n                },\n                provider: \"dashscope\",\n            },\n            routeType: \"llm/v1/embeddings\",\n            weight: 28655,\n        },\n        messageCountback: 928.19,\n        prompt: \"...my_prompt...\",\n        samplingRate: 0.51,\n    },\n    consumer: {\n        id: \"...my_id...\",\n    },\n    consumerGroup: {\n        id: \"...my_id...\",\n    },\n    controlPlaneId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    createdAt: 10,\n    enabled: true,\n    gatewayPluginAiLlmAsJudgeId: \"...my_id...\",\n    instanceName: \"...my_instance_name...\",\n    ordering: {\n        after: {\n            accesses: [\"...\"],\n        },\n        before: {\n            accesses: [\"...\"],\n        },\n    },\n    partials: [{\n        id: \"...my_id...\",\n        name: \"...my_name...\",\n        path: \"...my_path...\",\n    }],\n    protocols: [\"grpcs\"],\n    route: {\n        id: \"...my_id...\",\n    },\n    service: {\n        id: \"...my_id...\",\n    },\n    tags: [\"...\"],\n    updatedAt: 0,\n});\n```\n```python\nimport pulumi\nimport json\nimport pulumi_konnect as konnect\n\nmy_gatewaypluginaillmasjudge = konnect.GatewayPluginAiLlmAsJudge(\"my_gatewaypluginaillmasjudge\",\n    config={\n        \"http_proxy_host\": \"...my_http_proxy_host...\",\n        \"http_proxy_port\": 8774,\n        \"http_timeout\": 0,\n        \"https_proxy_host\": \"...my_https_proxy_host...\",\n        \"https_proxy_port\": 29092,\n        \"https_verify\": False,\n        \"ignore_assistant_prompts\": True,\n        \"ignore_system_prompts\": True,\n        \"ignore_tool_prompts\": True,\n        \"llm\": {\n            \"auth\": {\n                \"allow_override\": False,\n                \"aws_access_key_id\": \"...my_aws_access_key_id...\",\n                \"aws_secret_access_key\": \"...my_aws_secret_access_key...\",\n                \"azure_client_id\": \"...my_azure_client_id...\",\n                \"azure_client_secret\": \"...my_azure_client_secret...\",\n                \"azure_tenant_id\": \"...my_azure_tenant_id...\",\n                \"azure_use_managed_identity\": True,\n                \"gcp_service_account_json\": \"...my_gcp_service_account_json...\",\n                \"gcp_use_service_account\": False,\n                \"header_name\": \"...my_header_name...\",\n                \"header_value\": \"...my_header_value...\",\n                \"param_location\": \"query\",\n                \"param_name\": \"...my_param_name...\",\n                \"param_value\": \"...my_param_value...\",\n            },\n            \"description\": \"...my_description...\",\n            \"logging\": {\n                \"log_payloads\": False,\n                \"log_statistics\": False,\n            },\n            \"metadata\": {\n                \"key\": json.dumps(\"value\"),\n            },\n            \"model\": {\n                \"name\": \"...my_name...\",\n                \"options\": {\n                    \"anthropic_version\": \"...my_anthropic_version...\",\n                    \"azure_api_version\": \"...my_azure_api_version...\",\n                    \"azure_deployment_id\": \"...my_azure_deployment_id...\",\n                    \"azure_instance\": \"...my_azure_instance...\",\n                    \"bedrock\": {\n                        \"aws_assume_role_arn\": \"...my_aws_assume_role_arn...\",\n                        \"aws_region\": \"...my_aws_region...\",\n                        \"aws_role_session_name\": \"...my_aws_role_session_name...\",\n                        \"aws_sts_endpoint_url\": \"...my_aws_sts_endpoint_url...\",\n                        \"embeddings_normalize\": False,\n                        \"performance_config_latency\": \"...my_performance_config_latency...\",\n                        \"video_output_s3_uri\": \"...my_video_output_s3_uri...\",\n                    },\n                    \"cohere\": {\n                        \"embedding_input_type\": \"search_document\",\n                        \"wait_for_model\": False,\n                    },\n                    \"dashscope\": {\n                        \"international\": True,\n                    },\n                    \"embeddings_dimensions\": 3,\n                    \"gemini\": {\n                        \"api_endpoint\": \"...my_api_endpoint...\",\n                        \"endpoint_id\": \"...my_endpoint_id...\",\n                        \"location_id\": \"...my_location_id...\",\n                        \"project_id\": \"...my_project_id...\",\n                    },\n                    \"huggingface\": {\n                        \"use_cache\": False,\n                        \"wait_for_model\": False,\n                    },\n                    \"input_cost\": 3.16,\n                    \"llama2_format\": \"ollama\",\n                    \"max_tokens\": 0,\n                    \"mistral_format\": \"openai\",\n                    \"output_cost\": 2.67,\n                    \"temperature\": 4.9,\n                    \"top_k\": 155,\n                    \"top_p\": 0.54,\n                    \"upstream_path\": \"...my_upstream_path...\",\n                    \"upstream_url\": \"...my_upstream_url...\",\n                },\n                \"provider\": \"dashscope\",\n            },\n            \"route_type\": \"llm/v1/embeddings\",\n            \"weight\": 28655,\n        },\n        \"message_countback\": 928.19,\n        \"prompt\": \"...my_prompt...\",\n        \"sampling_rate\": 0.51,\n    },\n    consumer={\n        \"id\": \"...my_id...\",\n    },\n    consumer_group={\n        \"id\": \"...my_id...\",\n    },\n    control_plane_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    created_at=10,\n    enabled=True,\n    gateway_plugin_ai_llm_as_judge_id=\"...my_id...\",\n    instance_name=\"...my_instance_name...\",\n    ordering={\n        \"after\": {\n            \"accesses\": [\"...\"],\n        },\n        \"before\": {\n            \"accesses\": [\"...\"],\n        },\n    },\n    partials=[{\n        \"id\": \"...my_id...\",\n        \"name\": \"...my_name...\",\n        \"path\": \"...my_path...\",\n    }],\n    protocols=[\"grpcs\"],\n    route={\n        \"id\": \"...my_id...\",\n    },\n    service={\n        \"id\": \"...my_id...\",\n    },\n    tags=[\"...\"],\n    updated_at=0)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text.Json;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myGatewaypluginaillmasjudge = new Konnect.GatewayPluginAiLlmAsJudge(\"my_gatewaypluginaillmasjudge\", new()\n    {\n        Config = new Konnect.Inputs.GatewayPluginAiLlmAsJudgeConfigArgs\n        {\n            HttpProxyHost = \"...my_http_proxy_host...\",\n            HttpProxyPort = 8774,\n            HttpTimeout = 0,\n            HttpsProxyHost = \"...my_https_proxy_host...\",\n            HttpsProxyPort = 29092,\n            HttpsVerify = false,\n            IgnoreAssistantPrompts = true,\n            IgnoreSystemPrompts = true,\n            IgnoreToolPrompts = true,\n            Llm = new Konnect.Inputs.GatewayPluginAiLlmAsJudgeConfigLlmArgs\n            {\n                Auth = new Konnect.Inputs.GatewayPluginAiLlmAsJudgeConfigLlmAuthArgs\n                {\n                    AllowOverride = false,\n                    AwsAccessKeyId = \"...my_aws_access_key_id...\",\n                    AwsSecretAccessKey = \"...my_aws_secret_access_key...\",\n                    AzureClientId = \"...my_azure_client_id...\",\n                    AzureClientSecret = \"...my_azure_client_secret...\",\n                    AzureTenantId = \"...my_azure_tenant_id...\",\n                    AzureUseManagedIdentity = true,\n                    GcpServiceAccountJson = \"...my_gcp_service_account_json...\",\n                    GcpUseServiceAccount = false,\n                    HeaderName = \"...my_header_name...\",\n                    HeaderValue = \"...my_header_value...\",\n                    ParamLocation = \"query\",\n                    ParamName = \"...my_param_name...\",\n                    ParamValue = \"...my_param_value...\",\n                },\n                Description = \"...my_description...\",\n                Logging = new Konnect.Inputs.GatewayPluginAiLlmAsJudgeConfigLlmLoggingArgs\n                {\n                    LogPayloads = false,\n                    LogStatistics = false,\n                },\n                Metadata = \n                {\n                    { \"key\", JsonSerializer.Serialize(\"value\") },\n                },\n                Model = new Konnect.Inputs.GatewayPluginAiLlmAsJudgeConfigLlmModelArgs\n                {\n                    Name = \"...my_name...\",\n                    Options = new Konnect.Inputs.GatewayPluginAiLlmAsJudgeConfigLlmModelOptionsArgs\n                    {\n                        AnthropicVersion = \"...my_anthropic_version...\",\n                        AzureApiVersion = \"...my_azure_api_version...\",\n                        AzureDeploymentId = \"...my_azure_deployment_id...\",\n                        AzureInstance = \"...my_azure_instance...\",\n                        Bedrock = new Konnect.Inputs.GatewayPluginAiLlmAsJudgeConfigLlmModelOptionsBedrockArgs\n                        {\n                            AwsAssumeRoleArn = \"...my_aws_assume_role_arn...\",\n                            AwsRegion = \"...my_aws_region...\",\n                            AwsRoleSessionName = \"...my_aws_role_session_name...\",\n                            AwsStsEndpointUrl = \"...my_aws_sts_endpoint_url...\",\n                            EmbeddingsNormalize = false,\n                            PerformanceConfigLatency = \"...my_performance_config_latency...\",\n                            VideoOutputS3Uri = \"...my_video_output_s3_uri...\",\n                        },\n                        Cohere = new Konnect.Inputs.GatewayPluginAiLlmAsJudgeConfigLlmModelOptionsCohereArgs\n                        {\n                            EmbeddingInputType = \"search_document\",\n                            WaitForModel = false,\n                        },\n                        Dashscope = new Konnect.Inputs.GatewayPluginAiLlmAsJudgeConfigLlmModelOptionsDashscopeArgs\n                        {\n                            International = true,\n                        },\n                        EmbeddingsDimensions = 3,\n                        Gemini = new Konnect.Inputs.GatewayPluginAiLlmAsJudgeConfigLlmModelOptionsGeminiArgs\n                        {\n                            ApiEndpoint = \"...my_api_endpoint...\",\n                            EndpointId = \"...my_endpoint_id...\",\n                            LocationId = \"...my_location_id...\",\n                            ProjectId = \"...my_project_id...\",\n                        },\n                        Huggingface = new Konnect.Inputs.GatewayPluginAiLlmAsJudgeConfigLlmModelOptionsHuggingfaceArgs\n                        {\n                            UseCache = false,\n                            WaitForModel = false,\n                        },\n                        InputCost = 3.16,\n                        Llama2Format = \"ollama\",\n                        MaxTokens = 0,\n                        MistralFormat = \"openai\",\n                        OutputCost = 2.67,\n                        Temperature = 4.9,\n                        TopK = 155,\n                        TopP = 0.54,\n                        UpstreamPath = \"...my_upstream_path...\",\n                        UpstreamUrl = \"...my_upstream_url...\",\n                    },\n                    Provider = \"dashscope\",\n                },\n                RouteType = \"llm/v1/embeddings\",\n                Weight = 28655,\n            },\n            MessageCountback = 928.19,\n            Prompt = \"...my_prompt...\",\n            SamplingRate = 0.51,\n        },\n        Consumer = new Konnect.Inputs.GatewayPluginAiLlmAsJudgeConsumerArgs\n        {\n            Id = \"...my_id...\",\n        },\n        ConsumerGroup = new Konnect.Inputs.GatewayPluginAiLlmAsJudgeConsumerGroupArgs\n        {\n            Id = \"...my_id...\",\n        },\n        ControlPlaneId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        CreatedAt = 10,\n        Enabled = true,\n        GatewayPluginAiLlmAsJudgeId = \"...my_id...\",\n        InstanceName = \"...my_instance_name...\",\n        Ordering = new Konnect.Inputs.GatewayPluginAiLlmAsJudgeOrderingArgs\n        {\n            After = new Konnect.Inputs.GatewayPluginAiLlmAsJudgeOrderingAfterArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n            Before = new Konnect.Inputs.GatewayPluginAiLlmAsJudgeOrderingBeforeArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n        },\n        Partials = new[]\n        {\n            new Konnect.Inputs.GatewayPluginAiLlmAsJudgePartialArgs\n            {\n                Id = \"...my_id...\",\n                Name = \"...my_name...\",\n                Path = \"...my_path...\",\n            },\n        },\n        Protocols = new[]\n        {\n            \"grpcs\",\n        },\n        Route = new Konnect.Inputs.GatewayPluginAiLlmAsJudgeRouteArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Service = new Konnect.Inputs.GatewayPluginAiLlmAsJudgeServiceArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Tags = new[]\n        {\n            \"...\",\n        },\n        UpdatedAt = 0,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"encoding/json\"\n\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\ttmpJSON0, err := json.Marshal(\"value\")\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tjson0 := string(tmpJSON0)\n\t\t_, err = konnect.NewGatewayPluginAiLlmAsJudge(ctx, \"my_gatewaypluginaillmasjudge\", \u0026konnect.GatewayPluginAiLlmAsJudgeArgs{\n\t\t\tConfig: \u0026konnect.GatewayPluginAiLlmAsJudgeConfigArgs{\n\t\t\t\tHttpProxyHost:          pulumi.String(\"...my_http_proxy_host...\"),\n\t\t\t\tHttpProxyPort:          pulumi.Float64(8774),\n\t\t\t\tHttpTimeout:            pulumi.Float64(0),\n\t\t\t\tHttpsProxyHost:         pulumi.String(\"...my_https_proxy_host...\"),\n\t\t\t\tHttpsProxyPort:         pulumi.Float64(29092),\n\t\t\t\tHttpsVerify:            pulumi.Bool(false),\n\t\t\t\tIgnoreAssistantPrompts: pulumi.Bool(true),\n\t\t\t\tIgnoreSystemPrompts:    pulumi.Bool(true),\n\t\t\t\tIgnoreToolPrompts:      pulumi.Bool(true),\n\t\t\t\tLlm: \u0026konnect.GatewayPluginAiLlmAsJudgeConfigLlmArgs{\n\t\t\t\t\tAuth: \u0026konnect.GatewayPluginAiLlmAsJudgeConfigLlmAuthArgs{\n\t\t\t\t\t\tAllowOverride:           pulumi.Bool(false),\n\t\t\t\t\t\tAwsAccessKeyId:          pulumi.String(\"...my_aws_access_key_id...\"),\n\t\t\t\t\t\tAwsSecretAccessKey:      pulumi.String(\"...my_aws_secret_access_key...\"),\n\t\t\t\t\t\tAzureClientId:           pulumi.String(\"...my_azure_client_id...\"),\n\t\t\t\t\t\tAzureClientSecret:       pulumi.String(\"...my_azure_client_secret...\"),\n\t\t\t\t\t\tAzureTenantId:           pulumi.String(\"...my_azure_tenant_id...\"),\n\t\t\t\t\t\tAzureUseManagedIdentity: pulumi.Bool(true),\n\t\t\t\t\t\tGcpServiceAccountJson:   pulumi.String(\"...my_gcp_service_account_json...\"),\n\t\t\t\t\t\tGcpUseServiceAccount:    pulumi.Bool(false),\n\t\t\t\t\t\tHeaderName:              pulumi.String(\"...my_header_name...\"),\n\t\t\t\t\t\tHeaderValue:             pulumi.String(\"...my_header_value...\"),\n\t\t\t\t\t\tParamLocation:           pulumi.String(\"query\"),\n\t\t\t\t\t\tParamName:               pulumi.String(\"...my_param_name...\"),\n\t\t\t\t\t\tParamValue:              pulumi.String(\"...my_param_value...\"),\n\t\t\t\t\t},\n\t\t\t\t\tDescription: pulumi.String(\"...my_description...\"),\n\t\t\t\t\tLogging: \u0026konnect.GatewayPluginAiLlmAsJudgeConfigLlmLoggingArgs{\n\t\t\t\t\t\tLogPayloads:   pulumi.Bool(false),\n\t\t\t\t\t\tLogStatistics: pulumi.Bool(false),\n\t\t\t\t\t},\n\t\t\t\t\tMetadata: pulumi.StringMap{\n\t\t\t\t\t\t\"key\": pulumi.String(json0),\n\t\t\t\t\t},\n\t\t\t\t\tModel: \u0026konnect.GatewayPluginAiLlmAsJudgeConfigLlmModelArgs{\n\t\t\t\t\t\tName: pulumi.String(\"...my_name...\"),\n\t\t\t\t\t\tOptions: \u0026konnect.GatewayPluginAiLlmAsJudgeConfigLlmModelOptionsArgs{\n\t\t\t\t\t\t\tAnthropicVersion:  pulumi.String(\"...my_anthropic_version...\"),\n\t\t\t\t\t\t\tAzureApiVersion:   pulumi.String(\"...my_azure_api_version...\"),\n\t\t\t\t\t\t\tAzureDeploymentId: pulumi.String(\"...my_azure_deployment_id...\"),\n\t\t\t\t\t\t\tAzureInstance:     pulumi.String(\"...my_azure_instance...\"),\n\t\t\t\t\t\t\tBedrock: \u0026konnect.GatewayPluginAiLlmAsJudgeConfigLlmModelOptionsBedrockArgs{\n\t\t\t\t\t\t\t\tAwsAssumeRoleArn:         pulumi.String(\"...my_aws_assume_role_arn...\"),\n\t\t\t\t\t\t\t\tAwsRegion:                pulumi.String(\"...my_aws_region...\"),\n\t\t\t\t\t\t\t\tAwsRoleSessionName:       pulumi.String(\"...my_aws_role_session_name...\"),\n\t\t\t\t\t\t\t\tAwsStsEndpointUrl:        pulumi.String(\"...my_aws_sts_endpoint_url...\"),\n\t\t\t\t\t\t\t\tEmbeddingsNormalize:      pulumi.Bool(false),\n\t\t\t\t\t\t\t\tPerformanceConfigLatency: pulumi.String(\"...my_performance_config_latency...\"),\n\t\t\t\t\t\t\t\tVideoOutputS3Uri:         pulumi.String(\"...my_video_output_s3_uri...\"),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tCohere: \u0026konnect.GatewayPluginAiLlmAsJudgeConfigLlmModelOptionsCohereArgs{\n\t\t\t\t\t\t\t\tEmbeddingInputType: pulumi.String(\"search_document\"),\n\t\t\t\t\t\t\t\tWaitForModel:       pulumi.Bool(false),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tDashscope: \u0026konnect.GatewayPluginAiLlmAsJudgeConfigLlmModelOptionsDashscopeArgs{\n\t\t\t\t\t\t\t\tInternational: pulumi.Bool(true),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tEmbeddingsDimensions: pulumi.Float64(3),\n\t\t\t\t\t\t\tGemini: \u0026konnect.GatewayPluginAiLlmAsJudgeConfigLlmModelOptionsGeminiArgs{\n\t\t\t\t\t\t\t\tApiEndpoint: pulumi.String(\"...my_api_endpoint...\"),\n\t\t\t\t\t\t\t\tEndpointId:  pulumi.String(\"...my_endpoint_id...\"),\n\t\t\t\t\t\t\t\tLocationId:  pulumi.String(\"...my_location_id...\"),\n\t\t\t\t\t\t\t\tProjectId:   pulumi.String(\"...my_project_id...\"),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tHuggingface: \u0026konnect.GatewayPluginAiLlmAsJudgeConfigLlmModelOptionsHuggingfaceArgs{\n\t\t\t\t\t\t\t\tUseCache:     pulumi.Bool(false),\n\t\t\t\t\t\t\t\tWaitForModel: pulumi.Bool(false),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tInputCost:     pulumi.Float64(3.16),\n\t\t\t\t\t\t\tLlama2Format:  pulumi.String(\"ollama\"),\n\t\t\t\t\t\t\tMaxTokens:     pulumi.Float64(0),\n\t\t\t\t\t\t\tMistralFormat: pulumi.String(\"openai\"),\n\t\t\t\t\t\t\tOutputCost:    pulumi.Float64(2.67),\n\t\t\t\t\t\t\tTemperature:   pulumi.Float64(4.9),\n\t\t\t\t\t\t\tTopK:          pulumi.Float64(155),\n\t\t\t\t\t\t\tTopP:          pulumi.Float64(0.54),\n\t\t\t\t\t\t\tUpstreamPath:  pulumi.String(\"...my_upstream_path...\"),\n\t\t\t\t\t\t\tUpstreamUrl:   pulumi.String(\"...my_upstream_url...\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\tProvider: pulumi.String(\"dashscope\"),\n\t\t\t\t\t},\n\t\t\t\t\tRouteType: pulumi.String(\"llm/v1/embeddings\"),\n\t\t\t\t\tWeight:    pulumi.Float64(28655),\n\t\t\t\t},\n\t\t\t\tMessageCountback: pulumi.Float64(928.19),\n\t\t\t\tPrompt:           pulumi.String(\"...my_prompt...\"),\n\t\t\t\tSamplingRate:     pulumi.Float64(0.51),\n\t\t\t},\n\t\t\tConsumer: \u0026konnect.GatewayPluginAiLlmAsJudgeConsumerArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tConsumerGroup: \u0026konnect.GatewayPluginAiLlmAsJudgeConsumerGroupArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tControlPlaneId:              pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tCreatedAt:                   pulumi.Float64(10),\n\t\t\tEnabled:                     pulumi.Bool(true),\n\t\t\tGatewayPluginAiLlmAsJudgeId: pulumi.String(\"...my_id...\"),\n\t\t\tInstanceName:                pulumi.String(\"...my_instance_name...\"),\n\t\t\tOrdering: \u0026konnect.GatewayPluginAiLlmAsJudgeOrderingArgs{\n\t\t\t\tAfter: \u0026konnect.GatewayPluginAiLlmAsJudgeOrderingAfterArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tBefore: \u0026konnect.GatewayPluginAiLlmAsJudgeOrderingBeforeArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tPartials: konnect.GatewayPluginAiLlmAsJudgePartialArray{\n\t\t\t\t\u0026konnect.GatewayPluginAiLlmAsJudgePartialArgs{\n\t\t\t\t\tId:   pulumi.String(\"...my_id...\"),\n\t\t\t\t\tName: pulumi.String(\"...my_name...\"),\n\t\t\t\t\tPath: pulumi.String(\"...my_path...\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tProtocols: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"grpcs\"),\n\t\t\t},\n\t\t\tRoute: \u0026konnect.GatewayPluginAiLlmAsJudgeRouteArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tService: \u0026konnect.GatewayPluginAiLlmAsJudgeServiceArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"...\"),\n\t\t\t},\n\t\t\tUpdatedAt: pulumi.Float64(0),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.GatewayPluginAiLlmAsJudge;\nimport com.pulumi.konnect.GatewayPluginAiLlmAsJudgeArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiLlmAsJudgeConfigArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiLlmAsJudgeConfigLlmArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiLlmAsJudgeConfigLlmAuthArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiLlmAsJudgeConfigLlmLoggingArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiLlmAsJudgeConfigLlmModelArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiLlmAsJudgeConfigLlmModelOptionsArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiLlmAsJudgeConfigLlmModelOptionsBedrockArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiLlmAsJudgeConfigLlmModelOptionsCohereArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiLlmAsJudgeConfigLlmModelOptionsDashscopeArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiLlmAsJudgeConfigLlmModelOptionsGeminiArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiLlmAsJudgeConfigLlmModelOptionsHuggingfaceArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiLlmAsJudgeConsumerArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiLlmAsJudgeConsumerGroupArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiLlmAsJudgeOrderingArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiLlmAsJudgeOrderingAfterArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiLlmAsJudgeOrderingBeforeArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiLlmAsJudgePartialArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiLlmAsJudgeRouteArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiLlmAsJudgeServiceArgs;\nimport static com.pulumi.codegen.internal.Serialization.*;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myGatewaypluginaillmasjudge = new GatewayPluginAiLlmAsJudge(\"myGatewaypluginaillmasjudge\", GatewayPluginAiLlmAsJudgeArgs.builder()\n            .config(GatewayPluginAiLlmAsJudgeConfigArgs.builder()\n                .httpProxyHost(\"...my_http_proxy_host...\")\n                .httpProxyPort(8774.0)\n                .httpTimeout(0.0)\n                .httpsProxyHost(\"...my_https_proxy_host...\")\n                .httpsProxyPort(29092.0)\n                .httpsVerify(false)\n                .ignoreAssistantPrompts(true)\n                .ignoreSystemPrompts(true)\n                .ignoreToolPrompts(true)\n                .llm(GatewayPluginAiLlmAsJudgeConfigLlmArgs.builder()\n                    .auth(GatewayPluginAiLlmAsJudgeConfigLlmAuthArgs.builder()\n                        .allowOverride(false)\n                        .awsAccessKeyId(\"...my_aws_access_key_id...\")\n                        .awsSecretAccessKey(\"...my_aws_secret_access_key...\")\n                        .azureClientId(\"...my_azure_client_id...\")\n                        .azureClientSecret(\"...my_azure_client_secret...\")\n                        .azureTenantId(\"...my_azure_tenant_id...\")\n                        .azureUseManagedIdentity(true)\n                        .gcpServiceAccountJson(\"...my_gcp_service_account_json...\")\n                        .gcpUseServiceAccount(false)\n                        .headerName(\"...my_header_name...\")\n                        .headerValue(\"...my_header_value...\")\n                        .paramLocation(\"query\")\n                        .paramName(\"...my_param_name...\")\n                        .paramValue(\"...my_param_value...\")\n                        .build())\n                    .description(\"...my_description...\")\n                    .logging(GatewayPluginAiLlmAsJudgeConfigLlmLoggingArgs.builder()\n                        .logPayloads(false)\n                        .logStatistics(false)\n                        .build())\n                    .metadata(Map.of(\"key\", serializeJson(\n                        \"value\")))\n                    .model(GatewayPluginAiLlmAsJudgeConfigLlmModelArgs.builder()\n                        .name(\"...my_name...\")\n                        .options(GatewayPluginAiLlmAsJudgeConfigLlmModelOptionsArgs.builder()\n                            .anthropicVersion(\"...my_anthropic_version...\")\n                            .azureApiVersion(\"...my_azure_api_version...\")\n                            .azureDeploymentId(\"...my_azure_deployment_id...\")\n                            .azureInstance(\"...my_azure_instance...\")\n                            .bedrock(GatewayPluginAiLlmAsJudgeConfigLlmModelOptionsBedrockArgs.builder()\n                                .awsAssumeRoleArn(\"...my_aws_assume_role_arn...\")\n                                .awsRegion(\"...my_aws_region...\")\n                                .awsRoleSessionName(\"...my_aws_role_session_name...\")\n                                .awsStsEndpointUrl(\"...my_aws_sts_endpoint_url...\")\n                                .embeddingsNormalize(false)\n                                .performanceConfigLatency(\"...my_performance_config_latency...\")\n                                .videoOutputS3Uri(\"...my_video_output_s3_uri...\")\n                                .build())\n                            .cohere(GatewayPluginAiLlmAsJudgeConfigLlmModelOptionsCohereArgs.builder()\n                                .embeddingInputType(\"search_document\")\n                                .waitForModel(false)\n                                .build())\n                            .dashscope(GatewayPluginAiLlmAsJudgeConfigLlmModelOptionsDashscopeArgs.builder()\n                                .international(true)\n                                .build())\n                            .embeddingsDimensions(3.0)\n                            .gemini(GatewayPluginAiLlmAsJudgeConfigLlmModelOptionsGeminiArgs.builder()\n                                .apiEndpoint(\"...my_api_endpoint...\")\n                                .endpointId(\"...my_endpoint_id...\")\n                                .locationId(\"...my_location_id...\")\n                                .projectId(\"...my_project_id...\")\n                                .build())\n                            .huggingface(GatewayPluginAiLlmAsJudgeConfigLlmModelOptionsHuggingfaceArgs.builder()\n                                .useCache(false)\n                                .waitForModel(false)\n                                .build())\n                            .inputCost(3.16)\n                            .llama2Format(\"ollama\")\n                            .maxTokens(0.0)\n                            .mistralFormat(\"openai\")\n                            .outputCost(2.67)\n                            .temperature(4.9)\n                            .topK(155.0)\n                            .topP(0.54)\n                            .upstreamPath(\"...my_upstream_path...\")\n                            .upstreamUrl(\"...my_upstream_url...\")\n                            .build())\n                        .provider(\"dashscope\")\n                        .build())\n                    .routeType(\"llm/v1/embeddings\")\n                    .weight(28655.0)\n                    .build())\n                .messageCountback(928.19)\n                .prompt(\"...my_prompt...\")\n                .samplingRate(0.51)\n                .build())\n            .consumer(GatewayPluginAiLlmAsJudgeConsumerArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .consumerGroup(GatewayPluginAiLlmAsJudgeConsumerGroupArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .controlPlaneId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .createdAt(10.0)\n            .enabled(true)\n            .gatewayPluginAiLlmAsJudgeId(\"...my_id...\")\n            .instanceName(\"...my_instance_name...\")\n            .ordering(GatewayPluginAiLlmAsJudgeOrderingArgs.builder()\n                .after(GatewayPluginAiLlmAsJudgeOrderingAfterArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .before(GatewayPluginAiLlmAsJudgeOrderingBeforeArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .build())\n            .partials(GatewayPluginAiLlmAsJudgePartialArgs.builder()\n                .id(\"...my_id...\")\n                .name(\"...my_name...\")\n                .path(\"...my_path...\")\n                .build())\n            .protocols(\"grpcs\")\n            .route(GatewayPluginAiLlmAsJudgeRouteArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .service(GatewayPluginAiLlmAsJudgeServiceArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .tags(\"...\")\n            .updatedAt(0.0)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myGatewaypluginaillmasjudge:\n    type: konnect:GatewayPluginAiLlmAsJudge\n    name: my_gatewaypluginaillmasjudge\n    properties:\n      config:\n        httpProxyHost: '...my_http_proxy_host...'\n        httpProxyPort: 8774\n        httpTimeout: 0\n        httpsProxyHost: '...my_https_proxy_host...'\n        httpsProxyPort: 29092\n        httpsVerify: false\n        ignoreAssistantPrompts: true\n        ignoreSystemPrompts: true\n        ignoreToolPrompts: true\n        llm:\n          auth:\n            allowOverride: false\n            awsAccessKeyId: '...my_aws_access_key_id...'\n            awsSecretAccessKey: '...my_aws_secret_access_key...'\n            azureClientId: '...my_azure_client_id...'\n            azureClientSecret: '...my_azure_client_secret...'\n            azureTenantId: '...my_azure_tenant_id...'\n            azureUseManagedIdentity: true\n            gcpServiceAccountJson: '...my_gcp_service_account_json...'\n            gcpUseServiceAccount: false\n            headerName: '...my_header_name...'\n            headerValue: '...my_header_value...'\n            paramLocation: query\n            paramName: '...my_param_name...'\n            paramValue: '...my_param_value...'\n          description: '...my_description...'\n          logging:\n            logPayloads: false\n            logStatistics: false\n          metadata:\n            key:\n              fn::toJSON: value\n          model:\n            name: '...my_name...'\n            options:\n              anthropicVersion: '...my_anthropic_version...'\n              azureApiVersion: '...my_azure_api_version...'\n              azureDeploymentId: '...my_azure_deployment_id...'\n              azureInstance: '...my_azure_instance...'\n              bedrock:\n                awsAssumeRoleArn: '...my_aws_assume_role_arn...'\n                awsRegion: '...my_aws_region...'\n                awsRoleSessionName: '...my_aws_role_session_name...'\n                awsStsEndpointUrl: '...my_aws_sts_endpoint_url...'\n                embeddingsNormalize: false\n                performanceConfigLatency: '...my_performance_config_latency...'\n                videoOutputS3Uri: '...my_video_output_s3_uri...'\n              cohere:\n                embeddingInputType: search_document\n                waitForModel: false\n              dashscope:\n                international: true\n              embeddingsDimensions: 3\n              gemini:\n                apiEndpoint: '...my_api_endpoint...'\n                endpointId: '...my_endpoint_id...'\n                locationId: '...my_location_id...'\n                projectId: '...my_project_id...'\n              huggingface:\n                useCache: false\n                waitForModel: false\n              inputCost: 3.16\n              llama2Format: ollama\n              maxTokens: 0\n              mistralFormat: openai\n              outputCost: 2.67\n              temperature: 4.9\n              topK: 155\n              topP: 0.54\n              upstreamPath: '...my_upstream_path...'\n              upstreamUrl: '...my_upstream_url...'\n            provider: dashscope\n          routeType: llm/v1/embeddings\n          weight: 28655\n        messageCountback: 928.19\n        prompt: '...my_prompt...'\n        samplingRate: 0.51\n      consumer:\n        id: '...my_id...'\n      consumerGroup:\n        id: '...my_id...'\n      controlPlaneId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      createdAt: 10\n      enabled: true\n      gatewayPluginAiLlmAsJudgeId: '...my_id...'\n      instanceName: '...my_instance_name...'\n      ordering:\n        after:\n          accesses:\n            - '...'\n        before:\n          accesses:\n            - '...'\n      partials:\n        - id: '...my_id...'\n          name: '...my_name...'\n          path: '...my_path...'\n      protocols:\n        - grpcs\n      route:\n        id: '...my_id...'\n      service:\n        id: '...my_id...'\n      tags:\n        - '...'\n      updatedAt: 0\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_gateway_plugin_ai_llm_as_judge.my_konnect_gateway_plugin_ai_llm_as_judge\n\n  id = jsonencode({\n\n    control_plane_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/gatewayPluginAiLlmAsJudge:GatewayPluginAiLlmAsJudge my_konnect_gateway_plugin_ai_llm_as_judge '{\"control_plane_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"}'\n```\n\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginAiLlmAsJudgeConfig:GatewayPluginAiLlmAsJudgeConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginAiLlmAsJudgeConsumer:GatewayPluginAiLlmAsJudgeConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"consumerGroup":{"$ref":"#/types/konnect:index%2FGatewayPluginAiLlmAsJudgeConsumerGroup:GatewayPluginAiLlmAsJudgeConsumerGroup","description":"If set, the plugin will activate only for requests where the specified consumer group has been authenticated. (Note that some plugins can not be restricted to consumers groups this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer Groups\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginAiLlmAsJudgeId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginAiLlmAsJudgeOrdering:GatewayPluginAiLlmAsJudgeOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginAiLlmAsJudgePartial:GatewayPluginAiLlmAsJudgePartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginAiLlmAsJudgeRoute:GatewayPluginAiLlmAsJudgeRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginAiLlmAsJudgeService:GatewayPluginAiLlmAsJudgeService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object","required":["config","consumer","consumerGroup","controlPlaneId","createdAt","enabled","gatewayPluginAiLlmAsJudgeId","ordering","protocols","route","service","updatedAt"],"inputProperties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginAiLlmAsJudgeConfig:GatewayPluginAiLlmAsJudgeConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginAiLlmAsJudgeConsumer:GatewayPluginAiLlmAsJudgeConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"consumerGroup":{"$ref":"#/types/konnect:index%2FGatewayPluginAiLlmAsJudgeConsumerGroup:GatewayPluginAiLlmAsJudgeConsumerGroup","description":"If set, the plugin will activate only for requests where the specified consumer group has been authenticated. (Note that some plugins can not be restricted to consumers groups this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer Groups\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginAiLlmAsJudgeId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginAiLlmAsJudgeOrdering:GatewayPluginAiLlmAsJudgeOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginAiLlmAsJudgePartial:GatewayPluginAiLlmAsJudgePartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginAiLlmAsJudgeRoute:GatewayPluginAiLlmAsJudgeRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginAiLlmAsJudgeService:GatewayPluginAiLlmAsJudgeService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"requiredInputs":["config","controlPlaneId"],"stateInputs":{"description":"Input properties used for looking up and filtering GatewayPluginAiLlmAsJudge resources.\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginAiLlmAsJudgeConfig:GatewayPluginAiLlmAsJudgeConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginAiLlmAsJudgeConsumer:GatewayPluginAiLlmAsJudgeConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"consumerGroup":{"$ref":"#/types/konnect:index%2FGatewayPluginAiLlmAsJudgeConsumerGroup:GatewayPluginAiLlmAsJudgeConsumerGroup","description":"If set, the plugin will activate only for requests where the specified consumer group has been authenticated. (Note that some plugins can not be restricted to consumers groups this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer Groups\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginAiLlmAsJudgeId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginAiLlmAsJudgeOrdering:GatewayPluginAiLlmAsJudgeOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginAiLlmAsJudgePartial:GatewayPluginAiLlmAsJudgePartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginAiLlmAsJudgeRoute:GatewayPluginAiLlmAsJudgeRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginAiLlmAsJudgeService:GatewayPluginAiLlmAsJudgeService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object"}},"konnect:index/gatewayPluginAiMcpOauth2:GatewayPluginAiMcpOauth2":{"description":"GatewayPluginAiMcpOauth2 Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myGatewaypluginaimcpoauth2 = new konnect.GatewayPluginAiMcpOauth2(\"my_gatewaypluginaimcpoauth2\", {\n    config: {\n        args: {\n            key: \"value\",\n        },\n        authorizationServers: [\"...\"],\n        cacheIntrospection: false,\n        claimToHeaders: [{\n            claim: \"...my_claim...\",\n            header: \"...my_header...\",\n        }],\n        clientAlg: \"HS384\",\n        clientAuth: \"none\",\n        clientId: \"...my_client_id...\",\n        clientJwk: \"...my_client_jwk...\",\n        clientSecret: \"...my_client_secret...\",\n        headers: {\n            key: \"value\",\n        },\n        httpProxy: \"...my_http_proxy...\",\n        httpProxyAuthorization: \"...my_http_proxy_authorization...\",\n        httpVersion: 9.95,\n        httpsProxy: \"...my_https_proxy...\",\n        httpsProxyAuthorization: \"...my_https_proxy_authorization...\",\n        insecureRelaxedAudienceValidation: false,\n        introspectionEndpoint: \"...my_introspection_endpoint...\",\n        introspectionFormat: \"base64\",\n        keepalive: false,\n        maxRequestBodySize: 6,\n        metadataEndpoint: \"...my_metadata_endpoint...\",\n        mtlsIntrospectionEndpoint: \"...my_mtls_introspection_endpoint...\",\n        noProxy: \"...my_no_proxy...\",\n        resource: \"...my_resource...\",\n        scopesSupporteds: [\"...\"],\n        sslVerify: true,\n        timeout: 4.02,\n        tlsClientAuthCert: \"...my_tls_client_auth_cert...\",\n        tlsClientAuthKey: \"...my_tls_client_auth_key...\",\n        tlsClientAuthSslVerify: false,\n    },\n    controlPlaneId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    createdAt: 6,\n    enabled: true,\n    gatewayPluginAiMcpOauth2Id: \"...my_id...\",\n    instanceName: \"...my_instance_name...\",\n    ordering: {\n        after: {\n            accesses: [\"...\"],\n        },\n        before: {\n            accesses: [\"...\"],\n        },\n    },\n    partials: [{\n        id: \"...my_id...\",\n        name: \"...my_name...\",\n        path: \"...my_path...\",\n    }],\n    protocols: [\"grpc\"],\n    route: {\n        id: \"...my_id...\",\n    },\n    service: {\n        id: \"...my_id...\",\n    },\n    tags: [\"...\"],\n    updatedAt: 4,\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_gatewaypluginaimcpoauth2 = konnect.GatewayPluginAiMcpOauth2(\"my_gatewaypluginaimcpoauth2\",\n    config={\n        \"args\": {\n            \"key\": \"value\",\n        },\n        \"authorization_servers\": [\"...\"],\n        \"cache_introspection\": False,\n        \"claim_to_headers\": [{\n            \"claim\": \"...my_claim...\",\n            \"header\": \"...my_header...\",\n        }],\n        \"client_alg\": \"HS384\",\n        \"client_auth\": \"none\",\n        \"client_id\": \"...my_client_id...\",\n        \"client_jwk\": \"...my_client_jwk...\",\n        \"client_secret\": \"...my_client_secret...\",\n        \"headers\": {\n            \"key\": \"value\",\n        },\n        \"http_proxy\": \"...my_http_proxy...\",\n        \"http_proxy_authorization\": \"...my_http_proxy_authorization...\",\n        \"http_version\": 9.95,\n        \"https_proxy\": \"...my_https_proxy...\",\n        \"https_proxy_authorization\": \"...my_https_proxy_authorization...\",\n        \"insecure_relaxed_audience_validation\": False,\n        \"introspection_endpoint\": \"...my_introspection_endpoint...\",\n        \"introspection_format\": \"base64\",\n        \"keepalive\": False,\n        \"max_request_body_size\": 6,\n        \"metadata_endpoint\": \"...my_metadata_endpoint...\",\n        \"mtls_introspection_endpoint\": \"...my_mtls_introspection_endpoint...\",\n        \"no_proxy\": \"...my_no_proxy...\",\n        \"resource\": \"...my_resource...\",\n        \"scopes_supporteds\": [\"...\"],\n        \"ssl_verify\": True,\n        \"timeout\": 4.02,\n        \"tls_client_auth_cert\": \"...my_tls_client_auth_cert...\",\n        \"tls_client_auth_key\": \"...my_tls_client_auth_key...\",\n        \"tls_client_auth_ssl_verify\": False,\n    },\n    control_plane_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    created_at=6,\n    enabled=True,\n    gateway_plugin_ai_mcp_oauth2_id=\"...my_id...\",\n    instance_name=\"...my_instance_name...\",\n    ordering={\n        \"after\": {\n            \"accesses\": [\"...\"],\n        },\n        \"before\": {\n            \"accesses\": [\"...\"],\n        },\n    },\n    partials=[{\n        \"id\": \"...my_id...\",\n        \"name\": \"...my_name...\",\n        \"path\": \"...my_path...\",\n    }],\n    protocols=[\"grpc\"],\n    route={\n        \"id\": \"...my_id...\",\n    },\n    service={\n        \"id\": \"...my_id...\",\n    },\n    tags=[\"...\"],\n    updated_at=4)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myGatewaypluginaimcpoauth2 = new Konnect.GatewayPluginAiMcpOauth2(\"my_gatewaypluginaimcpoauth2\", new()\n    {\n        Config = new Konnect.Inputs.GatewayPluginAiMcpOauth2ConfigArgs\n        {\n            Args = \n            {\n                { \"key\", \"value\" },\n            },\n            AuthorizationServers = new[]\n            {\n                \"...\",\n            },\n            CacheIntrospection = false,\n            ClaimToHeaders = new[]\n            {\n                new Konnect.Inputs.GatewayPluginAiMcpOauth2ConfigClaimToHeaderArgs\n                {\n                    Claim = \"...my_claim...\",\n                    Header = \"...my_header...\",\n                },\n            },\n            ClientAlg = \"HS384\",\n            ClientAuth = \"none\",\n            ClientId = \"...my_client_id...\",\n            ClientJwk = \"...my_client_jwk...\",\n            ClientSecret = \"...my_client_secret...\",\n            Headers = \n            {\n                { \"key\", \"value\" },\n            },\n            HttpProxy = \"...my_http_proxy...\",\n            HttpProxyAuthorization = \"...my_http_proxy_authorization...\",\n            HttpVersion = 9.95,\n            HttpsProxy = \"...my_https_proxy...\",\n            HttpsProxyAuthorization = \"...my_https_proxy_authorization...\",\n            InsecureRelaxedAudienceValidation = false,\n            IntrospectionEndpoint = \"...my_introspection_endpoint...\",\n            IntrospectionFormat = \"base64\",\n            Keepalive = false,\n            MaxRequestBodySize = 6,\n            MetadataEndpoint = \"...my_metadata_endpoint...\",\n            MtlsIntrospectionEndpoint = \"...my_mtls_introspection_endpoint...\",\n            NoProxy = \"...my_no_proxy...\",\n            Resource = \"...my_resource...\",\n            ScopesSupporteds = new[]\n            {\n                \"...\",\n            },\n            SslVerify = true,\n            Timeout = 4.02,\n            TlsClientAuthCert = \"...my_tls_client_auth_cert...\",\n            TlsClientAuthKey = \"...my_tls_client_auth_key...\",\n            TlsClientAuthSslVerify = false,\n        },\n        ControlPlaneId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        CreatedAt = 6,\n        Enabled = true,\n        GatewayPluginAiMcpOauth2Id = \"...my_id...\",\n        InstanceName = \"...my_instance_name...\",\n        Ordering = new Konnect.Inputs.GatewayPluginAiMcpOauth2OrderingArgs\n        {\n            After = new Konnect.Inputs.GatewayPluginAiMcpOauth2OrderingAfterArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n            Before = new Konnect.Inputs.GatewayPluginAiMcpOauth2OrderingBeforeArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n        },\n        Partials = new[]\n        {\n            new Konnect.Inputs.GatewayPluginAiMcpOauth2PartialArgs\n            {\n                Id = \"...my_id...\",\n                Name = \"...my_name...\",\n                Path = \"...my_path...\",\n            },\n        },\n        Protocols = new[]\n        {\n            \"grpc\",\n        },\n        Route = new Konnect.Inputs.GatewayPluginAiMcpOauth2RouteArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Service = new Konnect.Inputs.GatewayPluginAiMcpOauth2ServiceArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Tags = new[]\n        {\n            \"...\",\n        },\n        UpdatedAt = 4,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewGatewayPluginAiMcpOauth2(ctx, \"my_gatewaypluginaimcpoauth2\", \u0026konnect.GatewayPluginAiMcpOauth2Args{\n\t\t\tConfig: \u0026konnect.GatewayPluginAiMcpOauth2ConfigArgs{\n\t\t\t\tArgs: pulumi.StringMap{\n\t\t\t\t\t\"key\": pulumi.String(\"value\"),\n\t\t\t\t},\n\t\t\t\tAuthorizationServers: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tCacheIntrospection: pulumi.Bool(false),\n\t\t\t\tClaimToHeaders: konnect.GatewayPluginAiMcpOauth2ConfigClaimToHeaderArray{\n\t\t\t\t\t\u0026konnect.GatewayPluginAiMcpOauth2ConfigClaimToHeaderArgs{\n\t\t\t\t\t\tClaim:  pulumi.String(\"...my_claim...\"),\n\t\t\t\t\t\tHeader: pulumi.String(\"...my_header...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tClientAlg:    pulumi.String(\"HS384\"),\n\t\t\t\tClientAuth:   pulumi.String(\"none\"),\n\t\t\t\tClientId:     pulumi.String(\"...my_client_id...\"),\n\t\t\t\tClientJwk:    pulumi.String(\"...my_client_jwk...\"),\n\t\t\t\tClientSecret: pulumi.String(\"...my_client_secret...\"),\n\t\t\t\tHeaders: pulumi.StringMap{\n\t\t\t\t\t\"key\": pulumi.String(\"value\"),\n\t\t\t\t},\n\t\t\t\tHttpProxy:                         pulumi.String(\"...my_http_proxy...\"),\n\t\t\t\tHttpProxyAuthorization:            pulumi.String(\"...my_http_proxy_authorization...\"),\n\t\t\t\tHttpVersion:                       pulumi.Float64(9.95),\n\t\t\t\tHttpsProxy:                        pulumi.String(\"...my_https_proxy...\"),\n\t\t\t\tHttpsProxyAuthorization:           pulumi.String(\"...my_https_proxy_authorization...\"),\n\t\t\t\tInsecureRelaxedAudienceValidation: pulumi.Bool(false),\n\t\t\t\tIntrospectionEndpoint:             pulumi.String(\"...my_introspection_endpoint...\"),\n\t\t\t\tIntrospectionFormat:               pulumi.String(\"base64\"),\n\t\t\t\tKeepalive:                         pulumi.Bool(false),\n\t\t\t\tMaxRequestBodySize:                pulumi.Float64(6),\n\t\t\t\tMetadataEndpoint:                  pulumi.String(\"...my_metadata_endpoint...\"),\n\t\t\t\tMtlsIntrospectionEndpoint:         pulumi.String(\"...my_mtls_introspection_endpoint...\"),\n\t\t\t\tNoProxy:                           pulumi.String(\"...my_no_proxy...\"),\n\t\t\t\tResource:                          pulumi.String(\"...my_resource...\"),\n\t\t\t\tScopesSupporteds: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tSslVerify:              pulumi.Bool(true),\n\t\t\t\tTimeout:                pulumi.Float64(4.02),\n\t\t\t\tTlsClientAuthCert:      pulumi.String(\"...my_tls_client_auth_cert...\"),\n\t\t\t\tTlsClientAuthKey:       pulumi.String(\"...my_tls_client_auth_key...\"),\n\t\t\t\tTlsClientAuthSslVerify: pulumi.Bool(false),\n\t\t\t},\n\t\t\tControlPlaneId:             pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tCreatedAt:                  pulumi.Float64(6),\n\t\t\tEnabled:                    pulumi.Bool(true),\n\t\t\tGatewayPluginAiMcpOauth2Id: pulumi.String(\"...my_id...\"),\n\t\t\tInstanceName:               pulumi.String(\"...my_instance_name...\"),\n\t\t\tOrdering: \u0026konnect.GatewayPluginAiMcpOauth2OrderingArgs{\n\t\t\t\tAfter: \u0026konnect.GatewayPluginAiMcpOauth2OrderingAfterArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tBefore: \u0026konnect.GatewayPluginAiMcpOauth2OrderingBeforeArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tPartials: konnect.GatewayPluginAiMcpOauth2PartialArray{\n\t\t\t\t\u0026konnect.GatewayPluginAiMcpOauth2PartialArgs{\n\t\t\t\t\tId:   pulumi.String(\"...my_id...\"),\n\t\t\t\t\tName: pulumi.String(\"...my_name...\"),\n\t\t\t\t\tPath: pulumi.String(\"...my_path...\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tProtocols: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"grpc\"),\n\t\t\t},\n\t\t\tRoute: \u0026konnect.GatewayPluginAiMcpOauth2RouteArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tService: \u0026konnect.GatewayPluginAiMcpOauth2ServiceArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"...\"),\n\t\t\t},\n\t\t\tUpdatedAt: pulumi.Float64(4),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.GatewayPluginAiMcpOauth2;\nimport com.pulumi.konnect.GatewayPluginAiMcpOauth2Args;\nimport com.pulumi.konnect.inputs.GatewayPluginAiMcpOauth2ConfigArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiMcpOauth2OrderingArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiMcpOauth2OrderingAfterArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiMcpOauth2OrderingBeforeArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiMcpOauth2PartialArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiMcpOauth2RouteArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiMcpOauth2ServiceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myGatewaypluginaimcpoauth2 = new GatewayPluginAiMcpOauth2(\"myGatewaypluginaimcpoauth2\", GatewayPluginAiMcpOauth2Args.builder()\n            .config(GatewayPluginAiMcpOauth2ConfigArgs.builder()\n                .args(Map.of(\"key\", \"value\"))\n                .authorizationServers(\"...\")\n                .cacheIntrospection(false)\n                .claimToHeaders(GatewayPluginAiMcpOauth2ConfigClaimToHeaderArgs.builder()\n                    .claim(\"...my_claim...\")\n                    .header(\"...my_header...\")\n                    .build())\n                .clientAlg(\"HS384\")\n                .clientAuth(\"none\")\n                .clientId(\"...my_client_id...\")\n                .clientJwk(\"...my_client_jwk...\")\n                .clientSecret(\"...my_client_secret...\")\n                .headers(Map.of(\"key\", \"value\"))\n                .httpProxy(\"...my_http_proxy...\")\n                .httpProxyAuthorization(\"...my_http_proxy_authorization...\")\n                .httpVersion(9.95)\n                .httpsProxy(\"...my_https_proxy...\")\n                .httpsProxyAuthorization(\"...my_https_proxy_authorization...\")\n                .insecureRelaxedAudienceValidation(false)\n                .introspectionEndpoint(\"...my_introspection_endpoint...\")\n                .introspectionFormat(\"base64\")\n                .keepalive(false)\n                .maxRequestBodySize(6.0)\n                .metadataEndpoint(\"...my_metadata_endpoint...\")\n                .mtlsIntrospectionEndpoint(\"...my_mtls_introspection_endpoint...\")\n                .noProxy(\"...my_no_proxy...\")\n                .resource(\"...my_resource...\")\n                .scopesSupporteds(\"...\")\n                .sslVerify(true)\n                .timeout(4.02)\n                .tlsClientAuthCert(\"...my_tls_client_auth_cert...\")\n                .tlsClientAuthKey(\"...my_tls_client_auth_key...\")\n                .tlsClientAuthSslVerify(false)\n                .build())\n            .controlPlaneId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .createdAt(6.0)\n            .enabled(true)\n            .gatewayPluginAiMcpOauth2Id(\"...my_id...\")\n            .instanceName(\"...my_instance_name...\")\n            .ordering(GatewayPluginAiMcpOauth2OrderingArgs.builder()\n                .after(GatewayPluginAiMcpOauth2OrderingAfterArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .before(GatewayPluginAiMcpOauth2OrderingBeforeArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .build())\n            .partials(GatewayPluginAiMcpOauth2PartialArgs.builder()\n                .id(\"...my_id...\")\n                .name(\"...my_name...\")\n                .path(\"...my_path...\")\n                .build())\n            .protocols(\"grpc\")\n            .route(GatewayPluginAiMcpOauth2RouteArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .service(GatewayPluginAiMcpOauth2ServiceArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .tags(\"...\")\n            .updatedAt(4.0)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myGatewaypluginaimcpoauth2:\n    type: konnect:GatewayPluginAiMcpOauth2\n    name: my_gatewaypluginaimcpoauth2\n    properties:\n      config:\n        args:\n          key: value\n        authorizationServers:\n          - '...'\n        cacheIntrospection: false\n        claimToHeaders:\n          - claim: '...my_claim...'\n            header: '...my_header...'\n        clientAlg: HS384\n        clientAuth: none\n        clientId: '...my_client_id...'\n        clientJwk: '...my_client_jwk...'\n        clientSecret: '...my_client_secret...'\n        headers:\n          key: value\n        httpProxy: '...my_http_proxy...'\n        httpProxyAuthorization: '...my_http_proxy_authorization...'\n        httpVersion: 9.95\n        httpsProxy: '...my_https_proxy...'\n        httpsProxyAuthorization: '...my_https_proxy_authorization...'\n        insecureRelaxedAudienceValidation: false\n        introspectionEndpoint: '...my_introspection_endpoint...'\n        introspectionFormat: base64\n        keepalive: false\n        maxRequestBodySize: 6\n        metadataEndpoint: '...my_metadata_endpoint...'\n        mtlsIntrospectionEndpoint: '...my_mtls_introspection_endpoint...'\n        noProxy: '...my_no_proxy...'\n        resource: '...my_resource...'\n        scopesSupporteds:\n          - '...'\n        sslVerify: true\n        timeout: 4.02\n        tlsClientAuthCert: '...my_tls_client_auth_cert...'\n        tlsClientAuthKey: '...my_tls_client_auth_key...'\n        tlsClientAuthSslVerify: false\n      controlPlaneId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      createdAt: 6\n      enabled: true\n      gatewayPluginAiMcpOauth2Id: '...my_id...'\n      instanceName: '...my_instance_name...'\n      ordering:\n        after:\n          accesses:\n            - '...'\n        before:\n          accesses:\n            - '...'\n      partials:\n        - id: '...my_id...'\n          name: '...my_name...'\n          path: '...my_path...'\n      protocols:\n        - grpc\n      route:\n        id: '...my_id...'\n      service:\n        id: '...my_id...'\n      tags:\n        - '...'\n      updatedAt: 4\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_gateway_plugin_ai_mcp_oauth2.my_konnect_gateway_plugin_ai_mcp_oauth2\n\n  id = jsonencode({\n\n    control_plane_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/gatewayPluginAiMcpOauth2:GatewayPluginAiMcpOauth2 my_konnect_gateway_plugin_ai_mcp_oauth2 '{\"control_plane_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"}'\n```\n\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginAiMcpOauth2Config:GatewayPluginAiMcpOauth2Config","description":"The configuration for MCP authorization in OAuth2. If this is enabled, make sure the configured\u003cspan pulumi-lang-nodejs=\" metadataEndpoint \" pulumi-lang-dotnet=\" MetadataEndpoint \" pulumi-lang-go=\" metadataEndpoint \" pulumi-lang-python=\" metadata_endpoint \" pulumi-lang-yaml=\" metadataEndpoint \" pulumi-lang-java=\" metadataEndpoint \"\u003e metadata_endpoint \u003c/span\u003eis also covered by the same route so the authorization can be applied correctly.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginAiMcpOauth2Id":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginAiMcpOauth2Ordering:GatewayPluginAiMcpOauth2Ordering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginAiMcpOauth2Partial:GatewayPluginAiMcpOauth2Partial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginAiMcpOauth2Route:GatewayPluginAiMcpOauth2Route","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginAiMcpOauth2Service:GatewayPluginAiMcpOauth2Service","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object","required":["config","controlPlaneId","createdAt","enabled","gatewayPluginAiMcpOauth2Id","ordering","protocols","route","service","updatedAt"],"inputProperties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginAiMcpOauth2Config:GatewayPluginAiMcpOauth2Config","description":"The configuration for MCP authorization in OAuth2. If this is enabled, make sure the configured\u003cspan pulumi-lang-nodejs=\" metadataEndpoint \" pulumi-lang-dotnet=\" MetadataEndpoint \" pulumi-lang-go=\" metadataEndpoint \" pulumi-lang-python=\" metadata_endpoint \" pulumi-lang-yaml=\" metadataEndpoint \" pulumi-lang-java=\" metadataEndpoint \"\u003e metadata_endpoint \u003c/span\u003eis also covered by the same route so the authorization can be applied correctly.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginAiMcpOauth2Id":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginAiMcpOauth2Ordering:GatewayPluginAiMcpOauth2Ordering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginAiMcpOauth2Partial:GatewayPluginAiMcpOauth2Partial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginAiMcpOauth2Route:GatewayPluginAiMcpOauth2Route","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginAiMcpOauth2Service:GatewayPluginAiMcpOauth2Service","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"requiredInputs":["config","controlPlaneId"],"stateInputs":{"description":"Input properties used for looking up and filtering GatewayPluginAiMcpOauth2 resources.\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginAiMcpOauth2Config:GatewayPluginAiMcpOauth2Config","description":"The configuration for MCP authorization in OAuth2. If this is enabled, make sure the configured\u003cspan pulumi-lang-nodejs=\" metadataEndpoint \" pulumi-lang-dotnet=\" MetadataEndpoint \" pulumi-lang-go=\" metadataEndpoint \" pulumi-lang-python=\" metadata_endpoint \" pulumi-lang-yaml=\" metadataEndpoint \" pulumi-lang-java=\" metadataEndpoint \"\u003e metadata_endpoint \u003c/span\u003eis also covered by the same route so the authorization can be applied correctly.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginAiMcpOauth2Id":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginAiMcpOauth2Ordering:GatewayPluginAiMcpOauth2Ordering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginAiMcpOauth2Partial:GatewayPluginAiMcpOauth2Partial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginAiMcpOauth2Route:GatewayPluginAiMcpOauth2Route","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginAiMcpOauth2Service:GatewayPluginAiMcpOauth2Service","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object"}},"konnect:index/gatewayPluginAiMcpProxy:GatewayPluginAiMcpProxy":{"description":"GatewayPluginAiMcpProxy Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myGatewaypluginaimcpproxy = new konnect.GatewayPluginAiMcpProxy(\"my_gatewaypluginaimcpproxy\", {\n    config: {\n        consumerIdentifier: \"custom_id\",\n        defaultAcls: [{\n            allows: [\"...\"],\n            denies: [\"...\"],\n            scope: \"...my_scope...\",\n        }],\n        includeConsumerGroups: false,\n        logging: {\n            logAudits: true,\n            logPayloads: false,\n            logStatistics: true,\n        },\n        maxRequestBodySize: 8,\n        mode: \"passthrough-listener\",\n        server: {\n            forwardClientHeaders: true,\n            tag: \"...my_tag...\",\n            timeout: 7.85,\n        },\n        tools: [{\n            acl: {\n                allows: [\"...\"],\n                denies: [\"...\"],\n            },\n            annotations: {\n                destructiveHint: true,\n                idempotentHint: false,\n                openWorldHint: false,\n                readOnlyHint: false,\n                title: \"...my_title...\",\n            },\n            description: \"...my_description...\",\n            headers: {\n                key: [],\n            },\n            host: \"...my_host...\",\n            method: \"GET\",\n            name: \"...my_name...\",\n            parameters: [{\n                additionalProperties: \"{ \\\"see\\\": \\\"documentation\\\" }\",\n                description: \"...my_description...\",\n                \"in\": \"...my_in...\",\n                name: \"...my_name...\",\n                required: true,\n                schema: {\n                    type: \"...my_type...\",\n                },\n            }],\n            path: \"...my_path...\",\n            query: {\n                key: [],\n            },\n            requestBody: {\n                key: JSON.stringify(\"value\"),\n            },\n            responses: {\n                key: JSON.stringify(\"value\"),\n            },\n            scheme: \"https\",\n        }],\n    },\n    controlPlaneId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    createdAt: 4,\n    enabled: false,\n    gatewayPluginAiMcpProxyId: \"...my_id...\",\n    instanceName: \"...my_instance_name...\",\n    ordering: {\n        after: {\n            accesses: [\"...\"],\n        },\n        before: {\n            accesses: [\"...\"],\n        },\n    },\n    partials: [{\n        id: \"...my_id...\",\n        name: \"...my_name...\",\n        path: \"...my_path...\",\n    }],\n    protocols: [\"grpc\"],\n    route: {\n        id: \"...my_id...\",\n    },\n    service: {\n        id: \"...my_id...\",\n    },\n    tags: [\"...\"],\n    updatedAt: 1,\n});\n```\n```python\nimport pulumi\nimport json\nimport pulumi_konnect as konnect\n\nmy_gatewaypluginaimcpproxy = konnect.GatewayPluginAiMcpProxy(\"my_gatewaypluginaimcpproxy\",\n    config={\n        \"consumer_identifier\": \"custom_id\",\n        \"default_acls\": [{\n            \"allows\": [\"...\"],\n            \"denies\": [\"...\"],\n            \"scope\": \"...my_scope...\",\n        }],\n        \"include_consumer_groups\": False,\n        \"logging\": {\n            \"log_audits\": True,\n            \"log_payloads\": False,\n            \"log_statistics\": True,\n        },\n        \"max_request_body_size\": 8,\n        \"mode\": \"passthrough-listener\",\n        \"server\": {\n            \"forward_client_headers\": True,\n            \"tag\": \"...my_tag...\",\n            \"timeout\": 7.85,\n        },\n        \"tools\": [{\n            \"acl\": {\n                \"allows\": [\"...\"],\n                \"denies\": [\"...\"],\n            },\n            \"annotations\": {\n                \"destructive_hint\": True,\n                \"idempotent_hint\": False,\n                \"open_world_hint\": False,\n                \"read_only_hint\": False,\n                \"title\": \"...my_title...\",\n            },\n            \"description\": \"...my_description...\",\n            \"headers\": {\n                \"key\": [],\n            },\n            \"host\": \"...my_host...\",\n            \"method\": \"GET\",\n            \"name\": \"...my_name...\",\n            \"parameters\": [{\n                \"additional_properties\": \"{ \\\"see\\\": \\\"documentation\\\" }\",\n                \"description\": \"...my_description...\",\n                \"in_\": \"...my_in...\",\n                \"name\": \"...my_name...\",\n                \"required\": True,\n                \"schema\": {\n                    \"type\": \"...my_type...\",\n                },\n            }],\n            \"path\": \"...my_path...\",\n            \"query\": {\n                \"key\": [],\n            },\n            \"request_body\": {\n                \"key\": json.dumps(\"value\"),\n            },\n            \"responses\": {\n                \"key\": json.dumps(\"value\"),\n            },\n            \"scheme\": \"https\",\n        }],\n    },\n    control_plane_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    created_at=4,\n    enabled=False,\n    gateway_plugin_ai_mcp_proxy_id=\"...my_id...\",\n    instance_name=\"...my_instance_name...\",\n    ordering={\n        \"after\": {\n            \"accesses\": [\"...\"],\n        },\n        \"before\": {\n            \"accesses\": [\"...\"],\n        },\n    },\n    partials=[{\n        \"id\": \"...my_id...\",\n        \"name\": \"...my_name...\",\n        \"path\": \"...my_path...\",\n    }],\n    protocols=[\"grpc\"],\n    route={\n        \"id\": \"...my_id...\",\n    },\n    service={\n        \"id\": \"...my_id...\",\n    },\n    tags=[\"...\"],\n    updated_at=1)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text.Json;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myGatewaypluginaimcpproxy = new Konnect.GatewayPluginAiMcpProxy(\"my_gatewaypluginaimcpproxy\", new()\n    {\n        Config = new Konnect.Inputs.GatewayPluginAiMcpProxyConfigArgs\n        {\n            ConsumerIdentifier = \"custom_id\",\n            DefaultAcls = new[]\n            {\n                new Konnect.Inputs.GatewayPluginAiMcpProxyConfigDefaultAclArgs\n                {\n                    Allows = new[]\n                    {\n                        \"...\",\n                    },\n                    Denies = new[]\n                    {\n                        \"...\",\n                    },\n                    Scope = \"...my_scope...\",\n                },\n            },\n            IncludeConsumerGroups = false,\n            Logging = new Konnect.Inputs.GatewayPluginAiMcpProxyConfigLoggingArgs\n            {\n                LogAudits = true,\n                LogPayloads = false,\n                LogStatistics = true,\n            },\n            MaxRequestBodySize = 8,\n            Mode = \"passthrough-listener\",\n            Server = new Konnect.Inputs.GatewayPluginAiMcpProxyConfigServerArgs\n            {\n                ForwardClientHeaders = true,\n                Tag = \"...my_tag...\",\n                Timeout = 7.85,\n            },\n            Tools = new[]\n            {\n                new Konnect.Inputs.GatewayPluginAiMcpProxyConfigToolArgs\n                {\n                    Acl = new Konnect.Inputs.GatewayPluginAiMcpProxyConfigToolAclArgs\n                    {\n                        Allows = new[]\n                        {\n                            \"...\",\n                        },\n                        Denies = new[]\n                        {\n                            \"...\",\n                        },\n                    },\n                    Annotations = new Konnect.Inputs.GatewayPluginAiMcpProxyConfigToolAnnotationsArgs\n                    {\n                        DestructiveHint = true,\n                        IdempotentHint = false,\n                        OpenWorldHint = false,\n                        ReadOnlyHint = false,\n                        Title = \"...my_title...\",\n                    },\n                    Description = \"...my_description...\",\n                    Headers = \n                    {\n                        { \"key\", new[] {} },\n                    },\n                    Host = \"...my_host...\",\n                    Method = \"GET\",\n                    Name = \"...my_name...\",\n                    Parameters = new[]\n                    {\n                        new Konnect.Inputs.GatewayPluginAiMcpProxyConfigToolParameterArgs\n                        {\n                            AdditionalProperties = \"{ \\\"see\\\": \\\"documentation\\\" }\",\n                            Description = \"...my_description...\",\n                            In = \"...my_in...\",\n                            Name = \"...my_name...\",\n                            Required = true,\n                            Schema = new Konnect.Inputs.GatewayPluginAiMcpProxyConfigToolParameterSchemaArgs\n                            {\n                                Type = \"...my_type...\",\n                            },\n                        },\n                    },\n                    Path = \"...my_path...\",\n                    Query = \n                    {\n                        { \"key\", new[] {} },\n                    },\n                    RequestBody = \n                    {\n                        { \"key\", JsonSerializer.Serialize(\"value\") },\n                    },\n                    Responses = \n                    {\n                        { \"key\", JsonSerializer.Serialize(\"value\") },\n                    },\n                    Scheme = \"https\",\n                },\n            },\n        },\n        ControlPlaneId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        CreatedAt = 4,\n        Enabled = false,\n        GatewayPluginAiMcpProxyId = \"...my_id...\",\n        InstanceName = \"...my_instance_name...\",\n        Ordering = new Konnect.Inputs.GatewayPluginAiMcpProxyOrderingArgs\n        {\n            After = new Konnect.Inputs.GatewayPluginAiMcpProxyOrderingAfterArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n            Before = new Konnect.Inputs.GatewayPluginAiMcpProxyOrderingBeforeArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n        },\n        Partials = new[]\n        {\n            new Konnect.Inputs.GatewayPluginAiMcpProxyPartialArgs\n            {\n                Id = \"...my_id...\",\n                Name = \"...my_name...\",\n                Path = \"...my_path...\",\n            },\n        },\n        Protocols = new[]\n        {\n            \"grpc\",\n        },\n        Route = new Konnect.Inputs.GatewayPluginAiMcpProxyRouteArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Service = new Konnect.Inputs.GatewayPluginAiMcpProxyServiceArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Tags = new[]\n        {\n            \"...\",\n        },\n        UpdatedAt = 1,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"encoding/json\"\n\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\ttmpJSON0, err := json.Marshal(\"value\")\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tjson0 := string(tmpJSON0)\n\t\ttmpJSON1, err := json.Marshal(\"value\")\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tjson1 := string(tmpJSON1)\n\t\t_, err = konnect.NewGatewayPluginAiMcpProxy(ctx, \"my_gatewaypluginaimcpproxy\", \u0026konnect.GatewayPluginAiMcpProxyArgs{\n\t\t\tConfig: \u0026konnect.GatewayPluginAiMcpProxyConfigArgs{\n\t\t\t\tConsumerIdentifier: pulumi.String(\"custom_id\"),\n\t\t\t\tDefaultAcls: konnect.GatewayPluginAiMcpProxyConfigDefaultAclArray{\n\t\t\t\t\t\u0026konnect.GatewayPluginAiMcpProxyConfigDefaultAclArgs{\n\t\t\t\t\t\tAllows: pulumi.StringArray{\n\t\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\tDenies: pulumi.StringArray{\n\t\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\tScope: pulumi.String(\"...my_scope...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tIncludeConsumerGroups: pulumi.Bool(false),\n\t\t\t\tLogging: \u0026konnect.GatewayPluginAiMcpProxyConfigLoggingArgs{\n\t\t\t\t\tLogAudits:     pulumi.Bool(true),\n\t\t\t\t\tLogPayloads:   pulumi.Bool(false),\n\t\t\t\t\tLogStatistics: pulumi.Bool(true),\n\t\t\t\t},\n\t\t\t\tMaxRequestBodySize: pulumi.Float64(8),\n\t\t\t\tMode:               pulumi.String(\"passthrough-listener\"),\n\t\t\t\tServer: \u0026konnect.GatewayPluginAiMcpProxyConfigServerArgs{\n\t\t\t\t\tForwardClientHeaders: pulumi.Bool(true),\n\t\t\t\t\tTag:                  pulumi.String(\"...my_tag...\"),\n\t\t\t\t\tTimeout:              pulumi.Float64(7.85),\n\t\t\t\t},\n\t\t\t\tTools: konnect.GatewayPluginAiMcpProxyConfigToolArray{\n\t\t\t\t\t\u0026konnect.GatewayPluginAiMcpProxyConfigToolArgs{\n\t\t\t\t\t\tAcl: \u0026konnect.GatewayPluginAiMcpProxyConfigToolAclArgs{\n\t\t\t\t\t\t\tAllows: pulumi.StringArray{\n\t\t\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tDenies: pulumi.StringArray{\n\t\t\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t\tAnnotations: \u0026konnect.GatewayPluginAiMcpProxyConfigToolAnnotationsArgs{\n\t\t\t\t\t\t\tDestructiveHint: pulumi.Bool(true),\n\t\t\t\t\t\t\tIdempotentHint:  pulumi.Bool(false),\n\t\t\t\t\t\t\tOpenWorldHint:   pulumi.Bool(false),\n\t\t\t\t\t\t\tReadOnlyHint:    pulumi.Bool(false),\n\t\t\t\t\t\t\tTitle:           pulumi.String(\"...my_title...\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\tDescription: pulumi.String(\"...my_description...\"),\n\t\t\t\t\t\tHeaders: pulumi.StringArrayMap{\n\t\t\t\t\t\t\t\"key\": pulumi.StringArray{},\n\t\t\t\t\t\t},\n\t\t\t\t\t\tHost:   pulumi.String(\"...my_host...\"),\n\t\t\t\t\t\tMethod: pulumi.String(\"GET\"),\n\t\t\t\t\t\tName:   pulumi.String(\"...my_name...\"),\n\t\t\t\t\t\tParameters: konnect.GatewayPluginAiMcpProxyConfigToolParameterArray{\n\t\t\t\t\t\t\t\u0026konnect.GatewayPluginAiMcpProxyConfigToolParameterArgs{\n\t\t\t\t\t\t\t\tAdditionalProperties: pulumi.String(\"{ \\\"see\\\": \\\"documentation\\\" }\"),\n\t\t\t\t\t\t\t\tDescription:          pulumi.String(\"...my_description...\"),\n\t\t\t\t\t\t\t\tIn:                   pulumi.String(\"...my_in...\"),\n\t\t\t\t\t\t\t\tName:                 pulumi.String(\"...my_name...\"),\n\t\t\t\t\t\t\t\tRequired:             pulumi.Bool(true),\n\t\t\t\t\t\t\t\tSchema: \u0026konnect.GatewayPluginAiMcpProxyConfigToolParameterSchemaArgs{\n\t\t\t\t\t\t\t\t\tType: pulumi.String(\"...my_type...\"),\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t\tPath: pulumi.String(\"...my_path...\"),\n\t\t\t\t\t\tQuery: pulumi.StringArrayMap{\n\t\t\t\t\t\t\t\"key\": pulumi.StringArray{},\n\t\t\t\t\t\t},\n\t\t\t\t\t\tRequestBody: pulumi.StringMap{\n\t\t\t\t\t\t\t\"key\": pulumi.String(json0),\n\t\t\t\t\t\t},\n\t\t\t\t\t\tResponses: pulumi.StringMap{\n\t\t\t\t\t\t\t\"key\": pulumi.String(json1),\n\t\t\t\t\t\t},\n\t\t\t\t\t\tScheme: pulumi.String(\"https\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tControlPlaneId:            pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tCreatedAt:                 pulumi.Float64(4),\n\t\t\tEnabled:                   pulumi.Bool(false),\n\t\t\tGatewayPluginAiMcpProxyId: pulumi.String(\"...my_id...\"),\n\t\t\tInstanceName:              pulumi.String(\"...my_instance_name...\"),\n\t\t\tOrdering: \u0026konnect.GatewayPluginAiMcpProxyOrderingArgs{\n\t\t\t\tAfter: \u0026konnect.GatewayPluginAiMcpProxyOrderingAfterArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tBefore: \u0026konnect.GatewayPluginAiMcpProxyOrderingBeforeArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tPartials: konnect.GatewayPluginAiMcpProxyPartialArray{\n\t\t\t\t\u0026konnect.GatewayPluginAiMcpProxyPartialArgs{\n\t\t\t\t\tId:   pulumi.String(\"...my_id...\"),\n\t\t\t\t\tName: pulumi.String(\"...my_name...\"),\n\t\t\t\t\tPath: pulumi.String(\"...my_path...\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tProtocols: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"grpc\"),\n\t\t\t},\n\t\t\tRoute: \u0026konnect.GatewayPluginAiMcpProxyRouteArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tService: \u0026konnect.GatewayPluginAiMcpProxyServiceArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"...\"),\n\t\t\t},\n\t\t\tUpdatedAt: pulumi.Float64(1),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.GatewayPluginAiMcpProxy;\nimport com.pulumi.konnect.GatewayPluginAiMcpProxyArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiMcpProxyConfigArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiMcpProxyConfigLoggingArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiMcpProxyConfigServerArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiMcpProxyOrderingArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiMcpProxyOrderingAfterArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiMcpProxyOrderingBeforeArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiMcpProxyPartialArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiMcpProxyRouteArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiMcpProxyServiceArgs;\nimport static com.pulumi.codegen.internal.Serialization.*;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myGatewaypluginaimcpproxy = new GatewayPluginAiMcpProxy(\"myGatewaypluginaimcpproxy\", GatewayPluginAiMcpProxyArgs.builder()\n            .config(GatewayPluginAiMcpProxyConfigArgs.builder()\n                .consumerIdentifier(\"custom_id\")\n                .defaultAcls(GatewayPluginAiMcpProxyConfigDefaultAclArgs.builder()\n                    .allows(\"...\")\n                    .denies(\"...\")\n                    .scope(\"...my_scope...\")\n                    .build())\n                .includeConsumerGroups(false)\n                .logging(GatewayPluginAiMcpProxyConfigLoggingArgs.builder()\n                    .logAudits(true)\n                    .logPayloads(false)\n                    .logStatistics(true)\n                    .build())\n                .maxRequestBodySize(8.0)\n                .mode(\"passthrough-listener\")\n                .server(GatewayPluginAiMcpProxyConfigServerArgs.builder()\n                    .forwardClientHeaders(true)\n                    .tag(\"...my_tag...\")\n                    .timeout(7.85)\n                    .build())\n                .tools(GatewayPluginAiMcpProxyConfigToolArgs.builder()\n                    .acl(GatewayPluginAiMcpProxyConfigToolAclArgs.builder()\n                        .allows(\"...\")\n                        .denies(\"...\")\n                        .build())\n                    .annotations(GatewayPluginAiMcpProxyConfigToolAnnotationsArgs.builder()\n                        .destructiveHint(true)\n                        .idempotentHint(false)\n                        .openWorldHint(false)\n                        .readOnlyHint(false)\n                        .title(\"...my_title...\")\n                        .build())\n                    .description(\"...my_description...\")\n                    .headers(Map.of(\"key\", ))\n                    .host(\"...my_host...\")\n                    .method(\"GET\")\n                    .name(\"...my_name...\")\n                    .parameters(GatewayPluginAiMcpProxyConfigToolParameterArgs.builder()\n                        .additionalProperties(\"{ \\\"see\\\": \\\"documentation\\\" }\")\n                        .description(\"...my_description...\")\n                        .in(\"...my_in...\")\n                        .name(\"...my_name...\")\n                        .required(true)\n                        .schema(GatewayPluginAiMcpProxyConfigToolParameterSchemaArgs.builder()\n                            .type(\"...my_type...\")\n                            .build())\n                        .build())\n                    .path(\"...my_path...\")\n                    .query(Map.of(\"key\", ))\n                    .requestBody(Map.of(\"key\", serializeJson(\n                        \"value\")))\n                    .responses(Map.of(\"key\", serializeJson(\n                        \"value\")))\n                    .scheme(\"https\")\n                    .build())\n                .build())\n            .controlPlaneId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .createdAt(4.0)\n            .enabled(false)\n            .gatewayPluginAiMcpProxyId(\"...my_id...\")\n            .instanceName(\"...my_instance_name...\")\n            .ordering(GatewayPluginAiMcpProxyOrderingArgs.builder()\n                .after(GatewayPluginAiMcpProxyOrderingAfterArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .before(GatewayPluginAiMcpProxyOrderingBeforeArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .build())\n            .partials(GatewayPluginAiMcpProxyPartialArgs.builder()\n                .id(\"...my_id...\")\n                .name(\"...my_name...\")\n                .path(\"...my_path...\")\n                .build())\n            .protocols(\"grpc\")\n            .route(GatewayPluginAiMcpProxyRouteArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .service(GatewayPluginAiMcpProxyServiceArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .tags(\"...\")\n            .updatedAt(1.0)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myGatewaypluginaimcpproxy:\n    type: konnect:GatewayPluginAiMcpProxy\n    name: my_gatewaypluginaimcpproxy\n    properties:\n      config:\n        consumerIdentifier: custom_id\n        defaultAcls:\n          - allows:\n              - '...'\n            denies:\n              - '...'\n            scope: '...my_scope...'\n        includeConsumerGroups: false\n        logging:\n          logAudits: true\n          logPayloads: false\n          logStatistics: true\n        maxRequestBodySize: 8\n        mode: passthrough-listener\n        server:\n          forwardClientHeaders: true\n          tag: '...my_tag...'\n          timeout: 7.85\n        tools:\n          - acl:\n              allows:\n                - '...'\n              denies:\n                - '...'\n            annotations:\n              destructiveHint: true\n              idempotentHint: false\n              openWorldHint: false\n              readOnlyHint: false\n              title: '...my_title...'\n            description: '...my_description...'\n            headers:\n              key: []\n            host: '...my_host...'\n            method: GET\n            name: '...my_name...'\n            parameters:\n              - additionalProperties: '{ \"see\": \"documentation\" }'\n                description: '...my_description...'\n                in: '...my_in...'\n                name: '...my_name...'\n                required: true\n                schema:\n                  type: '...my_type...'\n            path: '...my_path...'\n            query:\n              key: []\n            requestBody:\n              key:\n                fn::toJSON: value\n            responses:\n              key:\n                fn::toJSON: value\n            scheme: https\n      controlPlaneId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      createdAt: 4\n      enabled: false\n      gatewayPluginAiMcpProxyId: '...my_id...'\n      instanceName: '...my_instance_name...'\n      ordering:\n        after:\n          accesses:\n            - '...'\n        before:\n          accesses:\n            - '...'\n      partials:\n        - id: '...my_id...'\n          name: '...my_name...'\n          path: '...my_path...'\n      protocols:\n        - grpc\n      route:\n        id: '...my_id...'\n      service:\n        id: '...my_id...'\n      tags:\n        - '...'\n      updatedAt: 1\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_gateway_plugin_ai_mcp_proxy.my_konnect_gateway_plugin_ai_mcp_proxy\n\n  id = jsonencode({\n\n    control_plane_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/gatewayPluginAiMcpProxy:GatewayPluginAiMcpProxy my_konnect_gateway_plugin_ai_mcp_proxy '{\"control_plane_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"}'\n```\n\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginAiMcpProxyConfig:GatewayPluginAiMcpProxyConfig"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginAiMcpProxyId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginAiMcpProxyOrdering:GatewayPluginAiMcpProxyOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginAiMcpProxyPartial:GatewayPluginAiMcpProxyPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginAiMcpProxyRoute:GatewayPluginAiMcpProxyRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginAiMcpProxyService:GatewayPluginAiMcpProxyService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object","required":["config","controlPlaneId","createdAt","enabled","gatewayPluginAiMcpProxyId","ordering","protocols","route","service","updatedAt"],"inputProperties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginAiMcpProxyConfig:GatewayPluginAiMcpProxyConfig"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginAiMcpProxyId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginAiMcpProxyOrdering:GatewayPluginAiMcpProxyOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginAiMcpProxyPartial:GatewayPluginAiMcpProxyPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginAiMcpProxyRoute:GatewayPluginAiMcpProxyRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginAiMcpProxyService:GatewayPluginAiMcpProxyService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"requiredInputs":["config","controlPlaneId"],"stateInputs":{"description":"Input properties used for looking up and filtering GatewayPluginAiMcpProxy resources.\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginAiMcpProxyConfig:GatewayPluginAiMcpProxyConfig"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginAiMcpProxyId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginAiMcpProxyOrdering:GatewayPluginAiMcpProxyOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginAiMcpProxyPartial:GatewayPluginAiMcpProxyPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginAiMcpProxyRoute:GatewayPluginAiMcpProxyRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginAiMcpProxyService:GatewayPluginAiMcpProxyService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object"}},"konnect:index/gatewayPluginAiPromptCompressor:GatewayPluginAiPromptCompressor":{"description":"GatewayPluginAiPromptCompressor Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myGatewaypluginaipromptcompressor = new konnect.GatewayPluginAiPromptCompressor(\"my_gatewaypluginaipromptcompressor\", {\n    config: {\n        compressionRanges: [{\n            maxTokens: 8,\n            minTokens: 8,\n            value: 5.24,\n        }],\n        compressorType: \"target_token\",\n        compressorUrl: \"...my_compressor_url...\",\n        keepaliveTimeout: 6.37,\n        logTextData: true,\n        messageTypes: [\"user\"],\n        stopOnError: true,\n        timeout: 1.73,\n    },\n    consumer: {\n        id: \"...my_id...\",\n    },\n    consumerGroup: {\n        id: \"...my_id...\",\n    },\n    controlPlaneId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    createdAt: 2,\n    enabled: false,\n    gatewayPluginAiPromptCompressorId: \"...my_id...\",\n    instanceName: \"...my_instance_name...\",\n    ordering: {\n        after: {\n            accesses: [\"...\"],\n        },\n        before: {\n            accesses: [\"...\"],\n        },\n    },\n    partials: [{\n        id: \"...my_id...\",\n        name: \"...my_name...\",\n        path: \"...my_path...\",\n    }],\n    protocols: [\"grpc\"],\n    route: {\n        id: \"...my_id...\",\n    },\n    service: {\n        id: \"...my_id...\",\n    },\n    tags: [\"...\"],\n    updatedAt: 7,\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_gatewaypluginaipromptcompressor = konnect.GatewayPluginAiPromptCompressor(\"my_gatewaypluginaipromptcompressor\",\n    config={\n        \"compression_ranges\": [{\n            \"max_tokens\": 8,\n            \"min_tokens\": 8,\n            \"value\": 5.24,\n        }],\n        \"compressor_type\": \"target_token\",\n        \"compressor_url\": \"...my_compressor_url...\",\n        \"keepalive_timeout\": 6.37,\n        \"log_text_data\": True,\n        \"message_types\": [\"user\"],\n        \"stop_on_error\": True,\n        \"timeout\": 1.73,\n    },\n    consumer={\n        \"id\": \"...my_id...\",\n    },\n    consumer_group={\n        \"id\": \"...my_id...\",\n    },\n    control_plane_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    created_at=2,\n    enabled=False,\n    gateway_plugin_ai_prompt_compressor_id=\"...my_id...\",\n    instance_name=\"...my_instance_name...\",\n    ordering={\n        \"after\": {\n            \"accesses\": [\"...\"],\n        },\n        \"before\": {\n            \"accesses\": [\"...\"],\n        },\n    },\n    partials=[{\n        \"id\": \"...my_id...\",\n        \"name\": \"...my_name...\",\n        \"path\": \"...my_path...\",\n    }],\n    protocols=[\"grpc\"],\n    route={\n        \"id\": \"...my_id...\",\n    },\n    service={\n        \"id\": \"...my_id...\",\n    },\n    tags=[\"...\"],\n    updated_at=7)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myGatewaypluginaipromptcompressor = new Konnect.GatewayPluginAiPromptCompressor(\"my_gatewaypluginaipromptcompressor\", new()\n    {\n        Config = new Konnect.Inputs.GatewayPluginAiPromptCompressorConfigArgs\n        {\n            CompressionRanges = new[]\n            {\n                new Konnect.Inputs.GatewayPluginAiPromptCompressorConfigCompressionRangeArgs\n                {\n                    MaxTokens = 8,\n                    MinTokens = 8,\n                    Value = 5.24,\n                },\n            },\n            CompressorType = \"target_token\",\n            CompressorUrl = \"...my_compressor_url...\",\n            KeepaliveTimeout = 6.37,\n            LogTextData = true,\n            MessageTypes = new[]\n            {\n                \"user\",\n            },\n            StopOnError = true,\n            Timeout = 1.73,\n        },\n        Consumer = new Konnect.Inputs.GatewayPluginAiPromptCompressorConsumerArgs\n        {\n            Id = \"...my_id...\",\n        },\n        ConsumerGroup = new Konnect.Inputs.GatewayPluginAiPromptCompressorConsumerGroupArgs\n        {\n            Id = \"...my_id...\",\n        },\n        ControlPlaneId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        CreatedAt = 2,\n        Enabled = false,\n        GatewayPluginAiPromptCompressorId = \"...my_id...\",\n        InstanceName = \"...my_instance_name...\",\n        Ordering = new Konnect.Inputs.GatewayPluginAiPromptCompressorOrderingArgs\n        {\n            After = new Konnect.Inputs.GatewayPluginAiPromptCompressorOrderingAfterArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n            Before = new Konnect.Inputs.GatewayPluginAiPromptCompressorOrderingBeforeArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n        },\n        Partials = new[]\n        {\n            new Konnect.Inputs.GatewayPluginAiPromptCompressorPartialArgs\n            {\n                Id = \"...my_id...\",\n                Name = \"...my_name...\",\n                Path = \"...my_path...\",\n            },\n        },\n        Protocols = new[]\n        {\n            \"grpc\",\n        },\n        Route = new Konnect.Inputs.GatewayPluginAiPromptCompressorRouteArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Service = new Konnect.Inputs.GatewayPluginAiPromptCompressorServiceArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Tags = new[]\n        {\n            \"...\",\n        },\n        UpdatedAt = 7,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewGatewayPluginAiPromptCompressor(ctx, \"my_gatewaypluginaipromptcompressor\", \u0026konnect.GatewayPluginAiPromptCompressorArgs{\n\t\t\tConfig: \u0026konnect.GatewayPluginAiPromptCompressorConfigArgs{\n\t\t\t\tCompressionRanges: konnect.GatewayPluginAiPromptCompressorConfigCompressionRangeArray{\n\t\t\t\t\t\u0026konnect.GatewayPluginAiPromptCompressorConfigCompressionRangeArgs{\n\t\t\t\t\t\tMaxTokens: pulumi.Float64(8),\n\t\t\t\t\t\tMinTokens: pulumi.Float64(8),\n\t\t\t\t\t\tValue:     pulumi.Float64(5.24),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tCompressorType:   pulumi.String(\"target_token\"),\n\t\t\t\tCompressorUrl:    pulumi.String(\"...my_compressor_url...\"),\n\t\t\t\tKeepaliveTimeout: pulumi.Float64(6.37),\n\t\t\t\tLogTextData:      pulumi.Bool(true),\n\t\t\t\tMessageTypes: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"user\"),\n\t\t\t\t},\n\t\t\t\tStopOnError: pulumi.Bool(true),\n\t\t\t\tTimeout:     pulumi.Float64(1.73),\n\t\t\t},\n\t\t\tConsumer: \u0026konnect.GatewayPluginAiPromptCompressorConsumerArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tConsumerGroup: \u0026konnect.GatewayPluginAiPromptCompressorConsumerGroupArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tControlPlaneId:                    pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tCreatedAt:                         pulumi.Float64(2),\n\t\t\tEnabled:                           pulumi.Bool(false),\n\t\t\tGatewayPluginAiPromptCompressorId: pulumi.String(\"...my_id...\"),\n\t\t\tInstanceName:                      pulumi.String(\"...my_instance_name...\"),\n\t\t\tOrdering: \u0026konnect.GatewayPluginAiPromptCompressorOrderingArgs{\n\t\t\t\tAfter: \u0026konnect.GatewayPluginAiPromptCompressorOrderingAfterArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tBefore: \u0026konnect.GatewayPluginAiPromptCompressorOrderingBeforeArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tPartials: konnect.GatewayPluginAiPromptCompressorPartialArray{\n\t\t\t\t\u0026konnect.GatewayPluginAiPromptCompressorPartialArgs{\n\t\t\t\t\tId:   pulumi.String(\"...my_id...\"),\n\t\t\t\t\tName: pulumi.String(\"...my_name...\"),\n\t\t\t\t\tPath: pulumi.String(\"...my_path...\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tProtocols: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"grpc\"),\n\t\t\t},\n\t\t\tRoute: \u0026konnect.GatewayPluginAiPromptCompressorRouteArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tService: \u0026konnect.GatewayPluginAiPromptCompressorServiceArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"...\"),\n\t\t\t},\n\t\t\tUpdatedAt: pulumi.Float64(7),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.GatewayPluginAiPromptCompressor;\nimport com.pulumi.konnect.GatewayPluginAiPromptCompressorArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiPromptCompressorConfigArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiPromptCompressorConsumerArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiPromptCompressorConsumerGroupArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiPromptCompressorOrderingArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiPromptCompressorOrderingAfterArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiPromptCompressorOrderingBeforeArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiPromptCompressorPartialArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiPromptCompressorRouteArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiPromptCompressorServiceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myGatewaypluginaipromptcompressor = new GatewayPluginAiPromptCompressor(\"myGatewaypluginaipromptcompressor\", GatewayPluginAiPromptCompressorArgs.builder()\n            .config(GatewayPluginAiPromptCompressorConfigArgs.builder()\n                .compressionRanges(GatewayPluginAiPromptCompressorConfigCompressionRangeArgs.builder()\n                    .maxTokens(8.0)\n                    .minTokens(8.0)\n                    .value(5.24)\n                    .build())\n                .compressorType(\"target_token\")\n                .compressorUrl(\"...my_compressor_url...\")\n                .keepaliveTimeout(6.37)\n                .logTextData(true)\n                .messageTypes(\"user\")\n                .stopOnError(true)\n                .timeout(1.73)\n                .build())\n            .consumer(GatewayPluginAiPromptCompressorConsumerArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .consumerGroup(GatewayPluginAiPromptCompressorConsumerGroupArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .controlPlaneId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .createdAt(2.0)\n            .enabled(false)\n            .gatewayPluginAiPromptCompressorId(\"...my_id...\")\n            .instanceName(\"...my_instance_name...\")\n            .ordering(GatewayPluginAiPromptCompressorOrderingArgs.builder()\n                .after(GatewayPluginAiPromptCompressorOrderingAfterArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .before(GatewayPluginAiPromptCompressorOrderingBeforeArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .build())\n            .partials(GatewayPluginAiPromptCompressorPartialArgs.builder()\n                .id(\"...my_id...\")\n                .name(\"...my_name...\")\n                .path(\"...my_path...\")\n                .build())\n            .protocols(\"grpc\")\n            .route(GatewayPluginAiPromptCompressorRouteArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .service(GatewayPluginAiPromptCompressorServiceArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .tags(\"...\")\n            .updatedAt(7.0)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myGatewaypluginaipromptcompressor:\n    type: konnect:GatewayPluginAiPromptCompressor\n    name: my_gatewaypluginaipromptcompressor\n    properties:\n      config:\n        compressionRanges:\n          - maxTokens: 8\n            minTokens: 8\n            value: 5.24\n        compressorType: target_token\n        compressorUrl: '...my_compressor_url...'\n        keepaliveTimeout: 6.37\n        logTextData: true\n        messageTypes:\n          - user\n        stopOnError: true\n        timeout: 1.73\n      consumer:\n        id: '...my_id...'\n      consumerGroup:\n        id: '...my_id...'\n      controlPlaneId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      createdAt: 2\n      enabled: false\n      gatewayPluginAiPromptCompressorId: '...my_id...'\n      instanceName: '...my_instance_name...'\n      ordering:\n        after:\n          accesses:\n            - '...'\n        before:\n          accesses:\n            - '...'\n      partials:\n        - id: '...my_id...'\n          name: '...my_name...'\n          path: '...my_path...'\n      protocols:\n        - grpc\n      route:\n        id: '...my_id...'\n      service:\n        id: '...my_id...'\n      tags:\n        - '...'\n      updatedAt: 7\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_gateway_plugin_ai_prompt_compressor.my_konnect_gateway_plugin_ai_prompt_compressor\n\n  id = jsonencode({\n\n    control_plane_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/gatewayPluginAiPromptCompressor:GatewayPluginAiPromptCompressor my_konnect_gateway_plugin_ai_prompt_compressor '{\"control_plane_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"}'\n```\n\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginAiPromptCompressorConfig:GatewayPluginAiPromptCompressorConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginAiPromptCompressorConsumer:GatewayPluginAiPromptCompressorConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"consumerGroup":{"$ref":"#/types/konnect:index%2FGatewayPluginAiPromptCompressorConsumerGroup:GatewayPluginAiPromptCompressorConsumerGroup","description":"If set, the plugin will activate only for requests where the specified consumer group has been authenticated. (Note that some plugins can not be restricted to consumers groups this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer Groups\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginAiPromptCompressorId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginAiPromptCompressorOrdering:GatewayPluginAiPromptCompressorOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginAiPromptCompressorPartial:GatewayPluginAiPromptCompressorPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginAiPromptCompressorRoute:GatewayPluginAiPromptCompressorRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginAiPromptCompressorService:GatewayPluginAiPromptCompressorService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object","required":["config","consumer","consumerGroup","controlPlaneId","createdAt","enabled","gatewayPluginAiPromptCompressorId","ordering","protocols","route","service","updatedAt"],"inputProperties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginAiPromptCompressorConfig:GatewayPluginAiPromptCompressorConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginAiPromptCompressorConsumer:GatewayPluginAiPromptCompressorConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"consumerGroup":{"$ref":"#/types/konnect:index%2FGatewayPluginAiPromptCompressorConsumerGroup:GatewayPluginAiPromptCompressorConsumerGroup","description":"If set, the plugin will activate only for requests where the specified consumer group has been authenticated. (Note that some plugins can not be restricted to consumers groups this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer Groups\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginAiPromptCompressorId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginAiPromptCompressorOrdering:GatewayPluginAiPromptCompressorOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginAiPromptCompressorPartial:GatewayPluginAiPromptCompressorPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginAiPromptCompressorRoute:GatewayPluginAiPromptCompressorRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginAiPromptCompressorService:GatewayPluginAiPromptCompressorService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"requiredInputs":["config","controlPlaneId"],"stateInputs":{"description":"Input properties used for looking up and filtering GatewayPluginAiPromptCompressor resources.\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginAiPromptCompressorConfig:GatewayPluginAiPromptCompressorConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginAiPromptCompressorConsumer:GatewayPluginAiPromptCompressorConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"consumerGroup":{"$ref":"#/types/konnect:index%2FGatewayPluginAiPromptCompressorConsumerGroup:GatewayPluginAiPromptCompressorConsumerGroup","description":"If set, the plugin will activate only for requests where the specified consumer group has been authenticated. (Note that some plugins can not be restricted to consumers groups this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer Groups\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginAiPromptCompressorId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginAiPromptCompressorOrdering:GatewayPluginAiPromptCompressorOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginAiPromptCompressorPartial:GatewayPluginAiPromptCompressorPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginAiPromptCompressorRoute:GatewayPluginAiPromptCompressorRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginAiPromptCompressorService:GatewayPluginAiPromptCompressorService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object"}},"konnect:index/gatewayPluginAiPromptDecorator:GatewayPluginAiPromptDecorator":{"description":"GatewayPluginAiPromptDecorator Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myGatewaypluginaipromptdecorator = new konnect.GatewayPluginAiPromptDecorator(\"my_gatewaypluginaipromptdecorator\", {\n    config: {\n        llmFormat: \"anthropic\",\n        maxRequestBodySize: 3,\n        prompts: {\n            appends: [{\n                content: \"...my_content...\",\n                role: \"user\",\n            }],\n            prepends: [{\n                content: \"...my_content...\",\n                role: \"assistant\",\n            }],\n        },\n    },\n    consumer: {\n        id: \"...my_id...\",\n    },\n    consumerGroup: {\n        id: \"...my_id...\",\n    },\n    controlPlaneId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    createdAt: 4,\n    enabled: false,\n    gatewayPluginAiPromptDecoratorId: \"...my_id...\",\n    instanceName: \"...my_instance_name...\",\n    ordering: {\n        after: {\n            accesses: [\"...\"],\n        },\n        before: {\n            accesses: [\"...\"],\n        },\n    },\n    partials: [{\n        id: \"...my_id...\",\n        name: \"...my_name...\",\n        path: \"...my_path...\",\n    }],\n    protocols: [\"http\"],\n    route: {\n        id: \"...my_id...\",\n    },\n    service: {\n        id: \"...my_id...\",\n    },\n    tags: [\"...\"],\n    updatedAt: 9,\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_gatewaypluginaipromptdecorator = konnect.GatewayPluginAiPromptDecorator(\"my_gatewaypluginaipromptdecorator\",\n    config={\n        \"llm_format\": \"anthropic\",\n        \"max_request_body_size\": 3,\n        \"prompts\": {\n            \"appends\": [{\n                \"content\": \"...my_content...\",\n                \"role\": \"user\",\n            }],\n            \"prepends\": [{\n                \"content\": \"...my_content...\",\n                \"role\": \"assistant\",\n            }],\n        },\n    },\n    consumer={\n        \"id\": \"...my_id...\",\n    },\n    consumer_group={\n        \"id\": \"...my_id...\",\n    },\n    control_plane_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    created_at=4,\n    enabled=False,\n    gateway_plugin_ai_prompt_decorator_id=\"...my_id...\",\n    instance_name=\"...my_instance_name...\",\n    ordering={\n        \"after\": {\n            \"accesses\": [\"...\"],\n        },\n        \"before\": {\n            \"accesses\": [\"...\"],\n        },\n    },\n    partials=[{\n        \"id\": \"...my_id...\",\n        \"name\": \"...my_name...\",\n        \"path\": \"...my_path...\",\n    }],\n    protocols=[\"http\"],\n    route={\n        \"id\": \"...my_id...\",\n    },\n    service={\n        \"id\": \"...my_id...\",\n    },\n    tags=[\"...\"],\n    updated_at=9)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myGatewaypluginaipromptdecorator = new Konnect.GatewayPluginAiPromptDecorator(\"my_gatewaypluginaipromptdecorator\", new()\n    {\n        Config = new Konnect.Inputs.GatewayPluginAiPromptDecoratorConfigArgs\n        {\n            LlmFormat = \"anthropic\",\n            MaxRequestBodySize = 3,\n            Prompts = new Konnect.Inputs.GatewayPluginAiPromptDecoratorConfigPromptsArgs\n            {\n                Appends = new[]\n                {\n                    new Konnect.Inputs.GatewayPluginAiPromptDecoratorConfigPromptsAppendArgs\n                    {\n                        Content = \"...my_content...\",\n                        Role = \"user\",\n                    },\n                },\n                Prepends = new[]\n                {\n                    new Konnect.Inputs.GatewayPluginAiPromptDecoratorConfigPromptsPrependArgs\n                    {\n                        Content = \"...my_content...\",\n                        Role = \"assistant\",\n                    },\n                },\n            },\n        },\n        Consumer = new Konnect.Inputs.GatewayPluginAiPromptDecoratorConsumerArgs\n        {\n            Id = \"...my_id...\",\n        },\n        ConsumerGroup = new Konnect.Inputs.GatewayPluginAiPromptDecoratorConsumerGroupArgs\n        {\n            Id = \"...my_id...\",\n        },\n        ControlPlaneId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        CreatedAt = 4,\n        Enabled = false,\n        GatewayPluginAiPromptDecoratorId = \"...my_id...\",\n        InstanceName = \"...my_instance_name...\",\n        Ordering = new Konnect.Inputs.GatewayPluginAiPromptDecoratorOrderingArgs\n        {\n            After = new Konnect.Inputs.GatewayPluginAiPromptDecoratorOrderingAfterArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n            Before = new Konnect.Inputs.GatewayPluginAiPromptDecoratorOrderingBeforeArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n        },\n        Partials = new[]\n        {\n            new Konnect.Inputs.GatewayPluginAiPromptDecoratorPartialArgs\n            {\n                Id = \"...my_id...\",\n                Name = \"...my_name...\",\n                Path = \"...my_path...\",\n            },\n        },\n        Protocols = new[]\n        {\n            \"http\",\n        },\n        Route = new Konnect.Inputs.GatewayPluginAiPromptDecoratorRouteArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Service = new Konnect.Inputs.GatewayPluginAiPromptDecoratorServiceArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Tags = new[]\n        {\n            \"...\",\n        },\n        UpdatedAt = 9,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewGatewayPluginAiPromptDecorator(ctx, \"my_gatewaypluginaipromptdecorator\", \u0026konnect.GatewayPluginAiPromptDecoratorArgs{\n\t\t\tConfig: \u0026konnect.GatewayPluginAiPromptDecoratorConfigArgs{\n\t\t\t\tLlmFormat:          pulumi.String(\"anthropic\"),\n\t\t\t\tMaxRequestBodySize: pulumi.Float64(3),\n\t\t\t\tPrompts: \u0026konnect.GatewayPluginAiPromptDecoratorConfigPromptsArgs{\n\t\t\t\t\tAppends: konnect.GatewayPluginAiPromptDecoratorConfigPromptsAppendArray{\n\t\t\t\t\t\t\u0026konnect.GatewayPluginAiPromptDecoratorConfigPromptsAppendArgs{\n\t\t\t\t\t\t\tContent: pulumi.String(\"...my_content...\"),\n\t\t\t\t\t\t\tRole:    pulumi.String(\"user\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tPrepends: konnect.GatewayPluginAiPromptDecoratorConfigPromptsPrependArray{\n\t\t\t\t\t\t\u0026konnect.GatewayPluginAiPromptDecoratorConfigPromptsPrependArgs{\n\t\t\t\t\t\t\tContent: pulumi.String(\"...my_content...\"),\n\t\t\t\t\t\t\tRole:    pulumi.String(\"assistant\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tConsumer: \u0026konnect.GatewayPluginAiPromptDecoratorConsumerArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tConsumerGroup: \u0026konnect.GatewayPluginAiPromptDecoratorConsumerGroupArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tControlPlaneId:                   pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tCreatedAt:                        pulumi.Float64(4),\n\t\t\tEnabled:                          pulumi.Bool(false),\n\t\t\tGatewayPluginAiPromptDecoratorId: pulumi.String(\"...my_id...\"),\n\t\t\tInstanceName:                     pulumi.String(\"...my_instance_name...\"),\n\t\t\tOrdering: \u0026konnect.GatewayPluginAiPromptDecoratorOrderingArgs{\n\t\t\t\tAfter: \u0026konnect.GatewayPluginAiPromptDecoratorOrderingAfterArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tBefore: \u0026konnect.GatewayPluginAiPromptDecoratorOrderingBeforeArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tPartials: konnect.GatewayPluginAiPromptDecoratorPartialArray{\n\t\t\t\t\u0026konnect.GatewayPluginAiPromptDecoratorPartialArgs{\n\t\t\t\t\tId:   pulumi.String(\"...my_id...\"),\n\t\t\t\t\tName: pulumi.String(\"...my_name...\"),\n\t\t\t\t\tPath: pulumi.String(\"...my_path...\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tProtocols: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"http\"),\n\t\t\t},\n\t\t\tRoute: \u0026konnect.GatewayPluginAiPromptDecoratorRouteArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tService: \u0026konnect.GatewayPluginAiPromptDecoratorServiceArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"...\"),\n\t\t\t},\n\t\t\tUpdatedAt: pulumi.Float64(9),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.GatewayPluginAiPromptDecorator;\nimport com.pulumi.konnect.GatewayPluginAiPromptDecoratorArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiPromptDecoratorConfigArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiPromptDecoratorConfigPromptsArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiPromptDecoratorConsumerArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiPromptDecoratorConsumerGroupArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiPromptDecoratorOrderingArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiPromptDecoratorOrderingAfterArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiPromptDecoratorOrderingBeforeArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiPromptDecoratorPartialArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiPromptDecoratorRouteArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiPromptDecoratorServiceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myGatewaypluginaipromptdecorator = new GatewayPluginAiPromptDecorator(\"myGatewaypluginaipromptdecorator\", GatewayPluginAiPromptDecoratorArgs.builder()\n            .config(GatewayPluginAiPromptDecoratorConfigArgs.builder()\n                .llmFormat(\"anthropic\")\n                .maxRequestBodySize(3.0)\n                .prompts(GatewayPluginAiPromptDecoratorConfigPromptsArgs.builder()\n                    .appends(GatewayPluginAiPromptDecoratorConfigPromptsAppendArgs.builder()\n                        .content(\"...my_content...\")\n                        .role(\"user\")\n                        .build())\n                    .prepends(GatewayPluginAiPromptDecoratorConfigPromptsPrependArgs.builder()\n                        .content(\"...my_content...\")\n                        .role(\"assistant\")\n                        .build())\n                    .build())\n                .build())\n            .consumer(GatewayPluginAiPromptDecoratorConsumerArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .consumerGroup(GatewayPluginAiPromptDecoratorConsumerGroupArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .controlPlaneId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .createdAt(4.0)\n            .enabled(false)\n            .gatewayPluginAiPromptDecoratorId(\"...my_id...\")\n            .instanceName(\"...my_instance_name...\")\n            .ordering(GatewayPluginAiPromptDecoratorOrderingArgs.builder()\n                .after(GatewayPluginAiPromptDecoratorOrderingAfterArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .before(GatewayPluginAiPromptDecoratorOrderingBeforeArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .build())\n            .partials(GatewayPluginAiPromptDecoratorPartialArgs.builder()\n                .id(\"...my_id...\")\n                .name(\"...my_name...\")\n                .path(\"...my_path...\")\n                .build())\n            .protocols(\"http\")\n            .route(GatewayPluginAiPromptDecoratorRouteArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .service(GatewayPluginAiPromptDecoratorServiceArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .tags(\"...\")\n            .updatedAt(9.0)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myGatewaypluginaipromptdecorator:\n    type: konnect:GatewayPluginAiPromptDecorator\n    name: my_gatewaypluginaipromptdecorator\n    properties:\n      config:\n        llmFormat: anthropic\n        maxRequestBodySize: 3\n        prompts:\n          appends:\n            - content: '...my_content...'\n              role: user\n          prepends:\n            - content: '...my_content...'\n              role: assistant\n      consumer:\n        id: '...my_id...'\n      consumerGroup:\n        id: '...my_id...'\n      controlPlaneId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      createdAt: 4\n      enabled: false\n      gatewayPluginAiPromptDecoratorId: '...my_id...'\n      instanceName: '...my_instance_name...'\n      ordering:\n        after:\n          accesses:\n            - '...'\n        before:\n          accesses:\n            - '...'\n      partials:\n        - id: '...my_id...'\n          name: '...my_name...'\n          path: '...my_path...'\n      protocols:\n        - http\n      route:\n        id: '...my_id...'\n      service:\n        id: '...my_id...'\n      tags:\n        - '...'\n      updatedAt: 9\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_gateway_plugin_ai_prompt_decorator.my_konnect_gateway_plugin_ai_prompt_decorator\n\n  id = jsonencode({\n\n    control_plane_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/gatewayPluginAiPromptDecorator:GatewayPluginAiPromptDecorator my_konnect_gateway_plugin_ai_prompt_decorator '{\"control_plane_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"}'\n```\n\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginAiPromptDecoratorConfig:GatewayPluginAiPromptDecoratorConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginAiPromptDecoratorConsumer:GatewayPluginAiPromptDecoratorConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"consumerGroup":{"$ref":"#/types/konnect:index%2FGatewayPluginAiPromptDecoratorConsumerGroup:GatewayPluginAiPromptDecoratorConsumerGroup","description":"If set, the plugin will activate only for requests where the specified consumer group has been authenticated. (Note that some plugins can not be restricted to consumers groups this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer Groups\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginAiPromptDecoratorId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginAiPromptDecoratorOrdering:GatewayPluginAiPromptDecoratorOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginAiPromptDecoratorPartial:GatewayPluginAiPromptDecoratorPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginAiPromptDecoratorRoute:GatewayPluginAiPromptDecoratorRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginAiPromptDecoratorService:GatewayPluginAiPromptDecoratorService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object","required":["config","consumer","consumerGroup","controlPlaneId","createdAt","enabled","gatewayPluginAiPromptDecoratorId","ordering","protocols","route","service","updatedAt"],"inputProperties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginAiPromptDecoratorConfig:GatewayPluginAiPromptDecoratorConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginAiPromptDecoratorConsumer:GatewayPluginAiPromptDecoratorConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"consumerGroup":{"$ref":"#/types/konnect:index%2FGatewayPluginAiPromptDecoratorConsumerGroup:GatewayPluginAiPromptDecoratorConsumerGroup","description":"If set, the plugin will activate only for requests where the specified consumer group has been authenticated. (Note that some plugins can not be restricted to consumers groups this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer Groups\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginAiPromptDecoratorId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginAiPromptDecoratorOrdering:GatewayPluginAiPromptDecoratorOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginAiPromptDecoratorPartial:GatewayPluginAiPromptDecoratorPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginAiPromptDecoratorRoute:GatewayPluginAiPromptDecoratorRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginAiPromptDecoratorService:GatewayPluginAiPromptDecoratorService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"requiredInputs":["controlPlaneId"],"stateInputs":{"description":"Input properties used for looking up and filtering GatewayPluginAiPromptDecorator resources.\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginAiPromptDecoratorConfig:GatewayPluginAiPromptDecoratorConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginAiPromptDecoratorConsumer:GatewayPluginAiPromptDecoratorConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"consumerGroup":{"$ref":"#/types/konnect:index%2FGatewayPluginAiPromptDecoratorConsumerGroup:GatewayPluginAiPromptDecoratorConsumerGroup","description":"If set, the plugin will activate only for requests where the specified consumer group has been authenticated. (Note that some plugins can not be restricted to consumers groups this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer Groups\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginAiPromptDecoratorId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginAiPromptDecoratorOrdering:GatewayPluginAiPromptDecoratorOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginAiPromptDecoratorPartial:GatewayPluginAiPromptDecoratorPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginAiPromptDecoratorRoute:GatewayPluginAiPromptDecoratorRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginAiPromptDecoratorService:GatewayPluginAiPromptDecoratorService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object"}},"konnect:index/gatewayPluginAiPromptGuard:GatewayPluginAiPromptGuard":{"description":"GatewayPluginAiPromptGuard Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myGatewaypluginaipromptguard = new konnect.GatewayPluginAiPromptGuard(\"my_gatewaypluginaipromptguard\", {\n    config: {\n        allowAllConversationHistory: false,\n        allowPatterns: [\"...\"],\n        denyPatterns: [\"...\"],\n        genaiCategory: \"realtime/generation\",\n        llmFormat: \"gemini\",\n        matchAllRoles: false,\n        maxRequestBodySize: 10,\n    },\n    consumer: {\n        id: \"...my_id...\",\n    },\n    consumerGroup: {\n        id: \"...my_id...\",\n    },\n    controlPlaneId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    createdAt: 7,\n    enabled: false,\n    gatewayPluginAiPromptGuardId: \"...my_id...\",\n    instanceName: \"...my_instance_name...\",\n    ordering: {\n        after: {\n            accesses: [\"...\"],\n        },\n        before: {\n            accesses: [\"...\"],\n        },\n    },\n    partials: [{\n        id: \"...my_id...\",\n        name: \"...my_name...\",\n        path: \"...my_path...\",\n    }],\n    protocols: [\"http\"],\n    route: {\n        id: \"...my_id...\",\n    },\n    service: {\n        id: \"...my_id...\",\n    },\n    tags: [\"...\"],\n    updatedAt: 8,\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_gatewaypluginaipromptguard = konnect.GatewayPluginAiPromptGuard(\"my_gatewaypluginaipromptguard\",\n    config={\n        \"allow_all_conversation_history\": False,\n        \"allow_patterns\": [\"...\"],\n        \"deny_patterns\": [\"...\"],\n        \"genai_category\": \"realtime/generation\",\n        \"llm_format\": \"gemini\",\n        \"match_all_roles\": False,\n        \"max_request_body_size\": 10,\n    },\n    consumer={\n        \"id\": \"...my_id...\",\n    },\n    consumer_group={\n        \"id\": \"...my_id...\",\n    },\n    control_plane_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    created_at=7,\n    enabled=False,\n    gateway_plugin_ai_prompt_guard_id=\"...my_id...\",\n    instance_name=\"...my_instance_name...\",\n    ordering={\n        \"after\": {\n            \"accesses\": [\"...\"],\n        },\n        \"before\": {\n            \"accesses\": [\"...\"],\n        },\n    },\n    partials=[{\n        \"id\": \"...my_id...\",\n        \"name\": \"...my_name...\",\n        \"path\": \"...my_path...\",\n    }],\n    protocols=[\"http\"],\n    route={\n        \"id\": \"...my_id...\",\n    },\n    service={\n        \"id\": \"...my_id...\",\n    },\n    tags=[\"...\"],\n    updated_at=8)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myGatewaypluginaipromptguard = new Konnect.GatewayPluginAiPromptGuard(\"my_gatewaypluginaipromptguard\", new()\n    {\n        Config = new Konnect.Inputs.GatewayPluginAiPromptGuardConfigArgs\n        {\n            AllowAllConversationHistory = false,\n            AllowPatterns = new[]\n            {\n                \"...\",\n            },\n            DenyPatterns = new[]\n            {\n                \"...\",\n            },\n            GenaiCategory = \"realtime/generation\",\n            LlmFormat = \"gemini\",\n            MatchAllRoles = false,\n            MaxRequestBodySize = 10,\n        },\n        Consumer = new Konnect.Inputs.GatewayPluginAiPromptGuardConsumerArgs\n        {\n            Id = \"...my_id...\",\n        },\n        ConsumerGroup = new Konnect.Inputs.GatewayPluginAiPromptGuardConsumerGroupArgs\n        {\n            Id = \"...my_id...\",\n        },\n        ControlPlaneId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        CreatedAt = 7,\n        Enabled = false,\n        GatewayPluginAiPromptGuardId = \"...my_id...\",\n        InstanceName = \"...my_instance_name...\",\n        Ordering = new Konnect.Inputs.GatewayPluginAiPromptGuardOrderingArgs\n        {\n            After = new Konnect.Inputs.GatewayPluginAiPromptGuardOrderingAfterArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n            Before = new Konnect.Inputs.GatewayPluginAiPromptGuardOrderingBeforeArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n        },\n        Partials = new[]\n        {\n            new Konnect.Inputs.GatewayPluginAiPromptGuardPartialArgs\n            {\n                Id = \"...my_id...\",\n                Name = \"...my_name...\",\n                Path = \"...my_path...\",\n            },\n        },\n        Protocols = new[]\n        {\n            \"http\",\n        },\n        Route = new Konnect.Inputs.GatewayPluginAiPromptGuardRouteArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Service = new Konnect.Inputs.GatewayPluginAiPromptGuardServiceArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Tags = new[]\n        {\n            \"...\",\n        },\n        UpdatedAt = 8,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewGatewayPluginAiPromptGuard(ctx, \"my_gatewaypluginaipromptguard\", \u0026konnect.GatewayPluginAiPromptGuardArgs{\n\t\t\tConfig: \u0026konnect.GatewayPluginAiPromptGuardConfigArgs{\n\t\t\t\tAllowAllConversationHistory: pulumi.Bool(false),\n\t\t\t\tAllowPatterns: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tDenyPatterns: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tGenaiCategory:      pulumi.String(\"realtime/generation\"),\n\t\t\t\tLlmFormat:          pulumi.String(\"gemini\"),\n\t\t\t\tMatchAllRoles:      pulumi.Bool(false),\n\t\t\t\tMaxRequestBodySize: pulumi.Float64(10),\n\t\t\t},\n\t\t\tConsumer: \u0026konnect.GatewayPluginAiPromptGuardConsumerArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tConsumerGroup: \u0026konnect.GatewayPluginAiPromptGuardConsumerGroupArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tControlPlaneId:               pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tCreatedAt:                    pulumi.Float64(7),\n\t\t\tEnabled:                      pulumi.Bool(false),\n\t\t\tGatewayPluginAiPromptGuardId: pulumi.String(\"...my_id...\"),\n\t\t\tInstanceName:                 pulumi.String(\"...my_instance_name...\"),\n\t\t\tOrdering: \u0026konnect.GatewayPluginAiPromptGuardOrderingArgs{\n\t\t\t\tAfter: \u0026konnect.GatewayPluginAiPromptGuardOrderingAfterArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tBefore: \u0026konnect.GatewayPluginAiPromptGuardOrderingBeforeArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tPartials: konnect.GatewayPluginAiPromptGuardPartialArray{\n\t\t\t\t\u0026konnect.GatewayPluginAiPromptGuardPartialArgs{\n\t\t\t\t\tId:   pulumi.String(\"...my_id...\"),\n\t\t\t\t\tName: pulumi.String(\"...my_name...\"),\n\t\t\t\t\tPath: pulumi.String(\"...my_path...\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tProtocols: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"http\"),\n\t\t\t},\n\t\t\tRoute: \u0026konnect.GatewayPluginAiPromptGuardRouteArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tService: \u0026konnect.GatewayPluginAiPromptGuardServiceArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"...\"),\n\t\t\t},\n\t\t\tUpdatedAt: pulumi.Float64(8),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.GatewayPluginAiPromptGuard;\nimport com.pulumi.konnect.GatewayPluginAiPromptGuardArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiPromptGuardConfigArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiPromptGuardConsumerArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiPromptGuardConsumerGroupArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiPromptGuardOrderingArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiPromptGuardOrderingAfterArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiPromptGuardOrderingBeforeArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiPromptGuardPartialArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiPromptGuardRouteArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiPromptGuardServiceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myGatewaypluginaipromptguard = new GatewayPluginAiPromptGuard(\"myGatewaypluginaipromptguard\", GatewayPluginAiPromptGuardArgs.builder()\n            .config(GatewayPluginAiPromptGuardConfigArgs.builder()\n                .allowAllConversationHistory(false)\n                .allowPatterns(\"...\")\n                .denyPatterns(\"...\")\n                .genaiCategory(\"realtime/generation\")\n                .llmFormat(\"gemini\")\n                .matchAllRoles(false)\n                .maxRequestBodySize(10.0)\n                .build())\n            .consumer(GatewayPluginAiPromptGuardConsumerArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .consumerGroup(GatewayPluginAiPromptGuardConsumerGroupArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .controlPlaneId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .createdAt(7.0)\n            .enabled(false)\n            .gatewayPluginAiPromptGuardId(\"...my_id...\")\n            .instanceName(\"...my_instance_name...\")\n            .ordering(GatewayPluginAiPromptGuardOrderingArgs.builder()\n                .after(GatewayPluginAiPromptGuardOrderingAfterArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .before(GatewayPluginAiPromptGuardOrderingBeforeArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .build())\n            .partials(GatewayPluginAiPromptGuardPartialArgs.builder()\n                .id(\"...my_id...\")\n                .name(\"...my_name...\")\n                .path(\"...my_path...\")\n                .build())\n            .protocols(\"http\")\n            .route(GatewayPluginAiPromptGuardRouteArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .service(GatewayPluginAiPromptGuardServiceArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .tags(\"...\")\n            .updatedAt(8.0)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myGatewaypluginaipromptguard:\n    type: konnect:GatewayPluginAiPromptGuard\n    name: my_gatewaypluginaipromptguard\n    properties:\n      config:\n        allowAllConversationHistory: false\n        allowPatterns:\n          - '...'\n        denyPatterns:\n          - '...'\n        genaiCategory: realtime/generation\n        llmFormat: gemini\n        matchAllRoles: false\n        maxRequestBodySize: 10\n      consumer:\n        id: '...my_id...'\n      consumerGroup:\n        id: '...my_id...'\n      controlPlaneId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      createdAt: 7\n      enabled: false\n      gatewayPluginAiPromptGuardId: '...my_id...'\n      instanceName: '...my_instance_name...'\n      ordering:\n        after:\n          accesses:\n            - '...'\n        before:\n          accesses:\n            - '...'\n      partials:\n        - id: '...my_id...'\n          name: '...my_name...'\n          path: '...my_path...'\n      protocols:\n        - http\n      route:\n        id: '...my_id...'\n      service:\n        id: '...my_id...'\n      tags:\n        - '...'\n      updatedAt: 8\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_gateway_plugin_ai_prompt_guard.my_konnect_gateway_plugin_ai_prompt_guard\n\n  id = jsonencode({\n\n    control_plane_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/gatewayPluginAiPromptGuard:GatewayPluginAiPromptGuard my_konnect_gateway_plugin_ai_prompt_guard '{\"control_plane_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"}'\n```\n\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginAiPromptGuardConfig:GatewayPluginAiPromptGuardConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginAiPromptGuardConsumer:GatewayPluginAiPromptGuardConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"consumerGroup":{"$ref":"#/types/konnect:index%2FGatewayPluginAiPromptGuardConsumerGroup:GatewayPluginAiPromptGuardConsumerGroup","description":"If set, the plugin will activate only for requests where the specified consumer group has been authenticated. (Note that some plugins can not be restricted to consumers groups this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer Groups\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginAiPromptGuardId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginAiPromptGuardOrdering:GatewayPluginAiPromptGuardOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginAiPromptGuardPartial:GatewayPluginAiPromptGuardPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginAiPromptGuardRoute:GatewayPluginAiPromptGuardRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginAiPromptGuardService:GatewayPluginAiPromptGuardService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object","required":["config","consumer","consumerGroup","controlPlaneId","createdAt","enabled","gatewayPluginAiPromptGuardId","ordering","protocols","route","service","updatedAt"],"inputProperties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginAiPromptGuardConfig:GatewayPluginAiPromptGuardConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginAiPromptGuardConsumer:GatewayPluginAiPromptGuardConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"consumerGroup":{"$ref":"#/types/konnect:index%2FGatewayPluginAiPromptGuardConsumerGroup:GatewayPluginAiPromptGuardConsumerGroup","description":"If set, the plugin will activate only for requests where the specified consumer group has been authenticated. (Note that some plugins can not be restricted to consumers groups this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer Groups\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginAiPromptGuardId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginAiPromptGuardOrdering:GatewayPluginAiPromptGuardOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginAiPromptGuardPartial:GatewayPluginAiPromptGuardPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginAiPromptGuardRoute:GatewayPluginAiPromptGuardRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginAiPromptGuardService:GatewayPluginAiPromptGuardService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"requiredInputs":["controlPlaneId"],"stateInputs":{"description":"Input properties used for looking up and filtering GatewayPluginAiPromptGuard resources.\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginAiPromptGuardConfig:GatewayPluginAiPromptGuardConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginAiPromptGuardConsumer:GatewayPluginAiPromptGuardConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"consumerGroup":{"$ref":"#/types/konnect:index%2FGatewayPluginAiPromptGuardConsumerGroup:GatewayPluginAiPromptGuardConsumerGroup","description":"If set, the plugin will activate only for requests where the specified consumer group has been authenticated. (Note that some plugins can not be restricted to consumers groups this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer Groups\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginAiPromptGuardId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginAiPromptGuardOrdering:GatewayPluginAiPromptGuardOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginAiPromptGuardPartial:GatewayPluginAiPromptGuardPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginAiPromptGuardRoute:GatewayPluginAiPromptGuardRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginAiPromptGuardService:GatewayPluginAiPromptGuardService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object"}},"konnect:index/gatewayPluginAiPromptTemplate:GatewayPluginAiPromptTemplate":{"description":"GatewayPluginAiPromptTemplate Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myGatewaypluginaiprompttemplate = new konnect.GatewayPluginAiPromptTemplate(\"my_gatewaypluginaiprompttemplate\", {\n    config: {\n        allowUntemplatedRequests: true,\n        logOriginalRequest: false,\n        maxRequestBodySize: 9,\n        templates: [{\n            name: \"...my_name...\",\n            template: \"...my_template...\",\n        }],\n    },\n    consumer: {\n        id: \"...my_id...\",\n    },\n    consumerGroup: {\n        id: \"...my_id...\",\n    },\n    controlPlaneId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    createdAt: 1,\n    enabled: false,\n    gatewayPluginAiPromptTemplateId: \"...my_id...\",\n    instanceName: \"...my_instance_name...\",\n    ordering: {\n        after: {\n            accesses: [\"...\"],\n        },\n        before: {\n            accesses: [\"...\"],\n        },\n    },\n    partials: [{\n        id: \"...my_id...\",\n        name: \"...my_name...\",\n        path: \"...my_path...\",\n    }],\n    protocols: [\"https\"],\n    route: {\n        id: \"...my_id...\",\n    },\n    service: {\n        id: \"...my_id...\",\n    },\n    tags: [\"...\"],\n    updatedAt: 6,\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_gatewaypluginaiprompttemplate = konnect.GatewayPluginAiPromptTemplate(\"my_gatewaypluginaiprompttemplate\",\n    config={\n        \"allow_untemplated_requests\": True,\n        \"log_original_request\": False,\n        \"max_request_body_size\": 9,\n        \"templates\": [{\n            \"name\": \"...my_name...\",\n            \"template\": \"...my_template...\",\n        }],\n    },\n    consumer={\n        \"id\": \"...my_id...\",\n    },\n    consumer_group={\n        \"id\": \"...my_id...\",\n    },\n    control_plane_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    created_at=1,\n    enabled=False,\n    gateway_plugin_ai_prompt_template_id=\"...my_id...\",\n    instance_name=\"...my_instance_name...\",\n    ordering={\n        \"after\": {\n            \"accesses\": [\"...\"],\n        },\n        \"before\": {\n            \"accesses\": [\"...\"],\n        },\n    },\n    partials=[{\n        \"id\": \"...my_id...\",\n        \"name\": \"...my_name...\",\n        \"path\": \"...my_path...\",\n    }],\n    protocols=[\"https\"],\n    route={\n        \"id\": \"...my_id...\",\n    },\n    service={\n        \"id\": \"...my_id...\",\n    },\n    tags=[\"...\"],\n    updated_at=6)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myGatewaypluginaiprompttemplate = new Konnect.GatewayPluginAiPromptTemplate(\"my_gatewaypluginaiprompttemplate\", new()\n    {\n        Config = new Konnect.Inputs.GatewayPluginAiPromptTemplateConfigArgs\n        {\n            AllowUntemplatedRequests = true,\n            LogOriginalRequest = false,\n            MaxRequestBodySize = 9,\n            Templates = new[]\n            {\n                new Konnect.Inputs.GatewayPluginAiPromptTemplateConfigTemplateArgs\n                {\n                    Name = \"...my_name...\",\n                    Template = \"...my_template...\",\n                },\n            },\n        },\n        Consumer = new Konnect.Inputs.GatewayPluginAiPromptTemplateConsumerArgs\n        {\n            Id = \"...my_id...\",\n        },\n        ConsumerGroup = new Konnect.Inputs.GatewayPluginAiPromptTemplateConsumerGroupArgs\n        {\n            Id = \"...my_id...\",\n        },\n        ControlPlaneId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        CreatedAt = 1,\n        Enabled = false,\n        GatewayPluginAiPromptTemplateId = \"...my_id...\",\n        InstanceName = \"...my_instance_name...\",\n        Ordering = new Konnect.Inputs.GatewayPluginAiPromptTemplateOrderingArgs\n        {\n            After = new Konnect.Inputs.GatewayPluginAiPromptTemplateOrderingAfterArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n            Before = new Konnect.Inputs.GatewayPluginAiPromptTemplateOrderingBeforeArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n        },\n        Partials = new[]\n        {\n            new Konnect.Inputs.GatewayPluginAiPromptTemplatePartialArgs\n            {\n                Id = \"...my_id...\",\n                Name = \"...my_name...\",\n                Path = \"...my_path...\",\n            },\n        },\n        Protocols = new[]\n        {\n            \"https\",\n        },\n        Route = new Konnect.Inputs.GatewayPluginAiPromptTemplateRouteArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Service = new Konnect.Inputs.GatewayPluginAiPromptTemplateServiceArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Tags = new[]\n        {\n            \"...\",\n        },\n        UpdatedAt = 6,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewGatewayPluginAiPromptTemplate(ctx, \"my_gatewaypluginaiprompttemplate\", \u0026konnect.GatewayPluginAiPromptTemplateArgs{\n\t\t\tConfig: \u0026konnect.GatewayPluginAiPromptTemplateConfigArgs{\n\t\t\t\tAllowUntemplatedRequests: pulumi.Bool(true),\n\t\t\t\tLogOriginalRequest:       pulumi.Bool(false),\n\t\t\t\tMaxRequestBodySize:       pulumi.Float64(9),\n\t\t\t\tTemplates: konnect.GatewayPluginAiPromptTemplateConfigTemplateArray{\n\t\t\t\t\t\u0026konnect.GatewayPluginAiPromptTemplateConfigTemplateArgs{\n\t\t\t\t\t\tName:     pulumi.String(\"...my_name...\"),\n\t\t\t\t\t\tTemplate: pulumi.String(\"...my_template...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tConsumer: \u0026konnect.GatewayPluginAiPromptTemplateConsumerArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tConsumerGroup: \u0026konnect.GatewayPluginAiPromptTemplateConsumerGroupArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tControlPlaneId:                  pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tCreatedAt:                       pulumi.Float64(1),\n\t\t\tEnabled:                         pulumi.Bool(false),\n\t\t\tGatewayPluginAiPromptTemplateId: pulumi.String(\"...my_id...\"),\n\t\t\tInstanceName:                    pulumi.String(\"...my_instance_name...\"),\n\t\t\tOrdering: \u0026konnect.GatewayPluginAiPromptTemplateOrderingArgs{\n\t\t\t\tAfter: \u0026konnect.GatewayPluginAiPromptTemplateOrderingAfterArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tBefore: \u0026konnect.GatewayPluginAiPromptTemplateOrderingBeforeArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tPartials: konnect.GatewayPluginAiPromptTemplatePartialArray{\n\t\t\t\t\u0026konnect.GatewayPluginAiPromptTemplatePartialArgs{\n\t\t\t\t\tId:   pulumi.String(\"...my_id...\"),\n\t\t\t\t\tName: pulumi.String(\"...my_name...\"),\n\t\t\t\t\tPath: pulumi.String(\"...my_path...\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tProtocols: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"https\"),\n\t\t\t},\n\t\t\tRoute: \u0026konnect.GatewayPluginAiPromptTemplateRouteArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tService: \u0026konnect.GatewayPluginAiPromptTemplateServiceArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"...\"),\n\t\t\t},\n\t\t\tUpdatedAt: pulumi.Float64(6),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.GatewayPluginAiPromptTemplate;\nimport com.pulumi.konnect.GatewayPluginAiPromptTemplateArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiPromptTemplateConfigArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiPromptTemplateConsumerArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiPromptTemplateConsumerGroupArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiPromptTemplateOrderingArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiPromptTemplateOrderingAfterArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiPromptTemplateOrderingBeforeArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiPromptTemplatePartialArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiPromptTemplateRouteArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiPromptTemplateServiceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myGatewaypluginaiprompttemplate = new GatewayPluginAiPromptTemplate(\"myGatewaypluginaiprompttemplate\", GatewayPluginAiPromptTemplateArgs.builder()\n            .config(GatewayPluginAiPromptTemplateConfigArgs.builder()\n                .allowUntemplatedRequests(true)\n                .logOriginalRequest(false)\n                .maxRequestBodySize(9.0)\n                .templates(GatewayPluginAiPromptTemplateConfigTemplateArgs.builder()\n                    .name(\"...my_name...\")\n                    .template(\"...my_template...\")\n                    .build())\n                .build())\n            .consumer(GatewayPluginAiPromptTemplateConsumerArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .consumerGroup(GatewayPluginAiPromptTemplateConsumerGroupArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .controlPlaneId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .createdAt(1.0)\n            .enabled(false)\n            .gatewayPluginAiPromptTemplateId(\"...my_id...\")\n            .instanceName(\"...my_instance_name...\")\n            .ordering(GatewayPluginAiPromptTemplateOrderingArgs.builder()\n                .after(GatewayPluginAiPromptTemplateOrderingAfterArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .before(GatewayPluginAiPromptTemplateOrderingBeforeArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .build())\n            .partials(GatewayPluginAiPromptTemplatePartialArgs.builder()\n                .id(\"...my_id...\")\n                .name(\"...my_name...\")\n                .path(\"...my_path...\")\n                .build())\n            .protocols(\"https\")\n            .route(GatewayPluginAiPromptTemplateRouteArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .service(GatewayPluginAiPromptTemplateServiceArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .tags(\"...\")\n            .updatedAt(6.0)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myGatewaypluginaiprompttemplate:\n    type: konnect:GatewayPluginAiPromptTemplate\n    name: my_gatewaypluginaiprompttemplate\n    properties:\n      config:\n        allowUntemplatedRequests: true\n        logOriginalRequest: false\n        maxRequestBodySize: 9\n        templates:\n          - name: '...my_name...'\n            template: '...my_template...'\n      consumer:\n        id: '...my_id...'\n      consumerGroup:\n        id: '...my_id...'\n      controlPlaneId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      createdAt: 1\n      enabled: false\n      gatewayPluginAiPromptTemplateId: '...my_id...'\n      instanceName: '...my_instance_name...'\n      ordering:\n        after:\n          accesses:\n            - '...'\n        before:\n          accesses:\n            - '...'\n      partials:\n        - id: '...my_id...'\n          name: '...my_name...'\n          path: '...my_path...'\n      protocols:\n        - https\n      route:\n        id: '...my_id...'\n      service:\n        id: '...my_id...'\n      tags:\n        - '...'\n      updatedAt: 6\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_gateway_plugin_ai_prompt_template.my_konnect_gateway_plugin_ai_prompt_template\n\n  id = jsonencode({\n\n    control_plane_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/gatewayPluginAiPromptTemplate:GatewayPluginAiPromptTemplate my_konnect_gateway_plugin_ai_prompt_template '{\"control_plane_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"}'\n```\n\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginAiPromptTemplateConfig:GatewayPluginAiPromptTemplateConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginAiPromptTemplateConsumer:GatewayPluginAiPromptTemplateConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"consumerGroup":{"$ref":"#/types/konnect:index%2FGatewayPluginAiPromptTemplateConsumerGroup:GatewayPluginAiPromptTemplateConsumerGroup","description":"If set, the plugin will activate only for requests where the specified consumer group has been authenticated. (Note that some plugins can not be restricted to consumers groups this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer Groups\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginAiPromptTemplateId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginAiPromptTemplateOrdering:GatewayPluginAiPromptTemplateOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginAiPromptTemplatePartial:GatewayPluginAiPromptTemplatePartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginAiPromptTemplateRoute:GatewayPluginAiPromptTemplateRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginAiPromptTemplateService:GatewayPluginAiPromptTemplateService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object","required":["config","consumer","consumerGroup","controlPlaneId","createdAt","enabled","gatewayPluginAiPromptTemplateId","ordering","protocols","route","service","updatedAt"],"inputProperties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginAiPromptTemplateConfig:GatewayPluginAiPromptTemplateConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginAiPromptTemplateConsumer:GatewayPluginAiPromptTemplateConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"consumerGroup":{"$ref":"#/types/konnect:index%2FGatewayPluginAiPromptTemplateConsumerGroup:GatewayPluginAiPromptTemplateConsumerGroup","description":"If set, the plugin will activate only for requests where the specified consumer group has been authenticated. (Note that some plugins can not be restricted to consumers groups this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer Groups\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginAiPromptTemplateId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginAiPromptTemplateOrdering:GatewayPluginAiPromptTemplateOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginAiPromptTemplatePartial:GatewayPluginAiPromptTemplatePartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginAiPromptTemplateRoute:GatewayPluginAiPromptTemplateRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginAiPromptTemplateService:GatewayPluginAiPromptTemplateService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"requiredInputs":["config","controlPlaneId"],"stateInputs":{"description":"Input properties used for looking up and filtering GatewayPluginAiPromptTemplate resources.\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginAiPromptTemplateConfig:GatewayPluginAiPromptTemplateConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginAiPromptTemplateConsumer:GatewayPluginAiPromptTemplateConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"consumerGroup":{"$ref":"#/types/konnect:index%2FGatewayPluginAiPromptTemplateConsumerGroup:GatewayPluginAiPromptTemplateConsumerGroup","description":"If set, the plugin will activate only for requests where the specified consumer group has been authenticated. (Note that some plugins can not be restricted to consumers groups this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer Groups\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginAiPromptTemplateId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginAiPromptTemplateOrdering:GatewayPluginAiPromptTemplateOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginAiPromptTemplatePartial:GatewayPluginAiPromptTemplatePartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginAiPromptTemplateRoute:GatewayPluginAiPromptTemplateRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginAiPromptTemplateService:GatewayPluginAiPromptTemplateService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object"}},"konnect:index/gatewayPluginAiProxy:GatewayPluginAiProxy":{"description":"GatewayPluginAiProxy Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myGatewaypluginaiproxy = new konnect.GatewayPluginAiProxy(\"my_gatewaypluginaiproxy\", {\n    config: {\n        auth: {\n            allowOverride: true,\n            awsAccessKeyId: \"...my_aws_access_key_id...\",\n            awsSecretAccessKey: \"...my_aws_secret_access_key...\",\n            azureClientId: \"...my_azure_client_id...\",\n            azureClientSecret: \"...my_azure_client_secret...\",\n            azureTenantId: \"...my_azure_tenant_id...\",\n            azureUseManagedIdentity: true,\n            gcpServiceAccountJson: \"...my_gcp_service_account_json...\",\n            gcpUseServiceAccount: false,\n            headerName: \"...my_header_name...\",\n            headerValue: \"...my_header_value...\",\n            paramLocation: \"query\",\n            paramName: \"...my_param_name...\",\n            paramValue: \"...my_param_value...\",\n        },\n        genaiCategory: \"image/generation\",\n        llmFormat: \"anthropic\",\n        logging: {\n            logPayloads: false,\n            logStatistics: true,\n        },\n        maxRequestBodySize: 10,\n        model: {\n            name: \"...my_name...\",\n            options: {\n                anthropicVersion: \"...my_anthropic_version...\",\n                azureApiVersion: \"...my_azure_api_version...\",\n                azureDeploymentId: \"...my_azure_deployment_id...\",\n                azureInstance: \"...my_azure_instance...\",\n                bedrock: {\n                    awsAssumeRoleArn: \"...my_aws_assume_role_arn...\",\n                    awsRegion: \"...my_aws_region...\",\n                    awsRoleSessionName: \"...my_aws_role_session_name...\",\n                    awsStsEndpointUrl: \"...my_aws_sts_endpoint_url...\",\n                    embeddingsNormalize: false,\n                    performanceConfigLatency: \"...my_performance_config_latency...\",\n                    videoOutputS3Uri: \"...my_video_output_s3_uri...\",\n                },\n                cohere: {\n                    embeddingInputType: \"image\",\n                    waitForModel: false,\n                },\n                dashscope: {\n                    international: true,\n                },\n                embeddingsDimensions: 6,\n                gemini: {\n                    apiEndpoint: \"...my_api_endpoint...\",\n                    endpointId: \"...my_endpoint_id...\",\n                    locationId: \"...my_location_id...\",\n                    projectId: \"...my_project_id...\",\n                },\n                huggingface: {\n                    useCache: true,\n                    waitForModel: false,\n                },\n                inputCost: 7.42,\n                llama2Format: \"openai\",\n                maxTokens: 9,\n                mistralFormat: \"ollama\",\n                outputCost: 1.81,\n                temperature: 2.26,\n                topK: 359,\n                topP: 0.14,\n                upstreamPath: \"...my_upstream_path...\",\n                upstreamUrl: \"...my_upstream_url...\",\n            },\n            provider: \"anthropic\",\n        },\n        modelNameHeader: true,\n        responseStreaming: \"allow\",\n        routeType: \"audio/v1/audio/speech\",\n    },\n    consumer: {\n        id: \"...my_id...\",\n    },\n    consumerGroup: {\n        id: \"...my_id...\",\n    },\n    controlPlaneId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    createdAt: 9,\n    enabled: true,\n    gatewayPluginAiProxyId: \"...my_id...\",\n    instanceName: \"...my_instance_name...\",\n    ordering: {\n        after: {\n            accesses: [\"...\"],\n        },\n        before: {\n            accesses: [\"...\"],\n        },\n    },\n    partials: [{\n        id: \"...my_id...\",\n        name: \"...my_name...\",\n        path: \"...my_path...\",\n    }],\n    protocols: [\"http\"],\n    route: {\n        id: \"...my_id...\",\n    },\n    service: {\n        id: \"...my_id...\",\n    },\n    tags: [\"...\"],\n    updatedAt: 3,\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_gatewaypluginaiproxy = konnect.GatewayPluginAiProxy(\"my_gatewaypluginaiproxy\",\n    config={\n        \"auth\": {\n            \"allow_override\": True,\n            \"aws_access_key_id\": \"...my_aws_access_key_id...\",\n            \"aws_secret_access_key\": \"...my_aws_secret_access_key...\",\n            \"azure_client_id\": \"...my_azure_client_id...\",\n            \"azure_client_secret\": \"...my_azure_client_secret...\",\n            \"azure_tenant_id\": \"...my_azure_tenant_id...\",\n            \"azure_use_managed_identity\": True,\n            \"gcp_service_account_json\": \"...my_gcp_service_account_json...\",\n            \"gcp_use_service_account\": False,\n            \"header_name\": \"...my_header_name...\",\n            \"header_value\": \"...my_header_value...\",\n            \"param_location\": \"query\",\n            \"param_name\": \"...my_param_name...\",\n            \"param_value\": \"...my_param_value...\",\n        },\n        \"genai_category\": \"image/generation\",\n        \"llm_format\": \"anthropic\",\n        \"logging\": {\n            \"log_payloads\": False,\n            \"log_statistics\": True,\n        },\n        \"max_request_body_size\": 10,\n        \"model\": {\n            \"name\": \"...my_name...\",\n            \"options\": {\n                \"anthropic_version\": \"...my_anthropic_version...\",\n                \"azure_api_version\": \"...my_azure_api_version...\",\n                \"azure_deployment_id\": \"...my_azure_deployment_id...\",\n                \"azure_instance\": \"...my_azure_instance...\",\n                \"bedrock\": {\n                    \"aws_assume_role_arn\": \"...my_aws_assume_role_arn...\",\n                    \"aws_region\": \"...my_aws_region...\",\n                    \"aws_role_session_name\": \"...my_aws_role_session_name...\",\n                    \"aws_sts_endpoint_url\": \"...my_aws_sts_endpoint_url...\",\n                    \"embeddings_normalize\": False,\n                    \"performance_config_latency\": \"...my_performance_config_latency...\",\n                    \"video_output_s3_uri\": \"...my_video_output_s3_uri...\",\n                },\n                \"cohere\": {\n                    \"embedding_input_type\": \"image\",\n                    \"wait_for_model\": False,\n                },\n                \"dashscope\": {\n                    \"international\": True,\n                },\n                \"embeddings_dimensions\": 6,\n                \"gemini\": {\n                    \"api_endpoint\": \"...my_api_endpoint...\",\n                    \"endpoint_id\": \"...my_endpoint_id...\",\n                    \"location_id\": \"...my_location_id...\",\n                    \"project_id\": \"...my_project_id...\",\n                },\n                \"huggingface\": {\n                    \"use_cache\": True,\n                    \"wait_for_model\": False,\n                },\n                \"input_cost\": 7.42,\n                \"llama2_format\": \"openai\",\n                \"max_tokens\": 9,\n                \"mistral_format\": \"ollama\",\n                \"output_cost\": 1.81,\n                \"temperature\": 2.26,\n                \"top_k\": 359,\n                \"top_p\": 0.14,\n                \"upstream_path\": \"...my_upstream_path...\",\n                \"upstream_url\": \"...my_upstream_url...\",\n            },\n            \"provider\": \"anthropic\",\n        },\n        \"model_name_header\": True,\n        \"response_streaming\": \"allow\",\n        \"route_type\": \"audio/v1/audio/speech\",\n    },\n    consumer={\n        \"id\": \"...my_id...\",\n    },\n    consumer_group={\n        \"id\": \"...my_id...\",\n    },\n    control_plane_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    created_at=9,\n    enabled=True,\n    gateway_plugin_ai_proxy_id=\"...my_id...\",\n    instance_name=\"...my_instance_name...\",\n    ordering={\n        \"after\": {\n            \"accesses\": [\"...\"],\n        },\n        \"before\": {\n            \"accesses\": [\"...\"],\n        },\n    },\n    partials=[{\n        \"id\": \"...my_id...\",\n        \"name\": \"...my_name...\",\n        \"path\": \"...my_path...\",\n    }],\n    protocols=[\"http\"],\n    route={\n        \"id\": \"...my_id...\",\n    },\n    service={\n        \"id\": \"...my_id...\",\n    },\n    tags=[\"...\"],\n    updated_at=3)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myGatewaypluginaiproxy = new Konnect.GatewayPluginAiProxy(\"my_gatewaypluginaiproxy\", new()\n    {\n        Config = new Konnect.Inputs.GatewayPluginAiProxyConfigArgs\n        {\n            Auth = new Konnect.Inputs.GatewayPluginAiProxyConfigAuthArgs\n            {\n                AllowOverride = true,\n                AwsAccessKeyId = \"...my_aws_access_key_id...\",\n                AwsSecretAccessKey = \"...my_aws_secret_access_key...\",\n                AzureClientId = \"...my_azure_client_id...\",\n                AzureClientSecret = \"...my_azure_client_secret...\",\n                AzureTenantId = \"...my_azure_tenant_id...\",\n                AzureUseManagedIdentity = true,\n                GcpServiceAccountJson = \"...my_gcp_service_account_json...\",\n                GcpUseServiceAccount = false,\n                HeaderName = \"...my_header_name...\",\n                HeaderValue = \"...my_header_value...\",\n                ParamLocation = \"query\",\n                ParamName = \"...my_param_name...\",\n                ParamValue = \"...my_param_value...\",\n            },\n            GenaiCategory = \"image/generation\",\n            LlmFormat = \"anthropic\",\n            Logging = new Konnect.Inputs.GatewayPluginAiProxyConfigLoggingArgs\n            {\n                LogPayloads = false,\n                LogStatistics = true,\n            },\n            MaxRequestBodySize = 10,\n            Model = new Konnect.Inputs.GatewayPluginAiProxyConfigModelArgs\n            {\n                Name = \"...my_name...\",\n                Options = new Konnect.Inputs.GatewayPluginAiProxyConfigModelOptionsArgs\n                {\n                    AnthropicVersion = \"...my_anthropic_version...\",\n                    AzureApiVersion = \"...my_azure_api_version...\",\n                    AzureDeploymentId = \"...my_azure_deployment_id...\",\n                    AzureInstance = \"...my_azure_instance...\",\n                    Bedrock = new Konnect.Inputs.GatewayPluginAiProxyConfigModelOptionsBedrockArgs\n                    {\n                        AwsAssumeRoleArn = \"...my_aws_assume_role_arn...\",\n                        AwsRegion = \"...my_aws_region...\",\n                        AwsRoleSessionName = \"...my_aws_role_session_name...\",\n                        AwsStsEndpointUrl = \"...my_aws_sts_endpoint_url...\",\n                        EmbeddingsNormalize = false,\n                        PerformanceConfigLatency = \"...my_performance_config_latency...\",\n                        VideoOutputS3Uri = \"...my_video_output_s3_uri...\",\n                    },\n                    Cohere = new Konnect.Inputs.GatewayPluginAiProxyConfigModelOptionsCohereArgs\n                    {\n                        EmbeddingInputType = \"image\",\n                        WaitForModel = false,\n                    },\n                    Dashscope = new Konnect.Inputs.GatewayPluginAiProxyConfigModelOptionsDashscopeArgs\n                    {\n                        International = true,\n                    },\n                    EmbeddingsDimensions = 6,\n                    Gemini = new Konnect.Inputs.GatewayPluginAiProxyConfigModelOptionsGeminiArgs\n                    {\n                        ApiEndpoint = \"...my_api_endpoint...\",\n                        EndpointId = \"...my_endpoint_id...\",\n                        LocationId = \"...my_location_id...\",\n                        ProjectId = \"...my_project_id...\",\n                    },\n                    Huggingface = new Konnect.Inputs.GatewayPluginAiProxyConfigModelOptionsHuggingfaceArgs\n                    {\n                        UseCache = true,\n                        WaitForModel = false,\n                    },\n                    InputCost = 7.42,\n                    Llama2Format = \"openai\",\n                    MaxTokens = 9,\n                    MistralFormat = \"ollama\",\n                    OutputCost = 1.81,\n                    Temperature = 2.26,\n                    TopK = 359,\n                    TopP = 0.14,\n                    UpstreamPath = \"...my_upstream_path...\",\n                    UpstreamUrl = \"...my_upstream_url...\",\n                },\n                Provider = \"anthropic\",\n            },\n            ModelNameHeader = true,\n            ResponseStreaming = \"allow\",\n            RouteType = \"audio/v1/audio/speech\",\n        },\n        Consumer = new Konnect.Inputs.GatewayPluginAiProxyConsumerArgs\n        {\n            Id = \"...my_id...\",\n        },\n        ConsumerGroup = new Konnect.Inputs.GatewayPluginAiProxyConsumerGroupArgs\n        {\n            Id = \"...my_id...\",\n        },\n        ControlPlaneId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        CreatedAt = 9,\n        Enabled = true,\n        GatewayPluginAiProxyId = \"...my_id...\",\n        InstanceName = \"...my_instance_name...\",\n        Ordering = new Konnect.Inputs.GatewayPluginAiProxyOrderingArgs\n        {\n            After = new Konnect.Inputs.GatewayPluginAiProxyOrderingAfterArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n            Before = new Konnect.Inputs.GatewayPluginAiProxyOrderingBeforeArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n        },\n        Partials = new[]\n        {\n            new Konnect.Inputs.GatewayPluginAiProxyPartialArgs\n            {\n                Id = \"...my_id...\",\n                Name = \"...my_name...\",\n                Path = \"...my_path...\",\n            },\n        },\n        Protocols = new[]\n        {\n            \"http\",\n        },\n        Route = new Konnect.Inputs.GatewayPluginAiProxyRouteArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Service = new Konnect.Inputs.GatewayPluginAiProxyServiceArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Tags = new[]\n        {\n            \"...\",\n        },\n        UpdatedAt = 3,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewGatewayPluginAiProxy(ctx, \"my_gatewaypluginaiproxy\", \u0026konnect.GatewayPluginAiProxyArgs{\n\t\t\tConfig: \u0026konnect.GatewayPluginAiProxyConfigArgs{\n\t\t\t\tAuth: \u0026konnect.GatewayPluginAiProxyConfigAuthArgs{\n\t\t\t\t\tAllowOverride:           pulumi.Bool(true),\n\t\t\t\t\tAwsAccessKeyId:          pulumi.String(\"...my_aws_access_key_id...\"),\n\t\t\t\t\tAwsSecretAccessKey:      pulumi.String(\"...my_aws_secret_access_key...\"),\n\t\t\t\t\tAzureClientId:           pulumi.String(\"...my_azure_client_id...\"),\n\t\t\t\t\tAzureClientSecret:       pulumi.String(\"...my_azure_client_secret...\"),\n\t\t\t\t\tAzureTenantId:           pulumi.String(\"...my_azure_tenant_id...\"),\n\t\t\t\t\tAzureUseManagedIdentity: pulumi.Bool(true),\n\t\t\t\t\tGcpServiceAccountJson:   pulumi.String(\"...my_gcp_service_account_json...\"),\n\t\t\t\t\tGcpUseServiceAccount:    pulumi.Bool(false),\n\t\t\t\t\tHeaderName:              pulumi.String(\"...my_header_name...\"),\n\t\t\t\t\tHeaderValue:             pulumi.String(\"...my_header_value...\"),\n\t\t\t\t\tParamLocation:           pulumi.String(\"query\"),\n\t\t\t\t\tParamName:               pulumi.String(\"...my_param_name...\"),\n\t\t\t\t\tParamValue:              pulumi.String(\"...my_param_value...\"),\n\t\t\t\t},\n\t\t\t\tGenaiCategory: pulumi.String(\"image/generation\"),\n\t\t\t\tLlmFormat:     pulumi.String(\"anthropic\"),\n\t\t\t\tLogging: \u0026konnect.GatewayPluginAiProxyConfigLoggingArgs{\n\t\t\t\t\tLogPayloads:   pulumi.Bool(false),\n\t\t\t\t\tLogStatistics: pulumi.Bool(true),\n\t\t\t\t},\n\t\t\t\tMaxRequestBodySize: pulumi.Float64(10),\n\t\t\t\tModel: \u0026konnect.GatewayPluginAiProxyConfigModelArgs{\n\t\t\t\t\tName: pulumi.String(\"...my_name...\"),\n\t\t\t\t\tOptions: \u0026konnect.GatewayPluginAiProxyConfigModelOptionsArgs{\n\t\t\t\t\t\tAnthropicVersion:  pulumi.String(\"...my_anthropic_version...\"),\n\t\t\t\t\t\tAzureApiVersion:   pulumi.String(\"...my_azure_api_version...\"),\n\t\t\t\t\t\tAzureDeploymentId: pulumi.String(\"...my_azure_deployment_id...\"),\n\t\t\t\t\t\tAzureInstance:     pulumi.String(\"...my_azure_instance...\"),\n\t\t\t\t\t\tBedrock: \u0026konnect.GatewayPluginAiProxyConfigModelOptionsBedrockArgs{\n\t\t\t\t\t\t\tAwsAssumeRoleArn:         pulumi.String(\"...my_aws_assume_role_arn...\"),\n\t\t\t\t\t\t\tAwsRegion:                pulumi.String(\"...my_aws_region...\"),\n\t\t\t\t\t\t\tAwsRoleSessionName:       pulumi.String(\"...my_aws_role_session_name...\"),\n\t\t\t\t\t\t\tAwsStsEndpointUrl:        pulumi.String(\"...my_aws_sts_endpoint_url...\"),\n\t\t\t\t\t\t\tEmbeddingsNormalize:      pulumi.Bool(false),\n\t\t\t\t\t\t\tPerformanceConfigLatency: pulumi.String(\"...my_performance_config_latency...\"),\n\t\t\t\t\t\t\tVideoOutputS3Uri:         pulumi.String(\"...my_video_output_s3_uri...\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\tCohere: \u0026konnect.GatewayPluginAiProxyConfigModelOptionsCohereArgs{\n\t\t\t\t\t\t\tEmbeddingInputType: pulumi.String(\"image\"),\n\t\t\t\t\t\t\tWaitForModel:       pulumi.Bool(false),\n\t\t\t\t\t\t},\n\t\t\t\t\t\tDashscope: \u0026konnect.GatewayPluginAiProxyConfigModelOptionsDashscopeArgs{\n\t\t\t\t\t\t\tInternational: pulumi.Bool(true),\n\t\t\t\t\t\t},\n\t\t\t\t\t\tEmbeddingsDimensions: pulumi.Float64(6),\n\t\t\t\t\t\tGemini: \u0026konnect.GatewayPluginAiProxyConfigModelOptionsGeminiArgs{\n\t\t\t\t\t\t\tApiEndpoint: pulumi.String(\"...my_api_endpoint...\"),\n\t\t\t\t\t\t\tEndpointId:  pulumi.String(\"...my_endpoint_id...\"),\n\t\t\t\t\t\t\tLocationId:  pulumi.String(\"...my_location_id...\"),\n\t\t\t\t\t\t\tProjectId:   pulumi.String(\"...my_project_id...\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\tHuggingface: \u0026konnect.GatewayPluginAiProxyConfigModelOptionsHuggingfaceArgs{\n\t\t\t\t\t\t\tUseCache:     pulumi.Bool(true),\n\t\t\t\t\t\t\tWaitForModel: pulumi.Bool(false),\n\t\t\t\t\t\t},\n\t\t\t\t\t\tInputCost:     pulumi.Float64(7.42),\n\t\t\t\t\t\tLlama2Format:  pulumi.String(\"openai\"),\n\t\t\t\t\t\tMaxTokens:     pulumi.Float64(9),\n\t\t\t\t\t\tMistralFormat: pulumi.String(\"ollama\"),\n\t\t\t\t\t\tOutputCost:    pulumi.Float64(1.81),\n\t\t\t\t\t\tTemperature:   pulumi.Float64(2.26),\n\t\t\t\t\t\tTopK:          pulumi.Float64(359),\n\t\t\t\t\t\tTopP:          pulumi.Float64(0.14),\n\t\t\t\t\t\tUpstreamPath:  pulumi.String(\"...my_upstream_path...\"),\n\t\t\t\t\t\tUpstreamUrl:   pulumi.String(\"...my_upstream_url...\"),\n\t\t\t\t\t},\n\t\t\t\t\tProvider: pulumi.String(\"anthropic\"),\n\t\t\t\t},\n\t\t\t\tModelNameHeader:   pulumi.Bool(true),\n\t\t\t\tResponseStreaming: pulumi.String(\"allow\"),\n\t\t\t\tRouteType:         pulumi.String(\"audio/v1/audio/speech\"),\n\t\t\t},\n\t\t\tConsumer: \u0026konnect.GatewayPluginAiProxyConsumerArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tConsumerGroup: \u0026konnect.GatewayPluginAiProxyConsumerGroupArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tControlPlaneId:         pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tCreatedAt:              pulumi.Float64(9),\n\t\t\tEnabled:                pulumi.Bool(true),\n\t\t\tGatewayPluginAiProxyId: pulumi.String(\"...my_id...\"),\n\t\t\tInstanceName:           pulumi.String(\"...my_instance_name...\"),\n\t\t\tOrdering: \u0026konnect.GatewayPluginAiProxyOrderingArgs{\n\t\t\t\tAfter: \u0026konnect.GatewayPluginAiProxyOrderingAfterArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tBefore: \u0026konnect.GatewayPluginAiProxyOrderingBeforeArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tPartials: konnect.GatewayPluginAiProxyPartialArray{\n\t\t\t\t\u0026konnect.GatewayPluginAiProxyPartialArgs{\n\t\t\t\t\tId:   pulumi.String(\"...my_id...\"),\n\t\t\t\t\tName: pulumi.String(\"...my_name...\"),\n\t\t\t\t\tPath: pulumi.String(\"...my_path...\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tProtocols: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"http\"),\n\t\t\t},\n\t\t\tRoute: \u0026konnect.GatewayPluginAiProxyRouteArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tService: \u0026konnect.GatewayPluginAiProxyServiceArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"...\"),\n\t\t\t},\n\t\t\tUpdatedAt: pulumi.Float64(3),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.GatewayPluginAiProxy;\nimport com.pulumi.konnect.GatewayPluginAiProxyArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiProxyConfigArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiProxyConfigAuthArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiProxyConfigLoggingArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiProxyConfigModelArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiProxyConfigModelOptionsArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiProxyConfigModelOptionsBedrockArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiProxyConfigModelOptionsCohereArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiProxyConfigModelOptionsDashscopeArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiProxyConfigModelOptionsGeminiArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiProxyConfigModelOptionsHuggingfaceArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiProxyConsumerArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiProxyConsumerGroupArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiProxyOrderingArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiProxyOrderingAfterArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiProxyOrderingBeforeArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiProxyPartialArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiProxyRouteArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiProxyServiceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myGatewaypluginaiproxy = new GatewayPluginAiProxy(\"myGatewaypluginaiproxy\", GatewayPluginAiProxyArgs.builder()\n            .config(GatewayPluginAiProxyConfigArgs.builder()\n                .auth(GatewayPluginAiProxyConfigAuthArgs.builder()\n                    .allowOverride(true)\n                    .awsAccessKeyId(\"...my_aws_access_key_id...\")\n                    .awsSecretAccessKey(\"...my_aws_secret_access_key...\")\n                    .azureClientId(\"...my_azure_client_id...\")\n                    .azureClientSecret(\"...my_azure_client_secret...\")\n                    .azureTenantId(\"...my_azure_tenant_id...\")\n                    .azureUseManagedIdentity(true)\n                    .gcpServiceAccountJson(\"...my_gcp_service_account_json...\")\n                    .gcpUseServiceAccount(false)\n                    .headerName(\"...my_header_name...\")\n                    .headerValue(\"...my_header_value...\")\n                    .paramLocation(\"query\")\n                    .paramName(\"...my_param_name...\")\n                    .paramValue(\"...my_param_value...\")\n                    .build())\n                .genaiCategory(\"image/generation\")\n                .llmFormat(\"anthropic\")\n                .logging(GatewayPluginAiProxyConfigLoggingArgs.builder()\n                    .logPayloads(false)\n                    .logStatistics(true)\n                    .build())\n                .maxRequestBodySize(10.0)\n                .model(GatewayPluginAiProxyConfigModelArgs.builder()\n                    .name(\"...my_name...\")\n                    .options(GatewayPluginAiProxyConfigModelOptionsArgs.builder()\n                        .anthropicVersion(\"...my_anthropic_version...\")\n                        .azureApiVersion(\"...my_azure_api_version...\")\n                        .azureDeploymentId(\"...my_azure_deployment_id...\")\n                        .azureInstance(\"...my_azure_instance...\")\n                        .bedrock(GatewayPluginAiProxyConfigModelOptionsBedrockArgs.builder()\n                            .awsAssumeRoleArn(\"...my_aws_assume_role_arn...\")\n                            .awsRegion(\"...my_aws_region...\")\n                            .awsRoleSessionName(\"...my_aws_role_session_name...\")\n                            .awsStsEndpointUrl(\"...my_aws_sts_endpoint_url...\")\n                            .embeddingsNormalize(false)\n                            .performanceConfigLatency(\"...my_performance_config_latency...\")\n                            .videoOutputS3Uri(\"...my_video_output_s3_uri...\")\n                            .build())\n                        .cohere(GatewayPluginAiProxyConfigModelOptionsCohereArgs.builder()\n                            .embeddingInputType(\"image\")\n                            .waitForModel(false)\n                            .build())\n                        .dashscope(GatewayPluginAiProxyConfigModelOptionsDashscopeArgs.builder()\n                            .international(true)\n                            .build())\n                        .embeddingsDimensions(6.0)\n                        .gemini(GatewayPluginAiProxyConfigModelOptionsGeminiArgs.builder()\n                            .apiEndpoint(\"...my_api_endpoint...\")\n                            .endpointId(\"...my_endpoint_id...\")\n                            .locationId(\"...my_location_id...\")\n                            .projectId(\"...my_project_id...\")\n                            .build())\n                        .huggingface(GatewayPluginAiProxyConfigModelOptionsHuggingfaceArgs.builder()\n                            .useCache(true)\n                            .waitForModel(false)\n                            .build())\n                        .inputCost(7.42)\n                        .llama2Format(\"openai\")\n                        .maxTokens(9.0)\n                        .mistralFormat(\"ollama\")\n                        .outputCost(1.81)\n                        .temperature(2.26)\n                        .topK(359.0)\n                        .topP(0.14)\n                        .upstreamPath(\"...my_upstream_path...\")\n                        .upstreamUrl(\"...my_upstream_url...\")\n                        .build())\n                    .provider(\"anthropic\")\n                    .build())\n                .modelNameHeader(true)\n                .responseStreaming(\"allow\")\n                .routeType(\"audio/v1/audio/speech\")\n                .build())\n            .consumer(GatewayPluginAiProxyConsumerArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .consumerGroup(GatewayPluginAiProxyConsumerGroupArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .controlPlaneId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .createdAt(9.0)\n            .enabled(true)\n            .gatewayPluginAiProxyId(\"...my_id...\")\n            .instanceName(\"...my_instance_name...\")\n            .ordering(GatewayPluginAiProxyOrderingArgs.builder()\n                .after(GatewayPluginAiProxyOrderingAfterArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .before(GatewayPluginAiProxyOrderingBeforeArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .build())\n            .partials(GatewayPluginAiProxyPartialArgs.builder()\n                .id(\"...my_id...\")\n                .name(\"...my_name...\")\n                .path(\"...my_path...\")\n                .build())\n            .protocols(\"http\")\n            .route(GatewayPluginAiProxyRouteArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .service(GatewayPluginAiProxyServiceArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .tags(\"...\")\n            .updatedAt(3.0)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myGatewaypluginaiproxy:\n    type: konnect:GatewayPluginAiProxy\n    name: my_gatewaypluginaiproxy\n    properties:\n      config:\n        auth:\n          allowOverride: true\n          awsAccessKeyId: '...my_aws_access_key_id...'\n          awsSecretAccessKey: '...my_aws_secret_access_key...'\n          azureClientId: '...my_azure_client_id...'\n          azureClientSecret: '...my_azure_client_secret...'\n          azureTenantId: '...my_azure_tenant_id...'\n          azureUseManagedIdentity: true\n          gcpServiceAccountJson: '...my_gcp_service_account_json...'\n          gcpUseServiceAccount: false\n          headerName: '...my_header_name...'\n          headerValue: '...my_header_value...'\n          paramLocation: query\n          paramName: '...my_param_name...'\n          paramValue: '...my_param_value...'\n        genaiCategory: image/generation\n        llmFormat: anthropic\n        logging:\n          logPayloads: false\n          logStatistics: true\n        maxRequestBodySize: 10\n        model:\n          name: '...my_name...'\n          options:\n            anthropicVersion: '...my_anthropic_version...'\n            azureApiVersion: '...my_azure_api_version...'\n            azureDeploymentId: '...my_azure_deployment_id...'\n            azureInstance: '...my_azure_instance...'\n            bedrock:\n              awsAssumeRoleArn: '...my_aws_assume_role_arn...'\n              awsRegion: '...my_aws_region...'\n              awsRoleSessionName: '...my_aws_role_session_name...'\n              awsStsEndpointUrl: '...my_aws_sts_endpoint_url...'\n              embeddingsNormalize: false\n              performanceConfigLatency: '...my_performance_config_latency...'\n              videoOutputS3Uri: '...my_video_output_s3_uri...'\n            cohere:\n              embeddingInputType: image\n              waitForModel: false\n            dashscope:\n              international: true\n            embeddingsDimensions: 6\n            gemini:\n              apiEndpoint: '...my_api_endpoint...'\n              endpointId: '...my_endpoint_id...'\n              locationId: '...my_location_id...'\n              projectId: '...my_project_id...'\n            huggingface:\n              useCache: true\n              waitForModel: false\n            inputCost: 7.42\n            llama2Format: openai\n            maxTokens: 9\n            mistralFormat: ollama\n            outputCost: 1.81\n            temperature: 2.26\n            topK: 359\n            topP: 0.14\n            upstreamPath: '...my_upstream_path...'\n            upstreamUrl: '...my_upstream_url...'\n          provider: anthropic\n        modelNameHeader: true\n        responseStreaming: allow\n        routeType: audio/v1/audio/speech\n      consumer:\n        id: '...my_id...'\n      consumerGroup:\n        id: '...my_id...'\n      controlPlaneId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      createdAt: 9\n      enabled: true\n      gatewayPluginAiProxyId: '...my_id...'\n      instanceName: '...my_instance_name...'\n      ordering:\n        after:\n          accesses:\n            - '...'\n        before:\n          accesses:\n            - '...'\n      partials:\n        - id: '...my_id...'\n          name: '...my_name...'\n          path: '...my_path...'\n      protocols:\n        - http\n      route:\n        id: '...my_id...'\n      service:\n        id: '...my_id...'\n      tags:\n        - '...'\n      updatedAt: 3\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_gateway_plugin_ai_proxy.my_konnect_gateway_plugin_ai_proxy\n\n  id = jsonencode({\n\n    control_plane_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/gatewayPluginAiProxy:GatewayPluginAiProxy my_konnect_gateway_plugin_ai_proxy '{\"control_plane_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"}'\n```\n\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginAiProxyConfig:GatewayPluginAiProxyConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginAiProxyConsumer:GatewayPluginAiProxyConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"consumerGroup":{"$ref":"#/types/konnect:index%2FGatewayPluginAiProxyConsumerGroup:GatewayPluginAiProxyConsumerGroup","description":"If set, the plugin will activate only for requests where the specified consumer group has been authenticated. (Note that some plugins can not be restricted to consumers groups this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer Groups\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginAiProxyId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginAiProxyOrdering:GatewayPluginAiProxyOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginAiProxyPartial:GatewayPluginAiProxyPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A list of the request protocols that will trigger this plugin. The default value, as well as the possible values allowed on this field, may change depending on the plugin type. For example, plugins that only work in stream mode will only support tcp and tls. Default: [\"grpc\",\"grpcs\",\"http\",\"https\",\"ws\",\"wss\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginAiProxyRoute:GatewayPluginAiProxyRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginAiProxyService:GatewayPluginAiProxyService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object","required":["config","consumer","consumerGroup","controlPlaneId","createdAt","enabled","gatewayPluginAiProxyId","ordering","protocols","route","service","updatedAt"],"inputProperties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginAiProxyConfig:GatewayPluginAiProxyConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginAiProxyConsumer:GatewayPluginAiProxyConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"consumerGroup":{"$ref":"#/types/konnect:index%2FGatewayPluginAiProxyConsumerGroup:GatewayPluginAiProxyConsumerGroup","description":"If set, the plugin will activate only for requests where the specified consumer group has been authenticated. (Note that some plugins can not be restricted to consumers groups this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer Groups\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginAiProxyId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginAiProxyOrdering:GatewayPluginAiProxyOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginAiProxyPartial:GatewayPluginAiProxyPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A list of the request protocols that will trigger this plugin. The default value, as well as the possible values allowed on this field, may change depending on the plugin type. For example, plugins that only work in stream mode will only support tcp and tls. Default: [\"grpc\",\"grpcs\",\"http\",\"https\",\"ws\",\"wss\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginAiProxyRoute:GatewayPluginAiProxyRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginAiProxyService:GatewayPluginAiProxyService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"requiredInputs":["config","controlPlaneId"],"stateInputs":{"description":"Input properties used for looking up and filtering GatewayPluginAiProxy resources.\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginAiProxyConfig:GatewayPluginAiProxyConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginAiProxyConsumer:GatewayPluginAiProxyConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"consumerGroup":{"$ref":"#/types/konnect:index%2FGatewayPluginAiProxyConsumerGroup:GatewayPluginAiProxyConsumerGroup","description":"If set, the plugin will activate only for requests where the specified consumer group has been authenticated. (Note that some plugins can not be restricted to consumers groups this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer Groups\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginAiProxyId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginAiProxyOrdering:GatewayPluginAiProxyOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginAiProxyPartial:GatewayPluginAiProxyPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A list of the request protocols that will trigger this plugin. The default value, as well as the possible values allowed on this field, may change depending on the plugin type. For example, plugins that only work in stream mode will only support tcp and tls. Default: [\"grpc\",\"grpcs\",\"http\",\"https\",\"ws\",\"wss\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginAiProxyRoute:GatewayPluginAiProxyRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginAiProxyService:GatewayPluginAiProxyService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object"}},"konnect:index/gatewayPluginAiProxyAdvanced:GatewayPluginAiProxyAdvanced":{"description":"GatewayPluginAiProxyAdvanced Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myGatewaypluginaiproxyadvanced = new konnect.GatewayPluginAiProxyAdvanced(\"my_gatewaypluginaiproxyadvanced\", {\n    config: {\n        balancer: {\n            algorithm: \"lowest-latency\",\n            connectTimeout: 1069677678,\n            failTimeout: 251767862,\n            failoverCriterias: [\"http_403\"],\n            hashOnHeader: \"...my_hash_on_header...\",\n            latencyStrategy: \"e2e\",\n            maxFails: 32489,\n            readTimeout: 1128540479,\n            retries: 14809,\n            slots: 27573,\n            tokensCountStrategy: \"prompt-tokens\",\n            writeTimeout: 1475900303,\n        },\n        embeddings: {\n            auth: {\n                allowOverride: true,\n                awsAccessKeyId: \"...my_aws_access_key_id...\",\n                awsSecretAccessKey: \"...my_aws_secret_access_key...\",\n                azureClientId: \"...my_azure_client_id...\",\n                azureClientSecret: \"...my_azure_client_secret...\",\n                azureTenantId: \"...my_azure_tenant_id...\",\n                azureUseManagedIdentity: false,\n                gcpServiceAccountJson: \"...my_gcp_service_account_json...\",\n                gcpUseServiceAccount: false,\n                headerName: \"...my_header_name...\",\n                headerValue: \"...my_header_value...\",\n                paramLocation: \"body\",\n                paramName: \"...my_param_name...\",\n                paramValue: \"...my_param_value...\",\n            },\n            model: {\n                name: \"...my_name...\",\n                options: {\n                    azure: {\n                        apiVersion: \"...my_api_version...\",\n                        deploymentId: \"...my_deployment_id...\",\n                        instance: \"...my_instance...\",\n                    },\n                    bedrock: {\n                        awsAssumeRoleArn: \"...my_aws_assume_role_arn...\",\n                        awsRegion: \"...my_aws_region...\",\n                        awsRoleSessionName: \"...my_aws_role_session_name...\",\n                        awsStsEndpointUrl: \"...my_aws_sts_endpoint_url...\",\n                        embeddingsNormalize: true,\n                        performanceConfigLatency: \"...my_performance_config_latency...\",\n                        videoOutputS3Uri: \"...my_video_output_s3_uri...\",\n                    },\n                    gemini: {\n                        apiEndpoint: \"...my_api_endpoint...\",\n                        locationId: \"...my_location_id...\",\n                        projectId: \"...my_project_id...\",\n                    },\n                    huggingface: {\n                        useCache: false,\n                        waitForModel: false,\n                    },\n                    upstreamUrl: \"...my_upstream_url...\",\n                },\n                provider: \"gemini\",\n            },\n        },\n        genaiCategory: \"realtime/generation\",\n        llmFormat: \"huggingface\",\n        maxRequestBodySize: 5,\n        modelNameHeader: true,\n        responseStreaming: \"allow\",\n        targets: [{\n            auth: {\n                allowOverride: true,\n                awsAccessKeyId: \"...my_aws_access_key_id...\",\n                awsSecretAccessKey: \"...my_aws_secret_access_key...\",\n                azureClientId: \"...my_azure_client_id...\",\n                azureClientSecret: \"...my_azure_client_secret...\",\n                azureTenantId: \"...my_azure_tenant_id...\",\n                azureUseManagedIdentity: true,\n                gcpServiceAccountJson: \"...my_gcp_service_account_json...\",\n                gcpUseServiceAccount: false,\n                headerName: \"...my_header_name...\",\n                headerValue: \"...my_header_value...\",\n                paramLocation: \"query\",\n                paramName: \"...my_param_name...\",\n                paramValue: \"...my_param_value...\",\n            },\n            description: \"...my_description...\",\n            logging: {\n                logPayloads: true,\n                logStatistics: true,\n            },\n            metadata: {\n                key: JSON.stringify(\"value\"),\n            },\n            model: {\n                name: \"...my_name...\",\n                options: {\n                    anthropicVersion: \"...my_anthropic_version...\",\n                    azureApiVersion: \"...my_azure_api_version...\",\n                    azureDeploymentId: \"...my_azure_deployment_id...\",\n                    azureInstance: \"...my_azure_instance...\",\n                    bedrock: {\n                        awsAssumeRoleArn: \"...my_aws_assume_role_arn...\",\n                        awsRegion: \"...my_aws_region...\",\n                        awsRoleSessionName: \"...my_aws_role_session_name...\",\n                        awsStsEndpointUrl: \"...my_aws_sts_endpoint_url...\",\n                        embeddingsNormalize: true,\n                        performanceConfigLatency: \"...my_performance_config_latency...\",\n                        videoOutputS3Uri: \"...my_video_output_s3_uri...\",\n                    },\n                    cohere: {\n                        embeddingInputType: \"classification\",\n                        waitForModel: true,\n                    },\n                    dashscope: {\n                        international: true,\n                    },\n                    embeddingsDimensions: 6,\n                    gemini: {\n                        apiEndpoint: \"...my_api_endpoint...\",\n                        endpointId: \"...my_endpoint_id...\",\n                        locationId: \"...my_location_id...\",\n                        projectId: \"...my_project_id...\",\n                    },\n                    huggingface: {\n                        useCache: true,\n                        waitForModel: false,\n                    },\n                    inputCost: 2.57,\n                    llama2Format: \"openai\",\n                    maxTokens: 2,\n                    mistralFormat: \"openai\",\n                    outputCost: 7.34,\n                    temperature: 3.51,\n                    topK: 204,\n                    topP: 0.37,\n                    upstreamPath: \"...my_upstream_path...\",\n                    upstreamUrl: \"...my_upstream_url...\",\n                },\n                provider: \"cerebras\",\n            },\n            routeType: \"llm/v1/assistants\",\n            weight: 58189,\n        }],\n        vectordb: {\n            dimensions: 3,\n            distanceMetric: \"euclidean\",\n            pgvector: {\n                database: \"...my_database...\",\n                host: \"...my_host...\",\n                password: \"...my_password...\",\n                port: 5,\n                ssl: true,\n                sslCert: \"...my_ssl_cert...\",\n                sslCertKey: \"...my_ssl_cert_key...\",\n                sslRequired: true,\n                sslVerify: true,\n                sslVersion: \"any\",\n                timeout: 3.81,\n                user: \"...my_user...\",\n            },\n            redis: {\n                cloudAuthentication: {\n                    authProvider: \"azure\",\n                    awsAccessKeyId: \"...my_aws_access_key_id...\",\n                    awsAssumeRoleArn: \"...my_aws_assume_role_arn...\",\n                    awsCacheName: \"...my_aws_cache_name...\",\n                    awsIsServerless: false,\n                    awsRegion: \"...my_aws_region...\",\n                    awsRoleSessionName: \"...my_aws_role_session_name...\",\n                    awsSecretAccessKey: \"...my_aws_secret_access_key...\",\n                    azureClientId: \"...my_azure_client_id...\",\n                    azureClientSecret: \"...my_azure_client_secret...\",\n                    azureTenantId: \"...my_azure_tenant_id...\",\n                    gcpServiceAccountJson: \"...my_gcp_service_account_json...\",\n                },\n                clusterMaxRedirections: 4,\n                clusterNodes: [{\n                    ip: \"...my_ip...\",\n                    port: 50944,\n                }],\n                connectTimeout: 656443886,\n                connectionIsProxied: false,\n                database: 10,\n                host: \"...my_host...\",\n                keepaliveBacklog: 251172057,\n                keepalivePoolSize: 1127137192,\n                password: \"...my_password...\",\n                port: 31201,\n                readTimeout: 1222450418,\n                sendTimeout: 1541453227,\n                sentinelMaster: \"...my_sentinel_master...\",\n                sentinelNodes: [{\n                    host: \"...my_host...\",\n                    port: 61553,\n                }],\n                sentinelPassword: \"...my_sentinel_password...\",\n                sentinelRole: \"master\",\n                sentinelUsername: \"...my_sentinel_username...\",\n                serverName: \"...my_server_name...\",\n                ssl: true,\n                sslVerify: false,\n                username: \"...my_username...\",\n            },\n            strategy: \"pgvector\",\n            threshold: 6.56,\n        },\n    },\n    consumer: {\n        id: \"...my_id...\",\n    },\n    consumerGroup: {\n        id: \"...my_id...\",\n    },\n    controlPlaneId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    createdAt: 3,\n    enabled: true,\n    gatewayPluginAiProxyAdvancedId: \"...my_id...\",\n    instanceName: \"...my_instance_name...\",\n    ordering: {\n        after: {\n            accesses: [\"...\"],\n        },\n        before: {\n            accesses: [\"...\"],\n        },\n    },\n    partials: [{\n        id: \"...my_id...\",\n        name: \"...my_name...\",\n        path: \"...my_path...\",\n    }],\n    protocols: [\"ws\"],\n    route: {\n        id: \"...my_id...\",\n    },\n    service: {\n        id: \"...my_id...\",\n    },\n    tags: [\"...\"],\n    updatedAt: 8,\n});\n```\n```python\nimport pulumi\nimport json\nimport pulumi_konnect as konnect\n\nmy_gatewaypluginaiproxyadvanced = konnect.GatewayPluginAiProxyAdvanced(\"my_gatewaypluginaiproxyadvanced\",\n    config={\n        \"balancer\": {\n            \"algorithm\": \"lowest-latency\",\n            \"connect_timeout\": 1069677678,\n            \"fail_timeout\": 251767862,\n            \"failover_criterias\": [\"http_403\"],\n            \"hash_on_header\": \"...my_hash_on_header...\",\n            \"latency_strategy\": \"e2e\",\n            \"max_fails\": 32489,\n            \"read_timeout\": 1128540479,\n            \"retries\": 14809,\n            \"slots\": 27573,\n            \"tokens_count_strategy\": \"prompt-tokens\",\n            \"write_timeout\": 1475900303,\n        },\n        \"embeddings\": {\n            \"auth\": {\n                \"allow_override\": True,\n                \"aws_access_key_id\": \"...my_aws_access_key_id...\",\n                \"aws_secret_access_key\": \"...my_aws_secret_access_key...\",\n                \"azure_client_id\": \"...my_azure_client_id...\",\n                \"azure_client_secret\": \"...my_azure_client_secret...\",\n                \"azure_tenant_id\": \"...my_azure_tenant_id...\",\n                \"azure_use_managed_identity\": False,\n                \"gcp_service_account_json\": \"...my_gcp_service_account_json...\",\n                \"gcp_use_service_account\": False,\n                \"header_name\": \"...my_header_name...\",\n                \"header_value\": \"...my_header_value...\",\n                \"param_location\": \"body\",\n                \"param_name\": \"...my_param_name...\",\n                \"param_value\": \"...my_param_value...\",\n            },\n            \"model\": {\n                \"name\": \"...my_name...\",\n                \"options\": {\n                    \"azure\": {\n                        \"api_version\": \"...my_api_version...\",\n                        \"deployment_id\": \"...my_deployment_id...\",\n                        \"instance\": \"...my_instance...\",\n                    },\n                    \"bedrock\": {\n                        \"aws_assume_role_arn\": \"...my_aws_assume_role_arn...\",\n                        \"aws_region\": \"...my_aws_region...\",\n                        \"aws_role_session_name\": \"...my_aws_role_session_name...\",\n                        \"aws_sts_endpoint_url\": \"...my_aws_sts_endpoint_url...\",\n                        \"embeddings_normalize\": True,\n                        \"performance_config_latency\": \"...my_performance_config_latency...\",\n                        \"video_output_s3_uri\": \"...my_video_output_s3_uri...\",\n                    },\n                    \"gemini\": {\n                        \"api_endpoint\": \"...my_api_endpoint...\",\n                        \"location_id\": \"...my_location_id...\",\n                        \"project_id\": \"...my_project_id...\",\n                    },\n                    \"huggingface\": {\n                        \"use_cache\": False,\n                        \"wait_for_model\": False,\n                    },\n                    \"upstream_url\": \"...my_upstream_url...\",\n                },\n                \"provider\": \"gemini\",\n            },\n        },\n        \"genai_category\": \"realtime/generation\",\n        \"llm_format\": \"huggingface\",\n        \"max_request_body_size\": 5,\n        \"model_name_header\": True,\n        \"response_streaming\": \"allow\",\n        \"targets\": [{\n            \"auth\": {\n                \"allow_override\": True,\n                \"aws_access_key_id\": \"...my_aws_access_key_id...\",\n                \"aws_secret_access_key\": \"...my_aws_secret_access_key...\",\n                \"azure_client_id\": \"...my_azure_client_id...\",\n                \"azure_client_secret\": \"...my_azure_client_secret...\",\n                \"azure_tenant_id\": \"...my_azure_tenant_id...\",\n                \"azure_use_managed_identity\": True,\n                \"gcp_service_account_json\": \"...my_gcp_service_account_json...\",\n                \"gcp_use_service_account\": False,\n                \"header_name\": \"...my_header_name...\",\n                \"header_value\": \"...my_header_value...\",\n                \"param_location\": \"query\",\n                \"param_name\": \"...my_param_name...\",\n                \"param_value\": \"...my_param_value...\",\n            },\n            \"description\": \"...my_description...\",\n            \"logging\": {\n                \"log_payloads\": True,\n                \"log_statistics\": True,\n            },\n            \"metadata\": {\n                \"key\": json.dumps(\"value\"),\n            },\n            \"model\": {\n                \"name\": \"...my_name...\",\n                \"options\": {\n                    \"anthropic_version\": \"...my_anthropic_version...\",\n                    \"azure_api_version\": \"...my_azure_api_version...\",\n                    \"azure_deployment_id\": \"...my_azure_deployment_id...\",\n                    \"azure_instance\": \"...my_azure_instance...\",\n                    \"bedrock\": {\n                        \"aws_assume_role_arn\": \"...my_aws_assume_role_arn...\",\n                        \"aws_region\": \"...my_aws_region...\",\n                        \"aws_role_session_name\": \"...my_aws_role_session_name...\",\n                        \"aws_sts_endpoint_url\": \"...my_aws_sts_endpoint_url...\",\n                        \"embeddings_normalize\": True,\n                        \"performance_config_latency\": \"...my_performance_config_latency...\",\n                        \"video_output_s3_uri\": \"...my_video_output_s3_uri...\",\n                    },\n                    \"cohere\": {\n                        \"embedding_input_type\": \"classification\",\n                        \"wait_for_model\": True,\n                    },\n                    \"dashscope\": {\n                        \"international\": True,\n                    },\n                    \"embeddings_dimensions\": 6,\n                    \"gemini\": {\n                        \"api_endpoint\": \"...my_api_endpoint...\",\n                        \"endpoint_id\": \"...my_endpoint_id...\",\n                        \"location_id\": \"...my_location_id...\",\n                        \"project_id\": \"...my_project_id...\",\n                    },\n                    \"huggingface\": {\n                        \"use_cache\": True,\n                        \"wait_for_model\": False,\n                    },\n                    \"input_cost\": 2.57,\n                    \"llama2_format\": \"openai\",\n                    \"max_tokens\": 2,\n                    \"mistral_format\": \"openai\",\n                    \"output_cost\": 7.34,\n                    \"temperature\": 3.51,\n                    \"top_k\": 204,\n                    \"top_p\": 0.37,\n                    \"upstream_path\": \"...my_upstream_path...\",\n                    \"upstream_url\": \"...my_upstream_url...\",\n                },\n                \"provider\": \"cerebras\",\n            },\n            \"route_type\": \"llm/v1/assistants\",\n            \"weight\": 58189,\n        }],\n        \"vectordb\": {\n            \"dimensions\": 3,\n            \"distance_metric\": \"euclidean\",\n            \"pgvector\": {\n                \"database\": \"...my_database...\",\n                \"host\": \"...my_host...\",\n                \"password\": \"...my_password...\",\n                \"port\": 5,\n                \"ssl\": True,\n                \"ssl_cert\": \"...my_ssl_cert...\",\n                \"ssl_cert_key\": \"...my_ssl_cert_key...\",\n                \"ssl_required\": True,\n                \"ssl_verify\": True,\n                \"ssl_version\": \"any\",\n                \"timeout\": 3.81,\n                \"user\": \"...my_user...\",\n            },\n            \"redis\": {\n                \"cloud_authentication\": {\n                    \"auth_provider\": \"azure\",\n                    \"aws_access_key_id\": \"...my_aws_access_key_id...\",\n                    \"aws_assume_role_arn\": \"...my_aws_assume_role_arn...\",\n                    \"aws_cache_name\": \"...my_aws_cache_name...\",\n                    \"aws_is_serverless\": False,\n                    \"aws_region\": \"...my_aws_region...\",\n                    \"aws_role_session_name\": \"...my_aws_role_session_name...\",\n                    \"aws_secret_access_key\": \"...my_aws_secret_access_key...\",\n                    \"azure_client_id\": \"...my_azure_client_id...\",\n                    \"azure_client_secret\": \"...my_azure_client_secret...\",\n                    \"azure_tenant_id\": \"...my_azure_tenant_id...\",\n                    \"gcp_service_account_json\": \"...my_gcp_service_account_json...\",\n                },\n                \"cluster_max_redirections\": 4,\n                \"cluster_nodes\": [{\n                    \"ip\": \"...my_ip...\",\n                    \"port\": 50944,\n                }],\n                \"connect_timeout\": 656443886,\n                \"connection_is_proxied\": False,\n                \"database\": 10,\n                \"host\": \"...my_host...\",\n                \"keepalive_backlog\": 251172057,\n                \"keepalive_pool_size\": 1127137192,\n                \"password\": \"...my_password...\",\n                \"port\": 31201,\n                \"read_timeout\": 1222450418,\n                \"send_timeout\": 1541453227,\n                \"sentinel_master\": \"...my_sentinel_master...\",\n                \"sentinel_nodes\": [{\n                    \"host\": \"...my_host...\",\n                    \"port\": 61553,\n                }],\n                \"sentinel_password\": \"...my_sentinel_password...\",\n                \"sentinel_role\": \"master\",\n                \"sentinel_username\": \"...my_sentinel_username...\",\n                \"server_name\": \"...my_server_name...\",\n                \"ssl\": True,\n                \"ssl_verify\": False,\n                \"username\": \"...my_username...\",\n            },\n            \"strategy\": \"pgvector\",\n            \"threshold\": 6.56,\n        },\n    },\n    consumer={\n        \"id\": \"...my_id...\",\n    },\n    consumer_group={\n        \"id\": \"...my_id...\",\n    },\n    control_plane_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    created_at=3,\n    enabled=True,\n    gateway_plugin_ai_proxy_advanced_id=\"...my_id...\",\n    instance_name=\"...my_instance_name...\",\n    ordering={\n        \"after\": {\n            \"accesses\": [\"...\"],\n        },\n        \"before\": {\n            \"accesses\": [\"...\"],\n        },\n    },\n    partials=[{\n        \"id\": \"...my_id...\",\n        \"name\": \"...my_name...\",\n        \"path\": \"...my_path...\",\n    }],\n    protocols=[\"ws\"],\n    route={\n        \"id\": \"...my_id...\",\n    },\n    service={\n        \"id\": \"...my_id...\",\n    },\n    tags=[\"...\"],\n    updated_at=8)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text.Json;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myGatewaypluginaiproxyadvanced = new Konnect.GatewayPluginAiProxyAdvanced(\"my_gatewaypluginaiproxyadvanced\", new()\n    {\n        Config = new Konnect.Inputs.GatewayPluginAiProxyAdvancedConfigArgs\n        {\n            Balancer = new Konnect.Inputs.GatewayPluginAiProxyAdvancedConfigBalancerArgs\n            {\n                Algorithm = \"lowest-latency\",\n                ConnectTimeout = 1069677678,\n                FailTimeout = 251767862,\n                FailoverCriterias = new[]\n                {\n                    \"http_403\",\n                },\n                HashOnHeader = \"...my_hash_on_header...\",\n                LatencyStrategy = \"e2e\",\n                MaxFails = 32489,\n                ReadTimeout = 1128540479,\n                Retries = 14809,\n                Slots = 27573,\n                TokensCountStrategy = \"prompt-tokens\",\n                WriteTimeout = 1475900303,\n            },\n            Embeddings = new Konnect.Inputs.GatewayPluginAiProxyAdvancedConfigEmbeddingsArgs\n            {\n                Auth = new Konnect.Inputs.GatewayPluginAiProxyAdvancedConfigEmbeddingsAuthArgs\n                {\n                    AllowOverride = true,\n                    AwsAccessKeyId = \"...my_aws_access_key_id...\",\n                    AwsSecretAccessKey = \"...my_aws_secret_access_key...\",\n                    AzureClientId = \"...my_azure_client_id...\",\n                    AzureClientSecret = \"...my_azure_client_secret...\",\n                    AzureTenantId = \"...my_azure_tenant_id...\",\n                    AzureUseManagedIdentity = false,\n                    GcpServiceAccountJson = \"...my_gcp_service_account_json...\",\n                    GcpUseServiceAccount = false,\n                    HeaderName = \"...my_header_name...\",\n                    HeaderValue = \"...my_header_value...\",\n                    ParamLocation = \"body\",\n                    ParamName = \"...my_param_name...\",\n                    ParamValue = \"...my_param_value...\",\n                },\n                Model = new Konnect.Inputs.GatewayPluginAiProxyAdvancedConfigEmbeddingsModelArgs\n                {\n                    Name = \"...my_name...\",\n                    Options = new Konnect.Inputs.GatewayPluginAiProxyAdvancedConfigEmbeddingsModelOptionsArgs\n                    {\n                        Azure = new Konnect.Inputs.GatewayPluginAiProxyAdvancedConfigEmbeddingsModelOptionsAzureArgs\n                        {\n                            ApiVersion = \"...my_api_version...\",\n                            DeploymentId = \"...my_deployment_id...\",\n                            Instance = \"...my_instance...\",\n                        },\n                        Bedrock = new Konnect.Inputs.GatewayPluginAiProxyAdvancedConfigEmbeddingsModelOptionsBedrockArgs\n                        {\n                            AwsAssumeRoleArn = \"...my_aws_assume_role_arn...\",\n                            AwsRegion = \"...my_aws_region...\",\n                            AwsRoleSessionName = \"...my_aws_role_session_name...\",\n                            AwsStsEndpointUrl = \"...my_aws_sts_endpoint_url...\",\n                            EmbeddingsNormalize = true,\n                            PerformanceConfigLatency = \"...my_performance_config_latency...\",\n                            VideoOutputS3Uri = \"...my_video_output_s3_uri...\",\n                        },\n                        Gemini = new Konnect.Inputs.GatewayPluginAiProxyAdvancedConfigEmbeddingsModelOptionsGeminiArgs\n                        {\n                            ApiEndpoint = \"...my_api_endpoint...\",\n                            LocationId = \"...my_location_id...\",\n                            ProjectId = \"...my_project_id...\",\n                        },\n                        Huggingface = new Konnect.Inputs.GatewayPluginAiProxyAdvancedConfigEmbeddingsModelOptionsHuggingfaceArgs\n                        {\n                            UseCache = false,\n                            WaitForModel = false,\n                        },\n                        UpstreamUrl = \"...my_upstream_url...\",\n                    },\n                    Provider = \"gemini\",\n                },\n            },\n            GenaiCategory = \"realtime/generation\",\n            LlmFormat = \"huggingface\",\n            MaxRequestBodySize = 5,\n            ModelNameHeader = true,\n            ResponseStreaming = \"allow\",\n            Targets = new[]\n            {\n                new Konnect.Inputs.GatewayPluginAiProxyAdvancedConfigTargetArgs\n                {\n                    Auth = new Konnect.Inputs.GatewayPluginAiProxyAdvancedConfigTargetAuthArgs\n                    {\n                        AllowOverride = true,\n                        AwsAccessKeyId = \"...my_aws_access_key_id...\",\n                        AwsSecretAccessKey = \"...my_aws_secret_access_key...\",\n                        AzureClientId = \"...my_azure_client_id...\",\n                        AzureClientSecret = \"...my_azure_client_secret...\",\n                        AzureTenantId = \"...my_azure_tenant_id...\",\n                        AzureUseManagedIdentity = true,\n                        GcpServiceAccountJson = \"...my_gcp_service_account_json...\",\n                        GcpUseServiceAccount = false,\n                        HeaderName = \"...my_header_name...\",\n                        HeaderValue = \"...my_header_value...\",\n                        ParamLocation = \"query\",\n                        ParamName = \"...my_param_name...\",\n                        ParamValue = \"...my_param_value...\",\n                    },\n                    Description = \"...my_description...\",\n                    Logging = new Konnect.Inputs.GatewayPluginAiProxyAdvancedConfigTargetLoggingArgs\n                    {\n                        LogPayloads = true,\n                        LogStatistics = true,\n                    },\n                    Metadata = \n                    {\n                        { \"key\", JsonSerializer.Serialize(\"value\") },\n                    },\n                    Model = new Konnect.Inputs.GatewayPluginAiProxyAdvancedConfigTargetModelArgs\n                    {\n                        Name = \"...my_name...\",\n                        Options = new Konnect.Inputs.GatewayPluginAiProxyAdvancedConfigTargetModelOptionsArgs\n                        {\n                            AnthropicVersion = \"...my_anthropic_version...\",\n                            AzureApiVersion = \"...my_azure_api_version...\",\n                            AzureDeploymentId = \"...my_azure_deployment_id...\",\n                            AzureInstance = \"...my_azure_instance...\",\n                            Bedrock = new Konnect.Inputs.GatewayPluginAiProxyAdvancedConfigTargetModelOptionsBedrockArgs\n                            {\n                                AwsAssumeRoleArn = \"...my_aws_assume_role_arn...\",\n                                AwsRegion = \"...my_aws_region...\",\n                                AwsRoleSessionName = \"...my_aws_role_session_name...\",\n                                AwsStsEndpointUrl = \"...my_aws_sts_endpoint_url...\",\n                                EmbeddingsNormalize = true,\n                                PerformanceConfigLatency = \"...my_performance_config_latency...\",\n                                VideoOutputS3Uri = \"...my_video_output_s3_uri...\",\n                            },\n                            Cohere = new Konnect.Inputs.GatewayPluginAiProxyAdvancedConfigTargetModelOptionsCohereArgs\n                            {\n                                EmbeddingInputType = \"classification\",\n                                WaitForModel = true,\n                            },\n                            Dashscope = new Konnect.Inputs.GatewayPluginAiProxyAdvancedConfigTargetModelOptionsDashscopeArgs\n                            {\n                                International = true,\n                            },\n                            EmbeddingsDimensions = 6,\n                            Gemini = new Konnect.Inputs.GatewayPluginAiProxyAdvancedConfigTargetModelOptionsGeminiArgs\n                            {\n                                ApiEndpoint = \"...my_api_endpoint...\",\n                                EndpointId = \"...my_endpoint_id...\",\n                                LocationId = \"...my_location_id...\",\n                                ProjectId = \"...my_project_id...\",\n                            },\n                            Huggingface = new Konnect.Inputs.GatewayPluginAiProxyAdvancedConfigTargetModelOptionsHuggingfaceArgs\n                            {\n                                UseCache = true,\n                                WaitForModel = false,\n                            },\n                            InputCost = 2.57,\n                            Llama2Format = \"openai\",\n                            MaxTokens = 2,\n                            MistralFormat = \"openai\",\n                            OutputCost = 7.34,\n                            Temperature = 3.51,\n                            TopK = 204,\n                            TopP = 0.37,\n                            UpstreamPath = \"...my_upstream_path...\",\n                            UpstreamUrl = \"...my_upstream_url...\",\n                        },\n                        Provider = \"cerebras\",\n                    },\n                    RouteType = \"llm/v1/assistants\",\n                    Weight = 58189,\n                },\n            },\n            Vectordb = new Konnect.Inputs.GatewayPluginAiProxyAdvancedConfigVectordbArgs\n            {\n                Dimensions = 3,\n                DistanceMetric = \"euclidean\",\n                Pgvector = new Konnect.Inputs.GatewayPluginAiProxyAdvancedConfigVectordbPgvectorArgs\n                {\n                    Database = \"...my_database...\",\n                    Host = \"...my_host...\",\n                    Password = \"...my_password...\",\n                    Port = 5,\n                    Ssl = true,\n                    SslCert = \"...my_ssl_cert...\",\n                    SslCertKey = \"...my_ssl_cert_key...\",\n                    SslRequired = true,\n                    SslVerify = true,\n                    SslVersion = \"any\",\n                    Timeout = 3.81,\n                    User = \"...my_user...\",\n                },\n                Redis = new Konnect.Inputs.GatewayPluginAiProxyAdvancedConfigVectordbRedisArgs\n                {\n                    CloudAuthentication = new Konnect.Inputs.GatewayPluginAiProxyAdvancedConfigVectordbRedisCloudAuthenticationArgs\n                    {\n                        AuthProvider = \"azure\",\n                        AwsAccessKeyId = \"...my_aws_access_key_id...\",\n                        AwsAssumeRoleArn = \"...my_aws_assume_role_arn...\",\n                        AwsCacheName = \"...my_aws_cache_name...\",\n                        AwsIsServerless = false,\n                        AwsRegion = \"...my_aws_region...\",\n                        AwsRoleSessionName = \"...my_aws_role_session_name...\",\n                        AwsSecretAccessKey = \"...my_aws_secret_access_key...\",\n                        AzureClientId = \"...my_azure_client_id...\",\n                        AzureClientSecret = \"...my_azure_client_secret...\",\n                        AzureTenantId = \"...my_azure_tenant_id...\",\n                        GcpServiceAccountJson = \"...my_gcp_service_account_json...\",\n                    },\n                    ClusterMaxRedirections = 4,\n                    ClusterNodes = new[]\n                    {\n                        new Konnect.Inputs.GatewayPluginAiProxyAdvancedConfigVectordbRedisClusterNodeArgs\n                        {\n                            Ip = \"...my_ip...\",\n                            Port = 50944,\n                        },\n                    },\n                    ConnectTimeout = 656443886,\n                    ConnectionIsProxied = false,\n                    Database = 10,\n                    Host = \"...my_host...\",\n                    KeepaliveBacklog = 251172057,\n                    KeepalivePoolSize = 1127137192,\n                    Password = \"...my_password...\",\n                    Port = 31201,\n                    ReadTimeout = 1222450418,\n                    SendTimeout = 1541453227,\n                    SentinelMaster = \"...my_sentinel_master...\",\n                    SentinelNodes = new[]\n                    {\n                        new Konnect.Inputs.GatewayPluginAiProxyAdvancedConfigVectordbRedisSentinelNodeArgs\n                        {\n                            Host = \"...my_host...\",\n                            Port = 61553,\n                        },\n                    },\n                    SentinelPassword = \"...my_sentinel_password...\",\n                    SentinelRole = \"master\",\n                    SentinelUsername = \"...my_sentinel_username...\",\n                    ServerName = \"...my_server_name...\",\n                    Ssl = true,\n                    SslVerify = false,\n                    Username = \"...my_username...\",\n                },\n                Strategy = \"pgvector\",\n                Threshold = 6.56,\n            },\n        },\n        Consumer = new Konnect.Inputs.GatewayPluginAiProxyAdvancedConsumerArgs\n        {\n            Id = \"...my_id...\",\n        },\n        ConsumerGroup = new Konnect.Inputs.GatewayPluginAiProxyAdvancedConsumerGroupArgs\n        {\n            Id = \"...my_id...\",\n        },\n        ControlPlaneId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        CreatedAt = 3,\n        Enabled = true,\n        GatewayPluginAiProxyAdvancedId = \"...my_id...\",\n        InstanceName = \"...my_instance_name...\",\n        Ordering = new Konnect.Inputs.GatewayPluginAiProxyAdvancedOrderingArgs\n        {\n            After = new Konnect.Inputs.GatewayPluginAiProxyAdvancedOrderingAfterArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n            Before = new Konnect.Inputs.GatewayPluginAiProxyAdvancedOrderingBeforeArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n        },\n        Partials = new[]\n        {\n            new Konnect.Inputs.GatewayPluginAiProxyAdvancedPartialArgs\n            {\n                Id = \"...my_id...\",\n                Name = \"...my_name...\",\n                Path = \"...my_path...\",\n            },\n        },\n        Protocols = new[]\n        {\n            \"ws\",\n        },\n        Route = new Konnect.Inputs.GatewayPluginAiProxyAdvancedRouteArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Service = new Konnect.Inputs.GatewayPluginAiProxyAdvancedServiceArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Tags = new[]\n        {\n            \"...\",\n        },\n        UpdatedAt = 8,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"encoding/json\"\n\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\ttmpJSON0, err := json.Marshal(\"value\")\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tjson0 := string(tmpJSON0)\n\t\t_, err = konnect.NewGatewayPluginAiProxyAdvanced(ctx, \"my_gatewaypluginaiproxyadvanced\", \u0026konnect.GatewayPluginAiProxyAdvancedArgs{\n\t\t\tConfig: \u0026konnect.GatewayPluginAiProxyAdvancedConfigArgs{\n\t\t\t\tBalancer: \u0026konnect.GatewayPluginAiProxyAdvancedConfigBalancerArgs{\n\t\t\t\t\tAlgorithm:      pulumi.String(\"lowest-latency\"),\n\t\t\t\t\tConnectTimeout: pulumi.Float64(1069677678),\n\t\t\t\t\tFailTimeout:    pulumi.Float64(251767862),\n\t\t\t\t\tFailoverCriterias: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"http_403\"),\n\t\t\t\t\t},\n\t\t\t\t\tHashOnHeader:        pulumi.String(\"...my_hash_on_header...\"),\n\t\t\t\t\tLatencyStrategy:     pulumi.String(\"e2e\"),\n\t\t\t\t\tMaxFails:            pulumi.Float64(32489),\n\t\t\t\t\tReadTimeout:         pulumi.Float64(1128540479),\n\t\t\t\t\tRetries:             pulumi.Float64(14809),\n\t\t\t\t\tSlots:               pulumi.Float64(27573),\n\t\t\t\t\tTokensCountStrategy: pulumi.String(\"prompt-tokens\"),\n\t\t\t\t\tWriteTimeout:        pulumi.Float64(1475900303),\n\t\t\t\t},\n\t\t\t\tEmbeddings: \u0026konnect.GatewayPluginAiProxyAdvancedConfigEmbeddingsArgs{\n\t\t\t\t\tAuth: \u0026konnect.GatewayPluginAiProxyAdvancedConfigEmbeddingsAuthArgs{\n\t\t\t\t\t\tAllowOverride:           pulumi.Bool(true),\n\t\t\t\t\t\tAwsAccessKeyId:          pulumi.String(\"...my_aws_access_key_id...\"),\n\t\t\t\t\t\tAwsSecretAccessKey:      pulumi.String(\"...my_aws_secret_access_key...\"),\n\t\t\t\t\t\tAzureClientId:           pulumi.String(\"...my_azure_client_id...\"),\n\t\t\t\t\t\tAzureClientSecret:       pulumi.String(\"...my_azure_client_secret...\"),\n\t\t\t\t\t\tAzureTenantId:           pulumi.String(\"...my_azure_tenant_id...\"),\n\t\t\t\t\t\tAzureUseManagedIdentity: pulumi.Bool(false),\n\t\t\t\t\t\tGcpServiceAccountJson:   pulumi.String(\"...my_gcp_service_account_json...\"),\n\t\t\t\t\t\tGcpUseServiceAccount:    pulumi.Bool(false),\n\t\t\t\t\t\tHeaderName:              pulumi.String(\"...my_header_name...\"),\n\t\t\t\t\t\tHeaderValue:             pulumi.String(\"...my_header_value...\"),\n\t\t\t\t\t\tParamLocation:           pulumi.String(\"body\"),\n\t\t\t\t\t\tParamName:               pulumi.String(\"...my_param_name...\"),\n\t\t\t\t\t\tParamValue:              pulumi.String(\"...my_param_value...\"),\n\t\t\t\t\t},\n\t\t\t\t\tModel: \u0026konnect.GatewayPluginAiProxyAdvancedConfigEmbeddingsModelArgs{\n\t\t\t\t\t\tName: pulumi.String(\"...my_name...\"),\n\t\t\t\t\t\tOptions: \u0026konnect.GatewayPluginAiProxyAdvancedConfigEmbeddingsModelOptionsArgs{\n\t\t\t\t\t\t\tAzure: \u0026konnect.GatewayPluginAiProxyAdvancedConfigEmbeddingsModelOptionsAzureArgs{\n\t\t\t\t\t\t\t\tApiVersion:   pulumi.String(\"...my_api_version...\"),\n\t\t\t\t\t\t\t\tDeploymentId: pulumi.String(\"...my_deployment_id...\"),\n\t\t\t\t\t\t\t\tInstance:     pulumi.String(\"...my_instance...\"),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tBedrock: \u0026konnect.GatewayPluginAiProxyAdvancedConfigEmbeddingsModelOptionsBedrockArgs{\n\t\t\t\t\t\t\t\tAwsAssumeRoleArn:         pulumi.String(\"...my_aws_assume_role_arn...\"),\n\t\t\t\t\t\t\t\tAwsRegion:                pulumi.String(\"...my_aws_region...\"),\n\t\t\t\t\t\t\t\tAwsRoleSessionName:       pulumi.String(\"...my_aws_role_session_name...\"),\n\t\t\t\t\t\t\t\tAwsStsEndpointUrl:        pulumi.String(\"...my_aws_sts_endpoint_url...\"),\n\t\t\t\t\t\t\t\tEmbeddingsNormalize:      pulumi.Bool(true),\n\t\t\t\t\t\t\t\tPerformanceConfigLatency: pulumi.String(\"...my_performance_config_latency...\"),\n\t\t\t\t\t\t\t\tVideoOutputS3Uri:         pulumi.String(\"...my_video_output_s3_uri...\"),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tGemini: \u0026konnect.GatewayPluginAiProxyAdvancedConfigEmbeddingsModelOptionsGeminiArgs{\n\t\t\t\t\t\t\t\tApiEndpoint: pulumi.String(\"...my_api_endpoint...\"),\n\t\t\t\t\t\t\t\tLocationId:  pulumi.String(\"...my_location_id...\"),\n\t\t\t\t\t\t\t\tProjectId:   pulumi.String(\"...my_project_id...\"),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tHuggingface: \u0026konnect.GatewayPluginAiProxyAdvancedConfigEmbeddingsModelOptionsHuggingfaceArgs{\n\t\t\t\t\t\t\t\tUseCache:     pulumi.Bool(false),\n\t\t\t\t\t\t\t\tWaitForModel: pulumi.Bool(false),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tUpstreamUrl: pulumi.String(\"...my_upstream_url...\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\tProvider: pulumi.String(\"gemini\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tGenaiCategory:      pulumi.String(\"realtime/generation\"),\n\t\t\t\tLlmFormat:          pulumi.String(\"huggingface\"),\n\t\t\t\tMaxRequestBodySize: pulumi.Float64(5),\n\t\t\t\tModelNameHeader:    pulumi.Bool(true),\n\t\t\t\tResponseStreaming:  pulumi.String(\"allow\"),\n\t\t\t\tTargets: konnect.GatewayPluginAiProxyAdvancedConfigTargetArray{\n\t\t\t\t\t\u0026konnect.GatewayPluginAiProxyAdvancedConfigTargetArgs{\n\t\t\t\t\t\tAuth: \u0026konnect.GatewayPluginAiProxyAdvancedConfigTargetAuthArgs{\n\t\t\t\t\t\t\tAllowOverride:           pulumi.Bool(true),\n\t\t\t\t\t\t\tAwsAccessKeyId:          pulumi.String(\"...my_aws_access_key_id...\"),\n\t\t\t\t\t\t\tAwsSecretAccessKey:      pulumi.String(\"...my_aws_secret_access_key...\"),\n\t\t\t\t\t\t\tAzureClientId:           pulumi.String(\"...my_azure_client_id...\"),\n\t\t\t\t\t\t\tAzureClientSecret:       pulumi.String(\"...my_azure_client_secret...\"),\n\t\t\t\t\t\t\tAzureTenantId:           pulumi.String(\"...my_azure_tenant_id...\"),\n\t\t\t\t\t\t\tAzureUseManagedIdentity: pulumi.Bool(true),\n\t\t\t\t\t\t\tGcpServiceAccountJson:   pulumi.String(\"...my_gcp_service_account_json...\"),\n\t\t\t\t\t\t\tGcpUseServiceAccount:    pulumi.Bool(false),\n\t\t\t\t\t\t\tHeaderName:              pulumi.String(\"...my_header_name...\"),\n\t\t\t\t\t\t\tHeaderValue:             pulumi.String(\"...my_header_value...\"),\n\t\t\t\t\t\t\tParamLocation:           pulumi.String(\"query\"),\n\t\t\t\t\t\t\tParamName:               pulumi.String(\"...my_param_name...\"),\n\t\t\t\t\t\t\tParamValue:              pulumi.String(\"...my_param_value...\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\tDescription: pulumi.String(\"...my_description...\"),\n\t\t\t\t\t\tLogging: \u0026konnect.GatewayPluginAiProxyAdvancedConfigTargetLoggingArgs{\n\t\t\t\t\t\t\tLogPayloads:   pulumi.Bool(true),\n\t\t\t\t\t\t\tLogStatistics: pulumi.Bool(true),\n\t\t\t\t\t\t},\n\t\t\t\t\t\tMetadata: pulumi.StringMap{\n\t\t\t\t\t\t\t\"key\": pulumi.String(json0),\n\t\t\t\t\t\t},\n\t\t\t\t\t\tModel: \u0026konnect.GatewayPluginAiProxyAdvancedConfigTargetModelArgs{\n\t\t\t\t\t\t\tName: pulumi.String(\"...my_name...\"),\n\t\t\t\t\t\t\tOptions: \u0026konnect.GatewayPluginAiProxyAdvancedConfigTargetModelOptionsArgs{\n\t\t\t\t\t\t\t\tAnthropicVersion:  pulumi.String(\"...my_anthropic_version...\"),\n\t\t\t\t\t\t\t\tAzureApiVersion:   pulumi.String(\"...my_azure_api_version...\"),\n\t\t\t\t\t\t\t\tAzureDeploymentId: pulumi.String(\"...my_azure_deployment_id...\"),\n\t\t\t\t\t\t\t\tAzureInstance:     pulumi.String(\"...my_azure_instance...\"),\n\t\t\t\t\t\t\t\tBedrock: \u0026konnect.GatewayPluginAiProxyAdvancedConfigTargetModelOptionsBedrockArgs{\n\t\t\t\t\t\t\t\t\tAwsAssumeRoleArn:         pulumi.String(\"...my_aws_assume_role_arn...\"),\n\t\t\t\t\t\t\t\t\tAwsRegion:                pulumi.String(\"...my_aws_region...\"),\n\t\t\t\t\t\t\t\t\tAwsRoleSessionName:       pulumi.String(\"...my_aws_role_session_name...\"),\n\t\t\t\t\t\t\t\t\tAwsStsEndpointUrl:        pulumi.String(\"...my_aws_sts_endpoint_url...\"),\n\t\t\t\t\t\t\t\t\tEmbeddingsNormalize:      pulumi.Bool(true),\n\t\t\t\t\t\t\t\t\tPerformanceConfigLatency: pulumi.String(\"...my_performance_config_latency...\"),\n\t\t\t\t\t\t\t\t\tVideoOutputS3Uri:         pulumi.String(\"...my_video_output_s3_uri...\"),\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\tCohere: \u0026konnect.GatewayPluginAiProxyAdvancedConfigTargetModelOptionsCohereArgs{\n\t\t\t\t\t\t\t\t\tEmbeddingInputType: pulumi.String(\"classification\"),\n\t\t\t\t\t\t\t\t\tWaitForModel:       pulumi.Bool(true),\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\tDashscope: \u0026konnect.GatewayPluginAiProxyAdvancedConfigTargetModelOptionsDashscopeArgs{\n\t\t\t\t\t\t\t\t\tInternational: pulumi.Bool(true),\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\tEmbeddingsDimensions: pulumi.Float64(6),\n\t\t\t\t\t\t\t\tGemini: \u0026konnect.GatewayPluginAiProxyAdvancedConfigTargetModelOptionsGeminiArgs{\n\t\t\t\t\t\t\t\t\tApiEndpoint: pulumi.String(\"...my_api_endpoint...\"),\n\t\t\t\t\t\t\t\t\tEndpointId:  pulumi.String(\"...my_endpoint_id...\"),\n\t\t\t\t\t\t\t\t\tLocationId:  pulumi.String(\"...my_location_id...\"),\n\t\t\t\t\t\t\t\t\tProjectId:   pulumi.String(\"...my_project_id...\"),\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\tHuggingface: \u0026konnect.GatewayPluginAiProxyAdvancedConfigTargetModelOptionsHuggingfaceArgs{\n\t\t\t\t\t\t\t\t\tUseCache:     pulumi.Bool(true),\n\t\t\t\t\t\t\t\t\tWaitForModel: pulumi.Bool(false),\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\tInputCost:     pulumi.Float64(2.57),\n\t\t\t\t\t\t\t\tLlama2Format:  pulumi.String(\"openai\"),\n\t\t\t\t\t\t\t\tMaxTokens:     pulumi.Float64(2),\n\t\t\t\t\t\t\t\tMistralFormat: pulumi.String(\"openai\"),\n\t\t\t\t\t\t\t\tOutputCost:    pulumi.Float64(7.34),\n\t\t\t\t\t\t\t\tTemperature:   pulumi.Float64(3.51),\n\t\t\t\t\t\t\t\tTopK:          pulumi.Float64(204),\n\t\t\t\t\t\t\t\tTopP:          pulumi.Float64(0.37),\n\t\t\t\t\t\t\t\tUpstreamPath:  pulumi.String(\"...my_upstream_path...\"),\n\t\t\t\t\t\t\t\tUpstreamUrl:   pulumi.String(\"...my_upstream_url...\"),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tProvider: pulumi.String(\"cerebras\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\tRouteType: pulumi.String(\"llm/v1/assistants\"),\n\t\t\t\t\t\tWeight:    pulumi.Float64(58189),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tVectordb: \u0026konnect.GatewayPluginAiProxyAdvancedConfigVectordbArgs{\n\t\t\t\t\tDimensions:     pulumi.Float64(3),\n\t\t\t\t\tDistanceMetric: pulumi.String(\"euclidean\"),\n\t\t\t\t\tPgvector: \u0026konnect.GatewayPluginAiProxyAdvancedConfigVectordbPgvectorArgs{\n\t\t\t\t\t\tDatabase:    pulumi.String(\"...my_database...\"),\n\t\t\t\t\t\tHost:        pulumi.String(\"...my_host...\"),\n\t\t\t\t\t\tPassword:    pulumi.String(\"...my_password...\"),\n\t\t\t\t\t\tPort:        pulumi.Float64(5),\n\t\t\t\t\t\tSsl:         pulumi.Bool(true),\n\t\t\t\t\t\tSslCert:     pulumi.String(\"...my_ssl_cert...\"),\n\t\t\t\t\t\tSslCertKey:  pulumi.String(\"...my_ssl_cert_key...\"),\n\t\t\t\t\t\tSslRequired: pulumi.Bool(true),\n\t\t\t\t\t\tSslVerify:   pulumi.Bool(true),\n\t\t\t\t\t\tSslVersion:  pulumi.String(\"any\"),\n\t\t\t\t\t\tTimeout:     pulumi.Float64(3.81),\n\t\t\t\t\t\tUser:        pulumi.String(\"...my_user...\"),\n\t\t\t\t\t},\n\t\t\t\t\tRedis: \u0026konnect.GatewayPluginAiProxyAdvancedConfigVectordbRedisArgs{\n\t\t\t\t\t\tCloudAuthentication: \u0026konnect.GatewayPluginAiProxyAdvancedConfigVectordbRedisCloudAuthenticationArgs{\n\t\t\t\t\t\t\tAuthProvider:          pulumi.String(\"azure\"),\n\t\t\t\t\t\t\tAwsAccessKeyId:        pulumi.String(\"...my_aws_access_key_id...\"),\n\t\t\t\t\t\t\tAwsAssumeRoleArn:      pulumi.String(\"...my_aws_assume_role_arn...\"),\n\t\t\t\t\t\t\tAwsCacheName:          pulumi.String(\"...my_aws_cache_name...\"),\n\t\t\t\t\t\t\tAwsIsServerless:       pulumi.Bool(false),\n\t\t\t\t\t\t\tAwsRegion:             pulumi.String(\"...my_aws_region...\"),\n\t\t\t\t\t\t\tAwsRoleSessionName:    pulumi.String(\"...my_aws_role_session_name...\"),\n\t\t\t\t\t\t\tAwsSecretAccessKey:    pulumi.String(\"...my_aws_secret_access_key...\"),\n\t\t\t\t\t\t\tAzureClientId:         pulumi.String(\"...my_azure_client_id...\"),\n\t\t\t\t\t\t\tAzureClientSecret:     pulumi.String(\"...my_azure_client_secret...\"),\n\t\t\t\t\t\t\tAzureTenantId:         pulumi.String(\"...my_azure_tenant_id...\"),\n\t\t\t\t\t\t\tGcpServiceAccountJson: pulumi.String(\"...my_gcp_service_account_json...\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\tClusterMaxRedirections: pulumi.Float64(4),\n\t\t\t\t\t\tClusterNodes: konnect.GatewayPluginAiProxyAdvancedConfigVectordbRedisClusterNodeArray{\n\t\t\t\t\t\t\t\u0026konnect.GatewayPluginAiProxyAdvancedConfigVectordbRedisClusterNodeArgs{\n\t\t\t\t\t\t\t\tIp:   pulumi.String(\"...my_ip...\"),\n\t\t\t\t\t\t\t\tPort: pulumi.Float64(50944),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t\tConnectTimeout:      pulumi.Float64(656443886),\n\t\t\t\t\t\tConnectionIsProxied: pulumi.Bool(false),\n\t\t\t\t\t\tDatabase:            pulumi.Float64(10),\n\t\t\t\t\t\tHost:                pulumi.String(\"...my_host...\"),\n\t\t\t\t\t\tKeepaliveBacklog:    pulumi.Float64(251172057),\n\t\t\t\t\t\tKeepalivePoolSize:   pulumi.Float64(1127137192),\n\t\t\t\t\t\tPassword:            pulumi.String(\"...my_password...\"),\n\t\t\t\t\t\tPort:                pulumi.Float64(31201),\n\t\t\t\t\t\tReadTimeout:         pulumi.Float64(1222450418),\n\t\t\t\t\t\tSendTimeout:         pulumi.Float64(1541453227),\n\t\t\t\t\t\tSentinelMaster:      pulumi.String(\"...my_sentinel_master...\"),\n\t\t\t\t\t\tSentinelNodes: konnect.GatewayPluginAiProxyAdvancedConfigVectordbRedisSentinelNodeArray{\n\t\t\t\t\t\t\t\u0026konnect.GatewayPluginAiProxyAdvancedConfigVectordbRedisSentinelNodeArgs{\n\t\t\t\t\t\t\t\tHost: pulumi.String(\"...my_host...\"),\n\t\t\t\t\t\t\t\tPort: pulumi.Float64(61553),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t\tSentinelPassword: pulumi.String(\"...my_sentinel_password...\"),\n\t\t\t\t\t\tSentinelRole:     pulumi.String(\"master\"),\n\t\t\t\t\t\tSentinelUsername: pulumi.String(\"...my_sentinel_username...\"),\n\t\t\t\t\t\tServerName:       pulumi.String(\"...my_server_name...\"),\n\t\t\t\t\t\tSsl:              pulumi.Bool(true),\n\t\t\t\t\t\tSslVerify:        pulumi.Bool(false),\n\t\t\t\t\t\tUsername:         pulumi.String(\"...my_username...\"),\n\t\t\t\t\t},\n\t\t\t\t\tStrategy:  pulumi.String(\"pgvector\"),\n\t\t\t\t\tThreshold: pulumi.Float64(6.56),\n\t\t\t\t},\n\t\t\t},\n\t\t\tConsumer: \u0026konnect.GatewayPluginAiProxyAdvancedConsumerArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tConsumerGroup: \u0026konnect.GatewayPluginAiProxyAdvancedConsumerGroupArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tControlPlaneId:                 pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tCreatedAt:                      pulumi.Float64(3),\n\t\t\tEnabled:                        pulumi.Bool(true),\n\t\t\tGatewayPluginAiProxyAdvancedId: pulumi.String(\"...my_id...\"),\n\t\t\tInstanceName:                   pulumi.String(\"...my_instance_name...\"),\n\t\t\tOrdering: \u0026konnect.GatewayPluginAiProxyAdvancedOrderingArgs{\n\t\t\t\tAfter: \u0026konnect.GatewayPluginAiProxyAdvancedOrderingAfterArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tBefore: \u0026konnect.GatewayPluginAiProxyAdvancedOrderingBeforeArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tPartials: konnect.GatewayPluginAiProxyAdvancedPartialArray{\n\t\t\t\t\u0026konnect.GatewayPluginAiProxyAdvancedPartialArgs{\n\t\t\t\t\tId:   pulumi.String(\"...my_id...\"),\n\t\t\t\t\tName: pulumi.String(\"...my_name...\"),\n\t\t\t\t\tPath: pulumi.String(\"...my_path...\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tProtocols: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"ws\"),\n\t\t\t},\n\t\t\tRoute: \u0026konnect.GatewayPluginAiProxyAdvancedRouteArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tService: \u0026konnect.GatewayPluginAiProxyAdvancedServiceArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"...\"),\n\t\t\t},\n\t\t\tUpdatedAt: pulumi.Float64(8),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.GatewayPluginAiProxyAdvanced;\nimport com.pulumi.konnect.GatewayPluginAiProxyAdvancedArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiProxyAdvancedConfigArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiProxyAdvancedConfigBalancerArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiProxyAdvancedConfigEmbeddingsArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiProxyAdvancedConfigEmbeddingsAuthArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiProxyAdvancedConfigEmbeddingsModelArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiProxyAdvancedConfigEmbeddingsModelOptionsArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiProxyAdvancedConfigEmbeddingsModelOptionsAzureArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiProxyAdvancedConfigEmbeddingsModelOptionsBedrockArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiProxyAdvancedConfigEmbeddingsModelOptionsGeminiArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiProxyAdvancedConfigEmbeddingsModelOptionsHuggingfaceArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiProxyAdvancedConfigVectordbArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiProxyAdvancedConfigVectordbPgvectorArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiProxyAdvancedConfigVectordbRedisArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiProxyAdvancedConfigVectordbRedisCloudAuthenticationArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiProxyAdvancedConsumerArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiProxyAdvancedConsumerGroupArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiProxyAdvancedOrderingArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiProxyAdvancedOrderingAfterArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiProxyAdvancedOrderingBeforeArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiProxyAdvancedPartialArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiProxyAdvancedRouteArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiProxyAdvancedServiceArgs;\nimport static com.pulumi.codegen.internal.Serialization.*;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myGatewaypluginaiproxyadvanced = new GatewayPluginAiProxyAdvanced(\"myGatewaypluginaiproxyadvanced\", GatewayPluginAiProxyAdvancedArgs.builder()\n            .config(GatewayPluginAiProxyAdvancedConfigArgs.builder()\n                .balancer(GatewayPluginAiProxyAdvancedConfigBalancerArgs.builder()\n                    .algorithm(\"lowest-latency\")\n                    .connectTimeout(1069677678.0)\n                    .failTimeout(251767862.0)\n                    .failoverCriterias(\"http_403\")\n                    .hashOnHeader(\"...my_hash_on_header...\")\n                    .latencyStrategy(\"e2e\")\n                    .maxFails(32489.0)\n                    .readTimeout(1128540479.0)\n                    .retries(14809.0)\n                    .slots(27573.0)\n                    .tokensCountStrategy(\"prompt-tokens\")\n                    .writeTimeout(1475900303.0)\n                    .build())\n                .embeddings(GatewayPluginAiProxyAdvancedConfigEmbeddingsArgs.builder()\n                    .auth(GatewayPluginAiProxyAdvancedConfigEmbeddingsAuthArgs.builder()\n                        .allowOverride(true)\n                        .awsAccessKeyId(\"...my_aws_access_key_id...\")\n                        .awsSecretAccessKey(\"...my_aws_secret_access_key...\")\n                        .azureClientId(\"...my_azure_client_id...\")\n                        .azureClientSecret(\"...my_azure_client_secret...\")\n                        .azureTenantId(\"...my_azure_tenant_id...\")\n                        .azureUseManagedIdentity(false)\n                        .gcpServiceAccountJson(\"...my_gcp_service_account_json...\")\n                        .gcpUseServiceAccount(false)\n                        .headerName(\"...my_header_name...\")\n                        .headerValue(\"...my_header_value...\")\n                        .paramLocation(\"body\")\n                        .paramName(\"...my_param_name...\")\n                        .paramValue(\"...my_param_value...\")\n                        .build())\n                    .model(GatewayPluginAiProxyAdvancedConfigEmbeddingsModelArgs.builder()\n                        .name(\"...my_name...\")\n                        .options(GatewayPluginAiProxyAdvancedConfigEmbeddingsModelOptionsArgs.builder()\n                            .azure(GatewayPluginAiProxyAdvancedConfigEmbeddingsModelOptionsAzureArgs.builder()\n                                .apiVersion(\"...my_api_version...\")\n                                .deploymentId(\"...my_deployment_id...\")\n                                .instance(\"...my_instance...\")\n                                .build())\n                            .bedrock(GatewayPluginAiProxyAdvancedConfigEmbeddingsModelOptionsBedrockArgs.builder()\n                                .awsAssumeRoleArn(\"...my_aws_assume_role_arn...\")\n                                .awsRegion(\"...my_aws_region...\")\n                                .awsRoleSessionName(\"...my_aws_role_session_name...\")\n                                .awsStsEndpointUrl(\"...my_aws_sts_endpoint_url...\")\n                                .embeddingsNormalize(true)\n                                .performanceConfigLatency(\"...my_performance_config_latency...\")\n                                .videoOutputS3Uri(\"...my_video_output_s3_uri...\")\n                                .build())\n                            .gemini(GatewayPluginAiProxyAdvancedConfigEmbeddingsModelOptionsGeminiArgs.builder()\n                                .apiEndpoint(\"...my_api_endpoint...\")\n                                .locationId(\"...my_location_id...\")\n                                .projectId(\"...my_project_id...\")\n                                .build())\n                            .huggingface(GatewayPluginAiProxyAdvancedConfigEmbeddingsModelOptionsHuggingfaceArgs.builder()\n                                .useCache(false)\n                                .waitForModel(false)\n                                .build())\n                            .upstreamUrl(\"...my_upstream_url...\")\n                            .build())\n                        .provider(\"gemini\")\n                        .build())\n                    .build())\n                .genaiCategory(\"realtime/generation\")\n                .llmFormat(\"huggingface\")\n                .maxRequestBodySize(5.0)\n                .modelNameHeader(true)\n                .responseStreaming(\"allow\")\n                .targets(GatewayPluginAiProxyAdvancedConfigTargetArgs.builder()\n                    .auth(GatewayPluginAiProxyAdvancedConfigTargetAuthArgs.builder()\n                        .allowOverride(true)\n                        .awsAccessKeyId(\"...my_aws_access_key_id...\")\n                        .awsSecretAccessKey(\"...my_aws_secret_access_key...\")\n                        .azureClientId(\"...my_azure_client_id...\")\n                        .azureClientSecret(\"...my_azure_client_secret...\")\n                        .azureTenantId(\"...my_azure_tenant_id...\")\n                        .azureUseManagedIdentity(true)\n                        .gcpServiceAccountJson(\"...my_gcp_service_account_json...\")\n                        .gcpUseServiceAccount(false)\n                        .headerName(\"...my_header_name...\")\n                        .headerValue(\"...my_header_value...\")\n                        .paramLocation(\"query\")\n                        .paramName(\"...my_param_name...\")\n                        .paramValue(\"...my_param_value...\")\n                        .build())\n                    .description(\"...my_description...\")\n                    .logging(GatewayPluginAiProxyAdvancedConfigTargetLoggingArgs.builder()\n                        .logPayloads(true)\n                        .logStatistics(true)\n                        .build())\n                    .metadata(Map.of(\"key\", serializeJson(\n                        \"value\")))\n                    .model(GatewayPluginAiProxyAdvancedConfigTargetModelArgs.builder()\n                        .name(\"...my_name...\")\n                        .options(GatewayPluginAiProxyAdvancedConfigTargetModelOptionsArgs.builder()\n                            .anthropicVersion(\"...my_anthropic_version...\")\n                            .azureApiVersion(\"...my_azure_api_version...\")\n                            .azureDeploymentId(\"...my_azure_deployment_id...\")\n                            .azureInstance(\"...my_azure_instance...\")\n                            .bedrock(GatewayPluginAiProxyAdvancedConfigTargetModelOptionsBedrockArgs.builder()\n                                .awsAssumeRoleArn(\"...my_aws_assume_role_arn...\")\n                                .awsRegion(\"...my_aws_region...\")\n                                .awsRoleSessionName(\"...my_aws_role_session_name...\")\n                                .awsStsEndpointUrl(\"...my_aws_sts_endpoint_url...\")\n                                .embeddingsNormalize(true)\n                                .performanceConfigLatency(\"...my_performance_config_latency...\")\n                                .videoOutputS3Uri(\"...my_video_output_s3_uri...\")\n                                .build())\n                            .cohere(GatewayPluginAiProxyAdvancedConfigTargetModelOptionsCohereArgs.builder()\n                                .embeddingInputType(\"classification\")\n                                .waitForModel(true)\n                                .build())\n                            .dashscope(GatewayPluginAiProxyAdvancedConfigTargetModelOptionsDashscopeArgs.builder()\n                                .international(true)\n                                .build())\n                            .embeddingsDimensions(6.0)\n                            .gemini(GatewayPluginAiProxyAdvancedConfigTargetModelOptionsGeminiArgs.builder()\n                                .apiEndpoint(\"...my_api_endpoint...\")\n                                .endpointId(\"...my_endpoint_id...\")\n                                .locationId(\"...my_location_id...\")\n                                .projectId(\"...my_project_id...\")\n                                .build())\n                            .huggingface(GatewayPluginAiProxyAdvancedConfigTargetModelOptionsHuggingfaceArgs.builder()\n                                .useCache(true)\n                                .waitForModel(false)\n                                .build())\n                            .inputCost(2.57)\n                            .llama2Format(\"openai\")\n                            .maxTokens(2.0)\n                            .mistralFormat(\"openai\")\n                            .outputCost(7.34)\n                            .temperature(3.51)\n                            .topK(204.0)\n                            .topP(0.37)\n                            .upstreamPath(\"...my_upstream_path...\")\n                            .upstreamUrl(\"...my_upstream_url...\")\n                            .build())\n                        .provider(\"cerebras\")\n                        .build())\n                    .routeType(\"llm/v1/assistants\")\n                    .weight(58189.0)\n                    .build())\n                .vectordb(GatewayPluginAiProxyAdvancedConfigVectordbArgs.builder()\n                    .dimensions(3.0)\n                    .distanceMetric(\"euclidean\")\n                    .pgvector(GatewayPluginAiProxyAdvancedConfigVectordbPgvectorArgs.builder()\n                        .database(\"...my_database...\")\n                        .host(\"...my_host...\")\n                        .password(\"...my_password...\")\n                        .port(5.0)\n                        .ssl(true)\n                        .sslCert(\"...my_ssl_cert...\")\n                        .sslCertKey(\"...my_ssl_cert_key...\")\n                        .sslRequired(true)\n                        .sslVerify(true)\n                        .sslVersion(\"any\")\n                        .timeout(3.81)\n                        .user(\"...my_user...\")\n                        .build())\n                    .redis(GatewayPluginAiProxyAdvancedConfigVectordbRedisArgs.builder()\n                        .cloudAuthentication(GatewayPluginAiProxyAdvancedConfigVectordbRedisCloudAuthenticationArgs.builder()\n                            .authProvider(\"azure\")\n                            .awsAccessKeyId(\"...my_aws_access_key_id...\")\n                            .awsAssumeRoleArn(\"...my_aws_assume_role_arn...\")\n                            .awsCacheName(\"...my_aws_cache_name...\")\n                            .awsIsServerless(false)\n                            .awsRegion(\"...my_aws_region...\")\n                            .awsRoleSessionName(\"...my_aws_role_session_name...\")\n                            .awsSecretAccessKey(\"...my_aws_secret_access_key...\")\n                            .azureClientId(\"...my_azure_client_id...\")\n                            .azureClientSecret(\"...my_azure_client_secret...\")\n                            .azureTenantId(\"...my_azure_tenant_id...\")\n                            .gcpServiceAccountJson(\"...my_gcp_service_account_json...\")\n                            .build())\n                        .clusterMaxRedirections(4.0)\n                        .clusterNodes(GatewayPluginAiProxyAdvancedConfigVectordbRedisClusterNodeArgs.builder()\n                            .ip(\"...my_ip...\")\n                            .port(50944.0)\n                            .build())\n                        .connectTimeout(656443886.0)\n                        .connectionIsProxied(false)\n                        .database(10.0)\n                        .host(\"...my_host...\")\n                        .keepaliveBacklog(251172057.0)\n                        .keepalivePoolSize(1127137192.0)\n                        .password(\"...my_password...\")\n                        .port(31201.0)\n                        .readTimeout(1222450418.0)\n                        .sendTimeout(1541453227.0)\n                        .sentinelMaster(\"...my_sentinel_master...\")\n                        .sentinelNodes(GatewayPluginAiProxyAdvancedConfigVectordbRedisSentinelNodeArgs.builder()\n                            .host(\"...my_host...\")\n                            .port(61553.0)\n                            .build())\n                        .sentinelPassword(\"...my_sentinel_password...\")\n                        .sentinelRole(\"master\")\n                        .sentinelUsername(\"...my_sentinel_username...\")\n                        .serverName(\"...my_server_name...\")\n                        .ssl(true)\n                        .sslVerify(false)\n                        .username(\"...my_username...\")\n                        .build())\n                    .strategy(\"pgvector\")\n                    .threshold(6.56)\n                    .build())\n                .build())\n            .consumer(GatewayPluginAiProxyAdvancedConsumerArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .consumerGroup(GatewayPluginAiProxyAdvancedConsumerGroupArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .controlPlaneId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .createdAt(3.0)\n            .enabled(true)\n            .gatewayPluginAiProxyAdvancedId(\"...my_id...\")\n            .instanceName(\"...my_instance_name...\")\n            .ordering(GatewayPluginAiProxyAdvancedOrderingArgs.builder()\n                .after(GatewayPluginAiProxyAdvancedOrderingAfterArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .before(GatewayPluginAiProxyAdvancedOrderingBeforeArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .build())\n            .partials(GatewayPluginAiProxyAdvancedPartialArgs.builder()\n                .id(\"...my_id...\")\n                .name(\"...my_name...\")\n                .path(\"...my_path...\")\n                .build())\n            .protocols(\"ws\")\n            .route(GatewayPluginAiProxyAdvancedRouteArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .service(GatewayPluginAiProxyAdvancedServiceArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .tags(\"...\")\n            .updatedAt(8.0)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myGatewaypluginaiproxyadvanced:\n    type: konnect:GatewayPluginAiProxyAdvanced\n    name: my_gatewaypluginaiproxyadvanced\n    properties:\n      config:\n        balancer:\n          algorithm: lowest-latency\n          connectTimeout: 1.069677678e+09\n          failTimeout: 2.51767862e+08\n          failoverCriterias:\n            - http_403\n          hashOnHeader: '...my_hash_on_header...'\n          latencyStrategy: e2e\n          maxFails: 32489\n          readTimeout: 1.128540479e+09\n          retries: 14809\n          slots: 27573\n          tokensCountStrategy: prompt-tokens\n          writeTimeout: 1.475900303e+09\n        embeddings:\n          auth:\n            allowOverride: true\n            awsAccessKeyId: '...my_aws_access_key_id...'\n            awsSecretAccessKey: '...my_aws_secret_access_key...'\n            azureClientId: '...my_azure_client_id...'\n            azureClientSecret: '...my_azure_client_secret...'\n            azureTenantId: '...my_azure_tenant_id...'\n            azureUseManagedIdentity: false\n            gcpServiceAccountJson: '...my_gcp_service_account_json...'\n            gcpUseServiceAccount: false\n            headerName: '...my_header_name...'\n            headerValue: '...my_header_value...'\n            paramLocation: body\n            paramName: '...my_param_name...'\n            paramValue: '...my_param_value...'\n          model:\n            name: '...my_name...'\n            options:\n              azure:\n                apiVersion: '...my_api_version...'\n                deploymentId: '...my_deployment_id...'\n                instance: '...my_instance...'\n              bedrock:\n                awsAssumeRoleArn: '...my_aws_assume_role_arn...'\n                awsRegion: '...my_aws_region...'\n                awsRoleSessionName: '...my_aws_role_session_name...'\n                awsStsEndpointUrl: '...my_aws_sts_endpoint_url...'\n                embeddingsNormalize: true\n                performanceConfigLatency: '...my_performance_config_latency...'\n                videoOutputS3Uri: '...my_video_output_s3_uri...'\n              gemini:\n                apiEndpoint: '...my_api_endpoint...'\n                locationId: '...my_location_id...'\n                projectId: '...my_project_id...'\n              huggingface:\n                useCache: false\n                waitForModel: false\n              upstreamUrl: '...my_upstream_url...'\n            provider: gemini\n        genaiCategory: realtime/generation\n        llmFormat: huggingface\n        maxRequestBodySize: 5\n        modelNameHeader: true\n        responseStreaming: allow\n        targets:\n          - auth:\n              allowOverride: true\n              awsAccessKeyId: '...my_aws_access_key_id...'\n              awsSecretAccessKey: '...my_aws_secret_access_key...'\n              azureClientId: '...my_azure_client_id...'\n              azureClientSecret: '...my_azure_client_secret...'\n              azureTenantId: '...my_azure_tenant_id...'\n              azureUseManagedIdentity: true\n              gcpServiceAccountJson: '...my_gcp_service_account_json...'\n              gcpUseServiceAccount: false\n              headerName: '...my_header_name...'\n              headerValue: '...my_header_value...'\n              paramLocation: query\n              paramName: '...my_param_name...'\n              paramValue: '...my_param_value...'\n            description: '...my_description...'\n            logging:\n              logPayloads: true\n              logStatistics: true\n            metadata:\n              key:\n                fn::toJSON: value\n            model:\n              name: '...my_name...'\n              options:\n                anthropicVersion: '...my_anthropic_version...'\n                azureApiVersion: '...my_azure_api_version...'\n                azureDeploymentId: '...my_azure_deployment_id...'\n                azureInstance: '...my_azure_instance...'\n                bedrock:\n                  awsAssumeRoleArn: '...my_aws_assume_role_arn...'\n                  awsRegion: '...my_aws_region...'\n                  awsRoleSessionName: '...my_aws_role_session_name...'\n                  awsStsEndpointUrl: '...my_aws_sts_endpoint_url...'\n                  embeddingsNormalize: true\n                  performanceConfigLatency: '...my_performance_config_latency...'\n                  videoOutputS3Uri: '...my_video_output_s3_uri...'\n                cohere:\n                  embeddingInputType: classification\n                  waitForModel: true\n                dashscope:\n                  international: true\n                embeddingsDimensions: 6\n                gemini:\n                  apiEndpoint: '...my_api_endpoint...'\n                  endpointId: '...my_endpoint_id...'\n                  locationId: '...my_location_id...'\n                  projectId: '...my_project_id...'\n                huggingface:\n                  useCache: true\n                  waitForModel: false\n                inputCost: 2.57\n                llama2Format: openai\n                maxTokens: 2\n                mistralFormat: openai\n                outputCost: 7.34\n                temperature: 3.51\n                topK: 204\n                topP: 0.37\n                upstreamPath: '...my_upstream_path...'\n                upstreamUrl: '...my_upstream_url...'\n              provider: cerebras\n            routeType: llm/v1/assistants\n            weight: 58189\n        vectordb:\n          dimensions: 3\n          distanceMetric: euclidean\n          pgvector:\n            database: '...my_database...'\n            host: '...my_host...'\n            password: '...my_password...'\n            port: 5\n            ssl: true\n            sslCert: '...my_ssl_cert...'\n            sslCertKey: '...my_ssl_cert_key...'\n            sslRequired: true\n            sslVerify: true\n            sslVersion: any\n            timeout: 3.81\n            user: '...my_user...'\n          redis:\n            cloudAuthentication:\n              authProvider: azure\n              awsAccessKeyId: '...my_aws_access_key_id...'\n              awsAssumeRoleArn: '...my_aws_assume_role_arn...'\n              awsCacheName: '...my_aws_cache_name...'\n              awsIsServerless: false\n              awsRegion: '...my_aws_region...'\n              awsRoleSessionName: '...my_aws_role_session_name...'\n              awsSecretAccessKey: '...my_aws_secret_access_key...'\n              azureClientId: '...my_azure_client_id...'\n              azureClientSecret: '...my_azure_client_secret...'\n              azureTenantId: '...my_azure_tenant_id...'\n              gcpServiceAccountJson: '...my_gcp_service_account_json...'\n            clusterMaxRedirections: 4\n            clusterNodes:\n              - ip: '...my_ip...'\n                port: 50944\n            connectTimeout: 6.56443886e+08\n            connectionIsProxied: false\n            database: 10\n            host: '...my_host...'\n            keepaliveBacklog: 2.51172057e+08\n            keepalivePoolSize: 1.127137192e+09\n            password: '...my_password...'\n            port: 31201\n            readTimeout: 1.222450418e+09\n            sendTimeout: 1.541453227e+09\n            sentinelMaster: '...my_sentinel_master...'\n            sentinelNodes:\n              - host: '...my_host...'\n                port: 61553\n            sentinelPassword: '...my_sentinel_password...'\n            sentinelRole: master\n            sentinelUsername: '...my_sentinel_username...'\n            serverName: '...my_server_name...'\n            ssl: true\n            sslVerify: false\n            username: '...my_username...'\n          strategy: pgvector\n          threshold: 6.56\n      consumer:\n        id: '...my_id...'\n      consumerGroup:\n        id: '...my_id...'\n      controlPlaneId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      createdAt: 3\n      enabled: true\n      gatewayPluginAiProxyAdvancedId: '...my_id...'\n      instanceName: '...my_instance_name...'\n      ordering:\n        after:\n          accesses:\n            - '...'\n        before:\n          accesses:\n            - '...'\n      partials:\n        - id: '...my_id...'\n          name: '...my_name...'\n          path: '...my_path...'\n      protocols:\n        - ws\n      route:\n        id: '...my_id...'\n      service:\n        id: '...my_id...'\n      tags:\n        - '...'\n      updatedAt: 8\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_gateway_plugin_ai_proxy_advanced.my_konnect_gateway_plugin_ai_proxy_advanced\n\n  id = jsonencode({\n\n    control_plane_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/gatewayPluginAiProxyAdvanced:GatewayPluginAiProxyAdvanced my_konnect_gateway_plugin_ai_proxy_advanced '{\"control_plane_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"}'\n```\n\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginAiProxyAdvancedConfig:GatewayPluginAiProxyAdvancedConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginAiProxyAdvancedConsumer:GatewayPluginAiProxyAdvancedConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"consumerGroup":{"$ref":"#/types/konnect:index%2FGatewayPluginAiProxyAdvancedConsumerGroup:GatewayPluginAiProxyAdvancedConsumerGroup","description":"If set, the plugin will activate only for requests where the specified consumer group has been authenticated. (Note that some plugins can not be restricted to consumers groups this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer Groups\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginAiProxyAdvancedId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginAiProxyAdvancedOrdering:GatewayPluginAiProxyAdvancedOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginAiProxyAdvancedPartial:GatewayPluginAiProxyAdvancedPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A list of the request protocols that will trigger this plugin. The default value, as well as the possible values allowed on this field, may change depending on the plugin type. For example, plugins that only work in stream mode will only support tcp and tls. Default: [\"grpc\",\"grpcs\",\"http\",\"https\",\"ws\",\"wss\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginAiProxyAdvancedRoute:GatewayPluginAiProxyAdvancedRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginAiProxyAdvancedService:GatewayPluginAiProxyAdvancedService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object","required":["config","consumer","consumerGroup","controlPlaneId","createdAt","enabled","gatewayPluginAiProxyAdvancedId","ordering","protocols","route","service","updatedAt"],"inputProperties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginAiProxyAdvancedConfig:GatewayPluginAiProxyAdvancedConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginAiProxyAdvancedConsumer:GatewayPluginAiProxyAdvancedConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"consumerGroup":{"$ref":"#/types/konnect:index%2FGatewayPluginAiProxyAdvancedConsumerGroup:GatewayPluginAiProxyAdvancedConsumerGroup","description":"If set, the plugin will activate only for requests where the specified consumer group has been authenticated. (Note that some plugins can not be restricted to consumers groups this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer Groups\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginAiProxyAdvancedId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginAiProxyAdvancedOrdering:GatewayPluginAiProxyAdvancedOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginAiProxyAdvancedPartial:GatewayPluginAiProxyAdvancedPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A list of the request protocols that will trigger this plugin. The default value, as well as the possible values allowed on this field, may change depending on the plugin type. For example, plugins that only work in stream mode will only support tcp and tls. Default: [\"grpc\",\"grpcs\",\"http\",\"https\",\"ws\",\"wss\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginAiProxyAdvancedRoute:GatewayPluginAiProxyAdvancedRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginAiProxyAdvancedService:GatewayPluginAiProxyAdvancedService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"requiredInputs":["config","controlPlaneId"],"stateInputs":{"description":"Input properties used for looking up and filtering GatewayPluginAiProxyAdvanced resources.\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginAiProxyAdvancedConfig:GatewayPluginAiProxyAdvancedConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginAiProxyAdvancedConsumer:GatewayPluginAiProxyAdvancedConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"consumerGroup":{"$ref":"#/types/konnect:index%2FGatewayPluginAiProxyAdvancedConsumerGroup:GatewayPluginAiProxyAdvancedConsumerGroup","description":"If set, the plugin will activate only for requests where the specified consumer group has been authenticated. (Note that some plugins can not be restricted to consumers groups this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer Groups\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginAiProxyAdvancedId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginAiProxyAdvancedOrdering:GatewayPluginAiProxyAdvancedOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginAiProxyAdvancedPartial:GatewayPluginAiProxyAdvancedPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A list of the request protocols that will trigger this plugin. The default value, as well as the possible values allowed on this field, may change depending on the plugin type. For example, plugins that only work in stream mode will only support tcp and tls. Default: [\"grpc\",\"grpcs\",\"http\",\"https\",\"ws\",\"wss\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginAiProxyAdvancedRoute:GatewayPluginAiProxyAdvancedRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginAiProxyAdvancedService:GatewayPluginAiProxyAdvancedService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object"}},"konnect:index/gatewayPluginAiRagInjector:GatewayPluginAiRagInjector":{"description":"GatewayPluginAiRagInjector Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```yaml\nresources:\n  myGatewaypluginairaginjector:\n    type: konnect:GatewayPluginAiRagInjector\n    name: my_gatewaypluginairaginjector\n    properties:\n      config:\n        collectionAclConfig:\n          key:\n            allow:\n              - '...'\n            deny:\n              - '...'\n        consumerIdentifier: custom_id\n        embeddings:\n          auth:\n            allowOverride: true\n            awsAccessKeyId: '...my_aws_access_key_id...'\n            awsSecretAccessKey: '...my_aws_secret_access_key...'\n            azureClientId: '...my_azure_client_id...'\n            azureClientSecret: '...my_azure_client_secret...'\n            azureTenantId: '...my_azure_tenant_id...'\n            azureUseManagedIdentity: false\n            gcpServiceAccountJson: '...my_gcp_service_account_json...'\n            gcpUseServiceAccount: false\n            headerName: '...my_header_name...'\n            headerValue: '...my_header_value...'\n            paramLocation: query\n            paramName: '...my_param_name...'\n            paramValue: '...my_param_value...'\n          model:\n            name: '...my_name...'\n            options:\n              azure:\n                apiVersion: '...my_api_version...'\n                deploymentId: '...my_deployment_id...'\n                instance: '...my_instance...'\n              bedrock:\n                awsAssumeRoleArn: '...my_aws_assume_role_arn...'\n                awsRegion: '...my_aws_region...'\n                awsRoleSessionName: '...my_aws_role_session_name...'\n                awsStsEndpointUrl: '...my_aws_sts_endpoint_url...'\n                embeddingsNormalize: false\n                performanceConfigLatency: '...my_performance_config_latency...'\n                videoOutputS3Uri: '...my_video_output_s3_uri...'\n              gemini:\n                apiEndpoint: '...my_api_endpoint...'\n                locationId: '...my_location_id...'\n                projectId: '...my_project_id...'\n              huggingface:\n                useCache: false\n                waitForModel: true\n              upstreamUrl: '...my_upstream_url...'\n            provider: gemini\n        fetchChunksCount: 9.36\n        filterMode: strict\n        globalAclConfig:\n          allows:\n            - '...'\n          denies:\n            - '...'\n        injectAsRole: user\n        injectTemplate: '...my_inject_template...'\n        maxFilterClauses: 287\n        stopOnFailure: true\n        stopOnFilterError: true\n        vectordb:\n          dimensions: 3\n          distanceMetric: cosine\n          pgvector:\n            database: '...my_database...'\n            host: '...my_host...'\n            password: '...my_password...'\n            port: 9\n            ssl: true\n            sslCert: '...my_ssl_cert...'\n            sslCertKey: '...my_ssl_cert_key...'\n            sslRequired: true\n            sslVerify: false\n            sslVersion: tlsv1_2\n            timeout: 2.12\n            user: '...my_user...'\n          redis:\n            cloudAuthentication:\n              authProvider: gcp\n              awsAccessKeyId: '...my_aws_access_key_id...'\n              awsAssumeRoleArn: '...my_aws_assume_role_arn...'\n              awsCacheName: '...my_aws_cache_name...'\n              awsIsServerless: false\n              awsRegion: '...my_aws_region...'\n              awsRoleSessionName: '...my_aws_role_session_name...'\n              awsSecretAccessKey: '...my_aws_secret_access_key...'\n              azureClientId: '...my_azure_client_id...'\n              azureClientSecret: '...my_azure_client_secret...'\n              azureTenantId: '...my_azure_tenant_id...'\n              gcpServiceAccountJson: '...my_gcp_service_account_json...'\n            clusterMaxRedirections: 7\n            clusterNodes:\n              - ip: '...my_ip...'\n                port: 39880\n            connectTimeout: 1.321340165e+09\n            connectionIsProxied: true\n            database: 8\n            host: '...my_host...'\n            keepaliveBacklog: 1.612696819e+09\n            keepalivePoolSize: 1.28305764e+09\n            password: '...my_password...'\n            port: 34990\n            readTimeout: 1.86060548e+08\n            sendTimeout: 1.645981911e+09\n            sentinelMaster: '...my_sentinel_master...'\n            sentinelNodes:\n              - host: '...my_host...'\n                port: 49697\n            sentinelPassword: '...my_sentinel_password...'\n            sentinelRole: any\n            sentinelUsername: '...my_sentinel_username...'\n            serverName: '...my_server_name...'\n            ssl: false\n            sslVerify: true\n            username: '...my_username...'\n          strategy: redis\n          threshold: 6.88\n        vectordbNamespace: '...my_vectordb_namespace...'\n      consumer:\n        id: '...my_id...'\n      consumerGroup:\n        id: '...my_id...'\n      controlPlaneId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      createdAt: 3\n      enabled: true\n      gatewayPluginAiRagInjectorId: '...my_id...'\n      instanceName: '...my_instance_name...'\n      ordering:\n        after:\n          accesses:\n            - '...'\n        before:\n          accesses:\n            - '...'\n      partials:\n        - id: '...my_id...'\n          name: '...my_name...'\n          path: '...my_path...'\n      protocols:\n        - https\n      route:\n        id: '...my_id...'\n      service:\n        id: '...my_id...'\n      tags:\n        - '...'\n      updatedAt: 8\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_gateway_plugin_ai_rag_injector.my_konnect_gateway_plugin_ai_rag_injector\n\n  id = jsonencode({\n\n    control_plane_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/gatewayPluginAiRagInjector:GatewayPluginAiRagInjector my_konnect_gateway_plugin_ai_rag_injector '{\"control_plane_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"}'\n```\n\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginAiRagInjectorConfig:GatewayPluginAiRagInjectorConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginAiRagInjectorConsumer:GatewayPluginAiRagInjectorConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"consumerGroup":{"$ref":"#/types/konnect:index%2FGatewayPluginAiRagInjectorConsumerGroup:GatewayPluginAiRagInjectorConsumerGroup","description":"If set, the plugin will activate only for requests where the specified consumer group has been authenticated. (Note that some plugins can not be restricted to consumers groups this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer Groups\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginAiRagInjectorId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginAiRagInjectorOrdering:GatewayPluginAiRagInjectorOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginAiRagInjectorPartial:GatewayPluginAiRagInjectorPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginAiRagInjectorRoute:GatewayPluginAiRagInjectorRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginAiRagInjectorService:GatewayPluginAiRagInjectorService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object","required":["config","consumer","consumerGroup","controlPlaneId","createdAt","enabled","gatewayPluginAiRagInjectorId","ordering","protocols","route","service","updatedAt"],"inputProperties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginAiRagInjectorConfig:GatewayPluginAiRagInjectorConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginAiRagInjectorConsumer:GatewayPluginAiRagInjectorConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"consumerGroup":{"$ref":"#/types/konnect:index%2FGatewayPluginAiRagInjectorConsumerGroup:GatewayPluginAiRagInjectorConsumerGroup","description":"If set, the plugin will activate only for requests where the specified consumer group has been authenticated. (Note that some plugins can not be restricted to consumers groups this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer Groups\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginAiRagInjectorId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginAiRagInjectorOrdering:GatewayPluginAiRagInjectorOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginAiRagInjectorPartial:GatewayPluginAiRagInjectorPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginAiRagInjectorRoute:GatewayPluginAiRagInjectorRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginAiRagInjectorService:GatewayPluginAiRagInjectorService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"requiredInputs":["config","controlPlaneId"],"stateInputs":{"description":"Input properties used for looking up and filtering GatewayPluginAiRagInjector resources.\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginAiRagInjectorConfig:GatewayPluginAiRagInjectorConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginAiRagInjectorConsumer:GatewayPluginAiRagInjectorConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"consumerGroup":{"$ref":"#/types/konnect:index%2FGatewayPluginAiRagInjectorConsumerGroup:GatewayPluginAiRagInjectorConsumerGroup","description":"If set, the plugin will activate only for requests where the specified consumer group has been authenticated. (Note that some plugins can not be restricted to consumers groups this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer Groups\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginAiRagInjectorId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginAiRagInjectorOrdering:GatewayPluginAiRagInjectorOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginAiRagInjectorPartial:GatewayPluginAiRagInjectorPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginAiRagInjectorRoute:GatewayPluginAiRagInjectorRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginAiRagInjectorService:GatewayPluginAiRagInjectorService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object"}},"konnect:index/gatewayPluginAiRateLimitingAdvanced:GatewayPluginAiRateLimitingAdvanced":{"description":"GatewayPluginAiRateLimitingAdvanced Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myGatewaypluginairatelimitingadvanced = new konnect.GatewayPluginAiRateLimitingAdvanced(\"my_gatewaypluginairatelimitingadvanced\", {\n    config: {\n        customCostCountFunction: \"...my_custom_cost_count_function...\",\n        decreaseByFractionsInRedis: true,\n        dictionaryName: \"...my_dictionary_name...\",\n        disablePenalty: false,\n        errorCode: 8.18,\n        errorHideProviders: false,\n        errorMessage: \"...my_error_message...\",\n        headerName: \"...my_header_name...\",\n        hideClientHeaders: false,\n        identifier: \"credential\",\n        llmFormat: \"gemini\",\n        llmProviders: [{\n            limits: [1.52],\n            name: \"huggingface\",\n            windowSizes: [8.86],\n        }],\n        namespace: \"...my_namespace...\",\n        path: \"...my_path...\",\n        redis: {\n            cloudAuthentication: {\n                authProvider: \"gcp\",\n                awsAccessKeyId: \"...my_aws_access_key_id...\",\n                awsAssumeRoleArn: \"...my_aws_assume_role_arn...\",\n                awsCacheName: \"...my_aws_cache_name...\",\n                awsIsServerless: false,\n                awsRegion: \"...my_aws_region...\",\n                awsRoleSessionName: \"...my_aws_role_session_name...\",\n                awsSecretAccessKey: \"...my_aws_secret_access_key...\",\n                azureClientId: \"...my_azure_client_id...\",\n                azureClientSecret: \"...my_azure_client_secret...\",\n                azureTenantId: \"...my_azure_tenant_id...\",\n                gcpServiceAccountJson: \"...my_gcp_service_account_json...\",\n            },\n            clusterMaxRedirections: 5,\n            clusterNodes: [{\n                ip: \"...my_ip...\",\n                port: 36904,\n            }],\n            connectTimeout: 883187098,\n            connectionIsProxied: true,\n            database: 5,\n            host: \"...my_host...\",\n            keepaliveBacklog: 125882903,\n            keepalivePoolSize: 165809619,\n            password: \"...my_password...\",\n            port: 37236,\n            readTimeout: 394887043,\n            sendTimeout: 590662462,\n            sentinelMaster: \"...my_sentinel_master...\",\n            sentinelNodes: [{\n                host: \"...my_host...\",\n                port: 35255,\n            }],\n            sentinelPassword: \"...my_sentinel_password...\",\n            sentinelRole: \"any\",\n            sentinelUsername: \"...my_sentinel_username...\",\n            serverName: \"...my_server_name...\",\n            ssl: false,\n            sslVerify: true,\n            username: \"...my_username...\",\n        },\n        requestPromptCountFunction: \"...my_request_prompt_count_function...\",\n        retryAfterJitterMax: 8.14,\n        strategy: \"redis\",\n        syncRate: 3.98,\n        tokensCountStrategy: \"prompt_tokens\",\n        windowType: \"sliding\",\n    },\n    consumer: {\n        id: \"...my_id...\",\n    },\n    consumerGroup: {\n        id: \"...my_id...\",\n    },\n    controlPlaneId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    createdAt: 6,\n    enabled: true,\n    gatewayPluginAiRateLimitingAdvancedId: \"...my_id...\",\n    instanceName: \"...my_instance_name...\",\n    ordering: {\n        after: {\n            accesses: [\"...\"],\n        },\n        before: {\n            accesses: [\"...\"],\n        },\n    },\n    partials: [{\n        id: \"...my_id...\",\n        name: \"...my_name...\",\n        path: \"...my_path...\",\n    }],\n    protocols: [\"https\"],\n    route: {\n        id: \"...my_id...\",\n    },\n    service: {\n        id: \"...my_id...\",\n    },\n    tags: [\"...\"],\n    updatedAt: 1,\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_gatewaypluginairatelimitingadvanced = konnect.GatewayPluginAiRateLimitingAdvanced(\"my_gatewaypluginairatelimitingadvanced\",\n    config={\n        \"custom_cost_count_function\": \"...my_custom_cost_count_function...\",\n        \"decrease_by_fractions_in_redis\": True,\n        \"dictionary_name\": \"...my_dictionary_name...\",\n        \"disable_penalty\": False,\n        \"error_code\": 8.18,\n        \"error_hide_providers\": False,\n        \"error_message\": \"...my_error_message...\",\n        \"header_name\": \"...my_header_name...\",\n        \"hide_client_headers\": False,\n        \"identifier\": \"credential\",\n        \"llm_format\": \"gemini\",\n        \"llm_providers\": [{\n            \"limits\": [1.52],\n            \"name\": \"huggingface\",\n            \"window_sizes\": [8.86],\n        }],\n        \"namespace\": \"...my_namespace...\",\n        \"path\": \"...my_path...\",\n        \"redis\": {\n            \"cloud_authentication\": {\n                \"auth_provider\": \"gcp\",\n                \"aws_access_key_id\": \"...my_aws_access_key_id...\",\n                \"aws_assume_role_arn\": \"...my_aws_assume_role_arn...\",\n                \"aws_cache_name\": \"...my_aws_cache_name...\",\n                \"aws_is_serverless\": False,\n                \"aws_region\": \"...my_aws_region...\",\n                \"aws_role_session_name\": \"...my_aws_role_session_name...\",\n                \"aws_secret_access_key\": \"...my_aws_secret_access_key...\",\n                \"azure_client_id\": \"...my_azure_client_id...\",\n                \"azure_client_secret\": \"...my_azure_client_secret...\",\n                \"azure_tenant_id\": \"...my_azure_tenant_id...\",\n                \"gcp_service_account_json\": \"...my_gcp_service_account_json...\",\n            },\n            \"cluster_max_redirections\": 5,\n            \"cluster_nodes\": [{\n                \"ip\": \"...my_ip...\",\n                \"port\": 36904,\n            }],\n            \"connect_timeout\": 883187098,\n            \"connection_is_proxied\": True,\n            \"database\": 5,\n            \"host\": \"...my_host...\",\n            \"keepalive_backlog\": 125882903,\n            \"keepalive_pool_size\": 165809619,\n            \"password\": \"...my_password...\",\n            \"port\": 37236,\n            \"read_timeout\": 394887043,\n            \"send_timeout\": 590662462,\n            \"sentinel_master\": \"...my_sentinel_master...\",\n            \"sentinel_nodes\": [{\n                \"host\": \"...my_host...\",\n                \"port\": 35255,\n            }],\n            \"sentinel_password\": \"...my_sentinel_password...\",\n            \"sentinel_role\": \"any\",\n            \"sentinel_username\": \"...my_sentinel_username...\",\n            \"server_name\": \"...my_server_name...\",\n            \"ssl\": False,\n            \"ssl_verify\": True,\n            \"username\": \"...my_username...\",\n        },\n        \"request_prompt_count_function\": \"...my_request_prompt_count_function...\",\n        \"retry_after_jitter_max\": 8.14,\n        \"strategy\": \"redis\",\n        \"sync_rate\": 3.98,\n        \"tokens_count_strategy\": \"prompt_tokens\",\n        \"window_type\": \"sliding\",\n    },\n    consumer={\n        \"id\": \"...my_id...\",\n    },\n    consumer_group={\n        \"id\": \"...my_id...\",\n    },\n    control_plane_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    created_at=6,\n    enabled=True,\n    gateway_plugin_ai_rate_limiting_advanced_id=\"...my_id...\",\n    instance_name=\"...my_instance_name...\",\n    ordering={\n        \"after\": {\n            \"accesses\": [\"...\"],\n        },\n        \"before\": {\n            \"accesses\": [\"...\"],\n        },\n    },\n    partials=[{\n        \"id\": \"...my_id...\",\n        \"name\": \"...my_name...\",\n        \"path\": \"...my_path...\",\n    }],\n    protocols=[\"https\"],\n    route={\n        \"id\": \"...my_id...\",\n    },\n    service={\n        \"id\": \"...my_id...\",\n    },\n    tags=[\"...\"],\n    updated_at=1)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myGatewaypluginairatelimitingadvanced = new Konnect.GatewayPluginAiRateLimitingAdvanced(\"my_gatewaypluginairatelimitingadvanced\", new()\n    {\n        Config = new Konnect.Inputs.GatewayPluginAiRateLimitingAdvancedConfigArgs\n        {\n            CustomCostCountFunction = \"...my_custom_cost_count_function...\",\n            DecreaseByFractionsInRedis = true,\n            DictionaryName = \"...my_dictionary_name...\",\n            DisablePenalty = false,\n            ErrorCode = 8.18,\n            ErrorHideProviders = false,\n            ErrorMessage = \"...my_error_message...\",\n            HeaderName = \"...my_header_name...\",\n            HideClientHeaders = false,\n            Identifier = \"credential\",\n            LlmFormat = \"gemini\",\n            LlmProviders = new[]\n            {\n                new Konnect.Inputs.GatewayPluginAiRateLimitingAdvancedConfigLlmProviderArgs\n                {\n                    Limits = new[]\n                    {\n                        1.52,\n                    },\n                    Name = \"huggingface\",\n                    WindowSizes = new[]\n                    {\n                        8.86,\n                    },\n                },\n            },\n            Namespace = \"...my_namespace...\",\n            Path = \"...my_path...\",\n            Redis = new Konnect.Inputs.GatewayPluginAiRateLimitingAdvancedConfigRedisArgs\n            {\n                CloudAuthentication = new Konnect.Inputs.GatewayPluginAiRateLimitingAdvancedConfigRedisCloudAuthenticationArgs\n                {\n                    AuthProvider = \"gcp\",\n                    AwsAccessKeyId = \"...my_aws_access_key_id...\",\n                    AwsAssumeRoleArn = \"...my_aws_assume_role_arn...\",\n                    AwsCacheName = \"...my_aws_cache_name...\",\n                    AwsIsServerless = false,\n                    AwsRegion = \"...my_aws_region...\",\n                    AwsRoleSessionName = \"...my_aws_role_session_name...\",\n                    AwsSecretAccessKey = \"...my_aws_secret_access_key...\",\n                    AzureClientId = \"...my_azure_client_id...\",\n                    AzureClientSecret = \"...my_azure_client_secret...\",\n                    AzureTenantId = \"...my_azure_tenant_id...\",\n                    GcpServiceAccountJson = \"...my_gcp_service_account_json...\",\n                },\n                ClusterMaxRedirections = 5,\n                ClusterNodes = new[]\n                {\n                    new Konnect.Inputs.GatewayPluginAiRateLimitingAdvancedConfigRedisClusterNodeArgs\n                    {\n                        Ip = \"...my_ip...\",\n                        Port = 36904,\n                    },\n                },\n                ConnectTimeout = 883187098,\n                ConnectionIsProxied = true,\n                Database = 5,\n                Host = \"...my_host...\",\n                KeepaliveBacklog = 125882903,\n                KeepalivePoolSize = 165809619,\n                Password = \"...my_password...\",\n                Port = 37236,\n                ReadTimeout = 394887043,\n                SendTimeout = 590662462,\n                SentinelMaster = \"...my_sentinel_master...\",\n                SentinelNodes = new[]\n                {\n                    new Konnect.Inputs.GatewayPluginAiRateLimitingAdvancedConfigRedisSentinelNodeArgs\n                    {\n                        Host = \"...my_host...\",\n                        Port = 35255,\n                    },\n                },\n                SentinelPassword = \"...my_sentinel_password...\",\n                SentinelRole = \"any\",\n                SentinelUsername = \"...my_sentinel_username...\",\n                ServerName = \"...my_server_name...\",\n                Ssl = false,\n                SslVerify = true,\n                Username = \"...my_username...\",\n            },\n            RequestPromptCountFunction = \"...my_request_prompt_count_function...\",\n            RetryAfterJitterMax = 8.14,\n            Strategy = \"redis\",\n            SyncRate = 3.98,\n            TokensCountStrategy = \"prompt_tokens\",\n            WindowType = \"sliding\",\n        },\n        Consumer = new Konnect.Inputs.GatewayPluginAiRateLimitingAdvancedConsumerArgs\n        {\n            Id = \"...my_id...\",\n        },\n        ConsumerGroup = new Konnect.Inputs.GatewayPluginAiRateLimitingAdvancedConsumerGroupArgs\n        {\n            Id = \"...my_id...\",\n        },\n        ControlPlaneId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        CreatedAt = 6,\n        Enabled = true,\n        GatewayPluginAiRateLimitingAdvancedId = \"...my_id...\",\n        InstanceName = \"...my_instance_name...\",\n        Ordering = new Konnect.Inputs.GatewayPluginAiRateLimitingAdvancedOrderingArgs\n        {\n            After = new Konnect.Inputs.GatewayPluginAiRateLimitingAdvancedOrderingAfterArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n            Before = new Konnect.Inputs.GatewayPluginAiRateLimitingAdvancedOrderingBeforeArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n        },\n        Partials = new[]\n        {\n            new Konnect.Inputs.GatewayPluginAiRateLimitingAdvancedPartialArgs\n            {\n                Id = \"...my_id...\",\n                Name = \"...my_name...\",\n                Path = \"...my_path...\",\n            },\n        },\n        Protocols = new[]\n        {\n            \"https\",\n        },\n        Route = new Konnect.Inputs.GatewayPluginAiRateLimitingAdvancedRouteArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Service = new Konnect.Inputs.GatewayPluginAiRateLimitingAdvancedServiceArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Tags = new[]\n        {\n            \"...\",\n        },\n        UpdatedAt = 1,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewGatewayPluginAiRateLimitingAdvanced(ctx, \"my_gatewaypluginairatelimitingadvanced\", \u0026konnect.GatewayPluginAiRateLimitingAdvancedArgs{\n\t\t\tConfig: \u0026konnect.GatewayPluginAiRateLimitingAdvancedConfigArgs{\n\t\t\t\tCustomCostCountFunction:    pulumi.String(\"...my_custom_cost_count_function...\"),\n\t\t\t\tDecreaseByFractionsInRedis: pulumi.Bool(true),\n\t\t\t\tDictionaryName:             pulumi.String(\"...my_dictionary_name...\"),\n\t\t\t\tDisablePenalty:             pulumi.Bool(false),\n\t\t\t\tErrorCode:                  pulumi.Float64(8.18),\n\t\t\t\tErrorHideProviders:         pulumi.Bool(false),\n\t\t\t\tErrorMessage:               pulumi.String(\"...my_error_message...\"),\n\t\t\t\tHeaderName:                 pulumi.String(\"...my_header_name...\"),\n\t\t\t\tHideClientHeaders:          pulumi.Bool(false),\n\t\t\t\tIdentifier:                 pulumi.String(\"credential\"),\n\t\t\t\tLlmFormat:                  pulumi.String(\"gemini\"),\n\t\t\t\tLlmProviders: konnect.GatewayPluginAiRateLimitingAdvancedConfigLlmProviderArray{\n\t\t\t\t\t\u0026konnect.GatewayPluginAiRateLimitingAdvancedConfigLlmProviderArgs{\n\t\t\t\t\t\tLimits: pulumi.Float64Array{\n\t\t\t\t\t\t\tpulumi.Float64(1.52),\n\t\t\t\t\t\t},\n\t\t\t\t\t\tName: pulumi.String(\"huggingface\"),\n\t\t\t\t\t\tWindowSizes: pulumi.Float64Array{\n\t\t\t\t\t\t\tpulumi.Float64(8.86),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tNamespace: pulumi.String(\"...my_namespace...\"),\n\t\t\t\tPath:      pulumi.String(\"...my_path...\"),\n\t\t\t\tRedis: \u0026konnect.GatewayPluginAiRateLimitingAdvancedConfigRedisArgs{\n\t\t\t\t\tCloudAuthentication: \u0026konnect.GatewayPluginAiRateLimitingAdvancedConfigRedisCloudAuthenticationArgs{\n\t\t\t\t\t\tAuthProvider:          pulumi.String(\"gcp\"),\n\t\t\t\t\t\tAwsAccessKeyId:        pulumi.String(\"...my_aws_access_key_id...\"),\n\t\t\t\t\t\tAwsAssumeRoleArn:      pulumi.String(\"...my_aws_assume_role_arn...\"),\n\t\t\t\t\t\tAwsCacheName:          pulumi.String(\"...my_aws_cache_name...\"),\n\t\t\t\t\t\tAwsIsServerless:       pulumi.Bool(false),\n\t\t\t\t\t\tAwsRegion:             pulumi.String(\"...my_aws_region...\"),\n\t\t\t\t\t\tAwsRoleSessionName:    pulumi.String(\"...my_aws_role_session_name...\"),\n\t\t\t\t\t\tAwsSecretAccessKey:    pulumi.String(\"...my_aws_secret_access_key...\"),\n\t\t\t\t\t\tAzureClientId:         pulumi.String(\"...my_azure_client_id...\"),\n\t\t\t\t\t\tAzureClientSecret:     pulumi.String(\"...my_azure_client_secret...\"),\n\t\t\t\t\t\tAzureTenantId:         pulumi.String(\"...my_azure_tenant_id...\"),\n\t\t\t\t\t\tGcpServiceAccountJson: pulumi.String(\"...my_gcp_service_account_json...\"),\n\t\t\t\t\t},\n\t\t\t\t\tClusterMaxRedirections: pulumi.Float64(5),\n\t\t\t\t\tClusterNodes: konnect.GatewayPluginAiRateLimitingAdvancedConfigRedisClusterNodeArray{\n\t\t\t\t\t\t\u0026konnect.GatewayPluginAiRateLimitingAdvancedConfigRedisClusterNodeArgs{\n\t\t\t\t\t\t\tIp:   pulumi.String(\"...my_ip...\"),\n\t\t\t\t\t\t\tPort: pulumi.Float64(36904),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tConnectTimeout:      pulumi.Float64(883187098),\n\t\t\t\t\tConnectionIsProxied: pulumi.Bool(true),\n\t\t\t\t\tDatabase:            pulumi.Float64(5),\n\t\t\t\t\tHost:                pulumi.String(\"...my_host...\"),\n\t\t\t\t\tKeepaliveBacklog:    pulumi.Float64(125882903),\n\t\t\t\t\tKeepalivePoolSize:   pulumi.Float64(165809619),\n\t\t\t\t\tPassword:            pulumi.String(\"...my_password...\"),\n\t\t\t\t\tPort:                pulumi.Float64(37236),\n\t\t\t\t\tReadTimeout:         pulumi.Float64(394887043),\n\t\t\t\t\tSendTimeout:         pulumi.Float64(590662462),\n\t\t\t\t\tSentinelMaster:      pulumi.String(\"...my_sentinel_master...\"),\n\t\t\t\t\tSentinelNodes: konnect.GatewayPluginAiRateLimitingAdvancedConfigRedisSentinelNodeArray{\n\t\t\t\t\t\t\u0026konnect.GatewayPluginAiRateLimitingAdvancedConfigRedisSentinelNodeArgs{\n\t\t\t\t\t\t\tHost: pulumi.String(\"...my_host...\"),\n\t\t\t\t\t\t\tPort: pulumi.Float64(35255),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tSentinelPassword: pulumi.String(\"...my_sentinel_password...\"),\n\t\t\t\t\tSentinelRole:     pulumi.String(\"any\"),\n\t\t\t\t\tSentinelUsername: pulumi.String(\"...my_sentinel_username...\"),\n\t\t\t\t\tServerName:       pulumi.String(\"...my_server_name...\"),\n\t\t\t\t\tSsl:              pulumi.Bool(false),\n\t\t\t\t\tSslVerify:        pulumi.Bool(true),\n\t\t\t\t\tUsername:         pulumi.String(\"...my_username...\"),\n\t\t\t\t},\n\t\t\t\tRequestPromptCountFunction: pulumi.String(\"...my_request_prompt_count_function...\"),\n\t\t\t\tRetryAfterJitterMax:        pulumi.Float64(8.14),\n\t\t\t\tStrategy:                   pulumi.String(\"redis\"),\n\t\t\t\tSyncRate:                   pulumi.Float64(3.98),\n\t\t\t\tTokensCountStrategy:        pulumi.String(\"prompt_tokens\"),\n\t\t\t\tWindowType:                 pulumi.String(\"sliding\"),\n\t\t\t},\n\t\t\tConsumer: \u0026konnect.GatewayPluginAiRateLimitingAdvancedConsumerArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tConsumerGroup: \u0026konnect.GatewayPluginAiRateLimitingAdvancedConsumerGroupArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tControlPlaneId:                        pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tCreatedAt:                             pulumi.Float64(6),\n\t\t\tEnabled:                               pulumi.Bool(true),\n\t\t\tGatewayPluginAiRateLimitingAdvancedId: pulumi.String(\"...my_id...\"),\n\t\t\tInstanceName:                          pulumi.String(\"...my_instance_name...\"),\n\t\t\tOrdering: \u0026konnect.GatewayPluginAiRateLimitingAdvancedOrderingArgs{\n\t\t\t\tAfter: \u0026konnect.GatewayPluginAiRateLimitingAdvancedOrderingAfterArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tBefore: \u0026konnect.GatewayPluginAiRateLimitingAdvancedOrderingBeforeArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tPartials: konnect.GatewayPluginAiRateLimitingAdvancedPartialArray{\n\t\t\t\t\u0026konnect.GatewayPluginAiRateLimitingAdvancedPartialArgs{\n\t\t\t\t\tId:   pulumi.String(\"...my_id...\"),\n\t\t\t\t\tName: pulumi.String(\"...my_name...\"),\n\t\t\t\t\tPath: pulumi.String(\"...my_path...\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tProtocols: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"https\"),\n\t\t\t},\n\t\t\tRoute: \u0026konnect.GatewayPluginAiRateLimitingAdvancedRouteArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tService: \u0026konnect.GatewayPluginAiRateLimitingAdvancedServiceArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"...\"),\n\t\t\t},\n\t\t\tUpdatedAt: pulumi.Float64(1),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.GatewayPluginAiRateLimitingAdvanced;\nimport com.pulumi.konnect.GatewayPluginAiRateLimitingAdvancedArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiRateLimitingAdvancedConfigArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiRateLimitingAdvancedConfigRedisArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiRateLimitingAdvancedConfigRedisCloudAuthenticationArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiRateLimitingAdvancedConsumerArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiRateLimitingAdvancedConsumerGroupArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiRateLimitingAdvancedOrderingArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiRateLimitingAdvancedOrderingAfterArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiRateLimitingAdvancedOrderingBeforeArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiRateLimitingAdvancedPartialArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiRateLimitingAdvancedRouteArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiRateLimitingAdvancedServiceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myGatewaypluginairatelimitingadvanced = new GatewayPluginAiRateLimitingAdvanced(\"myGatewaypluginairatelimitingadvanced\", GatewayPluginAiRateLimitingAdvancedArgs.builder()\n            .config(GatewayPluginAiRateLimitingAdvancedConfigArgs.builder()\n                .customCostCountFunction(\"...my_custom_cost_count_function...\")\n                .decreaseByFractionsInRedis(true)\n                .dictionaryName(\"...my_dictionary_name...\")\n                .disablePenalty(false)\n                .errorCode(8.18)\n                .errorHideProviders(false)\n                .errorMessage(\"...my_error_message...\")\n                .headerName(\"...my_header_name...\")\n                .hideClientHeaders(false)\n                .identifier(\"credential\")\n                .llmFormat(\"gemini\")\n                .llmProviders(GatewayPluginAiRateLimitingAdvancedConfigLlmProviderArgs.builder()\n                    .limits(1.52)\n                    .name(\"huggingface\")\n                    .windowSizes(8.86)\n                    .build())\n                .namespace(\"...my_namespace...\")\n                .path(\"...my_path...\")\n                .redis(GatewayPluginAiRateLimitingAdvancedConfigRedisArgs.builder()\n                    .cloudAuthentication(GatewayPluginAiRateLimitingAdvancedConfigRedisCloudAuthenticationArgs.builder()\n                        .authProvider(\"gcp\")\n                        .awsAccessKeyId(\"...my_aws_access_key_id...\")\n                        .awsAssumeRoleArn(\"...my_aws_assume_role_arn...\")\n                        .awsCacheName(\"...my_aws_cache_name...\")\n                        .awsIsServerless(false)\n                        .awsRegion(\"...my_aws_region...\")\n                        .awsRoleSessionName(\"...my_aws_role_session_name...\")\n                        .awsSecretAccessKey(\"...my_aws_secret_access_key...\")\n                        .azureClientId(\"...my_azure_client_id...\")\n                        .azureClientSecret(\"...my_azure_client_secret...\")\n                        .azureTenantId(\"...my_azure_tenant_id...\")\n                        .gcpServiceAccountJson(\"...my_gcp_service_account_json...\")\n                        .build())\n                    .clusterMaxRedirections(5.0)\n                    .clusterNodes(GatewayPluginAiRateLimitingAdvancedConfigRedisClusterNodeArgs.builder()\n                        .ip(\"...my_ip...\")\n                        .port(36904.0)\n                        .build())\n                    .connectTimeout(883187098.0)\n                    .connectionIsProxied(true)\n                    .database(5.0)\n                    .host(\"...my_host...\")\n                    .keepaliveBacklog(125882903.0)\n                    .keepalivePoolSize(165809619.0)\n                    .password(\"...my_password...\")\n                    .port(37236.0)\n                    .readTimeout(394887043.0)\n                    .sendTimeout(590662462.0)\n                    .sentinelMaster(\"...my_sentinel_master...\")\n                    .sentinelNodes(GatewayPluginAiRateLimitingAdvancedConfigRedisSentinelNodeArgs.builder()\n                        .host(\"...my_host...\")\n                        .port(35255.0)\n                        .build())\n                    .sentinelPassword(\"...my_sentinel_password...\")\n                    .sentinelRole(\"any\")\n                    .sentinelUsername(\"...my_sentinel_username...\")\n                    .serverName(\"...my_server_name...\")\n                    .ssl(false)\n                    .sslVerify(true)\n                    .username(\"...my_username...\")\n                    .build())\n                .requestPromptCountFunction(\"...my_request_prompt_count_function...\")\n                .retryAfterJitterMax(8.14)\n                .strategy(\"redis\")\n                .syncRate(3.98)\n                .tokensCountStrategy(\"prompt_tokens\")\n                .windowType(\"sliding\")\n                .build())\n            .consumer(GatewayPluginAiRateLimitingAdvancedConsumerArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .consumerGroup(GatewayPluginAiRateLimitingAdvancedConsumerGroupArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .controlPlaneId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .createdAt(6.0)\n            .enabled(true)\n            .gatewayPluginAiRateLimitingAdvancedId(\"...my_id...\")\n            .instanceName(\"...my_instance_name...\")\n            .ordering(GatewayPluginAiRateLimitingAdvancedOrderingArgs.builder()\n                .after(GatewayPluginAiRateLimitingAdvancedOrderingAfterArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .before(GatewayPluginAiRateLimitingAdvancedOrderingBeforeArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .build())\n            .partials(GatewayPluginAiRateLimitingAdvancedPartialArgs.builder()\n                .id(\"...my_id...\")\n                .name(\"...my_name...\")\n                .path(\"...my_path...\")\n                .build())\n            .protocols(\"https\")\n            .route(GatewayPluginAiRateLimitingAdvancedRouteArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .service(GatewayPluginAiRateLimitingAdvancedServiceArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .tags(\"...\")\n            .updatedAt(1.0)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myGatewaypluginairatelimitingadvanced:\n    type: konnect:GatewayPluginAiRateLimitingAdvanced\n    name: my_gatewaypluginairatelimitingadvanced\n    properties:\n      config:\n        customCostCountFunction: '...my_custom_cost_count_function...'\n        decreaseByFractionsInRedis: true\n        dictionaryName: '...my_dictionary_name...'\n        disablePenalty: false\n        errorCode: 8.18\n        errorHideProviders: false\n        errorMessage: '...my_error_message...'\n        headerName: '...my_header_name...'\n        hideClientHeaders: false\n        identifier: credential\n        llmFormat: gemini\n        llmProviders:\n          - limits:\n              - 1.52\n            name: huggingface\n            windowSizes:\n              - 8.86\n        namespace: '...my_namespace...'\n        path: '...my_path...'\n        redis:\n          cloudAuthentication:\n            authProvider: gcp\n            awsAccessKeyId: '...my_aws_access_key_id...'\n            awsAssumeRoleArn: '...my_aws_assume_role_arn...'\n            awsCacheName: '...my_aws_cache_name...'\n            awsIsServerless: false\n            awsRegion: '...my_aws_region...'\n            awsRoleSessionName: '...my_aws_role_session_name...'\n            awsSecretAccessKey: '...my_aws_secret_access_key...'\n            azureClientId: '...my_azure_client_id...'\n            azureClientSecret: '...my_azure_client_secret...'\n            azureTenantId: '...my_azure_tenant_id...'\n            gcpServiceAccountJson: '...my_gcp_service_account_json...'\n          clusterMaxRedirections: 5\n          clusterNodes:\n            - ip: '...my_ip...'\n              port: 36904\n          connectTimeout: 8.83187098e+08\n          connectionIsProxied: true\n          database: 5\n          host: '...my_host...'\n          keepaliveBacklog: 1.25882903e+08\n          keepalivePoolSize: 1.65809619e+08\n          password: '...my_password...'\n          port: 37236\n          readTimeout: 3.94887043e+08\n          sendTimeout: 5.90662462e+08\n          sentinelMaster: '...my_sentinel_master...'\n          sentinelNodes:\n            - host: '...my_host...'\n              port: 35255\n          sentinelPassword: '...my_sentinel_password...'\n          sentinelRole: any\n          sentinelUsername: '...my_sentinel_username...'\n          serverName: '...my_server_name...'\n          ssl: false\n          sslVerify: true\n          username: '...my_username...'\n        requestPromptCountFunction: '...my_request_prompt_count_function...'\n        retryAfterJitterMax: 8.14\n        strategy: redis\n        syncRate: 3.98\n        tokensCountStrategy: prompt_tokens\n        windowType: sliding\n      consumer:\n        id: '...my_id...'\n      consumerGroup:\n        id: '...my_id...'\n      controlPlaneId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      createdAt: 6\n      enabled: true\n      gatewayPluginAiRateLimitingAdvancedId: '...my_id...'\n      instanceName: '...my_instance_name...'\n      ordering:\n        after:\n          accesses:\n            - '...'\n        before:\n          accesses:\n            - '...'\n      partials:\n        - id: '...my_id...'\n          name: '...my_name...'\n          path: '...my_path...'\n      protocols:\n        - https\n      route:\n        id: '...my_id...'\n      service:\n        id: '...my_id...'\n      tags:\n        - '...'\n      updatedAt: 1\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_gateway_plugin_ai_rate_limiting_advanced.my_konnect_gateway_plugin_ai_rate_limiting_advanced\n\n  id = jsonencode({\n\n    control_plane_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/gatewayPluginAiRateLimitingAdvanced:GatewayPluginAiRateLimitingAdvanced my_konnect_gateway_plugin_ai_rate_limiting_advanced '{\"control_plane_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"}'\n```\n\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginAiRateLimitingAdvancedConfig:GatewayPluginAiRateLimitingAdvancedConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginAiRateLimitingAdvancedConsumer:GatewayPluginAiRateLimitingAdvancedConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"consumerGroup":{"$ref":"#/types/konnect:index%2FGatewayPluginAiRateLimitingAdvancedConsumerGroup:GatewayPluginAiRateLimitingAdvancedConsumerGroup","description":"If set, the plugin will activate only for requests where the specified consumer group has been authenticated. (Note that some plugins can not be restricted to consumers groups this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer Groups\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginAiRateLimitingAdvancedId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginAiRateLimitingAdvancedOrdering:GatewayPluginAiRateLimitingAdvancedOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginAiRateLimitingAdvancedPartial:GatewayPluginAiRateLimitingAdvancedPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginAiRateLimitingAdvancedRoute:GatewayPluginAiRateLimitingAdvancedRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginAiRateLimitingAdvancedService:GatewayPluginAiRateLimitingAdvancedService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object","required":["config","consumer","consumerGroup","controlPlaneId","createdAt","enabled","gatewayPluginAiRateLimitingAdvancedId","ordering","protocols","route","service","updatedAt"],"inputProperties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginAiRateLimitingAdvancedConfig:GatewayPluginAiRateLimitingAdvancedConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginAiRateLimitingAdvancedConsumer:GatewayPluginAiRateLimitingAdvancedConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"consumerGroup":{"$ref":"#/types/konnect:index%2FGatewayPluginAiRateLimitingAdvancedConsumerGroup:GatewayPluginAiRateLimitingAdvancedConsumerGroup","description":"If set, the plugin will activate only for requests where the specified consumer group has been authenticated. (Note that some plugins can not be restricted to consumers groups this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer Groups\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginAiRateLimitingAdvancedId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginAiRateLimitingAdvancedOrdering:GatewayPluginAiRateLimitingAdvancedOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginAiRateLimitingAdvancedPartial:GatewayPluginAiRateLimitingAdvancedPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginAiRateLimitingAdvancedRoute:GatewayPluginAiRateLimitingAdvancedRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginAiRateLimitingAdvancedService:GatewayPluginAiRateLimitingAdvancedService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"requiredInputs":["config","controlPlaneId"],"stateInputs":{"description":"Input properties used for looking up and filtering GatewayPluginAiRateLimitingAdvanced resources.\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginAiRateLimitingAdvancedConfig:GatewayPluginAiRateLimitingAdvancedConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginAiRateLimitingAdvancedConsumer:GatewayPluginAiRateLimitingAdvancedConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"consumerGroup":{"$ref":"#/types/konnect:index%2FGatewayPluginAiRateLimitingAdvancedConsumerGroup:GatewayPluginAiRateLimitingAdvancedConsumerGroup","description":"If set, the plugin will activate only for requests where the specified consumer group has been authenticated. (Note that some plugins can not be restricted to consumers groups this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer Groups\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginAiRateLimitingAdvancedId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginAiRateLimitingAdvancedOrdering:GatewayPluginAiRateLimitingAdvancedOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginAiRateLimitingAdvancedPartial:GatewayPluginAiRateLimitingAdvancedPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginAiRateLimitingAdvancedRoute:GatewayPluginAiRateLimitingAdvancedRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginAiRateLimitingAdvancedService:GatewayPluginAiRateLimitingAdvancedService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object"}},"konnect:index/gatewayPluginAiRequestTransformer:GatewayPluginAiRequestTransformer":{"description":"GatewayPluginAiRequestTransformer Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myGatewaypluginairequesttransformer = new konnect.GatewayPluginAiRequestTransformer(\"my_gatewaypluginairequesttransformer\", {\n    config: {\n        httpProxyHost: \"...my_http_proxy_host...\",\n        httpProxyPort: 19860,\n        httpTimeout: 10,\n        httpsProxyHost: \"...my_https_proxy_host...\",\n        httpsProxyPort: 20590,\n        httpsVerify: false,\n        llm: {\n            auth: {\n                allowOverride: false,\n                awsAccessKeyId: \"...my_aws_access_key_id...\",\n                awsSecretAccessKey: \"...my_aws_secret_access_key...\",\n                azureClientId: \"...my_azure_client_id...\",\n                azureClientSecret: \"...my_azure_client_secret...\",\n                azureTenantId: \"...my_azure_tenant_id...\",\n                azureUseManagedIdentity: true,\n                gcpServiceAccountJson: \"...my_gcp_service_account_json...\",\n                gcpUseServiceAccount: true,\n                headerName: \"...my_header_name...\",\n                headerValue: \"...my_header_value...\",\n                paramLocation: \"query\",\n                paramName: \"...my_param_name...\",\n                paramValue: \"...my_param_value...\",\n            },\n            description: \"...my_description...\",\n            logging: {\n                logPayloads: false,\n                logStatistics: false,\n            },\n            metadata: {\n                key: JSON.stringify(\"value\"),\n            },\n            model: {\n                name: \"...my_name...\",\n                options: {\n                    anthropicVersion: \"...my_anthropic_version...\",\n                    azureApiVersion: \"...my_azure_api_version...\",\n                    azureDeploymentId: \"...my_azure_deployment_id...\",\n                    azureInstance: \"...my_azure_instance...\",\n                    bedrock: {\n                        awsAssumeRoleArn: \"...my_aws_assume_role_arn...\",\n                        awsRegion: \"...my_aws_region...\",\n                        awsRoleSessionName: \"...my_aws_role_session_name...\",\n                        awsStsEndpointUrl: \"...my_aws_sts_endpoint_url...\",\n                        embeddingsNormalize: false,\n                        performanceConfigLatency: \"...my_performance_config_latency...\",\n                        videoOutputS3Uri: \"...my_video_output_s3_uri...\",\n                    },\n                    cohere: {\n                        embeddingInputType: \"search_query\",\n                        waitForModel: false,\n                    },\n                    dashscope: {\n                        international: false,\n                    },\n                    embeddingsDimensions: 4,\n                    gemini: {\n                        apiEndpoint: \"...my_api_endpoint...\",\n                        endpointId: \"...my_endpoint_id...\",\n                        locationId: \"...my_location_id...\",\n                        projectId: \"...my_project_id...\",\n                    },\n                    huggingface: {\n                        useCache: false,\n                        waitForModel: true,\n                    },\n                    inputCost: 6.37,\n                    llama2Format: \"ollama\",\n                    maxTokens: 5,\n                    mistralFormat: \"ollama\",\n                    outputCost: 8.25,\n                    temperature: 0.7,\n                    topK: 420,\n                    topP: 0.54,\n                    upstreamPath: \"...my_upstream_path...\",\n                    upstreamUrl: \"...my_upstream_url...\",\n                },\n                provider: \"openai\",\n            },\n            routeType: \"llm/v1/responses\",\n            weight: 1422,\n        },\n        maxRequestBodySize: 7,\n        prompt: \"...my_prompt...\",\n        transformationExtractPattern: \"...my_transformation_extract_pattern...\",\n    },\n    consumerGroup: {\n        id: \"...my_id...\",\n    },\n    controlPlaneId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    createdAt: 6,\n    enabled: true,\n    gatewayPluginAiRequestTransformerId: \"...my_id...\",\n    instanceName: \"...my_instance_name...\",\n    ordering: {\n        after: {\n            accesses: [\"...\"],\n        },\n        before: {\n            accesses: [\"...\"],\n        },\n    },\n    partials: [{\n        id: \"...my_id...\",\n        name: \"...my_name...\",\n        path: \"...my_path...\",\n    }],\n    protocols: [\"http\"],\n    route: {\n        id: \"...my_id...\",\n    },\n    service: {\n        id: \"...my_id...\",\n    },\n    tags: [\"...\"],\n    updatedAt: 0,\n});\n```\n```python\nimport pulumi\nimport json\nimport pulumi_konnect as konnect\n\nmy_gatewaypluginairequesttransformer = konnect.GatewayPluginAiRequestTransformer(\"my_gatewaypluginairequesttransformer\",\n    config={\n        \"http_proxy_host\": \"...my_http_proxy_host...\",\n        \"http_proxy_port\": 19860,\n        \"http_timeout\": 10,\n        \"https_proxy_host\": \"...my_https_proxy_host...\",\n        \"https_proxy_port\": 20590,\n        \"https_verify\": False,\n        \"llm\": {\n            \"auth\": {\n                \"allow_override\": False,\n                \"aws_access_key_id\": \"...my_aws_access_key_id...\",\n                \"aws_secret_access_key\": \"...my_aws_secret_access_key...\",\n                \"azure_client_id\": \"...my_azure_client_id...\",\n                \"azure_client_secret\": \"...my_azure_client_secret...\",\n                \"azure_tenant_id\": \"...my_azure_tenant_id...\",\n                \"azure_use_managed_identity\": True,\n                \"gcp_service_account_json\": \"...my_gcp_service_account_json...\",\n                \"gcp_use_service_account\": True,\n                \"header_name\": \"...my_header_name...\",\n                \"header_value\": \"...my_header_value...\",\n                \"param_location\": \"query\",\n                \"param_name\": \"...my_param_name...\",\n                \"param_value\": \"...my_param_value...\",\n            },\n            \"description\": \"...my_description...\",\n            \"logging\": {\n                \"log_payloads\": False,\n                \"log_statistics\": False,\n            },\n            \"metadata\": {\n                \"key\": json.dumps(\"value\"),\n            },\n            \"model\": {\n                \"name\": \"...my_name...\",\n                \"options\": {\n                    \"anthropic_version\": \"...my_anthropic_version...\",\n                    \"azure_api_version\": \"...my_azure_api_version...\",\n                    \"azure_deployment_id\": \"...my_azure_deployment_id...\",\n                    \"azure_instance\": \"...my_azure_instance...\",\n                    \"bedrock\": {\n                        \"aws_assume_role_arn\": \"...my_aws_assume_role_arn...\",\n                        \"aws_region\": \"...my_aws_region...\",\n                        \"aws_role_session_name\": \"...my_aws_role_session_name...\",\n                        \"aws_sts_endpoint_url\": \"...my_aws_sts_endpoint_url...\",\n                        \"embeddings_normalize\": False,\n                        \"performance_config_latency\": \"...my_performance_config_latency...\",\n                        \"video_output_s3_uri\": \"...my_video_output_s3_uri...\",\n                    },\n                    \"cohere\": {\n                        \"embedding_input_type\": \"search_query\",\n                        \"wait_for_model\": False,\n                    },\n                    \"dashscope\": {\n                        \"international\": False,\n                    },\n                    \"embeddings_dimensions\": 4,\n                    \"gemini\": {\n                        \"api_endpoint\": \"...my_api_endpoint...\",\n                        \"endpoint_id\": \"...my_endpoint_id...\",\n                        \"location_id\": \"...my_location_id...\",\n                        \"project_id\": \"...my_project_id...\",\n                    },\n                    \"huggingface\": {\n                        \"use_cache\": False,\n                        \"wait_for_model\": True,\n                    },\n                    \"input_cost\": 6.37,\n                    \"llama2_format\": \"ollama\",\n                    \"max_tokens\": 5,\n                    \"mistral_format\": \"ollama\",\n                    \"output_cost\": 8.25,\n                    \"temperature\": 0.7,\n                    \"top_k\": 420,\n                    \"top_p\": 0.54,\n                    \"upstream_path\": \"...my_upstream_path...\",\n                    \"upstream_url\": \"...my_upstream_url...\",\n                },\n                \"provider\": \"openai\",\n            },\n            \"route_type\": \"llm/v1/responses\",\n            \"weight\": 1422,\n        },\n        \"max_request_body_size\": 7,\n        \"prompt\": \"...my_prompt...\",\n        \"transformation_extract_pattern\": \"...my_transformation_extract_pattern...\",\n    },\n    consumer_group={\n        \"id\": \"...my_id...\",\n    },\n    control_plane_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    created_at=6,\n    enabled=True,\n    gateway_plugin_ai_request_transformer_id=\"...my_id...\",\n    instance_name=\"...my_instance_name...\",\n    ordering={\n        \"after\": {\n            \"accesses\": [\"...\"],\n        },\n        \"before\": {\n            \"accesses\": [\"...\"],\n        },\n    },\n    partials=[{\n        \"id\": \"...my_id...\",\n        \"name\": \"...my_name...\",\n        \"path\": \"...my_path...\",\n    }],\n    protocols=[\"http\"],\n    route={\n        \"id\": \"...my_id...\",\n    },\n    service={\n        \"id\": \"...my_id...\",\n    },\n    tags=[\"...\"],\n    updated_at=0)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text.Json;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myGatewaypluginairequesttransformer = new Konnect.GatewayPluginAiRequestTransformer(\"my_gatewaypluginairequesttransformer\", new()\n    {\n        Config = new Konnect.Inputs.GatewayPluginAiRequestTransformerConfigArgs\n        {\n            HttpProxyHost = \"...my_http_proxy_host...\",\n            HttpProxyPort = 19860,\n            HttpTimeout = 10,\n            HttpsProxyHost = \"...my_https_proxy_host...\",\n            HttpsProxyPort = 20590,\n            HttpsVerify = false,\n            Llm = new Konnect.Inputs.GatewayPluginAiRequestTransformerConfigLlmArgs\n            {\n                Auth = new Konnect.Inputs.GatewayPluginAiRequestTransformerConfigLlmAuthArgs\n                {\n                    AllowOverride = false,\n                    AwsAccessKeyId = \"...my_aws_access_key_id...\",\n                    AwsSecretAccessKey = \"...my_aws_secret_access_key...\",\n                    AzureClientId = \"...my_azure_client_id...\",\n                    AzureClientSecret = \"...my_azure_client_secret...\",\n                    AzureTenantId = \"...my_azure_tenant_id...\",\n                    AzureUseManagedIdentity = true,\n                    GcpServiceAccountJson = \"...my_gcp_service_account_json...\",\n                    GcpUseServiceAccount = true,\n                    HeaderName = \"...my_header_name...\",\n                    HeaderValue = \"...my_header_value...\",\n                    ParamLocation = \"query\",\n                    ParamName = \"...my_param_name...\",\n                    ParamValue = \"...my_param_value...\",\n                },\n                Description = \"...my_description...\",\n                Logging = new Konnect.Inputs.GatewayPluginAiRequestTransformerConfigLlmLoggingArgs\n                {\n                    LogPayloads = false,\n                    LogStatistics = false,\n                },\n                Metadata = \n                {\n                    { \"key\", JsonSerializer.Serialize(\"value\") },\n                },\n                Model = new Konnect.Inputs.GatewayPluginAiRequestTransformerConfigLlmModelArgs\n                {\n                    Name = \"...my_name...\",\n                    Options = new Konnect.Inputs.GatewayPluginAiRequestTransformerConfigLlmModelOptionsArgs\n                    {\n                        AnthropicVersion = \"...my_anthropic_version...\",\n                        AzureApiVersion = \"...my_azure_api_version...\",\n                        AzureDeploymentId = \"...my_azure_deployment_id...\",\n                        AzureInstance = \"...my_azure_instance...\",\n                        Bedrock = new Konnect.Inputs.GatewayPluginAiRequestTransformerConfigLlmModelOptionsBedrockArgs\n                        {\n                            AwsAssumeRoleArn = \"...my_aws_assume_role_arn...\",\n                            AwsRegion = \"...my_aws_region...\",\n                            AwsRoleSessionName = \"...my_aws_role_session_name...\",\n                            AwsStsEndpointUrl = \"...my_aws_sts_endpoint_url...\",\n                            EmbeddingsNormalize = false,\n                            PerformanceConfigLatency = \"...my_performance_config_latency...\",\n                            VideoOutputS3Uri = \"...my_video_output_s3_uri...\",\n                        },\n                        Cohere = new Konnect.Inputs.GatewayPluginAiRequestTransformerConfigLlmModelOptionsCohereArgs\n                        {\n                            EmbeddingInputType = \"search_query\",\n                            WaitForModel = false,\n                        },\n                        Dashscope = new Konnect.Inputs.GatewayPluginAiRequestTransformerConfigLlmModelOptionsDashscopeArgs\n                        {\n                            International = false,\n                        },\n                        EmbeddingsDimensions = 4,\n                        Gemini = new Konnect.Inputs.GatewayPluginAiRequestTransformerConfigLlmModelOptionsGeminiArgs\n                        {\n                            ApiEndpoint = \"...my_api_endpoint...\",\n                            EndpointId = \"...my_endpoint_id...\",\n                            LocationId = \"...my_location_id...\",\n                            ProjectId = \"...my_project_id...\",\n                        },\n                        Huggingface = new Konnect.Inputs.GatewayPluginAiRequestTransformerConfigLlmModelOptionsHuggingfaceArgs\n                        {\n                            UseCache = false,\n                            WaitForModel = true,\n                        },\n                        InputCost = 6.37,\n                        Llama2Format = \"ollama\",\n                        MaxTokens = 5,\n                        MistralFormat = \"ollama\",\n                        OutputCost = 8.25,\n                        Temperature = 0.7,\n                        TopK = 420,\n                        TopP = 0.54,\n                        UpstreamPath = \"...my_upstream_path...\",\n                        UpstreamUrl = \"...my_upstream_url...\",\n                    },\n                    Provider = \"openai\",\n                },\n                RouteType = \"llm/v1/responses\",\n                Weight = 1422,\n            },\n            MaxRequestBodySize = 7,\n            Prompt = \"...my_prompt...\",\n            TransformationExtractPattern = \"...my_transformation_extract_pattern...\",\n        },\n        ConsumerGroup = new Konnect.Inputs.GatewayPluginAiRequestTransformerConsumerGroupArgs\n        {\n            Id = \"...my_id...\",\n        },\n        ControlPlaneId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        CreatedAt = 6,\n        Enabled = true,\n        GatewayPluginAiRequestTransformerId = \"...my_id...\",\n        InstanceName = \"...my_instance_name...\",\n        Ordering = new Konnect.Inputs.GatewayPluginAiRequestTransformerOrderingArgs\n        {\n            After = new Konnect.Inputs.GatewayPluginAiRequestTransformerOrderingAfterArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n            Before = new Konnect.Inputs.GatewayPluginAiRequestTransformerOrderingBeforeArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n        },\n        Partials = new[]\n        {\n            new Konnect.Inputs.GatewayPluginAiRequestTransformerPartialArgs\n            {\n                Id = \"...my_id...\",\n                Name = \"...my_name...\",\n                Path = \"...my_path...\",\n            },\n        },\n        Protocols = new[]\n        {\n            \"http\",\n        },\n        Route = new Konnect.Inputs.GatewayPluginAiRequestTransformerRouteArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Service = new Konnect.Inputs.GatewayPluginAiRequestTransformerServiceArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Tags = new[]\n        {\n            \"...\",\n        },\n        UpdatedAt = 0,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"encoding/json\"\n\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\ttmpJSON0, err := json.Marshal(\"value\")\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tjson0 := string(tmpJSON0)\n\t\t_, err = konnect.NewGatewayPluginAiRequestTransformer(ctx, \"my_gatewaypluginairequesttransformer\", \u0026konnect.GatewayPluginAiRequestTransformerArgs{\n\t\t\tConfig: \u0026konnect.GatewayPluginAiRequestTransformerConfigArgs{\n\t\t\t\tHttpProxyHost:  pulumi.String(\"...my_http_proxy_host...\"),\n\t\t\t\tHttpProxyPort:  pulumi.Float64(19860),\n\t\t\t\tHttpTimeout:    pulumi.Float64(10),\n\t\t\t\tHttpsProxyHost: pulumi.String(\"...my_https_proxy_host...\"),\n\t\t\t\tHttpsProxyPort: pulumi.Float64(20590),\n\t\t\t\tHttpsVerify:    pulumi.Bool(false),\n\t\t\t\tLlm: \u0026konnect.GatewayPluginAiRequestTransformerConfigLlmArgs{\n\t\t\t\t\tAuth: \u0026konnect.GatewayPluginAiRequestTransformerConfigLlmAuthArgs{\n\t\t\t\t\t\tAllowOverride:           pulumi.Bool(false),\n\t\t\t\t\t\tAwsAccessKeyId:          pulumi.String(\"...my_aws_access_key_id...\"),\n\t\t\t\t\t\tAwsSecretAccessKey:      pulumi.String(\"...my_aws_secret_access_key...\"),\n\t\t\t\t\t\tAzureClientId:           pulumi.String(\"...my_azure_client_id...\"),\n\t\t\t\t\t\tAzureClientSecret:       pulumi.String(\"...my_azure_client_secret...\"),\n\t\t\t\t\t\tAzureTenantId:           pulumi.String(\"...my_azure_tenant_id...\"),\n\t\t\t\t\t\tAzureUseManagedIdentity: pulumi.Bool(true),\n\t\t\t\t\t\tGcpServiceAccountJson:   pulumi.String(\"...my_gcp_service_account_json...\"),\n\t\t\t\t\t\tGcpUseServiceAccount:    pulumi.Bool(true),\n\t\t\t\t\t\tHeaderName:              pulumi.String(\"...my_header_name...\"),\n\t\t\t\t\t\tHeaderValue:             pulumi.String(\"...my_header_value...\"),\n\t\t\t\t\t\tParamLocation:           pulumi.String(\"query\"),\n\t\t\t\t\t\tParamName:               pulumi.String(\"...my_param_name...\"),\n\t\t\t\t\t\tParamValue:              pulumi.String(\"...my_param_value...\"),\n\t\t\t\t\t},\n\t\t\t\t\tDescription: pulumi.String(\"...my_description...\"),\n\t\t\t\t\tLogging: \u0026konnect.GatewayPluginAiRequestTransformerConfigLlmLoggingArgs{\n\t\t\t\t\t\tLogPayloads:   pulumi.Bool(false),\n\t\t\t\t\t\tLogStatistics: pulumi.Bool(false),\n\t\t\t\t\t},\n\t\t\t\t\tMetadata: pulumi.StringMap{\n\t\t\t\t\t\t\"key\": pulumi.String(json0),\n\t\t\t\t\t},\n\t\t\t\t\tModel: \u0026konnect.GatewayPluginAiRequestTransformerConfigLlmModelArgs{\n\t\t\t\t\t\tName: pulumi.String(\"...my_name...\"),\n\t\t\t\t\t\tOptions: \u0026konnect.GatewayPluginAiRequestTransformerConfigLlmModelOptionsArgs{\n\t\t\t\t\t\t\tAnthropicVersion:  pulumi.String(\"...my_anthropic_version...\"),\n\t\t\t\t\t\t\tAzureApiVersion:   pulumi.String(\"...my_azure_api_version...\"),\n\t\t\t\t\t\t\tAzureDeploymentId: pulumi.String(\"...my_azure_deployment_id...\"),\n\t\t\t\t\t\t\tAzureInstance:     pulumi.String(\"...my_azure_instance...\"),\n\t\t\t\t\t\t\tBedrock: \u0026konnect.GatewayPluginAiRequestTransformerConfigLlmModelOptionsBedrockArgs{\n\t\t\t\t\t\t\t\tAwsAssumeRoleArn:         pulumi.String(\"...my_aws_assume_role_arn...\"),\n\t\t\t\t\t\t\t\tAwsRegion:                pulumi.String(\"...my_aws_region...\"),\n\t\t\t\t\t\t\t\tAwsRoleSessionName:       pulumi.String(\"...my_aws_role_session_name...\"),\n\t\t\t\t\t\t\t\tAwsStsEndpointUrl:        pulumi.String(\"...my_aws_sts_endpoint_url...\"),\n\t\t\t\t\t\t\t\tEmbeddingsNormalize:      pulumi.Bool(false),\n\t\t\t\t\t\t\t\tPerformanceConfigLatency: pulumi.String(\"...my_performance_config_latency...\"),\n\t\t\t\t\t\t\t\tVideoOutputS3Uri:         pulumi.String(\"...my_video_output_s3_uri...\"),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tCohere: \u0026konnect.GatewayPluginAiRequestTransformerConfigLlmModelOptionsCohereArgs{\n\t\t\t\t\t\t\t\tEmbeddingInputType: pulumi.String(\"search_query\"),\n\t\t\t\t\t\t\t\tWaitForModel:       pulumi.Bool(false),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tDashscope: \u0026konnect.GatewayPluginAiRequestTransformerConfigLlmModelOptionsDashscopeArgs{\n\t\t\t\t\t\t\t\tInternational: pulumi.Bool(false),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tEmbeddingsDimensions: pulumi.Float64(4),\n\t\t\t\t\t\t\tGemini: \u0026konnect.GatewayPluginAiRequestTransformerConfigLlmModelOptionsGeminiArgs{\n\t\t\t\t\t\t\t\tApiEndpoint: pulumi.String(\"...my_api_endpoint...\"),\n\t\t\t\t\t\t\t\tEndpointId:  pulumi.String(\"...my_endpoint_id...\"),\n\t\t\t\t\t\t\t\tLocationId:  pulumi.String(\"...my_location_id...\"),\n\t\t\t\t\t\t\t\tProjectId:   pulumi.String(\"...my_project_id...\"),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tHuggingface: \u0026konnect.GatewayPluginAiRequestTransformerConfigLlmModelOptionsHuggingfaceArgs{\n\t\t\t\t\t\t\t\tUseCache:     pulumi.Bool(false),\n\t\t\t\t\t\t\t\tWaitForModel: pulumi.Bool(true),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tInputCost:     pulumi.Float64(6.37),\n\t\t\t\t\t\t\tLlama2Format:  pulumi.String(\"ollama\"),\n\t\t\t\t\t\t\tMaxTokens:     pulumi.Float64(5),\n\t\t\t\t\t\t\tMistralFormat: pulumi.String(\"ollama\"),\n\t\t\t\t\t\t\tOutputCost:    pulumi.Float64(8.25),\n\t\t\t\t\t\t\tTemperature:   pulumi.Float64(0.7),\n\t\t\t\t\t\t\tTopK:          pulumi.Float64(420),\n\t\t\t\t\t\t\tTopP:          pulumi.Float64(0.54),\n\t\t\t\t\t\t\tUpstreamPath:  pulumi.String(\"...my_upstream_path...\"),\n\t\t\t\t\t\t\tUpstreamUrl:   pulumi.String(\"...my_upstream_url...\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\tProvider: pulumi.String(\"openai\"),\n\t\t\t\t\t},\n\t\t\t\t\tRouteType: pulumi.String(\"llm/v1/responses\"),\n\t\t\t\t\tWeight:    pulumi.Float64(1422),\n\t\t\t\t},\n\t\t\t\tMaxRequestBodySize:           pulumi.Float64(7),\n\t\t\t\tPrompt:                       pulumi.String(\"...my_prompt...\"),\n\t\t\t\tTransformationExtractPattern: pulumi.String(\"...my_transformation_extract_pattern...\"),\n\t\t\t},\n\t\t\tConsumerGroup: \u0026konnect.GatewayPluginAiRequestTransformerConsumerGroupArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tControlPlaneId:                      pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tCreatedAt:                           pulumi.Float64(6),\n\t\t\tEnabled:                             pulumi.Bool(true),\n\t\t\tGatewayPluginAiRequestTransformerId: pulumi.String(\"...my_id...\"),\n\t\t\tInstanceName:                        pulumi.String(\"...my_instance_name...\"),\n\t\t\tOrdering: \u0026konnect.GatewayPluginAiRequestTransformerOrderingArgs{\n\t\t\t\tAfter: \u0026konnect.GatewayPluginAiRequestTransformerOrderingAfterArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tBefore: \u0026konnect.GatewayPluginAiRequestTransformerOrderingBeforeArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tPartials: konnect.GatewayPluginAiRequestTransformerPartialArray{\n\t\t\t\t\u0026konnect.GatewayPluginAiRequestTransformerPartialArgs{\n\t\t\t\t\tId:   pulumi.String(\"...my_id...\"),\n\t\t\t\t\tName: pulumi.String(\"...my_name...\"),\n\t\t\t\t\tPath: pulumi.String(\"...my_path...\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tProtocols: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"http\"),\n\t\t\t},\n\t\t\tRoute: \u0026konnect.GatewayPluginAiRequestTransformerRouteArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tService: \u0026konnect.GatewayPluginAiRequestTransformerServiceArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"...\"),\n\t\t\t},\n\t\t\tUpdatedAt: pulumi.Float64(0),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.GatewayPluginAiRequestTransformer;\nimport com.pulumi.konnect.GatewayPluginAiRequestTransformerArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiRequestTransformerConfigArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiRequestTransformerConfigLlmArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiRequestTransformerConfigLlmAuthArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiRequestTransformerConfigLlmLoggingArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiRequestTransformerConfigLlmModelArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiRequestTransformerConfigLlmModelOptionsArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiRequestTransformerConfigLlmModelOptionsBedrockArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiRequestTransformerConfigLlmModelOptionsCohereArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiRequestTransformerConfigLlmModelOptionsDashscopeArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiRequestTransformerConfigLlmModelOptionsGeminiArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiRequestTransformerConfigLlmModelOptionsHuggingfaceArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiRequestTransformerConsumerGroupArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiRequestTransformerOrderingArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiRequestTransformerOrderingAfterArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiRequestTransformerOrderingBeforeArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiRequestTransformerPartialArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiRequestTransformerRouteArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiRequestTransformerServiceArgs;\nimport static com.pulumi.codegen.internal.Serialization.*;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myGatewaypluginairequesttransformer = new GatewayPluginAiRequestTransformer(\"myGatewaypluginairequesttransformer\", GatewayPluginAiRequestTransformerArgs.builder()\n            .config(GatewayPluginAiRequestTransformerConfigArgs.builder()\n                .httpProxyHost(\"...my_http_proxy_host...\")\n                .httpProxyPort(19860.0)\n                .httpTimeout(10.0)\n                .httpsProxyHost(\"...my_https_proxy_host...\")\n                .httpsProxyPort(20590.0)\n                .httpsVerify(false)\n                .llm(GatewayPluginAiRequestTransformerConfigLlmArgs.builder()\n                    .auth(GatewayPluginAiRequestTransformerConfigLlmAuthArgs.builder()\n                        .allowOverride(false)\n                        .awsAccessKeyId(\"...my_aws_access_key_id...\")\n                        .awsSecretAccessKey(\"...my_aws_secret_access_key...\")\n                        .azureClientId(\"...my_azure_client_id...\")\n                        .azureClientSecret(\"...my_azure_client_secret...\")\n                        .azureTenantId(\"...my_azure_tenant_id...\")\n                        .azureUseManagedIdentity(true)\n                        .gcpServiceAccountJson(\"...my_gcp_service_account_json...\")\n                        .gcpUseServiceAccount(true)\n                        .headerName(\"...my_header_name...\")\n                        .headerValue(\"...my_header_value...\")\n                        .paramLocation(\"query\")\n                        .paramName(\"...my_param_name...\")\n                        .paramValue(\"...my_param_value...\")\n                        .build())\n                    .description(\"...my_description...\")\n                    .logging(GatewayPluginAiRequestTransformerConfigLlmLoggingArgs.builder()\n                        .logPayloads(false)\n                        .logStatistics(false)\n                        .build())\n                    .metadata(Map.of(\"key\", serializeJson(\n                        \"value\")))\n                    .model(GatewayPluginAiRequestTransformerConfigLlmModelArgs.builder()\n                        .name(\"...my_name...\")\n                        .options(GatewayPluginAiRequestTransformerConfigLlmModelOptionsArgs.builder()\n                            .anthropicVersion(\"...my_anthropic_version...\")\n                            .azureApiVersion(\"...my_azure_api_version...\")\n                            .azureDeploymentId(\"...my_azure_deployment_id...\")\n                            .azureInstance(\"...my_azure_instance...\")\n                            .bedrock(GatewayPluginAiRequestTransformerConfigLlmModelOptionsBedrockArgs.builder()\n                                .awsAssumeRoleArn(\"...my_aws_assume_role_arn...\")\n                                .awsRegion(\"...my_aws_region...\")\n                                .awsRoleSessionName(\"...my_aws_role_session_name...\")\n                                .awsStsEndpointUrl(\"...my_aws_sts_endpoint_url...\")\n                                .embeddingsNormalize(false)\n                                .performanceConfigLatency(\"...my_performance_config_latency...\")\n                                .videoOutputS3Uri(\"...my_video_output_s3_uri...\")\n                                .build())\n                            .cohere(GatewayPluginAiRequestTransformerConfigLlmModelOptionsCohereArgs.builder()\n                                .embeddingInputType(\"search_query\")\n                                .waitForModel(false)\n                                .build())\n                            .dashscope(GatewayPluginAiRequestTransformerConfigLlmModelOptionsDashscopeArgs.builder()\n                                .international(false)\n                                .build())\n                            .embeddingsDimensions(4.0)\n                            .gemini(GatewayPluginAiRequestTransformerConfigLlmModelOptionsGeminiArgs.builder()\n                                .apiEndpoint(\"...my_api_endpoint...\")\n                                .endpointId(\"...my_endpoint_id...\")\n                                .locationId(\"...my_location_id...\")\n                                .projectId(\"...my_project_id...\")\n                                .build())\n                            .huggingface(GatewayPluginAiRequestTransformerConfigLlmModelOptionsHuggingfaceArgs.builder()\n                                .useCache(false)\n                                .waitForModel(true)\n                                .build())\n                            .inputCost(6.37)\n                            .llama2Format(\"ollama\")\n                            .maxTokens(5.0)\n                            .mistralFormat(\"ollama\")\n                            .outputCost(8.25)\n                            .temperature(0.7)\n                            .topK(420.0)\n                            .topP(0.54)\n                            .upstreamPath(\"...my_upstream_path...\")\n                            .upstreamUrl(\"...my_upstream_url...\")\n                            .build())\n                        .provider(\"openai\")\n                        .build())\n                    .routeType(\"llm/v1/responses\")\n                    .weight(1422.0)\n                    .build())\n                .maxRequestBodySize(7.0)\n                .prompt(\"...my_prompt...\")\n                .transformationExtractPattern(\"...my_transformation_extract_pattern...\")\n                .build())\n            .consumerGroup(GatewayPluginAiRequestTransformerConsumerGroupArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .controlPlaneId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .createdAt(6.0)\n            .enabled(true)\n            .gatewayPluginAiRequestTransformerId(\"...my_id...\")\n            .instanceName(\"...my_instance_name...\")\n            .ordering(GatewayPluginAiRequestTransformerOrderingArgs.builder()\n                .after(GatewayPluginAiRequestTransformerOrderingAfterArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .before(GatewayPluginAiRequestTransformerOrderingBeforeArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .build())\n            .partials(GatewayPluginAiRequestTransformerPartialArgs.builder()\n                .id(\"...my_id...\")\n                .name(\"...my_name...\")\n                .path(\"...my_path...\")\n                .build())\n            .protocols(\"http\")\n            .route(GatewayPluginAiRequestTransformerRouteArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .service(GatewayPluginAiRequestTransformerServiceArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .tags(\"...\")\n            .updatedAt(0.0)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myGatewaypluginairequesttransformer:\n    type: konnect:GatewayPluginAiRequestTransformer\n    name: my_gatewaypluginairequesttransformer\n    properties:\n      config:\n        httpProxyHost: '...my_http_proxy_host...'\n        httpProxyPort: 19860\n        httpTimeout: 10\n        httpsProxyHost: '...my_https_proxy_host...'\n        httpsProxyPort: 20590\n        httpsVerify: false\n        llm:\n          auth:\n            allowOverride: false\n            awsAccessKeyId: '...my_aws_access_key_id...'\n            awsSecretAccessKey: '...my_aws_secret_access_key...'\n            azureClientId: '...my_azure_client_id...'\n            azureClientSecret: '...my_azure_client_secret...'\n            azureTenantId: '...my_azure_tenant_id...'\n            azureUseManagedIdentity: true\n            gcpServiceAccountJson: '...my_gcp_service_account_json...'\n            gcpUseServiceAccount: true\n            headerName: '...my_header_name...'\n            headerValue: '...my_header_value...'\n            paramLocation: query\n            paramName: '...my_param_name...'\n            paramValue: '...my_param_value...'\n          description: '...my_description...'\n          logging:\n            logPayloads: false\n            logStatistics: false\n          metadata:\n            key:\n              fn::toJSON: value\n          model:\n            name: '...my_name...'\n            options:\n              anthropicVersion: '...my_anthropic_version...'\n              azureApiVersion: '...my_azure_api_version...'\n              azureDeploymentId: '...my_azure_deployment_id...'\n              azureInstance: '...my_azure_instance...'\n              bedrock:\n                awsAssumeRoleArn: '...my_aws_assume_role_arn...'\n                awsRegion: '...my_aws_region...'\n                awsRoleSessionName: '...my_aws_role_session_name...'\n                awsStsEndpointUrl: '...my_aws_sts_endpoint_url...'\n                embeddingsNormalize: false\n                performanceConfigLatency: '...my_performance_config_latency...'\n                videoOutputS3Uri: '...my_video_output_s3_uri...'\n              cohere:\n                embeddingInputType: search_query\n                waitForModel: false\n              dashscope:\n                international: false\n              embeddingsDimensions: 4\n              gemini:\n                apiEndpoint: '...my_api_endpoint...'\n                endpointId: '...my_endpoint_id...'\n                locationId: '...my_location_id...'\n                projectId: '...my_project_id...'\n              huggingface:\n                useCache: false\n                waitForModel: true\n              inputCost: 6.37\n              llama2Format: ollama\n              maxTokens: 5\n              mistralFormat: ollama\n              outputCost: 8.25\n              temperature: 0.7\n              topK: 420\n              topP: 0.54\n              upstreamPath: '...my_upstream_path...'\n              upstreamUrl: '...my_upstream_url...'\n            provider: openai\n          routeType: llm/v1/responses\n          weight: 1422\n        maxRequestBodySize: 7\n        prompt: '...my_prompt...'\n        transformationExtractPattern: '...my_transformation_extract_pattern...'\n      consumerGroup:\n        id: '...my_id...'\n      controlPlaneId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      createdAt: 6\n      enabled: true\n      gatewayPluginAiRequestTransformerId: '...my_id...'\n      instanceName: '...my_instance_name...'\n      ordering:\n        after:\n          accesses:\n            - '...'\n        before:\n          accesses:\n            - '...'\n      partials:\n        - id: '...my_id...'\n          name: '...my_name...'\n          path: '...my_path...'\n      protocols:\n        - http\n      route:\n        id: '...my_id...'\n      service:\n        id: '...my_id...'\n      tags:\n        - '...'\n      updatedAt: 0\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_gateway_plugin_ai_request_transformer.my_konnect_gateway_plugin_ai_request_transformer\n\n  id = jsonencode({\n\n    control_plane_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/gatewayPluginAiRequestTransformer:GatewayPluginAiRequestTransformer my_konnect_gateway_plugin_ai_request_transformer '{\"control_plane_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"}'\n```\n\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginAiRequestTransformerConfig:GatewayPluginAiRequestTransformerConfig"},"consumerGroup":{"$ref":"#/types/konnect:index%2FGatewayPluginAiRequestTransformerConsumerGroup:GatewayPluginAiRequestTransformerConsumerGroup","description":"If set, the plugin will activate only for requests where the specified consumer group has been authenticated. (Note that some plugins can not be restricted to consumers groups this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer Groups\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginAiRequestTransformerId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginAiRequestTransformerOrdering:GatewayPluginAiRequestTransformerOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginAiRequestTransformerPartial:GatewayPluginAiRequestTransformerPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginAiRequestTransformerRoute:GatewayPluginAiRequestTransformerRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginAiRequestTransformerService:GatewayPluginAiRequestTransformerService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object","required":["config","consumerGroup","controlPlaneId","createdAt","enabled","gatewayPluginAiRequestTransformerId","ordering","protocols","route","service","updatedAt"],"inputProperties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginAiRequestTransformerConfig:GatewayPluginAiRequestTransformerConfig"},"consumerGroup":{"$ref":"#/types/konnect:index%2FGatewayPluginAiRequestTransformerConsumerGroup:GatewayPluginAiRequestTransformerConsumerGroup","description":"If set, the plugin will activate only for requests where the specified consumer group has been authenticated. (Note that some plugins can not be restricted to consumers groups this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer Groups\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginAiRequestTransformerId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginAiRequestTransformerOrdering:GatewayPluginAiRequestTransformerOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginAiRequestTransformerPartial:GatewayPluginAiRequestTransformerPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginAiRequestTransformerRoute:GatewayPluginAiRequestTransformerRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginAiRequestTransformerService:GatewayPluginAiRequestTransformerService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"requiredInputs":["config","controlPlaneId"],"stateInputs":{"description":"Input properties used for looking up and filtering GatewayPluginAiRequestTransformer resources.\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginAiRequestTransformerConfig:GatewayPluginAiRequestTransformerConfig"},"consumerGroup":{"$ref":"#/types/konnect:index%2FGatewayPluginAiRequestTransformerConsumerGroup:GatewayPluginAiRequestTransformerConsumerGroup","description":"If set, the plugin will activate only for requests where the specified consumer group has been authenticated. (Note that some plugins can not be restricted to consumers groups this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer Groups\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginAiRequestTransformerId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginAiRequestTransformerOrdering:GatewayPluginAiRequestTransformerOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginAiRequestTransformerPartial:GatewayPluginAiRequestTransformerPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginAiRequestTransformerRoute:GatewayPluginAiRequestTransformerRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginAiRequestTransformerService:GatewayPluginAiRequestTransformerService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object"}},"konnect:index/gatewayPluginAiResponseTransformer:GatewayPluginAiResponseTransformer":{"description":"GatewayPluginAiResponseTransformer Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myGatewaypluginairesponsetransformer = new konnect.GatewayPluginAiResponseTransformer(\"my_gatewaypluginairesponsetransformer\", {\n    config: {\n        httpProxyHost: \"...my_http_proxy_host...\",\n        httpProxyPort: 51351,\n        httpTimeout: 8,\n        httpsProxyHost: \"...my_https_proxy_host...\",\n        httpsProxyPort: 17075,\n        httpsVerify: false,\n        llm: {\n            auth: {\n                allowOverride: false,\n                awsAccessKeyId: \"...my_aws_access_key_id...\",\n                awsSecretAccessKey: \"...my_aws_secret_access_key...\",\n                azureClientId: \"...my_azure_client_id...\",\n                azureClientSecret: \"...my_azure_client_secret...\",\n                azureTenantId: \"...my_azure_tenant_id...\",\n                azureUseManagedIdentity: false,\n                gcpServiceAccountJson: \"...my_gcp_service_account_json...\",\n                gcpUseServiceAccount: false,\n                headerName: \"...my_header_name...\",\n                headerValue: \"...my_header_value...\",\n                paramLocation: \"query\",\n                paramName: \"...my_param_name...\",\n                paramValue: \"...my_param_value...\",\n            },\n            description: \"...my_description...\",\n            logging: {\n                logPayloads: true,\n                logStatistics: true,\n            },\n            metadata: {\n                key: JSON.stringify(\"value\"),\n            },\n            model: {\n                name: \"...my_name...\",\n                options: {\n                    anthropicVersion: \"...my_anthropic_version...\",\n                    azureApiVersion: \"...my_azure_api_version...\",\n                    azureDeploymentId: \"...my_azure_deployment_id...\",\n                    azureInstance: \"...my_azure_instance...\",\n                    bedrock: {\n                        awsAssumeRoleArn: \"...my_aws_assume_role_arn...\",\n                        awsRegion: \"...my_aws_region...\",\n                        awsRoleSessionName: \"...my_aws_role_session_name...\",\n                        awsStsEndpointUrl: \"...my_aws_sts_endpoint_url...\",\n                        embeddingsNormalize: false,\n                        performanceConfigLatency: \"...my_performance_config_latency...\",\n                        videoOutputS3Uri: \"...my_video_output_s3_uri...\",\n                    },\n                    cohere: {\n                        embeddingInputType: \"search_document\",\n                        waitForModel: false,\n                    },\n                    dashscope: {\n                        international: false,\n                    },\n                    embeddingsDimensions: 4,\n                    gemini: {\n                        apiEndpoint: \"...my_api_endpoint...\",\n                        endpointId: \"...my_endpoint_id...\",\n                        locationId: \"...my_location_id...\",\n                        projectId: \"...my_project_id...\",\n                    },\n                    huggingface: {\n                        useCache: true,\n                        waitForModel: false,\n                    },\n                    inputCost: 4.69,\n                    llama2Format: \"ollama\",\n                    maxTokens: 5,\n                    mistralFormat: \"openai\",\n                    outputCost: 4.92,\n                    temperature: 0.05,\n                    topK: 349,\n                    topP: 0.36,\n                    upstreamPath: \"...my_upstream_path...\",\n                    upstreamUrl: \"...my_upstream_url...\",\n                },\n                provider: \"cohere\",\n            },\n            routeType: \"llm/v1/completions\",\n            weight: 31016,\n        },\n        maxRequestBodySize: 3,\n        parseLlmResponseJsonInstructions: true,\n        prompt: \"...my_prompt...\",\n        transformationExtractPattern: \"...my_transformation_extract_pattern...\",\n    },\n    consumer: {\n        id: \"...my_id...\",\n    },\n    consumerGroup: {\n        id: \"...my_id...\",\n    },\n    controlPlaneId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    createdAt: 6,\n    enabled: true,\n    gatewayPluginAiResponseTransformerId: \"...my_id...\",\n    instanceName: \"...my_instance_name...\",\n    ordering: {\n        after: {\n            accesses: [\"...\"],\n        },\n        before: {\n            accesses: [\"...\"],\n        },\n    },\n    partials: [{\n        id: \"...my_id...\",\n        name: \"...my_name...\",\n        path: \"...my_path...\",\n    }],\n    protocols: [\"grpc\"],\n    route: {\n        id: \"...my_id...\",\n    },\n    service: {\n        id: \"...my_id...\",\n    },\n    tags: [\"...\"],\n    updatedAt: 1,\n});\n```\n```python\nimport pulumi\nimport json\nimport pulumi_konnect as konnect\n\nmy_gatewaypluginairesponsetransformer = konnect.GatewayPluginAiResponseTransformer(\"my_gatewaypluginairesponsetransformer\",\n    config={\n        \"http_proxy_host\": \"...my_http_proxy_host...\",\n        \"http_proxy_port\": 51351,\n        \"http_timeout\": 8,\n        \"https_proxy_host\": \"...my_https_proxy_host...\",\n        \"https_proxy_port\": 17075,\n        \"https_verify\": False,\n        \"llm\": {\n            \"auth\": {\n                \"allow_override\": False,\n                \"aws_access_key_id\": \"...my_aws_access_key_id...\",\n                \"aws_secret_access_key\": \"...my_aws_secret_access_key...\",\n                \"azure_client_id\": \"...my_azure_client_id...\",\n                \"azure_client_secret\": \"...my_azure_client_secret...\",\n                \"azure_tenant_id\": \"...my_azure_tenant_id...\",\n                \"azure_use_managed_identity\": False,\n                \"gcp_service_account_json\": \"...my_gcp_service_account_json...\",\n                \"gcp_use_service_account\": False,\n                \"header_name\": \"...my_header_name...\",\n                \"header_value\": \"...my_header_value...\",\n                \"param_location\": \"query\",\n                \"param_name\": \"...my_param_name...\",\n                \"param_value\": \"...my_param_value...\",\n            },\n            \"description\": \"...my_description...\",\n            \"logging\": {\n                \"log_payloads\": True,\n                \"log_statistics\": True,\n            },\n            \"metadata\": {\n                \"key\": json.dumps(\"value\"),\n            },\n            \"model\": {\n                \"name\": \"...my_name...\",\n                \"options\": {\n                    \"anthropic_version\": \"...my_anthropic_version...\",\n                    \"azure_api_version\": \"...my_azure_api_version...\",\n                    \"azure_deployment_id\": \"...my_azure_deployment_id...\",\n                    \"azure_instance\": \"...my_azure_instance...\",\n                    \"bedrock\": {\n                        \"aws_assume_role_arn\": \"...my_aws_assume_role_arn...\",\n                        \"aws_region\": \"...my_aws_region...\",\n                        \"aws_role_session_name\": \"...my_aws_role_session_name...\",\n                        \"aws_sts_endpoint_url\": \"...my_aws_sts_endpoint_url...\",\n                        \"embeddings_normalize\": False,\n                        \"performance_config_latency\": \"...my_performance_config_latency...\",\n                        \"video_output_s3_uri\": \"...my_video_output_s3_uri...\",\n                    },\n                    \"cohere\": {\n                        \"embedding_input_type\": \"search_document\",\n                        \"wait_for_model\": False,\n                    },\n                    \"dashscope\": {\n                        \"international\": False,\n                    },\n                    \"embeddings_dimensions\": 4,\n                    \"gemini\": {\n                        \"api_endpoint\": \"...my_api_endpoint...\",\n                        \"endpoint_id\": \"...my_endpoint_id...\",\n                        \"location_id\": \"...my_location_id...\",\n                        \"project_id\": \"...my_project_id...\",\n                    },\n                    \"huggingface\": {\n                        \"use_cache\": True,\n                        \"wait_for_model\": False,\n                    },\n                    \"input_cost\": 4.69,\n                    \"llama2_format\": \"ollama\",\n                    \"max_tokens\": 5,\n                    \"mistral_format\": \"openai\",\n                    \"output_cost\": 4.92,\n                    \"temperature\": 0.05,\n                    \"top_k\": 349,\n                    \"top_p\": 0.36,\n                    \"upstream_path\": \"...my_upstream_path...\",\n                    \"upstream_url\": \"...my_upstream_url...\",\n                },\n                \"provider\": \"cohere\",\n            },\n            \"route_type\": \"llm/v1/completions\",\n            \"weight\": 31016,\n        },\n        \"max_request_body_size\": 3,\n        \"parse_llm_response_json_instructions\": True,\n        \"prompt\": \"...my_prompt...\",\n        \"transformation_extract_pattern\": \"...my_transformation_extract_pattern...\",\n    },\n    consumer={\n        \"id\": \"...my_id...\",\n    },\n    consumer_group={\n        \"id\": \"...my_id...\",\n    },\n    control_plane_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    created_at=6,\n    enabled=True,\n    gateway_plugin_ai_response_transformer_id=\"...my_id...\",\n    instance_name=\"...my_instance_name...\",\n    ordering={\n        \"after\": {\n            \"accesses\": [\"...\"],\n        },\n        \"before\": {\n            \"accesses\": [\"...\"],\n        },\n    },\n    partials=[{\n        \"id\": \"...my_id...\",\n        \"name\": \"...my_name...\",\n        \"path\": \"...my_path...\",\n    }],\n    protocols=[\"grpc\"],\n    route={\n        \"id\": \"...my_id...\",\n    },\n    service={\n        \"id\": \"...my_id...\",\n    },\n    tags=[\"...\"],\n    updated_at=1)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text.Json;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myGatewaypluginairesponsetransformer = new Konnect.GatewayPluginAiResponseTransformer(\"my_gatewaypluginairesponsetransformer\", new()\n    {\n        Config = new Konnect.Inputs.GatewayPluginAiResponseTransformerConfigArgs\n        {\n            HttpProxyHost = \"...my_http_proxy_host...\",\n            HttpProxyPort = 51351,\n            HttpTimeout = 8,\n            HttpsProxyHost = \"...my_https_proxy_host...\",\n            HttpsProxyPort = 17075,\n            HttpsVerify = false,\n            Llm = new Konnect.Inputs.GatewayPluginAiResponseTransformerConfigLlmArgs\n            {\n                Auth = new Konnect.Inputs.GatewayPluginAiResponseTransformerConfigLlmAuthArgs\n                {\n                    AllowOverride = false,\n                    AwsAccessKeyId = \"...my_aws_access_key_id...\",\n                    AwsSecretAccessKey = \"...my_aws_secret_access_key...\",\n                    AzureClientId = \"...my_azure_client_id...\",\n                    AzureClientSecret = \"...my_azure_client_secret...\",\n                    AzureTenantId = \"...my_azure_tenant_id...\",\n                    AzureUseManagedIdentity = false,\n                    GcpServiceAccountJson = \"...my_gcp_service_account_json...\",\n                    GcpUseServiceAccount = false,\n                    HeaderName = \"...my_header_name...\",\n                    HeaderValue = \"...my_header_value...\",\n                    ParamLocation = \"query\",\n                    ParamName = \"...my_param_name...\",\n                    ParamValue = \"...my_param_value...\",\n                },\n                Description = \"...my_description...\",\n                Logging = new Konnect.Inputs.GatewayPluginAiResponseTransformerConfigLlmLoggingArgs\n                {\n                    LogPayloads = true,\n                    LogStatistics = true,\n                },\n                Metadata = \n                {\n                    { \"key\", JsonSerializer.Serialize(\"value\") },\n                },\n                Model = new Konnect.Inputs.GatewayPluginAiResponseTransformerConfigLlmModelArgs\n                {\n                    Name = \"...my_name...\",\n                    Options = new Konnect.Inputs.GatewayPluginAiResponseTransformerConfigLlmModelOptionsArgs\n                    {\n                        AnthropicVersion = \"...my_anthropic_version...\",\n                        AzureApiVersion = \"...my_azure_api_version...\",\n                        AzureDeploymentId = \"...my_azure_deployment_id...\",\n                        AzureInstance = \"...my_azure_instance...\",\n                        Bedrock = new Konnect.Inputs.GatewayPluginAiResponseTransformerConfigLlmModelOptionsBedrockArgs\n                        {\n                            AwsAssumeRoleArn = \"...my_aws_assume_role_arn...\",\n                            AwsRegion = \"...my_aws_region...\",\n                            AwsRoleSessionName = \"...my_aws_role_session_name...\",\n                            AwsStsEndpointUrl = \"...my_aws_sts_endpoint_url...\",\n                            EmbeddingsNormalize = false,\n                            PerformanceConfigLatency = \"...my_performance_config_latency...\",\n                            VideoOutputS3Uri = \"...my_video_output_s3_uri...\",\n                        },\n                        Cohere = new Konnect.Inputs.GatewayPluginAiResponseTransformerConfigLlmModelOptionsCohereArgs\n                        {\n                            EmbeddingInputType = \"search_document\",\n                            WaitForModel = false,\n                        },\n                        Dashscope = new Konnect.Inputs.GatewayPluginAiResponseTransformerConfigLlmModelOptionsDashscopeArgs\n                        {\n                            International = false,\n                        },\n                        EmbeddingsDimensions = 4,\n                        Gemini = new Konnect.Inputs.GatewayPluginAiResponseTransformerConfigLlmModelOptionsGeminiArgs\n                        {\n                            ApiEndpoint = \"...my_api_endpoint...\",\n                            EndpointId = \"...my_endpoint_id...\",\n                            LocationId = \"...my_location_id...\",\n                            ProjectId = \"...my_project_id...\",\n                        },\n                        Huggingface = new Konnect.Inputs.GatewayPluginAiResponseTransformerConfigLlmModelOptionsHuggingfaceArgs\n                        {\n                            UseCache = true,\n                            WaitForModel = false,\n                        },\n                        InputCost = 4.69,\n                        Llama2Format = \"ollama\",\n                        MaxTokens = 5,\n                        MistralFormat = \"openai\",\n                        OutputCost = 4.92,\n                        Temperature = 0.05,\n                        TopK = 349,\n                        TopP = 0.36,\n                        UpstreamPath = \"...my_upstream_path...\",\n                        UpstreamUrl = \"...my_upstream_url...\",\n                    },\n                    Provider = \"cohere\",\n                },\n                RouteType = \"llm/v1/completions\",\n                Weight = 31016,\n            },\n            MaxRequestBodySize = 3,\n            ParseLlmResponseJsonInstructions = true,\n            Prompt = \"...my_prompt...\",\n            TransformationExtractPattern = \"...my_transformation_extract_pattern...\",\n        },\n        Consumer = new Konnect.Inputs.GatewayPluginAiResponseTransformerConsumerArgs\n        {\n            Id = \"...my_id...\",\n        },\n        ConsumerGroup = new Konnect.Inputs.GatewayPluginAiResponseTransformerConsumerGroupArgs\n        {\n            Id = \"...my_id...\",\n        },\n        ControlPlaneId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        CreatedAt = 6,\n        Enabled = true,\n        GatewayPluginAiResponseTransformerId = \"...my_id...\",\n        InstanceName = \"...my_instance_name...\",\n        Ordering = new Konnect.Inputs.GatewayPluginAiResponseTransformerOrderingArgs\n        {\n            After = new Konnect.Inputs.GatewayPluginAiResponseTransformerOrderingAfterArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n            Before = new Konnect.Inputs.GatewayPluginAiResponseTransformerOrderingBeforeArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n        },\n        Partials = new[]\n        {\n            new Konnect.Inputs.GatewayPluginAiResponseTransformerPartialArgs\n            {\n                Id = \"...my_id...\",\n                Name = \"...my_name...\",\n                Path = \"...my_path...\",\n            },\n        },\n        Protocols = new[]\n        {\n            \"grpc\",\n        },\n        Route = new Konnect.Inputs.GatewayPluginAiResponseTransformerRouteArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Service = new Konnect.Inputs.GatewayPluginAiResponseTransformerServiceArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Tags = new[]\n        {\n            \"...\",\n        },\n        UpdatedAt = 1,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"encoding/json\"\n\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\ttmpJSON0, err := json.Marshal(\"value\")\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tjson0 := string(tmpJSON0)\n\t\t_, err = konnect.NewGatewayPluginAiResponseTransformer(ctx, \"my_gatewaypluginairesponsetransformer\", \u0026konnect.GatewayPluginAiResponseTransformerArgs{\n\t\t\tConfig: \u0026konnect.GatewayPluginAiResponseTransformerConfigArgs{\n\t\t\t\tHttpProxyHost:  pulumi.String(\"...my_http_proxy_host...\"),\n\t\t\t\tHttpProxyPort:  pulumi.Float64(51351),\n\t\t\t\tHttpTimeout:    pulumi.Float64(8),\n\t\t\t\tHttpsProxyHost: pulumi.String(\"...my_https_proxy_host...\"),\n\t\t\t\tHttpsProxyPort: pulumi.Float64(17075),\n\t\t\t\tHttpsVerify:    pulumi.Bool(false),\n\t\t\t\tLlm: \u0026konnect.GatewayPluginAiResponseTransformerConfigLlmArgs{\n\t\t\t\t\tAuth: \u0026konnect.GatewayPluginAiResponseTransformerConfigLlmAuthArgs{\n\t\t\t\t\t\tAllowOverride:           pulumi.Bool(false),\n\t\t\t\t\t\tAwsAccessKeyId:          pulumi.String(\"...my_aws_access_key_id...\"),\n\t\t\t\t\t\tAwsSecretAccessKey:      pulumi.String(\"...my_aws_secret_access_key...\"),\n\t\t\t\t\t\tAzureClientId:           pulumi.String(\"...my_azure_client_id...\"),\n\t\t\t\t\t\tAzureClientSecret:       pulumi.String(\"...my_azure_client_secret...\"),\n\t\t\t\t\t\tAzureTenantId:           pulumi.String(\"...my_azure_tenant_id...\"),\n\t\t\t\t\t\tAzureUseManagedIdentity: pulumi.Bool(false),\n\t\t\t\t\t\tGcpServiceAccountJson:   pulumi.String(\"...my_gcp_service_account_json...\"),\n\t\t\t\t\t\tGcpUseServiceAccount:    pulumi.Bool(false),\n\t\t\t\t\t\tHeaderName:              pulumi.String(\"...my_header_name...\"),\n\t\t\t\t\t\tHeaderValue:             pulumi.String(\"...my_header_value...\"),\n\t\t\t\t\t\tParamLocation:           pulumi.String(\"query\"),\n\t\t\t\t\t\tParamName:               pulumi.String(\"...my_param_name...\"),\n\t\t\t\t\t\tParamValue:              pulumi.String(\"...my_param_value...\"),\n\t\t\t\t\t},\n\t\t\t\t\tDescription: pulumi.String(\"...my_description...\"),\n\t\t\t\t\tLogging: \u0026konnect.GatewayPluginAiResponseTransformerConfigLlmLoggingArgs{\n\t\t\t\t\t\tLogPayloads:   pulumi.Bool(true),\n\t\t\t\t\t\tLogStatistics: pulumi.Bool(true),\n\t\t\t\t\t},\n\t\t\t\t\tMetadata: pulumi.StringMap{\n\t\t\t\t\t\t\"key\": pulumi.String(json0),\n\t\t\t\t\t},\n\t\t\t\t\tModel: \u0026konnect.GatewayPluginAiResponseTransformerConfigLlmModelArgs{\n\t\t\t\t\t\tName: pulumi.String(\"...my_name...\"),\n\t\t\t\t\t\tOptions: \u0026konnect.GatewayPluginAiResponseTransformerConfigLlmModelOptionsArgs{\n\t\t\t\t\t\t\tAnthropicVersion:  pulumi.String(\"...my_anthropic_version...\"),\n\t\t\t\t\t\t\tAzureApiVersion:   pulumi.String(\"...my_azure_api_version...\"),\n\t\t\t\t\t\t\tAzureDeploymentId: pulumi.String(\"...my_azure_deployment_id...\"),\n\t\t\t\t\t\t\tAzureInstance:     pulumi.String(\"...my_azure_instance...\"),\n\t\t\t\t\t\t\tBedrock: \u0026konnect.GatewayPluginAiResponseTransformerConfigLlmModelOptionsBedrockArgs{\n\t\t\t\t\t\t\t\tAwsAssumeRoleArn:         pulumi.String(\"...my_aws_assume_role_arn...\"),\n\t\t\t\t\t\t\t\tAwsRegion:                pulumi.String(\"...my_aws_region...\"),\n\t\t\t\t\t\t\t\tAwsRoleSessionName:       pulumi.String(\"...my_aws_role_session_name...\"),\n\t\t\t\t\t\t\t\tAwsStsEndpointUrl:        pulumi.String(\"...my_aws_sts_endpoint_url...\"),\n\t\t\t\t\t\t\t\tEmbeddingsNormalize:      pulumi.Bool(false),\n\t\t\t\t\t\t\t\tPerformanceConfigLatency: pulumi.String(\"...my_performance_config_latency...\"),\n\t\t\t\t\t\t\t\tVideoOutputS3Uri:         pulumi.String(\"...my_video_output_s3_uri...\"),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tCohere: \u0026konnect.GatewayPluginAiResponseTransformerConfigLlmModelOptionsCohereArgs{\n\t\t\t\t\t\t\t\tEmbeddingInputType: pulumi.String(\"search_document\"),\n\t\t\t\t\t\t\t\tWaitForModel:       pulumi.Bool(false),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tDashscope: \u0026konnect.GatewayPluginAiResponseTransformerConfigLlmModelOptionsDashscopeArgs{\n\t\t\t\t\t\t\t\tInternational: pulumi.Bool(false),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tEmbeddingsDimensions: pulumi.Float64(4),\n\t\t\t\t\t\t\tGemini: \u0026konnect.GatewayPluginAiResponseTransformerConfigLlmModelOptionsGeminiArgs{\n\t\t\t\t\t\t\t\tApiEndpoint: pulumi.String(\"...my_api_endpoint...\"),\n\t\t\t\t\t\t\t\tEndpointId:  pulumi.String(\"...my_endpoint_id...\"),\n\t\t\t\t\t\t\t\tLocationId:  pulumi.String(\"...my_location_id...\"),\n\t\t\t\t\t\t\t\tProjectId:   pulumi.String(\"...my_project_id...\"),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tHuggingface: \u0026konnect.GatewayPluginAiResponseTransformerConfigLlmModelOptionsHuggingfaceArgs{\n\t\t\t\t\t\t\t\tUseCache:     pulumi.Bool(true),\n\t\t\t\t\t\t\t\tWaitForModel: pulumi.Bool(false),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tInputCost:     pulumi.Float64(4.69),\n\t\t\t\t\t\t\tLlama2Format:  pulumi.String(\"ollama\"),\n\t\t\t\t\t\t\tMaxTokens:     pulumi.Float64(5),\n\t\t\t\t\t\t\tMistralFormat: pulumi.String(\"openai\"),\n\t\t\t\t\t\t\tOutputCost:    pulumi.Float64(4.92),\n\t\t\t\t\t\t\tTemperature:   pulumi.Float64(0.05),\n\t\t\t\t\t\t\tTopK:          pulumi.Float64(349),\n\t\t\t\t\t\t\tTopP:          pulumi.Float64(0.36),\n\t\t\t\t\t\t\tUpstreamPath:  pulumi.String(\"...my_upstream_path...\"),\n\t\t\t\t\t\t\tUpstreamUrl:   pulumi.String(\"...my_upstream_url...\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\tProvider: pulumi.String(\"cohere\"),\n\t\t\t\t\t},\n\t\t\t\t\tRouteType: pulumi.String(\"llm/v1/completions\"),\n\t\t\t\t\tWeight:    pulumi.Float64(31016),\n\t\t\t\t},\n\t\t\t\tMaxRequestBodySize:               pulumi.Float64(3),\n\t\t\t\tParseLlmResponseJsonInstructions: pulumi.Bool(true),\n\t\t\t\tPrompt:                           pulumi.String(\"...my_prompt...\"),\n\t\t\t\tTransformationExtractPattern:     pulumi.String(\"...my_transformation_extract_pattern...\"),\n\t\t\t},\n\t\t\tConsumer: \u0026konnect.GatewayPluginAiResponseTransformerConsumerArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tConsumerGroup: \u0026konnect.GatewayPluginAiResponseTransformerConsumerGroupArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tControlPlaneId:                       pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tCreatedAt:                            pulumi.Float64(6),\n\t\t\tEnabled:                              pulumi.Bool(true),\n\t\t\tGatewayPluginAiResponseTransformerId: pulumi.String(\"...my_id...\"),\n\t\t\tInstanceName:                         pulumi.String(\"...my_instance_name...\"),\n\t\t\tOrdering: \u0026konnect.GatewayPluginAiResponseTransformerOrderingArgs{\n\t\t\t\tAfter: \u0026konnect.GatewayPluginAiResponseTransformerOrderingAfterArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tBefore: \u0026konnect.GatewayPluginAiResponseTransformerOrderingBeforeArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tPartials: konnect.GatewayPluginAiResponseTransformerPartialArray{\n\t\t\t\t\u0026konnect.GatewayPluginAiResponseTransformerPartialArgs{\n\t\t\t\t\tId:   pulumi.String(\"...my_id...\"),\n\t\t\t\t\tName: pulumi.String(\"...my_name...\"),\n\t\t\t\t\tPath: pulumi.String(\"...my_path...\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tProtocols: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"grpc\"),\n\t\t\t},\n\t\t\tRoute: \u0026konnect.GatewayPluginAiResponseTransformerRouteArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tService: \u0026konnect.GatewayPluginAiResponseTransformerServiceArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"...\"),\n\t\t\t},\n\t\t\tUpdatedAt: pulumi.Float64(1),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.GatewayPluginAiResponseTransformer;\nimport com.pulumi.konnect.GatewayPluginAiResponseTransformerArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiResponseTransformerConfigArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiResponseTransformerConfigLlmArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiResponseTransformerConfigLlmAuthArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiResponseTransformerConfigLlmLoggingArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiResponseTransformerConfigLlmModelArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiResponseTransformerConfigLlmModelOptionsArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiResponseTransformerConfigLlmModelOptionsBedrockArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiResponseTransformerConfigLlmModelOptionsCohereArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiResponseTransformerConfigLlmModelOptionsDashscopeArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiResponseTransformerConfigLlmModelOptionsGeminiArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiResponseTransformerConfigLlmModelOptionsHuggingfaceArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiResponseTransformerConsumerArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiResponseTransformerConsumerGroupArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiResponseTransformerOrderingArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiResponseTransformerOrderingAfterArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiResponseTransformerOrderingBeforeArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiResponseTransformerPartialArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiResponseTransformerRouteArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiResponseTransformerServiceArgs;\nimport static com.pulumi.codegen.internal.Serialization.*;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myGatewaypluginairesponsetransformer = new GatewayPluginAiResponseTransformer(\"myGatewaypluginairesponsetransformer\", GatewayPluginAiResponseTransformerArgs.builder()\n            .config(GatewayPluginAiResponseTransformerConfigArgs.builder()\n                .httpProxyHost(\"...my_http_proxy_host...\")\n                .httpProxyPort(51351.0)\n                .httpTimeout(8.0)\n                .httpsProxyHost(\"...my_https_proxy_host...\")\n                .httpsProxyPort(17075.0)\n                .httpsVerify(false)\n                .llm(GatewayPluginAiResponseTransformerConfigLlmArgs.builder()\n                    .auth(GatewayPluginAiResponseTransformerConfigLlmAuthArgs.builder()\n                        .allowOverride(false)\n                        .awsAccessKeyId(\"...my_aws_access_key_id...\")\n                        .awsSecretAccessKey(\"...my_aws_secret_access_key...\")\n                        .azureClientId(\"...my_azure_client_id...\")\n                        .azureClientSecret(\"...my_azure_client_secret...\")\n                        .azureTenantId(\"...my_azure_tenant_id...\")\n                        .azureUseManagedIdentity(false)\n                        .gcpServiceAccountJson(\"...my_gcp_service_account_json...\")\n                        .gcpUseServiceAccount(false)\n                        .headerName(\"...my_header_name...\")\n                        .headerValue(\"...my_header_value...\")\n                        .paramLocation(\"query\")\n                        .paramName(\"...my_param_name...\")\n                        .paramValue(\"...my_param_value...\")\n                        .build())\n                    .description(\"...my_description...\")\n                    .logging(GatewayPluginAiResponseTransformerConfigLlmLoggingArgs.builder()\n                        .logPayloads(true)\n                        .logStatistics(true)\n                        .build())\n                    .metadata(Map.of(\"key\", serializeJson(\n                        \"value\")))\n                    .model(GatewayPluginAiResponseTransformerConfigLlmModelArgs.builder()\n                        .name(\"...my_name...\")\n                        .options(GatewayPluginAiResponseTransformerConfigLlmModelOptionsArgs.builder()\n                            .anthropicVersion(\"...my_anthropic_version...\")\n                            .azureApiVersion(\"...my_azure_api_version...\")\n                            .azureDeploymentId(\"...my_azure_deployment_id...\")\n                            .azureInstance(\"...my_azure_instance...\")\n                            .bedrock(GatewayPluginAiResponseTransformerConfigLlmModelOptionsBedrockArgs.builder()\n                                .awsAssumeRoleArn(\"...my_aws_assume_role_arn...\")\n                                .awsRegion(\"...my_aws_region...\")\n                                .awsRoleSessionName(\"...my_aws_role_session_name...\")\n                                .awsStsEndpointUrl(\"...my_aws_sts_endpoint_url...\")\n                                .embeddingsNormalize(false)\n                                .performanceConfigLatency(\"...my_performance_config_latency...\")\n                                .videoOutputS3Uri(\"...my_video_output_s3_uri...\")\n                                .build())\n                            .cohere(GatewayPluginAiResponseTransformerConfigLlmModelOptionsCohereArgs.builder()\n                                .embeddingInputType(\"search_document\")\n                                .waitForModel(false)\n                                .build())\n                            .dashscope(GatewayPluginAiResponseTransformerConfigLlmModelOptionsDashscopeArgs.builder()\n                                .international(false)\n                                .build())\n                            .embeddingsDimensions(4.0)\n                            .gemini(GatewayPluginAiResponseTransformerConfigLlmModelOptionsGeminiArgs.builder()\n                                .apiEndpoint(\"...my_api_endpoint...\")\n                                .endpointId(\"...my_endpoint_id...\")\n                                .locationId(\"...my_location_id...\")\n                                .projectId(\"...my_project_id...\")\n                                .build())\n                            .huggingface(GatewayPluginAiResponseTransformerConfigLlmModelOptionsHuggingfaceArgs.builder()\n                                .useCache(true)\n                                .waitForModel(false)\n                                .build())\n                            .inputCost(4.69)\n                            .llama2Format(\"ollama\")\n                            .maxTokens(5.0)\n                            .mistralFormat(\"openai\")\n                            .outputCost(4.92)\n                            .temperature(0.05)\n                            .topK(349.0)\n                            .topP(0.36)\n                            .upstreamPath(\"...my_upstream_path...\")\n                            .upstreamUrl(\"...my_upstream_url...\")\n                            .build())\n                        .provider(\"cohere\")\n                        .build())\n                    .routeType(\"llm/v1/completions\")\n                    .weight(31016.0)\n                    .build())\n                .maxRequestBodySize(3.0)\n                .parseLlmResponseJsonInstructions(true)\n                .prompt(\"...my_prompt...\")\n                .transformationExtractPattern(\"...my_transformation_extract_pattern...\")\n                .build())\n            .consumer(GatewayPluginAiResponseTransformerConsumerArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .consumerGroup(GatewayPluginAiResponseTransformerConsumerGroupArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .controlPlaneId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .createdAt(6.0)\n            .enabled(true)\n            .gatewayPluginAiResponseTransformerId(\"...my_id...\")\n            .instanceName(\"...my_instance_name...\")\n            .ordering(GatewayPluginAiResponseTransformerOrderingArgs.builder()\n                .after(GatewayPluginAiResponseTransformerOrderingAfterArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .before(GatewayPluginAiResponseTransformerOrderingBeforeArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .build())\n            .partials(GatewayPluginAiResponseTransformerPartialArgs.builder()\n                .id(\"...my_id...\")\n                .name(\"...my_name...\")\n                .path(\"...my_path...\")\n                .build())\n            .protocols(\"grpc\")\n            .route(GatewayPluginAiResponseTransformerRouteArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .service(GatewayPluginAiResponseTransformerServiceArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .tags(\"...\")\n            .updatedAt(1.0)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myGatewaypluginairesponsetransformer:\n    type: konnect:GatewayPluginAiResponseTransformer\n    name: my_gatewaypluginairesponsetransformer\n    properties:\n      config:\n        httpProxyHost: '...my_http_proxy_host...'\n        httpProxyPort: 51351\n        httpTimeout: 8\n        httpsProxyHost: '...my_https_proxy_host...'\n        httpsProxyPort: 17075\n        httpsVerify: false\n        llm:\n          auth:\n            allowOverride: false\n            awsAccessKeyId: '...my_aws_access_key_id...'\n            awsSecretAccessKey: '...my_aws_secret_access_key...'\n            azureClientId: '...my_azure_client_id...'\n            azureClientSecret: '...my_azure_client_secret...'\n            azureTenantId: '...my_azure_tenant_id...'\n            azureUseManagedIdentity: false\n            gcpServiceAccountJson: '...my_gcp_service_account_json...'\n            gcpUseServiceAccount: false\n            headerName: '...my_header_name...'\n            headerValue: '...my_header_value...'\n            paramLocation: query\n            paramName: '...my_param_name...'\n            paramValue: '...my_param_value...'\n          description: '...my_description...'\n          logging:\n            logPayloads: true\n            logStatistics: true\n          metadata:\n            key:\n              fn::toJSON: value\n          model:\n            name: '...my_name...'\n            options:\n              anthropicVersion: '...my_anthropic_version...'\n              azureApiVersion: '...my_azure_api_version...'\n              azureDeploymentId: '...my_azure_deployment_id...'\n              azureInstance: '...my_azure_instance...'\n              bedrock:\n                awsAssumeRoleArn: '...my_aws_assume_role_arn...'\n                awsRegion: '...my_aws_region...'\n                awsRoleSessionName: '...my_aws_role_session_name...'\n                awsStsEndpointUrl: '...my_aws_sts_endpoint_url...'\n                embeddingsNormalize: false\n                performanceConfigLatency: '...my_performance_config_latency...'\n                videoOutputS3Uri: '...my_video_output_s3_uri...'\n              cohere:\n                embeddingInputType: search_document\n                waitForModel: false\n              dashscope:\n                international: false\n              embeddingsDimensions: 4\n              gemini:\n                apiEndpoint: '...my_api_endpoint...'\n                endpointId: '...my_endpoint_id...'\n                locationId: '...my_location_id...'\n                projectId: '...my_project_id...'\n              huggingface:\n                useCache: true\n                waitForModel: false\n              inputCost: 4.69\n              llama2Format: ollama\n              maxTokens: 5\n              mistralFormat: openai\n              outputCost: 4.92\n              temperature: 0.05\n              topK: 349\n              topP: 0.36\n              upstreamPath: '...my_upstream_path...'\n              upstreamUrl: '...my_upstream_url...'\n            provider: cohere\n          routeType: llm/v1/completions\n          weight: 31016\n        maxRequestBodySize: 3\n        parseLlmResponseJsonInstructions: true\n        prompt: '...my_prompt...'\n        transformationExtractPattern: '...my_transformation_extract_pattern...'\n      consumer:\n        id: '...my_id...'\n      consumerGroup:\n        id: '...my_id...'\n      controlPlaneId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      createdAt: 6\n      enabled: true\n      gatewayPluginAiResponseTransformerId: '...my_id...'\n      instanceName: '...my_instance_name...'\n      ordering:\n        after:\n          accesses:\n            - '...'\n        before:\n          accesses:\n            - '...'\n      partials:\n        - id: '...my_id...'\n          name: '...my_name...'\n          path: '...my_path...'\n      protocols:\n        - grpc\n      route:\n        id: '...my_id...'\n      service:\n        id: '...my_id...'\n      tags:\n        - '...'\n      updatedAt: 1\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_gateway_plugin_ai_response_transformer.my_konnect_gateway_plugin_ai_response_transformer\n\n  id = jsonencode({\n\n    control_plane_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/gatewayPluginAiResponseTransformer:GatewayPluginAiResponseTransformer my_konnect_gateway_plugin_ai_response_transformer '{\"control_plane_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"}'\n```\n\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginAiResponseTransformerConfig:GatewayPluginAiResponseTransformerConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginAiResponseTransformerConsumer:GatewayPluginAiResponseTransformerConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"consumerGroup":{"$ref":"#/types/konnect:index%2FGatewayPluginAiResponseTransformerConsumerGroup:GatewayPluginAiResponseTransformerConsumerGroup","description":"If set, the plugin will activate only for requests where the specified consumer group has been authenticated. (Note that some plugins can not be restricted to consumers groups this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer Groups\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginAiResponseTransformerId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginAiResponseTransformerOrdering:GatewayPluginAiResponseTransformerOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginAiResponseTransformerPartial:GatewayPluginAiResponseTransformerPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginAiResponseTransformerRoute:GatewayPluginAiResponseTransformerRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginAiResponseTransformerService:GatewayPluginAiResponseTransformerService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object","required":["config","consumer","consumerGroup","controlPlaneId","createdAt","enabled","gatewayPluginAiResponseTransformerId","ordering","protocols","route","service","updatedAt"],"inputProperties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginAiResponseTransformerConfig:GatewayPluginAiResponseTransformerConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginAiResponseTransformerConsumer:GatewayPluginAiResponseTransformerConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"consumerGroup":{"$ref":"#/types/konnect:index%2FGatewayPluginAiResponseTransformerConsumerGroup:GatewayPluginAiResponseTransformerConsumerGroup","description":"If set, the plugin will activate only for requests where the specified consumer group has been authenticated. (Note that some plugins can not be restricted to consumers groups this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer Groups\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginAiResponseTransformerId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginAiResponseTransformerOrdering:GatewayPluginAiResponseTransformerOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginAiResponseTransformerPartial:GatewayPluginAiResponseTransformerPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginAiResponseTransformerRoute:GatewayPluginAiResponseTransformerRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginAiResponseTransformerService:GatewayPluginAiResponseTransformerService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"requiredInputs":["config","controlPlaneId"],"stateInputs":{"description":"Input properties used for looking up and filtering GatewayPluginAiResponseTransformer resources.\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginAiResponseTransformerConfig:GatewayPluginAiResponseTransformerConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginAiResponseTransformerConsumer:GatewayPluginAiResponseTransformerConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"consumerGroup":{"$ref":"#/types/konnect:index%2FGatewayPluginAiResponseTransformerConsumerGroup:GatewayPluginAiResponseTransformerConsumerGroup","description":"If set, the plugin will activate only for requests where the specified consumer group has been authenticated. (Note that some plugins can not be restricted to consumers groups this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer Groups\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginAiResponseTransformerId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginAiResponseTransformerOrdering:GatewayPluginAiResponseTransformerOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginAiResponseTransformerPartial:GatewayPluginAiResponseTransformerPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginAiResponseTransformerRoute:GatewayPluginAiResponseTransformerRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginAiResponseTransformerService:GatewayPluginAiResponseTransformerService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object"}},"konnect:index/gatewayPluginAiSanitizer:GatewayPluginAiSanitizer":{"description":"GatewayPluginAiSanitizer Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myGatewaypluginaisanitizer = new konnect.GatewayPluginAiSanitizer(\"my_gatewaypluginaisanitizer\", {\n    config: {\n        anonymizes: [\"ssn\"],\n        blockIfDetected: false,\n        customPatterns: [{\n            name: \"...my_name...\",\n            regex: \"...my_regex...\",\n            score: 0.99,\n        }],\n        host: \"...my_host...\",\n        keepaliveTimeout: 7.7,\n        port: 6.01,\n        recoverRedacted: true,\n        redactType: \"placeholder\",\n        sanitizationMode: \"OUTPUT\",\n        scheme: \"...my_scheme...\",\n        skipLoggingSanitizedItems: false,\n        stopOnError: false,\n        timeout: 1.92,\n    },\n    consumer: {\n        id: \"...my_id...\",\n    },\n    consumerGroup: {\n        id: \"...my_id...\",\n    },\n    controlPlaneId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    createdAt: 2,\n    enabled: false,\n    gatewayPluginAiSanitizerId: \"...my_id...\",\n    instanceName: \"...my_instance_name...\",\n    ordering: {\n        after: {\n            accesses: [\"...\"],\n        },\n        before: {\n            accesses: [\"...\"],\n        },\n    },\n    partials: [{\n        id: \"...my_id...\",\n        name: \"...my_name...\",\n        path: \"...my_path...\",\n    }],\n    protocols: [\"grpc\"],\n    route: {\n        id: \"...my_id...\",\n    },\n    service: {\n        id: \"...my_id...\",\n    },\n    tags: [\"...\"],\n    updatedAt: 9,\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_gatewaypluginaisanitizer = konnect.GatewayPluginAiSanitizer(\"my_gatewaypluginaisanitizer\",\n    config={\n        \"anonymizes\": [\"ssn\"],\n        \"block_if_detected\": False,\n        \"custom_patterns\": [{\n            \"name\": \"...my_name...\",\n            \"regex\": \"...my_regex...\",\n            \"score\": 0.99,\n        }],\n        \"host\": \"...my_host...\",\n        \"keepalive_timeout\": 7.7,\n        \"port\": 6.01,\n        \"recover_redacted\": True,\n        \"redact_type\": \"placeholder\",\n        \"sanitization_mode\": \"OUTPUT\",\n        \"scheme\": \"...my_scheme...\",\n        \"skip_logging_sanitized_items\": False,\n        \"stop_on_error\": False,\n        \"timeout\": 1.92,\n    },\n    consumer={\n        \"id\": \"...my_id...\",\n    },\n    consumer_group={\n        \"id\": \"...my_id...\",\n    },\n    control_plane_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    created_at=2,\n    enabled=False,\n    gateway_plugin_ai_sanitizer_id=\"...my_id...\",\n    instance_name=\"...my_instance_name...\",\n    ordering={\n        \"after\": {\n            \"accesses\": [\"...\"],\n        },\n        \"before\": {\n            \"accesses\": [\"...\"],\n        },\n    },\n    partials=[{\n        \"id\": \"...my_id...\",\n        \"name\": \"...my_name...\",\n        \"path\": \"...my_path...\",\n    }],\n    protocols=[\"grpc\"],\n    route={\n        \"id\": \"...my_id...\",\n    },\n    service={\n        \"id\": \"...my_id...\",\n    },\n    tags=[\"...\"],\n    updated_at=9)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myGatewaypluginaisanitizer = new Konnect.GatewayPluginAiSanitizer(\"my_gatewaypluginaisanitizer\", new()\n    {\n        Config = new Konnect.Inputs.GatewayPluginAiSanitizerConfigArgs\n        {\n            Anonymizes = new[]\n            {\n                \"ssn\",\n            },\n            BlockIfDetected = false,\n            CustomPatterns = new[]\n            {\n                new Konnect.Inputs.GatewayPluginAiSanitizerConfigCustomPatternArgs\n                {\n                    Name = \"...my_name...\",\n                    Regex = \"...my_regex...\",\n                    Score = 0.99,\n                },\n            },\n            Host = \"...my_host...\",\n            KeepaliveTimeout = 7.7,\n            Port = 6.01,\n            RecoverRedacted = true,\n            RedactType = \"placeholder\",\n            SanitizationMode = \"OUTPUT\",\n            Scheme = \"...my_scheme...\",\n            SkipLoggingSanitizedItems = false,\n            StopOnError = false,\n            Timeout = 1.92,\n        },\n        Consumer = new Konnect.Inputs.GatewayPluginAiSanitizerConsumerArgs\n        {\n            Id = \"...my_id...\",\n        },\n        ConsumerGroup = new Konnect.Inputs.GatewayPluginAiSanitizerConsumerGroupArgs\n        {\n            Id = \"...my_id...\",\n        },\n        ControlPlaneId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        CreatedAt = 2,\n        Enabled = false,\n        GatewayPluginAiSanitizerId = \"...my_id...\",\n        InstanceName = \"...my_instance_name...\",\n        Ordering = new Konnect.Inputs.GatewayPluginAiSanitizerOrderingArgs\n        {\n            After = new Konnect.Inputs.GatewayPluginAiSanitizerOrderingAfterArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n            Before = new Konnect.Inputs.GatewayPluginAiSanitizerOrderingBeforeArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n        },\n        Partials = new[]\n        {\n            new Konnect.Inputs.GatewayPluginAiSanitizerPartialArgs\n            {\n                Id = \"...my_id...\",\n                Name = \"...my_name...\",\n                Path = \"...my_path...\",\n            },\n        },\n        Protocols = new[]\n        {\n            \"grpc\",\n        },\n        Route = new Konnect.Inputs.GatewayPluginAiSanitizerRouteArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Service = new Konnect.Inputs.GatewayPluginAiSanitizerServiceArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Tags = new[]\n        {\n            \"...\",\n        },\n        UpdatedAt = 9,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewGatewayPluginAiSanitizer(ctx, \"my_gatewaypluginaisanitizer\", \u0026konnect.GatewayPluginAiSanitizerArgs{\n\t\t\tConfig: \u0026konnect.GatewayPluginAiSanitizerConfigArgs{\n\t\t\t\tAnonymizes: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"ssn\"),\n\t\t\t\t},\n\t\t\t\tBlockIfDetected: pulumi.Bool(false),\n\t\t\t\tCustomPatterns: konnect.GatewayPluginAiSanitizerConfigCustomPatternArray{\n\t\t\t\t\t\u0026konnect.GatewayPluginAiSanitizerConfigCustomPatternArgs{\n\t\t\t\t\t\tName:  pulumi.String(\"...my_name...\"),\n\t\t\t\t\t\tRegex: pulumi.String(\"...my_regex...\"),\n\t\t\t\t\t\tScore: pulumi.Float64(0.99),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tHost:                      pulumi.String(\"...my_host...\"),\n\t\t\t\tKeepaliveTimeout:          pulumi.Float64(7.7),\n\t\t\t\tPort:                      pulumi.Float64(6.01),\n\t\t\t\tRecoverRedacted:           pulumi.Bool(true),\n\t\t\t\tRedactType:                pulumi.String(\"placeholder\"),\n\t\t\t\tSanitizationMode:          pulumi.String(\"OUTPUT\"),\n\t\t\t\tScheme:                    pulumi.String(\"...my_scheme...\"),\n\t\t\t\tSkipLoggingSanitizedItems: pulumi.Bool(false),\n\t\t\t\tStopOnError:               pulumi.Bool(false),\n\t\t\t\tTimeout:                   pulumi.Float64(1.92),\n\t\t\t},\n\t\t\tConsumer: \u0026konnect.GatewayPluginAiSanitizerConsumerArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tConsumerGroup: \u0026konnect.GatewayPluginAiSanitizerConsumerGroupArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tControlPlaneId:             pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tCreatedAt:                  pulumi.Float64(2),\n\t\t\tEnabled:                    pulumi.Bool(false),\n\t\t\tGatewayPluginAiSanitizerId: pulumi.String(\"...my_id...\"),\n\t\t\tInstanceName:               pulumi.String(\"...my_instance_name...\"),\n\t\t\tOrdering: \u0026konnect.GatewayPluginAiSanitizerOrderingArgs{\n\t\t\t\tAfter: \u0026konnect.GatewayPluginAiSanitizerOrderingAfterArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tBefore: \u0026konnect.GatewayPluginAiSanitizerOrderingBeforeArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tPartials: konnect.GatewayPluginAiSanitizerPartialArray{\n\t\t\t\t\u0026konnect.GatewayPluginAiSanitizerPartialArgs{\n\t\t\t\t\tId:   pulumi.String(\"...my_id...\"),\n\t\t\t\t\tName: pulumi.String(\"...my_name...\"),\n\t\t\t\t\tPath: pulumi.String(\"...my_path...\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tProtocols: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"grpc\"),\n\t\t\t},\n\t\t\tRoute: \u0026konnect.GatewayPluginAiSanitizerRouteArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tService: \u0026konnect.GatewayPluginAiSanitizerServiceArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"...\"),\n\t\t\t},\n\t\t\tUpdatedAt: pulumi.Float64(9),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.GatewayPluginAiSanitizer;\nimport com.pulumi.konnect.GatewayPluginAiSanitizerArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiSanitizerConfigArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiSanitizerConsumerArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiSanitizerConsumerGroupArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiSanitizerOrderingArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiSanitizerOrderingAfterArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiSanitizerOrderingBeforeArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiSanitizerPartialArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiSanitizerRouteArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiSanitizerServiceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myGatewaypluginaisanitizer = new GatewayPluginAiSanitizer(\"myGatewaypluginaisanitizer\", GatewayPluginAiSanitizerArgs.builder()\n            .config(GatewayPluginAiSanitizerConfigArgs.builder()\n                .anonymizes(\"ssn\")\n                .blockIfDetected(false)\n                .customPatterns(GatewayPluginAiSanitizerConfigCustomPatternArgs.builder()\n                    .name(\"...my_name...\")\n                    .regex(\"...my_regex...\")\n                    .score(0.99)\n                    .build())\n                .host(\"...my_host...\")\n                .keepaliveTimeout(7.7)\n                .port(6.01)\n                .recoverRedacted(true)\n                .redactType(\"placeholder\")\n                .sanitizationMode(\"OUTPUT\")\n                .scheme(\"...my_scheme...\")\n                .skipLoggingSanitizedItems(false)\n                .stopOnError(false)\n                .timeout(1.92)\n                .build())\n            .consumer(GatewayPluginAiSanitizerConsumerArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .consumerGroup(GatewayPluginAiSanitizerConsumerGroupArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .controlPlaneId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .createdAt(2.0)\n            .enabled(false)\n            .gatewayPluginAiSanitizerId(\"...my_id...\")\n            .instanceName(\"...my_instance_name...\")\n            .ordering(GatewayPluginAiSanitizerOrderingArgs.builder()\n                .after(GatewayPluginAiSanitizerOrderingAfterArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .before(GatewayPluginAiSanitizerOrderingBeforeArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .build())\n            .partials(GatewayPluginAiSanitizerPartialArgs.builder()\n                .id(\"...my_id...\")\n                .name(\"...my_name...\")\n                .path(\"...my_path...\")\n                .build())\n            .protocols(\"grpc\")\n            .route(GatewayPluginAiSanitizerRouteArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .service(GatewayPluginAiSanitizerServiceArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .tags(\"...\")\n            .updatedAt(9.0)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myGatewaypluginaisanitizer:\n    type: konnect:GatewayPluginAiSanitizer\n    name: my_gatewaypluginaisanitizer\n    properties:\n      config:\n        anonymizes:\n          - ssn\n        blockIfDetected: false\n        customPatterns:\n          - name: '...my_name...'\n            regex: '...my_regex...'\n            score: 0.99\n        host: '...my_host...'\n        keepaliveTimeout: 7.7\n        port: 6.01\n        recoverRedacted: true\n        redactType: placeholder\n        sanitizationMode: OUTPUT\n        scheme: '...my_scheme...'\n        skipLoggingSanitizedItems: false\n        stopOnError: false\n        timeout: 1.92\n      consumer:\n        id: '...my_id...'\n      consumerGroup:\n        id: '...my_id...'\n      controlPlaneId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      createdAt: 2\n      enabled: false\n      gatewayPluginAiSanitizerId: '...my_id...'\n      instanceName: '...my_instance_name...'\n      ordering:\n        after:\n          accesses:\n            - '...'\n        before:\n          accesses:\n            - '...'\n      partials:\n        - id: '...my_id...'\n          name: '...my_name...'\n          path: '...my_path...'\n      protocols:\n        - grpc\n      route:\n        id: '...my_id...'\n      service:\n        id: '...my_id...'\n      tags:\n        - '...'\n      updatedAt: 9\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_gateway_plugin_ai_sanitizer.my_konnect_gateway_plugin_ai_sanitizer\n\n  id = jsonencode({\n\n    control_plane_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/gatewayPluginAiSanitizer:GatewayPluginAiSanitizer my_konnect_gateway_plugin_ai_sanitizer '{\"control_plane_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"}'\n```\n\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginAiSanitizerConfig:GatewayPluginAiSanitizerConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginAiSanitizerConsumer:GatewayPluginAiSanitizerConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"consumerGroup":{"$ref":"#/types/konnect:index%2FGatewayPluginAiSanitizerConsumerGroup:GatewayPluginAiSanitizerConsumerGroup","description":"If set, the plugin will activate only for requests where the specified consumer group has been authenticated. (Note that some plugins can not be restricted to consumers groups this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer Groups\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginAiSanitizerId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginAiSanitizerOrdering:GatewayPluginAiSanitizerOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginAiSanitizerPartial:GatewayPluginAiSanitizerPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginAiSanitizerRoute:GatewayPluginAiSanitizerRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginAiSanitizerService:GatewayPluginAiSanitizerService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object","required":["config","consumer","consumerGroup","controlPlaneId","createdAt","enabled","gatewayPluginAiSanitizerId","ordering","protocols","route","service","updatedAt"],"inputProperties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginAiSanitizerConfig:GatewayPluginAiSanitizerConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginAiSanitizerConsumer:GatewayPluginAiSanitizerConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"consumerGroup":{"$ref":"#/types/konnect:index%2FGatewayPluginAiSanitizerConsumerGroup:GatewayPluginAiSanitizerConsumerGroup","description":"If set, the plugin will activate only for requests where the specified consumer group has been authenticated. (Note that some plugins can not be restricted to consumers groups this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer Groups\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginAiSanitizerId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginAiSanitizerOrdering:GatewayPluginAiSanitizerOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginAiSanitizerPartial:GatewayPluginAiSanitizerPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginAiSanitizerRoute:GatewayPluginAiSanitizerRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginAiSanitizerService:GatewayPluginAiSanitizerService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"requiredInputs":["controlPlaneId"],"stateInputs":{"description":"Input properties used for looking up and filtering GatewayPluginAiSanitizer resources.\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginAiSanitizerConfig:GatewayPluginAiSanitizerConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginAiSanitizerConsumer:GatewayPluginAiSanitizerConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"consumerGroup":{"$ref":"#/types/konnect:index%2FGatewayPluginAiSanitizerConsumerGroup:GatewayPluginAiSanitizerConsumerGroup","description":"If set, the plugin will activate only for requests where the specified consumer group has been authenticated. (Note that some plugins can not be restricted to consumers groups this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer Groups\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginAiSanitizerId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginAiSanitizerOrdering:GatewayPluginAiSanitizerOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginAiSanitizerPartial:GatewayPluginAiSanitizerPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginAiSanitizerRoute:GatewayPluginAiSanitizerRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginAiSanitizerService:GatewayPluginAiSanitizerService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object"}},"konnect:index/gatewayPluginAiSemanticCache:GatewayPluginAiSemanticCache":{"description":"GatewayPluginAiSemanticCache Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myGatewaypluginaisemanticcache = new konnect.GatewayPluginAiSemanticCache(\"my_gatewaypluginaisemanticcache\", {\n    config: {\n        cacheControl: true,\n        cacheTtl: 7,\n        embeddings: {\n            auth: {\n                allowOverride: false,\n                awsAccessKeyId: \"...my_aws_access_key_id...\",\n                awsSecretAccessKey: \"...my_aws_secret_access_key...\",\n                azureClientId: \"...my_azure_client_id...\",\n                azureClientSecret: \"...my_azure_client_secret...\",\n                azureTenantId: \"...my_azure_tenant_id...\",\n                azureUseManagedIdentity: true,\n                gcpServiceAccountJson: \"...my_gcp_service_account_json...\",\n                gcpUseServiceAccount: true,\n                headerName: \"...my_header_name...\",\n                headerValue: \"...my_header_value...\",\n                paramLocation: \"body\",\n                paramName: \"...my_param_name...\",\n                paramValue: \"...my_param_value...\",\n            },\n            model: {\n                name: \"...my_name...\",\n                options: {\n                    azure: {\n                        apiVersion: \"...my_api_version...\",\n                        deploymentId: \"...my_deployment_id...\",\n                        instance: \"...my_instance...\",\n                    },\n                    bedrock: {\n                        awsAssumeRoleArn: \"...my_aws_assume_role_arn...\",\n                        awsRegion: \"...my_aws_region...\",\n                        awsRoleSessionName: \"...my_aws_role_session_name...\",\n                        awsStsEndpointUrl: \"...my_aws_sts_endpoint_url...\",\n                        embeddingsNormalize: true,\n                        performanceConfigLatency: \"...my_performance_config_latency...\",\n                        videoOutputS3Uri: \"...my_video_output_s3_uri...\",\n                    },\n                    gemini: {\n                        apiEndpoint: \"...my_api_endpoint...\",\n                        locationId: \"...my_location_id...\",\n                        projectId: \"...my_project_id...\",\n                    },\n                    huggingface: {\n                        useCache: true,\n                        waitForModel: true,\n                    },\n                    upstreamUrl: \"...my_upstream_url...\",\n                },\n                provider: \"bedrock\",\n            },\n        },\n        exactCaching: true,\n        ignoreAssistantPrompts: true,\n        ignoreSystemPrompts: false,\n        ignoreToolPrompts: true,\n        llmFormat: \"huggingface\",\n        messageCountback: 289.61,\n        stopOnFailure: false,\n        vectordb: {\n            dimensions: 9,\n            distanceMetric: \"euclidean\",\n            pgvector: {\n                database: \"...my_database...\",\n                host: \"...my_host...\",\n                password: \"...my_password...\",\n                port: 4,\n                ssl: false,\n                sslCert: \"...my_ssl_cert...\",\n                sslCertKey: \"...my_ssl_cert_key...\",\n                sslRequired: false,\n                sslVerify: true,\n                sslVersion: \"any\",\n                timeout: 6.41,\n                user: \"...my_user...\",\n            },\n            redis: {\n                cloudAuthentication: {\n                    authProvider: \"gcp\",\n                    awsAccessKeyId: \"...my_aws_access_key_id...\",\n                    awsAssumeRoleArn: \"...my_aws_assume_role_arn...\",\n                    awsCacheName: \"...my_aws_cache_name...\",\n                    awsIsServerless: true,\n                    awsRegion: \"...my_aws_region...\",\n                    awsRoleSessionName: \"...my_aws_role_session_name...\",\n                    awsSecretAccessKey: \"...my_aws_secret_access_key...\",\n                    azureClientId: \"...my_azure_client_id...\",\n                    azureClientSecret: \"...my_azure_client_secret...\",\n                    azureTenantId: \"...my_azure_tenant_id...\",\n                    gcpServiceAccountJson: \"...my_gcp_service_account_json...\",\n                },\n                clusterMaxRedirections: 8,\n                clusterNodes: [{\n                    ip: \"...my_ip...\",\n                    port: 18507,\n                }],\n                connectTimeout: 282426182,\n                connectionIsProxied: false,\n                database: 0,\n                host: \"...my_host...\",\n                keepaliveBacklog: 673476807,\n                keepalivePoolSize: 230676668,\n                password: \"...my_password...\",\n                port: 51340,\n                readTimeout: 289855833,\n                sendTimeout: 1337575450,\n                sentinelMaster: \"...my_sentinel_master...\",\n                sentinelNodes: [{\n                    host: \"...my_host...\",\n                    port: 38845,\n                }],\n                sentinelPassword: \"...my_sentinel_password...\",\n                sentinelRole: \"slave\",\n                sentinelUsername: \"...my_sentinel_username...\",\n                serverName: \"...my_server_name...\",\n                ssl: true,\n                sslVerify: false,\n                username: \"...my_username...\",\n            },\n            strategy: \"redis\",\n            threshold: 5.91,\n        },\n    },\n    consumer: {\n        id: \"...my_id...\",\n    },\n    consumerGroup: {\n        id: \"...my_id...\",\n    },\n    controlPlaneId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    createdAt: 3,\n    enabled: true,\n    gatewayPluginAiSemanticCacheId: \"...my_id...\",\n    instanceName: \"...my_instance_name...\",\n    ordering: {\n        after: {\n            accesses: [\"...\"],\n        },\n        before: {\n            accesses: [\"...\"],\n        },\n    },\n    partials: [{\n        id: \"...my_id...\",\n        name: \"...my_name...\",\n        path: \"...my_path...\",\n    }],\n    protocols: [\"http\"],\n    route: {\n        id: \"...my_id...\",\n    },\n    service: {\n        id: \"...my_id...\",\n    },\n    tags: [\"...\"],\n    updatedAt: 8,\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_gatewaypluginaisemanticcache = konnect.GatewayPluginAiSemanticCache(\"my_gatewaypluginaisemanticcache\",\n    config={\n        \"cache_control\": True,\n        \"cache_ttl\": 7,\n        \"embeddings\": {\n            \"auth\": {\n                \"allow_override\": False,\n                \"aws_access_key_id\": \"...my_aws_access_key_id...\",\n                \"aws_secret_access_key\": \"...my_aws_secret_access_key...\",\n                \"azure_client_id\": \"...my_azure_client_id...\",\n                \"azure_client_secret\": \"...my_azure_client_secret...\",\n                \"azure_tenant_id\": \"...my_azure_tenant_id...\",\n                \"azure_use_managed_identity\": True,\n                \"gcp_service_account_json\": \"...my_gcp_service_account_json...\",\n                \"gcp_use_service_account\": True,\n                \"header_name\": \"...my_header_name...\",\n                \"header_value\": \"...my_header_value...\",\n                \"param_location\": \"body\",\n                \"param_name\": \"...my_param_name...\",\n                \"param_value\": \"...my_param_value...\",\n            },\n            \"model\": {\n                \"name\": \"...my_name...\",\n                \"options\": {\n                    \"azure\": {\n                        \"api_version\": \"...my_api_version...\",\n                        \"deployment_id\": \"...my_deployment_id...\",\n                        \"instance\": \"...my_instance...\",\n                    },\n                    \"bedrock\": {\n                        \"aws_assume_role_arn\": \"...my_aws_assume_role_arn...\",\n                        \"aws_region\": \"...my_aws_region...\",\n                        \"aws_role_session_name\": \"...my_aws_role_session_name...\",\n                        \"aws_sts_endpoint_url\": \"...my_aws_sts_endpoint_url...\",\n                        \"embeddings_normalize\": True,\n                        \"performance_config_latency\": \"...my_performance_config_latency...\",\n                        \"video_output_s3_uri\": \"...my_video_output_s3_uri...\",\n                    },\n                    \"gemini\": {\n                        \"api_endpoint\": \"...my_api_endpoint...\",\n                        \"location_id\": \"...my_location_id...\",\n                        \"project_id\": \"...my_project_id...\",\n                    },\n                    \"huggingface\": {\n                        \"use_cache\": True,\n                        \"wait_for_model\": True,\n                    },\n                    \"upstream_url\": \"...my_upstream_url...\",\n                },\n                \"provider\": \"bedrock\",\n            },\n        },\n        \"exact_caching\": True,\n        \"ignore_assistant_prompts\": True,\n        \"ignore_system_prompts\": False,\n        \"ignore_tool_prompts\": True,\n        \"llm_format\": \"huggingface\",\n        \"message_countback\": 289.61,\n        \"stop_on_failure\": False,\n        \"vectordb\": {\n            \"dimensions\": 9,\n            \"distance_metric\": \"euclidean\",\n            \"pgvector\": {\n                \"database\": \"...my_database...\",\n                \"host\": \"...my_host...\",\n                \"password\": \"...my_password...\",\n                \"port\": 4,\n                \"ssl\": False,\n                \"ssl_cert\": \"...my_ssl_cert...\",\n                \"ssl_cert_key\": \"...my_ssl_cert_key...\",\n                \"ssl_required\": False,\n                \"ssl_verify\": True,\n                \"ssl_version\": \"any\",\n                \"timeout\": 6.41,\n                \"user\": \"...my_user...\",\n            },\n            \"redis\": {\n                \"cloud_authentication\": {\n                    \"auth_provider\": \"gcp\",\n                    \"aws_access_key_id\": \"...my_aws_access_key_id...\",\n                    \"aws_assume_role_arn\": \"...my_aws_assume_role_arn...\",\n                    \"aws_cache_name\": \"...my_aws_cache_name...\",\n                    \"aws_is_serverless\": True,\n                    \"aws_region\": \"...my_aws_region...\",\n                    \"aws_role_session_name\": \"...my_aws_role_session_name...\",\n                    \"aws_secret_access_key\": \"...my_aws_secret_access_key...\",\n                    \"azure_client_id\": \"...my_azure_client_id...\",\n                    \"azure_client_secret\": \"...my_azure_client_secret...\",\n                    \"azure_tenant_id\": \"...my_azure_tenant_id...\",\n                    \"gcp_service_account_json\": \"...my_gcp_service_account_json...\",\n                },\n                \"cluster_max_redirections\": 8,\n                \"cluster_nodes\": [{\n                    \"ip\": \"...my_ip...\",\n                    \"port\": 18507,\n                }],\n                \"connect_timeout\": 282426182,\n                \"connection_is_proxied\": False,\n                \"database\": 0,\n                \"host\": \"...my_host...\",\n                \"keepalive_backlog\": 673476807,\n                \"keepalive_pool_size\": 230676668,\n                \"password\": \"...my_password...\",\n                \"port\": 51340,\n                \"read_timeout\": 289855833,\n                \"send_timeout\": 1337575450,\n                \"sentinel_master\": \"...my_sentinel_master...\",\n                \"sentinel_nodes\": [{\n                    \"host\": \"...my_host...\",\n                    \"port\": 38845,\n                }],\n                \"sentinel_password\": \"...my_sentinel_password...\",\n                \"sentinel_role\": \"slave\",\n                \"sentinel_username\": \"...my_sentinel_username...\",\n                \"server_name\": \"...my_server_name...\",\n                \"ssl\": True,\n                \"ssl_verify\": False,\n                \"username\": \"...my_username...\",\n            },\n            \"strategy\": \"redis\",\n            \"threshold\": 5.91,\n        },\n    },\n    consumer={\n        \"id\": \"...my_id...\",\n    },\n    consumer_group={\n        \"id\": \"...my_id...\",\n    },\n    control_plane_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    created_at=3,\n    enabled=True,\n    gateway_plugin_ai_semantic_cache_id=\"...my_id...\",\n    instance_name=\"...my_instance_name...\",\n    ordering={\n        \"after\": {\n            \"accesses\": [\"...\"],\n        },\n        \"before\": {\n            \"accesses\": [\"...\"],\n        },\n    },\n    partials=[{\n        \"id\": \"...my_id...\",\n        \"name\": \"...my_name...\",\n        \"path\": \"...my_path...\",\n    }],\n    protocols=[\"http\"],\n    route={\n        \"id\": \"...my_id...\",\n    },\n    service={\n        \"id\": \"...my_id...\",\n    },\n    tags=[\"...\"],\n    updated_at=8)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myGatewaypluginaisemanticcache = new Konnect.GatewayPluginAiSemanticCache(\"my_gatewaypluginaisemanticcache\", new()\n    {\n        Config = new Konnect.Inputs.GatewayPluginAiSemanticCacheConfigArgs\n        {\n            CacheControl = true,\n            CacheTtl = 7,\n            Embeddings = new Konnect.Inputs.GatewayPluginAiSemanticCacheConfigEmbeddingsArgs\n            {\n                Auth = new Konnect.Inputs.GatewayPluginAiSemanticCacheConfigEmbeddingsAuthArgs\n                {\n                    AllowOverride = false,\n                    AwsAccessKeyId = \"...my_aws_access_key_id...\",\n                    AwsSecretAccessKey = \"...my_aws_secret_access_key...\",\n                    AzureClientId = \"...my_azure_client_id...\",\n                    AzureClientSecret = \"...my_azure_client_secret...\",\n                    AzureTenantId = \"...my_azure_tenant_id...\",\n                    AzureUseManagedIdentity = true,\n                    GcpServiceAccountJson = \"...my_gcp_service_account_json...\",\n                    GcpUseServiceAccount = true,\n                    HeaderName = \"...my_header_name...\",\n                    HeaderValue = \"...my_header_value...\",\n                    ParamLocation = \"body\",\n                    ParamName = \"...my_param_name...\",\n                    ParamValue = \"...my_param_value...\",\n                },\n                Model = new Konnect.Inputs.GatewayPluginAiSemanticCacheConfigEmbeddingsModelArgs\n                {\n                    Name = \"...my_name...\",\n                    Options = new Konnect.Inputs.GatewayPluginAiSemanticCacheConfigEmbeddingsModelOptionsArgs\n                    {\n                        Azure = new Konnect.Inputs.GatewayPluginAiSemanticCacheConfigEmbeddingsModelOptionsAzureArgs\n                        {\n                            ApiVersion = \"...my_api_version...\",\n                            DeploymentId = \"...my_deployment_id...\",\n                            Instance = \"...my_instance...\",\n                        },\n                        Bedrock = new Konnect.Inputs.GatewayPluginAiSemanticCacheConfigEmbeddingsModelOptionsBedrockArgs\n                        {\n                            AwsAssumeRoleArn = \"...my_aws_assume_role_arn...\",\n                            AwsRegion = \"...my_aws_region...\",\n                            AwsRoleSessionName = \"...my_aws_role_session_name...\",\n                            AwsStsEndpointUrl = \"...my_aws_sts_endpoint_url...\",\n                            EmbeddingsNormalize = true,\n                            PerformanceConfigLatency = \"...my_performance_config_latency...\",\n                            VideoOutputS3Uri = \"...my_video_output_s3_uri...\",\n                        },\n                        Gemini = new Konnect.Inputs.GatewayPluginAiSemanticCacheConfigEmbeddingsModelOptionsGeminiArgs\n                        {\n                            ApiEndpoint = \"...my_api_endpoint...\",\n                            LocationId = \"...my_location_id...\",\n                            ProjectId = \"...my_project_id...\",\n                        },\n                        Huggingface = new Konnect.Inputs.GatewayPluginAiSemanticCacheConfigEmbeddingsModelOptionsHuggingfaceArgs\n                        {\n                            UseCache = true,\n                            WaitForModel = true,\n                        },\n                        UpstreamUrl = \"...my_upstream_url...\",\n                    },\n                    Provider = \"bedrock\",\n                },\n            },\n            ExactCaching = true,\n            IgnoreAssistantPrompts = true,\n            IgnoreSystemPrompts = false,\n            IgnoreToolPrompts = true,\n            LlmFormat = \"huggingface\",\n            MessageCountback = 289.61,\n            StopOnFailure = false,\n            Vectordb = new Konnect.Inputs.GatewayPluginAiSemanticCacheConfigVectordbArgs\n            {\n                Dimensions = 9,\n                DistanceMetric = \"euclidean\",\n                Pgvector = new Konnect.Inputs.GatewayPluginAiSemanticCacheConfigVectordbPgvectorArgs\n                {\n                    Database = \"...my_database...\",\n                    Host = \"...my_host...\",\n                    Password = \"...my_password...\",\n                    Port = 4,\n                    Ssl = false,\n                    SslCert = \"...my_ssl_cert...\",\n                    SslCertKey = \"...my_ssl_cert_key...\",\n                    SslRequired = false,\n                    SslVerify = true,\n                    SslVersion = \"any\",\n                    Timeout = 6.41,\n                    User = \"...my_user...\",\n                },\n                Redis = new Konnect.Inputs.GatewayPluginAiSemanticCacheConfigVectordbRedisArgs\n                {\n                    CloudAuthentication = new Konnect.Inputs.GatewayPluginAiSemanticCacheConfigVectordbRedisCloudAuthenticationArgs\n                    {\n                        AuthProvider = \"gcp\",\n                        AwsAccessKeyId = \"...my_aws_access_key_id...\",\n                        AwsAssumeRoleArn = \"...my_aws_assume_role_arn...\",\n                        AwsCacheName = \"...my_aws_cache_name...\",\n                        AwsIsServerless = true,\n                        AwsRegion = \"...my_aws_region...\",\n                        AwsRoleSessionName = \"...my_aws_role_session_name...\",\n                        AwsSecretAccessKey = \"...my_aws_secret_access_key...\",\n                        AzureClientId = \"...my_azure_client_id...\",\n                        AzureClientSecret = \"...my_azure_client_secret...\",\n                        AzureTenantId = \"...my_azure_tenant_id...\",\n                        GcpServiceAccountJson = \"...my_gcp_service_account_json...\",\n                    },\n                    ClusterMaxRedirections = 8,\n                    ClusterNodes = new[]\n                    {\n                        new Konnect.Inputs.GatewayPluginAiSemanticCacheConfigVectordbRedisClusterNodeArgs\n                        {\n                            Ip = \"...my_ip...\",\n                            Port = 18507,\n                        },\n                    },\n                    ConnectTimeout = 282426182,\n                    ConnectionIsProxied = false,\n                    Database = 0,\n                    Host = \"...my_host...\",\n                    KeepaliveBacklog = 673476807,\n                    KeepalivePoolSize = 230676668,\n                    Password = \"...my_password...\",\n                    Port = 51340,\n                    ReadTimeout = 289855833,\n                    SendTimeout = 1337575450,\n                    SentinelMaster = \"...my_sentinel_master...\",\n                    SentinelNodes = new[]\n                    {\n                        new Konnect.Inputs.GatewayPluginAiSemanticCacheConfigVectordbRedisSentinelNodeArgs\n                        {\n                            Host = \"...my_host...\",\n                            Port = 38845,\n                        },\n                    },\n                    SentinelPassword = \"...my_sentinel_password...\",\n                    SentinelRole = \"slave\",\n                    SentinelUsername = \"...my_sentinel_username...\",\n                    ServerName = \"...my_server_name...\",\n                    Ssl = true,\n                    SslVerify = false,\n                    Username = \"...my_username...\",\n                },\n                Strategy = \"redis\",\n                Threshold = 5.91,\n            },\n        },\n        Consumer = new Konnect.Inputs.GatewayPluginAiSemanticCacheConsumerArgs\n        {\n            Id = \"...my_id...\",\n        },\n        ConsumerGroup = new Konnect.Inputs.GatewayPluginAiSemanticCacheConsumerGroupArgs\n        {\n            Id = \"...my_id...\",\n        },\n        ControlPlaneId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        CreatedAt = 3,\n        Enabled = true,\n        GatewayPluginAiSemanticCacheId = \"...my_id...\",\n        InstanceName = \"...my_instance_name...\",\n        Ordering = new Konnect.Inputs.GatewayPluginAiSemanticCacheOrderingArgs\n        {\n            After = new Konnect.Inputs.GatewayPluginAiSemanticCacheOrderingAfterArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n            Before = new Konnect.Inputs.GatewayPluginAiSemanticCacheOrderingBeforeArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n        },\n        Partials = new[]\n        {\n            new Konnect.Inputs.GatewayPluginAiSemanticCachePartialArgs\n            {\n                Id = \"...my_id...\",\n                Name = \"...my_name...\",\n                Path = \"...my_path...\",\n            },\n        },\n        Protocols = new[]\n        {\n            \"http\",\n        },\n        Route = new Konnect.Inputs.GatewayPluginAiSemanticCacheRouteArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Service = new Konnect.Inputs.GatewayPluginAiSemanticCacheServiceArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Tags = new[]\n        {\n            \"...\",\n        },\n        UpdatedAt = 8,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewGatewayPluginAiSemanticCache(ctx, \"my_gatewaypluginaisemanticcache\", \u0026konnect.GatewayPluginAiSemanticCacheArgs{\n\t\t\tConfig: \u0026konnect.GatewayPluginAiSemanticCacheConfigArgs{\n\t\t\t\tCacheControl: pulumi.Bool(true),\n\t\t\t\tCacheTtl:     pulumi.Float64(7),\n\t\t\t\tEmbeddings: \u0026konnect.GatewayPluginAiSemanticCacheConfigEmbeddingsArgs{\n\t\t\t\t\tAuth: \u0026konnect.GatewayPluginAiSemanticCacheConfigEmbeddingsAuthArgs{\n\t\t\t\t\t\tAllowOverride:           pulumi.Bool(false),\n\t\t\t\t\t\tAwsAccessKeyId:          pulumi.String(\"...my_aws_access_key_id...\"),\n\t\t\t\t\t\tAwsSecretAccessKey:      pulumi.String(\"...my_aws_secret_access_key...\"),\n\t\t\t\t\t\tAzureClientId:           pulumi.String(\"...my_azure_client_id...\"),\n\t\t\t\t\t\tAzureClientSecret:       pulumi.String(\"...my_azure_client_secret...\"),\n\t\t\t\t\t\tAzureTenantId:           pulumi.String(\"...my_azure_tenant_id...\"),\n\t\t\t\t\t\tAzureUseManagedIdentity: pulumi.Bool(true),\n\t\t\t\t\t\tGcpServiceAccountJson:   pulumi.String(\"...my_gcp_service_account_json...\"),\n\t\t\t\t\t\tGcpUseServiceAccount:    pulumi.Bool(true),\n\t\t\t\t\t\tHeaderName:              pulumi.String(\"...my_header_name...\"),\n\t\t\t\t\t\tHeaderValue:             pulumi.String(\"...my_header_value...\"),\n\t\t\t\t\t\tParamLocation:           pulumi.String(\"body\"),\n\t\t\t\t\t\tParamName:               pulumi.String(\"...my_param_name...\"),\n\t\t\t\t\t\tParamValue:              pulumi.String(\"...my_param_value...\"),\n\t\t\t\t\t},\n\t\t\t\t\tModel: \u0026konnect.GatewayPluginAiSemanticCacheConfigEmbeddingsModelArgs{\n\t\t\t\t\t\tName: pulumi.String(\"...my_name...\"),\n\t\t\t\t\t\tOptions: \u0026konnect.GatewayPluginAiSemanticCacheConfigEmbeddingsModelOptionsArgs{\n\t\t\t\t\t\t\tAzure: \u0026konnect.GatewayPluginAiSemanticCacheConfigEmbeddingsModelOptionsAzureArgs{\n\t\t\t\t\t\t\t\tApiVersion:   pulumi.String(\"...my_api_version...\"),\n\t\t\t\t\t\t\t\tDeploymentId: pulumi.String(\"...my_deployment_id...\"),\n\t\t\t\t\t\t\t\tInstance:     pulumi.String(\"...my_instance...\"),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tBedrock: \u0026konnect.GatewayPluginAiSemanticCacheConfigEmbeddingsModelOptionsBedrockArgs{\n\t\t\t\t\t\t\t\tAwsAssumeRoleArn:         pulumi.String(\"...my_aws_assume_role_arn...\"),\n\t\t\t\t\t\t\t\tAwsRegion:                pulumi.String(\"...my_aws_region...\"),\n\t\t\t\t\t\t\t\tAwsRoleSessionName:       pulumi.String(\"...my_aws_role_session_name...\"),\n\t\t\t\t\t\t\t\tAwsStsEndpointUrl:        pulumi.String(\"...my_aws_sts_endpoint_url...\"),\n\t\t\t\t\t\t\t\tEmbeddingsNormalize:      pulumi.Bool(true),\n\t\t\t\t\t\t\t\tPerformanceConfigLatency: pulumi.String(\"...my_performance_config_latency...\"),\n\t\t\t\t\t\t\t\tVideoOutputS3Uri:         pulumi.String(\"...my_video_output_s3_uri...\"),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tGemini: \u0026konnect.GatewayPluginAiSemanticCacheConfigEmbeddingsModelOptionsGeminiArgs{\n\t\t\t\t\t\t\t\tApiEndpoint: pulumi.String(\"...my_api_endpoint...\"),\n\t\t\t\t\t\t\t\tLocationId:  pulumi.String(\"...my_location_id...\"),\n\t\t\t\t\t\t\t\tProjectId:   pulumi.String(\"...my_project_id...\"),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tHuggingface: \u0026konnect.GatewayPluginAiSemanticCacheConfigEmbeddingsModelOptionsHuggingfaceArgs{\n\t\t\t\t\t\t\t\tUseCache:     pulumi.Bool(true),\n\t\t\t\t\t\t\t\tWaitForModel: pulumi.Bool(true),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tUpstreamUrl: pulumi.String(\"...my_upstream_url...\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\tProvider: pulumi.String(\"bedrock\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tExactCaching:           pulumi.Bool(true),\n\t\t\t\tIgnoreAssistantPrompts: pulumi.Bool(true),\n\t\t\t\tIgnoreSystemPrompts:    pulumi.Bool(false),\n\t\t\t\tIgnoreToolPrompts:      pulumi.Bool(true),\n\t\t\t\tLlmFormat:              pulumi.String(\"huggingface\"),\n\t\t\t\tMessageCountback:       pulumi.Float64(289.61),\n\t\t\t\tStopOnFailure:          pulumi.Bool(false),\n\t\t\t\tVectordb: \u0026konnect.GatewayPluginAiSemanticCacheConfigVectordbArgs{\n\t\t\t\t\tDimensions:     pulumi.Float64(9),\n\t\t\t\t\tDistanceMetric: pulumi.String(\"euclidean\"),\n\t\t\t\t\tPgvector: \u0026konnect.GatewayPluginAiSemanticCacheConfigVectordbPgvectorArgs{\n\t\t\t\t\t\tDatabase:    pulumi.String(\"...my_database...\"),\n\t\t\t\t\t\tHost:        pulumi.String(\"...my_host...\"),\n\t\t\t\t\t\tPassword:    pulumi.String(\"...my_password...\"),\n\t\t\t\t\t\tPort:        pulumi.Float64(4),\n\t\t\t\t\t\tSsl:         pulumi.Bool(false),\n\t\t\t\t\t\tSslCert:     pulumi.String(\"...my_ssl_cert...\"),\n\t\t\t\t\t\tSslCertKey:  pulumi.String(\"...my_ssl_cert_key...\"),\n\t\t\t\t\t\tSslRequired: pulumi.Bool(false),\n\t\t\t\t\t\tSslVerify:   pulumi.Bool(true),\n\t\t\t\t\t\tSslVersion:  pulumi.String(\"any\"),\n\t\t\t\t\t\tTimeout:     pulumi.Float64(6.41),\n\t\t\t\t\t\tUser:        pulumi.String(\"...my_user...\"),\n\t\t\t\t\t},\n\t\t\t\t\tRedis: \u0026konnect.GatewayPluginAiSemanticCacheConfigVectordbRedisArgs{\n\t\t\t\t\t\tCloudAuthentication: \u0026konnect.GatewayPluginAiSemanticCacheConfigVectordbRedisCloudAuthenticationArgs{\n\t\t\t\t\t\t\tAuthProvider:          pulumi.String(\"gcp\"),\n\t\t\t\t\t\t\tAwsAccessKeyId:        pulumi.String(\"...my_aws_access_key_id...\"),\n\t\t\t\t\t\t\tAwsAssumeRoleArn:      pulumi.String(\"...my_aws_assume_role_arn...\"),\n\t\t\t\t\t\t\tAwsCacheName:          pulumi.String(\"...my_aws_cache_name...\"),\n\t\t\t\t\t\t\tAwsIsServerless:       pulumi.Bool(true),\n\t\t\t\t\t\t\tAwsRegion:             pulumi.String(\"...my_aws_region...\"),\n\t\t\t\t\t\t\tAwsRoleSessionName:    pulumi.String(\"...my_aws_role_session_name...\"),\n\t\t\t\t\t\t\tAwsSecretAccessKey:    pulumi.String(\"...my_aws_secret_access_key...\"),\n\t\t\t\t\t\t\tAzureClientId:         pulumi.String(\"...my_azure_client_id...\"),\n\t\t\t\t\t\t\tAzureClientSecret:     pulumi.String(\"...my_azure_client_secret...\"),\n\t\t\t\t\t\t\tAzureTenantId:         pulumi.String(\"...my_azure_tenant_id...\"),\n\t\t\t\t\t\t\tGcpServiceAccountJson: pulumi.String(\"...my_gcp_service_account_json...\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\tClusterMaxRedirections: pulumi.Float64(8),\n\t\t\t\t\t\tClusterNodes: konnect.GatewayPluginAiSemanticCacheConfigVectordbRedisClusterNodeArray{\n\t\t\t\t\t\t\t\u0026konnect.GatewayPluginAiSemanticCacheConfigVectordbRedisClusterNodeArgs{\n\t\t\t\t\t\t\t\tIp:   pulumi.String(\"...my_ip...\"),\n\t\t\t\t\t\t\t\tPort: pulumi.Float64(18507),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t\tConnectTimeout:      pulumi.Float64(282426182),\n\t\t\t\t\t\tConnectionIsProxied: pulumi.Bool(false),\n\t\t\t\t\t\tDatabase:            pulumi.Float64(0),\n\t\t\t\t\t\tHost:                pulumi.String(\"...my_host...\"),\n\t\t\t\t\t\tKeepaliveBacklog:    pulumi.Float64(673476807),\n\t\t\t\t\t\tKeepalivePoolSize:   pulumi.Float64(230676668),\n\t\t\t\t\t\tPassword:            pulumi.String(\"...my_password...\"),\n\t\t\t\t\t\tPort:                pulumi.Float64(51340),\n\t\t\t\t\t\tReadTimeout:         pulumi.Float64(289855833),\n\t\t\t\t\t\tSendTimeout:         pulumi.Float64(1337575450),\n\t\t\t\t\t\tSentinelMaster:      pulumi.String(\"...my_sentinel_master...\"),\n\t\t\t\t\t\tSentinelNodes: konnect.GatewayPluginAiSemanticCacheConfigVectordbRedisSentinelNodeArray{\n\t\t\t\t\t\t\t\u0026konnect.GatewayPluginAiSemanticCacheConfigVectordbRedisSentinelNodeArgs{\n\t\t\t\t\t\t\t\tHost: pulumi.String(\"...my_host...\"),\n\t\t\t\t\t\t\t\tPort: pulumi.Float64(38845),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t\tSentinelPassword: pulumi.String(\"...my_sentinel_password...\"),\n\t\t\t\t\t\tSentinelRole:     pulumi.String(\"slave\"),\n\t\t\t\t\t\tSentinelUsername: pulumi.String(\"...my_sentinel_username...\"),\n\t\t\t\t\t\tServerName:       pulumi.String(\"...my_server_name...\"),\n\t\t\t\t\t\tSsl:              pulumi.Bool(true),\n\t\t\t\t\t\tSslVerify:        pulumi.Bool(false),\n\t\t\t\t\t\tUsername:         pulumi.String(\"...my_username...\"),\n\t\t\t\t\t},\n\t\t\t\t\tStrategy:  pulumi.String(\"redis\"),\n\t\t\t\t\tThreshold: pulumi.Float64(5.91),\n\t\t\t\t},\n\t\t\t},\n\t\t\tConsumer: \u0026konnect.GatewayPluginAiSemanticCacheConsumerArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tConsumerGroup: \u0026konnect.GatewayPluginAiSemanticCacheConsumerGroupArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tControlPlaneId:                 pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tCreatedAt:                      pulumi.Float64(3),\n\t\t\tEnabled:                        pulumi.Bool(true),\n\t\t\tGatewayPluginAiSemanticCacheId: pulumi.String(\"...my_id...\"),\n\t\t\tInstanceName:                   pulumi.String(\"...my_instance_name...\"),\n\t\t\tOrdering: \u0026konnect.GatewayPluginAiSemanticCacheOrderingArgs{\n\t\t\t\tAfter: \u0026konnect.GatewayPluginAiSemanticCacheOrderingAfterArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tBefore: \u0026konnect.GatewayPluginAiSemanticCacheOrderingBeforeArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tPartials: konnect.GatewayPluginAiSemanticCachePartialArray{\n\t\t\t\t\u0026konnect.GatewayPluginAiSemanticCachePartialArgs{\n\t\t\t\t\tId:   pulumi.String(\"...my_id...\"),\n\t\t\t\t\tName: pulumi.String(\"...my_name...\"),\n\t\t\t\t\tPath: pulumi.String(\"...my_path...\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tProtocols: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"http\"),\n\t\t\t},\n\t\t\tRoute: \u0026konnect.GatewayPluginAiSemanticCacheRouteArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tService: \u0026konnect.GatewayPluginAiSemanticCacheServiceArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"...\"),\n\t\t\t},\n\t\t\tUpdatedAt: pulumi.Float64(8),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.GatewayPluginAiSemanticCache;\nimport com.pulumi.konnect.GatewayPluginAiSemanticCacheArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiSemanticCacheConfigArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiSemanticCacheConfigEmbeddingsArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiSemanticCacheConfigEmbeddingsAuthArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiSemanticCacheConfigEmbeddingsModelArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiSemanticCacheConfigEmbeddingsModelOptionsArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiSemanticCacheConfigEmbeddingsModelOptionsAzureArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiSemanticCacheConfigEmbeddingsModelOptionsBedrockArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiSemanticCacheConfigEmbeddingsModelOptionsGeminiArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiSemanticCacheConfigEmbeddingsModelOptionsHuggingfaceArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiSemanticCacheConfigVectordbArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiSemanticCacheConfigVectordbPgvectorArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiSemanticCacheConfigVectordbRedisArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiSemanticCacheConfigVectordbRedisCloudAuthenticationArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiSemanticCacheConsumerArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiSemanticCacheConsumerGroupArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiSemanticCacheOrderingArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiSemanticCacheOrderingAfterArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiSemanticCacheOrderingBeforeArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiSemanticCachePartialArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiSemanticCacheRouteArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiSemanticCacheServiceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myGatewaypluginaisemanticcache = new GatewayPluginAiSemanticCache(\"myGatewaypluginaisemanticcache\", GatewayPluginAiSemanticCacheArgs.builder()\n            .config(GatewayPluginAiSemanticCacheConfigArgs.builder()\n                .cacheControl(true)\n                .cacheTtl(7.0)\n                .embeddings(GatewayPluginAiSemanticCacheConfigEmbeddingsArgs.builder()\n                    .auth(GatewayPluginAiSemanticCacheConfigEmbeddingsAuthArgs.builder()\n                        .allowOverride(false)\n                        .awsAccessKeyId(\"...my_aws_access_key_id...\")\n                        .awsSecretAccessKey(\"...my_aws_secret_access_key...\")\n                        .azureClientId(\"...my_azure_client_id...\")\n                        .azureClientSecret(\"...my_azure_client_secret...\")\n                        .azureTenantId(\"...my_azure_tenant_id...\")\n                        .azureUseManagedIdentity(true)\n                        .gcpServiceAccountJson(\"...my_gcp_service_account_json...\")\n                        .gcpUseServiceAccount(true)\n                        .headerName(\"...my_header_name...\")\n                        .headerValue(\"...my_header_value...\")\n                        .paramLocation(\"body\")\n                        .paramName(\"...my_param_name...\")\n                        .paramValue(\"...my_param_value...\")\n                        .build())\n                    .model(GatewayPluginAiSemanticCacheConfigEmbeddingsModelArgs.builder()\n                        .name(\"...my_name...\")\n                        .options(GatewayPluginAiSemanticCacheConfigEmbeddingsModelOptionsArgs.builder()\n                            .azure(GatewayPluginAiSemanticCacheConfigEmbeddingsModelOptionsAzureArgs.builder()\n                                .apiVersion(\"...my_api_version...\")\n                                .deploymentId(\"...my_deployment_id...\")\n                                .instance(\"...my_instance...\")\n                                .build())\n                            .bedrock(GatewayPluginAiSemanticCacheConfigEmbeddingsModelOptionsBedrockArgs.builder()\n                                .awsAssumeRoleArn(\"...my_aws_assume_role_arn...\")\n                                .awsRegion(\"...my_aws_region...\")\n                                .awsRoleSessionName(\"...my_aws_role_session_name...\")\n                                .awsStsEndpointUrl(\"...my_aws_sts_endpoint_url...\")\n                                .embeddingsNormalize(true)\n                                .performanceConfigLatency(\"...my_performance_config_latency...\")\n                                .videoOutputS3Uri(\"...my_video_output_s3_uri...\")\n                                .build())\n                            .gemini(GatewayPluginAiSemanticCacheConfigEmbeddingsModelOptionsGeminiArgs.builder()\n                                .apiEndpoint(\"...my_api_endpoint...\")\n                                .locationId(\"...my_location_id...\")\n                                .projectId(\"...my_project_id...\")\n                                .build())\n                            .huggingface(GatewayPluginAiSemanticCacheConfigEmbeddingsModelOptionsHuggingfaceArgs.builder()\n                                .useCache(true)\n                                .waitForModel(true)\n                                .build())\n                            .upstreamUrl(\"...my_upstream_url...\")\n                            .build())\n                        .provider(\"bedrock\")\n                        .build())\n                    .build())\n                .exactCaching(true)\n                .ignoreAssistantPrompts(true)\n                .ignoreSystemPrompts(false)\n                .ignoreToolPrompts(true)\n                .llmFormat(\"huggingface\")\n                .messageCountback(289.61)\n                .stopOnFailure(false)\n                .vectordb(GatewayPluginAiSemanticCacheConfigVectordbArgs.builder()\n                    .dimensions(9.0)\n                    .distanceMetric(\"euclidean\")\n                    .pgvector(GatewayPluginAiSemanticCacheConfigVectordbPgvectorArgs.builder()\n                        .database(\"...my_database...\")\n                        .host(\"...my_host...\")\n                        .password(\"...my_password...\")\n                        .port(4.0)\n                        .ssl(false)\n                        .sslCert(\"...my_ssl_cert...\")\n                        .sslCertKey(\"...my_ssl_cert_key...\")\n                        .sslRequired(false)\n                        .sslVerify(true)\n                        .sslVersion(\"any\")\n                        .timeout(6.41)\n                        .user(\"...my_user...\")\n                        .build())\n                    .redis(GatewayPluginAiSemanticCacheConfigVectordbRedisArgs.builder()\n                        .cloudAuthentication(GatewayPluginAiSemanticCacheConfigVectordbRedisCloudAuthenticationArgs.builder()\n                            .authProvider(\"gcp\")\n                            .awsAccessKeyId(\"...my_aws_access_key_id...\")\n                            .awsAssumeRoleArn(\"...my_aws_assume_role_arn...\")\n                            .awsCacheName(\"...my_aws_cache_name...\")\n                            .awsIsServerless(true)\n                            .awsRegion(\"...my_aws_region...\")\n                            .awsRoleSessionName(\"...my_aws_role_session_name...\")\n                            .awsSecretAccessKey(\"...my_aws_secret_access_key...\")\n                            .azureClientId(\"...my_azure_client_id...\")\n                            .azureClientSecret(\"...my_azure_client_secret...\")\n                            .azureTenantId(\"...my_azure_tenant_id...\")\n                            .gcpServiceAccountJson(\"...my_gcp_service_account_json...\")\n                            .build())\n                        .clusterMaxRedirections(8.0)\n                        .clusterNodes(GatewayPluginAiSemanticCacheConfigVectordbRedisClusterNodeArgs.builder()\n                            .ip(\"...my_ip...\")\n                            .port(18507.0)\n                            .build())\n                        .connectTimeout(282426182.0)\n                        .connectionIsProxied(false)\n                        .database(0.0)\n                        .host(\"...my_host...\")\n                        .keepaliveBacklog(673476807.0)\n                        .keepalivePoolSize(230676668.0)\n                        .password(\"...my_password...\")\n                        .port(51340.0)\n                        .readTimeout(289855833.0)\n                        .sendTimeout(1337575450.0)\n                        .sentinelMaster(\"...my_sentinel_master...\")\n                        .sentinelNodes(GatewayPluginAiSemanticCacheConfigVectordbRedisSentinelNodeArgs.builder()\n                            .host(\"...my_host...\")\n                            .port(38845.0)\n                            .build())\n                        .sentinelPassword(\"...my_sentinel_password...\")\n                        .sentinelRole(\"slave\")\n                        .sentinelUsername(\"...my_sentinel_username...\")\n                        .serverName(\"...my_server_name...\")\n                        .ssl(true)\n                        .sslVerify(false)\n                        .username(\"...my_username...\")\n                        .build())\n                    .strategy(\"redis\")\n                    .threshold(5.91)\n                    .build())\n                .build())\n            .consumer(GatewayPluginAiSemanticCacheConsumerArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .consumerGroup(GatewayPluginAiSemanticCacheConsumerGroupArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .controlPlaneId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .createdAt(3.0)\n            .enabled(true)\n            .gatewayPluginAiSemanticCacheId(\"...my_id...\")\n            .instanceName(\"...my_instance_name...\")\n            .ordering(GatewayPluginAiSemanticCacheOrderingArgs.builder()\n                .after(GatewayPluginAiSemanticCacheOrderingAfterArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .before(GatewayPluginAiSemanticCacheOrderingBeforeArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .build())\n            .partials(GatewayPluginAiSemanticCachePartialArgs.builder()\n                .id(\"...my_id...\")\n                .name(\"...my_name...\")\n                .path(\"...my_path...\")\n                .build())\n            .protocols(\"http\")\n            .route(GatewayPluginAiSemanticCacheRouteArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .service(GatewayPluginAiSemanticCacheServiceArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .tags(\"...\")\n            .updatedAt(8.0)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myGatewaypluginaisemanticcache:\n    type: konnect:GatewayPluginAiSemanticCache\n    name: my_gatewaypluginaisemanticcache\n    properties:\n      config:\n        cacheControl: true\n        cacheTtl: 7\n        embeddings:\n          auth:\n            allowOverride: false\n            awsAccessKeyId: '...my_aws_access_key_id...'\n            awsSecretAccessKey: '...my_aws_secret_access_key...'\n            azureClientId: '...my_azure_client_id...'\n            azureClientSecret: '...my_azure_client_secret...'\n            azureTenantId: '...my_azure_tenant_id...'\n            azureUseManagedIdentity: true\n            gcpServiceAccountJson: '...my_gcp_service_account_json...'\n            gcpUseServiceAccount: true\n            headerName: '...my_header_name...'\n            headerValue: '...my_header_value...'\n            paramLocation: body\n            paramName: '...my_param_name...'\n            paramValue: '...my_param_value...'\n          model:\n            name: '...my_name...'\n            options:\n              azure:\n                apiVersion: '...my_api_version...'\n                deploymentId: '...my_deployment_id...'\n                instance: '...my_instance...'\n              bedrock:\n                awsAssumeRoleArn: '...my_aws_assume_role_arn...'\n                awsRegion: '...my_aws_region...'\n                awsRoleSessionName: '...my_aws_role_session_name...'\n                awsStsEndpointUrl: '...my_aws_sts_endpoint_url...'\n                embeddingsNormalize: true\n                performanceConfigLatency: '...my_performance_config_latency...'\n                videoOutputS3Uri: '...my_video_output_s3_uri...'\n              gemini:\n                apiEndpoint: '...my_api_endpoint...'\n                locationId: '...my_location_id...'\n                projectId: '...my_project_id...'\n              huggingface:\n                useCache: true\n                waitForModel: true\n              upstreamUrl: '...my_upstream_url...'\n            provider: bedrock\n        exactCaching: true\n        ignoreAssistantPrompts: true\n        ignoreSystemPrompts: false\n        ignoreToolPrompts: true\n        llmFormat: huggingface\n        messageCountback: 289.61\n        stopOnFailure: false\n        vectordb:\n          dimensions: 9\n          distanceMetric: euclidean\n          pgvector:\n            database: '...my_database...'\n            host: '...my_host...'\n            password: '...my_password...'\n            port: 4\n            ssl: false\n            sslCert: '...my_ssl_cert...'\n            sslCertKey: '...my_ssl_cert_key...'\n            sslRequired: false\n            sslVerify: true\n            sslVersion: any\n            timeout: 6.41\n            user: '...my_user...'\n          redis:\n            cloudAuthentication:\n              authProvider: gcp\n              awsAccessKeyId: '...my_aws_access_key_id...'\n              awsAssumeRoleArn: '...my_aws_assume_role_arn...'\n              awsCacheName: '...my_aws_cache_name...'\n              awsIsServerless: true\n              awsRegion: '...my_aws_region...'\n              awsRoleSessionName: '...my_aws_role_session_name...'\n              awsSecretAccessKey: '...my_aws_secret_access_key...'\n              azureClientId: '...my_azure_client_id...'\n              azureClientSecret: '...my_azure_client_secret...'\n              azureTenantId: '...my_azure_tenant_id...'\n              gcpServiceAccountJson: '...my_gcp_service_account_json...'\n            clusterMaxRedirections: 8\n            clusterNodes:\n              - ip: '...my_ip...'\n                port: 18507\n            connectTimeout: 2.82426182e+08\n            connectionIsProxied: false\n            database: 0\n            host: '...my_host...'\n            keepaliveBacklog: 6.73476807e+08\n            keepalivePoolSize: 2.30676668e+08\n            password: '...my_password...'\n            port: 51340\n            readTimeout: 2.89855833e+08\n            sendTimeout: 1.33757545e+09\n            sentinelMaster: '...my_sentinel_master...'\n            sentinelNodes:\n              - host: '...my_host...'\n                port: 38845\n            sentinelPassword: '...my_sentinel_password...'\n            sentinelRole: slave\n            sentinelUsername: '...my_sentinel_username...'\n            serverName: '...my_server_name...'\n            ssl: true\n            sslVerify: false\n            username: '...my_username...'\n          strategy: redis\n          threshold: 5.91\n      consumer:\n        id: '...my_id...'\n      consumerGroup:\n        id: '...my_id...'\n      controlPlaneId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      createdAt: 3\n      enabled: true\n      gatewayPluginAiSemanticCacheId: '...my_id...'\n      instanceName: '...my_instance_name...'\n      ordering:\n        after:\n          accesses:\n            - '...'\n        before:\n          accesses:\n            - '...'\n      partials:\n        - id: '...my_id...'\n          name: '...my_name...'\n          path: '...my_path...'\n      protocols:\n        - http\n      route:\n        id: '...my_id...'\n      service:\n        id: '...my_id...'\n      tags:\n        - '...'\n      updatedAt: 8\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_gateway_plugin_ai_semantic_cache.my_konnect_gateway_plugin_ai_semantic_cache\n\n  id = jsonencode({\n\n    control_plane_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/gatewayPluginAiSemanticCache:GatewayPluginAiSemanticCache my_konnect_gateway_plugin_ai_semantic_cache '{\"control_plane_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"}'\n```\n\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginAiSemanticCacheConfig:GatewayPluginAiSemanticCacheConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginAiSemanticCacheConsumer:GatewayPluginAiSemanticCacheConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"consumerGroup":{"$ref":"#/types/konnect:index%2FGatewayPluginAiSemanticCacheConsumerGroup:GatewayPluginAiSemanticCacheConsumerGroup","description":"If set, the plugin will activate only for requests where the specified consumer group has been authenticated. (Note that some plugins can not be restricted to consumers groups this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer Groups\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginAiSemanticCacheId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginAiSemanticCacheOrdering:GatewayPluginAiSemanticCacheOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginAiSemanticCachePartial:GatewayPluginAiSemanticCachePartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginAiSemanticCacheRoute:GatewayPluginAiSemanticCacheRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginAiSemanticCacheService:GatewayPluginAiSemanticCacheService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object","required":["config","consumer","consumerGroup","controlPlaneId","createdAt","enabled","gatewayPluginAiSemanticCacheId","ordering","protocols","route","service","updatedAt"],"inputProperties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginAiSemanticCacheConfig:GatewayPluginAiSemanticCacheConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginAiSemanticCacheConsumer:GatewayPluginAiSemanticCacheConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"consumerGroup":{"$ref":"#/types/konnect:index%2FGatewayPluginAiSemanticCacheConsumerGroup:GatewayPluginAiSemanticCacheConsumerGroup","description":"If set, the plugin will activate only for requests where the specified consumer group has been authenticated. (Note that some plugins can not be restricted to consumers groups this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer Groups\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginAiSemanticCacheId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginAiSemanticCacheOrdering:GatewayPluginAiSemanticCacheOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginAiSemanticCachePartial:GatewayPluginAiSemanticCachePartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginAiSemanticCacheRoute:GatewayPluginAiSemanticCacheRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginAiSemanticCacheService:GatewayPluginAiSemanticCacheService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"requiredInputs":["config","controlPlaneId"],"stateInputs":{"description":"Input properties used for looking up and filtering GatewayPluginAiSemanticCache resources.\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginAiSemanticCacheConfig:GatewayPluginAiSemanticCacheConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginAiSemanticCacheConsumer:GatewayPluginAiSemanticCacheConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"consumerGroup":{"$ref":"#/types/konnect:index%2FGatewayPluginAiSemanticCacheConsumerGroup:GatewayPluginAiSemanticCacheConsumerGroup","description":"If set, the plugin will activate only for requests where the specified consumer group has been authenticated. (Note that some plugins can not be restricted to consumers groups this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer Groups\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginAiSemanticCacheId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginAiSemanticCacheOrdering:GatewayPluginAiSemanticCacheOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginAiSemanticCachePartial:GatewayPluginAiSemanticCachePartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginAiSemanticCacheRoute:GatewayPluginAiSemanticCacheRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginAiSemanticCacheService:GatewayPluginAiSemanticCacheService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object"}},"konnect:index/gatewayPluginAiSemanticPromptGuard:GatewayPluginAiSemanticPromptGuard":{"description":"GatewayPluginAiSemanticPromptGuard Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myGatewaypluginaisemanticpromptguard = new konnect.GatewayPluginAiSemanticPromptGuard(\"my_gatewaypluginaisemanticpromptguard\", {\n    config: {\n        embeddings: {\n            auth: {\n                allowOverride: false,\n                awsAccessKeyId: \"...my_aws_access_key_id...\",\n                awsSecretAccessKey: \"...my_aws_secret_access_key...\",\n                azureClientId: \"...my_azure_client_id...\",\n                azureClientSecret: \"...my_azure_client_secret...\",\n                azureTenantId: \"...my_azure_tenant_id...\",\n                azureUseManagedIdentity: true,\n                gcpServiceAccountJson: \"...my_gcp_service_account_json...\",\n                gcpUseServiceAccount: true,\n                headerName: \"...my_header_name...\",\n                headerValue: \"...my_header_value...\",\n                paramLocation: \"query\",\n                paramName: \"...my_param_name...\",\n                paramValue: \"...my_param_value...\",\n            },\n            model: {\n                name: \"...my_name...\",\n                options: {\n                    azure: {\n                        apiVersion: \"...my_api_version...\",\n                        deploymentId: \"...my_deployment_id...\",\n                        instance: \"...my_instance...\",\n                    },\n                    bedrock: {\n                        awsAssumeRoleArn: \"...my_aws_assume_role_arn...\",\n                        awsRegion: \"...my_aws_region...\",\n                        awsRoleSessionName: \"...my_aws_role_session_name...\",\n                        awsStsEndpointUrl: \"...my_aws_sts_endpoint_url...\",\n                        embeddingsNormalize: true,\n                        performanceConfigLatency: \"...my_performance_config_latency...\",\n                        videoOutputS3Uri: \"...my_video_output_s3_uri...\",\n                    },\n                    gemini: {\n                        apiEndpoint: \"...my_api_endpoint...\",\n                        locationId: \"...my_location_id...\",\n                        projectId: \"...my_project_id...\",\n                    },\n                    huggingface: {\n                        useCache: false,\n                        waitForModel: true,\n                    },\n                    upstreamUrl: \"...my_upstream_url...\",\n                },\n                provider: \"mistral\",\n            },\n        },\n        genaiCategory: \"audio/speech\",\n        llmFormat: \"cohere\",\n        maxRequestBodySize: 6,\n        rules: {\n            allowPrompts: [\"...\"],\n            denyPrompts: [\"...\"],\n            matchAllConversationHistory: false,\n            matchAllRoles: false,\n            maxRequestBodySize: 10,\n        },\n        search: {\n            threshold: 9.87,\n        },\n        vectordb: {\n            dimensions: 4,\n            distanceMetric: \"euclidean\",\n            pgvector: {\n                database: \"...my_database...\",\n                host: \"...my_host...\",\n                password: \"...my_password...\",\n                port: 4,\n                ssl: false,\n                sslCert: \"...my_ssl_cert...\",\n                sslCertKey: \"...my_ssl_cert_key...\",\n                sslRequired: false,\n                sslVerify: false,\n                sslVersion: \"tlsv1_3\",\n                timeout: 7.16,\n                user: \"...my_user...\",\n            },\n            redis: {\n                cloudAuthentication: {\n                    authProvider: \"azure\",\n                    awsAccessKeyId: \"...my_aws_access_key_id...\",\n                    awsAssumeRoleArn: \"...my_aws_assume_role_arn...\",\n                    awsCacheName: \"...my_aws_cache_name...\",\n                    awsIsServerless: true,\n                    awsRegion: \"...my_aws_region...\",\n                    awsRoleSessionName: \"...my_aws_role_session_name...\",\n                    awsSecretAccessKey: \"...my_aws_secret_access_key...\",\n                    azureClientId: \"...my_azure_client_id...\",\n                    azureClientSecret: \"...my_azure_client_secret...\",\n                    azureTenantId: \"...my_azure_tenant_id...\",\n                    gcpServiceAccountJson: \"...my_gcp_service_account_json...\",\n                },\n                clusterMaxRedirections: 10,\n                clusterNodes: [{\n                    ip: \"...my_ip...\",\n                    port: 4694,\n                }],\n                connectTimeout: 927722545,\n                connectionIsProxied: false,\n                database: 7,\n                host: \"...my_host...\",\n                keepaliveBacklog: 1501125607,\n                keepalivePoolSize: 114222283,\n                password: \"...my_password...\",\n                port: 24350,\n                readTimeout: 888592257,\n                sendTimeout: 228434190,\n                sentinelMaster: \"...my_sentinel_master...\",\n                sentinelNodes: [{\n                    host: \"...my_host...\",\n                    port: 18183,\n                }],\n                sentinelPassword: \"...my_sentinel_password...\",\n                sentinelRole: \"any\",\n                sentinelUsername: \"...my_sentinel_username...\",\n                serverName: \"...my_server_name...\",\n                ssl: false,\n                sslVerify: true,\n                username: \"...my_username...\",\n            },\n            strategy: \"redis\",\n            threshold: 3.9,\n        },\n    },\n    consumer: {\n        id: \"...my_id...\",\n    },\n    consumerGroup: {\n        id: \"...my_id...\",\n    },\n    controlPlaneId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    createdAt: 7,\n    enabled: true,\n    gatewayPluginAiSemanticPromptGuardId: \"...my_id...\",\n    instanceName: \"...my_instance_name...\",\n    ordering: {\n        after: {\n            accesses: [\"...\"],\n        },\n        before: {\n            accesses: [\"...\"],\n        },\n    },\n    partials: [{\n        id: \"...my_id...\",\n        name: \"...my_name...\",\n        path: \"...my_path...\",\n    }],\n    protocols: [\"http\"],\n    route: {\n        id: \"...my_id...\",\n    },\n    service: {\n        id: \"...my_id...\",\n    },\n    tags: [\"...\"],\n    updatedAt: 2,\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_gatewaypluginaisemanticpromptguard = konnect.GatewayPluginAiSemanticPromptGuard(\"my_gatewaypluginaisemanticpromptguard\",\n    config={\n        \"embeddings\": {\n            \"auth\": {\n                \"allow_override\": False,\n                \"aws_access_key_id\": \"...my_aws_access_key_id...\",\n                \"aws_secret_access_key\": \"...my_aws_secret_access_key...\",\n                \"azure_client_id\": \"...my_azure_client_id...\",\n                \"azure_client_secret\": \"...my_azure_client_secret...\",\n                \"azure_tenant_id\": \"...my_azure_tenant_id...\",\n                \"azure_use_managed_identity\": True,\n                \"gcp_service_account_json\": \"...my_gcp_service_account_json...\",\n                \"gcp_use_service_account\": True,\n                \"header_name\": \"...my_header_name...\",\n                \"header_value\": \"...my_header_value...\",\n                \"param_location\": \"query\",\n                \"param_name\": \"...my_param_name...\",\n                \"param_value\": \"...my_param_value...\",\n            },\n            \"model\": {\n                \"name\": \"...my_name...\",\n                \"options\": {\n                    \"azure\": {\n                        \"api_version\": \"...my_api_version...\",\n                        \"deployment_id\": \"...my_deployment_id...\",\n                        \"instance\": \"...my_instance...\",\n                    },\n                    \"bedrock\": {\n                        \"aws_assume_role_arn\": \"...my_aws_assume_role_arn...\",\n                        \"aws_region\": \"...my_aws_region...\",\n                        \"aws_role_session_name\": \"...my_aws_role_session_name...\",\n                        \"aws_sts_endpoint_url\": \"...my_aws_sts_endpoint_url...\",\n                        \"embeddings_normalize\": True,\n                        \"performance_config_latency\": \"...my_performance_config_latency...\",\n                        \"video_output_s3_uri\": \"...my_video_output_s3_uri...\",\n                    },\n                    \"gemini\": {\n                        \"api_endpoint\": \"...my_api_endpoint...\",\n                        \"location_id\": \"...my_location_id...\",\n                        \"project_id\": \"...my_project_id...\",\n                    },\n                    \"huggingface\": {\n                        \"use_cache\": False,\n                        \"wait_for_model\": True,\n                    },\n                    \"upstream_url\": \"...my_upstream_url...\",\n                },\n                \"provider\": \"mistral\",\n            },\n        },\n        \"genai_category\": \"audio/speech\",\n        \"llm_format\": \"cohere\",\n        \"max_request_body_size\": 6,\n        \"rules\": {\n            \"allow_prompts\": [\"...\"],\n            \"deny_prompts\": [\"...\"],\n            \"match_all_conversation_history\": False,\n            \"match_all_roles\": False,\n            \"max_request_body_size\": 10,\n        },\n        \"search\": {\n            \"threshold\": 9.87,\n        },\n        \"vectordb\": {\n            \"dimensions\": 4,\n            \"distance_metric\": \"euclidean\",\n            \"pgvector\": {\n                \"database\": \"...my_database...\",\n                \"host\": \"...my_host...\",\n                \"password\": \"...my_password...\",\n                \"port\": 4,\n                \"ssl\": False,\n                \"ssl_cert\": \"...my_ssl_cert...\",\n                \"ssl_cert_key\": \"...my_ssl_cert_key...\",\n                \"ssl_required\": False,\n                \"ssl_verify\": False,\n                \"ssl_version\": \"tlsv1_3\",\n                \"timeout\": 7.16,\n                \"user\": \"...my_user...\",\n            },\n            \"redis\": {\n                \"cloud_authentication\": {\n                    \"auth_provider\": \"azure\",\n                    \"aws_access_key_id\": \"...my_aws_access_key_id...\",\n                    \"aws_assume_role_arn\": \"...my_aws_assume_role_arn...\",\n                    \"aws_cache_name\": \"...my_aws_cache_name...\",\n                    \"aws_is_serverless\": True,\n                    \"aws_region\": \"...my_aws_region...\",\n                    \"aws_role_session_name\": \"...my_aws_role_session_name...\",\n                    \"aws_secret_access_key\": \"...my_aws_secret_access_key...\",\n                    \"azure_client_id\": \"...my_azure_client_id...\",\n                    \"azure_client_secret\": \"...my_azure_client_secret...\",\n                    \"azure_tenant_id\": \"...my_azure_tenant_id...\",\n                    \"gcp_service_account_json\": \"...my_gcp_service_account_json...\",\n                },\n                \"cluster_max_redirections\": 10,\n                \"cluster_nodes\": [{\n                    \"ip\": \"...my_ip...\",\n                    \"port\": 4694,\n                }],\n                \"connect_timeout\": 927722545,\n                \"connection_is_proxied\": False,\n                \"database\": 7,\n                \"host\": \"...my_host...\",\n                \"keepalive_backlog\": 1501125607,\n                \"keepalive_pool_size\": 114222283,\n                \"password\": \"...my_password...\",\n                \"port\": 24350,\n                \"read_timeout\": 888592257,\n                \"send_timeout\": 228434190,\n                \"sentinel_master\": \"...my_sentinel_master...\",\n                \"sentinel_nodes\": [{\n                    \"host\": \"...my_host...\",\n                    \"port\": 18183,\n                }],\n                \"sentinel_password\": \"...my_sentinel_password...\",\n                \"sentinel_role\": \"any\",\n                \"sentinel_username\": \"...my_sentinel_username...\",\n                \"server_name\": \"...my_server_name...\",\n                \"ssl\": False,\n                \"ssl_verify\": True,\n                \"username\": \"...my_username...\",\n            },\n            \"strategy\": \"redis\",\n            \"threshold\": 3.9,\n        },\n    },\n    consumer={\n        \"id\": \"...my_id...\",\n    },\n    consumer_group={\n        \"id\": \"...my_id...\",\n    },\n    control_plane_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    created_at=7,\n    enabled=True,\n    gateway_plugin_ai_semantic_prompt_guard_id=\"...my_id...\",\n    instance_name=\"...my_instance_name...\",\n    ordering={\n        \"after\": {\n            \"accesses\": [\"...\"],\n        },\n        \"before\": {\n            \"accesses\": [\"...\"],\n        },\n    },\n    partials=[{\n        \"id\": \"...my_id...\",\n        \"name\": \"...my_name...\",\n        \"path\": \"...my_path...\",\n    }],\n    protocols=[\"http\"],\n    route={\n        \"id\": \"...my_id...\",\n    },\n    service={\n        \"id\": \"...my_id...\",\n    },\n    tags=[\"...\"],\n    updated_at=2)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myGatewaypluginaisemanticpromptguard = new Konnect.GatewayPluginAiSemanticPromptGuard(\"my_gatewaypluginaisemanticpromptguard\", new()\n    {\n        Config = new Konnect.Inputs.GatewayPluginAiSemanticPromptGuardConfigArgs\n        {\n            Embeddings = new Konnect.Inputs.GatewayPluginAiSemanticPromptGuardConfigEmbeddingsArgs\n            {\n                Auth = new Konnect.Inputs.GatewayPluginAiSemanticPromptGuardConfigEmbeddingsAuthArgs\n                {\n                    AllowOverride = false,\n                    AwsAccessKeyId = \"...my_aws_access_key_id...\",\n                    AwsSecretAccessKey = \"...my_aws_secret_access_key...\",\n                    AzureClientId = \"...my_azure_client_id...\",\n                    AzureClientSecret = \"...my_azure_client_secret...\",\n                    AzureTenantId = \"...my_azure_tenant_id...\",\n                    AzureUseManagedIdentity = true,\n                    GcpServiceAccountJson = \"...my_gcp_service_account_json...\",\n                    GcpUseServiceAccount = true,\n                    HeaderName = \"...my_header_name...\",\n                    HeaderValue = \"...my_header_value...\",\n                    ParamLocation = \"query\",\n                    ParamName = \"...my_param_name...\",\n                    ParamValue = \"...my_param_value...\",\n                },\n                Model = new Konnect.Inputs.GatewayPluginAiSemanticPromptGuardConfigEmbeddingsModelArgs\n                {\n                    Name = \"...my_name...\",\n                    Options = new Konnect.Inputs.GatewayPluginAiSemanticPromptGuardConfigEmbeddingsModelOptionsArgs\n                    {\n                        Azure = new Konnect.Inputs.GatewayPluginAiSemanticPromptGuardConfigEmbeddingsModelOptionsAzureArgs\n                        {\n                            ApiVersion = \"...my_api_version...\",\n                            DeploymentId = \"...my_deployment_id...\",\n                            Instance = \"...my_instance...\",\n                        },\n                        Bedrock = new Konnect.Inputs.GatewayPluginAiSemanticPromptGuardConfigEmbeddingsModelOptionsBedrockArgs\n                        {\n                            AwsAssumeRoleArn = \"...my_aws_assume_role_arn...\",\n                            AwsRegion = \"...my_aws_region...\",\n                            AwsRoleSessionName = \"...my_aws_role_session_name...\",\n                            AwsStsEndpointUrl = \"...my_aws_sts_endpoint_url...\",\n                            EmbeddingsNormalize = true,\n                            PerformanceConfigLatency = \"...my_performance_config_latency...\",\n                            VideoOutputS3Uri = \"...my_video_output_s3_uri...\",\n                        },\n                        Gemini = new Konnect.Inputs.GatewayPluginAiSemanticPromptGuardConfigEmbeddingsModelOptionsGeminiArgs\n                        {\n                            ApiEndpoint = \"...my_api_endpoint...\",\n                            LocationId = \"...my_location_id...\",\n                            ProjectId = \"...my_project_id...\",\n                        },\n                        Huggingface = new Konnect.Inputs.GatewayPluginAiSemanticPromptGuardConfigEmbeddingsModelOptionsHuggingfaceArgs\n                        {\n                            UseCache = false,\n                            WaitForModel = true,\n                        },\n                        UpstreamUrl = \"...my_upstream_url...\",\n                    },\n                    Provider = \"mistral\",\n                },\n            },\n            GenaiCategory = \"audio/speech\",\n            LlmFormat = \"cohere\",\n            MaxRequestBodySize = 6,\n            Rules = new Konnect.Inputs.GatewayPluginAiSemanticPromptGuardConfigRulesArgs\n            {\n                AllowPrompts = new[]\n                {\n                    \"...\",\n                },\n                DenyPrompts = new[]\n                {\n                    \"...\",\n                },\n                MatchAllConversationHistory = false,\n                MatchAllRoles = false,\n                MaxRequestBodySize = 10,\n            },\n            Search = new Konnect.Inputs.GatewayPluginAiSemanticPromptGuardConfigSearchArgs\n            {\n                Threshold = 9.87,\n            },\n            Vectordb = new Konnect.Inputs.GatewayPluginAiSemanticPromptGuardConfigVectordbArgs\n            {\n                Dimensions = 4,\n                DistanceMetric = \"euclidean\",\n                Pgvector = new Konnect.Inputs.GatewayPluginAiSemanticPromptGuardConfigVectordbPgvectorArgs\n                {\n                    Database = \"...my_database...\",\n                    Host = \"...my_host...\",\n                    Password = \"...my_password...\",\n                    Port = 4,\n                    Ssl = false,\n                    SslCert = \"...my_ssl_cert...\",\n                    SslCertKey = \"...my_ssl_cert_key...\",\n                    SslRequired = false,\n                    SslVerify = false,\n                    SslVersion = \"tlsv1_3\",\n                    Timeout = 7.16,\n                    User = \"...my_user...\",\n                },\n                Redis = new Konnect.Inputs.GatewayPluginAiSemanticPromptGuardConfigVectordbRedisArgs\n                {\n                    CloudAuthentication = new Konnect.Inputs.GatewayPluginAiSemanticPromptGuardConfigVectordbRedisCloudAuthenticationArgs\n                    {\n                        AuthProvider = \"azure\",\n                        AwsAccessKeyId = \"...my_aws_access_key_id...\",\n                        AwsAssumeRoleArn = \"...my_aws_assume_role_arn...\",\n                        AwsCacheName = \"...my_aws_cache_name...\",\n                        AwsIsServerless = true,\n                        AwsRegion = \"...my_aws_region...\",\n                        AwsRoleSessionName = \"...my_aws_role_session_name...\",\n                        AwsSecretAccessKey = \"...my_aws_secret_access_key...\",\n                        AzureClientId = \"...my_azure_client_id...\",\n                        AzureClientSecret = \"...my_azure_client_secret...\",\n                        AzureTenantId = \"...my_azure_tenant_id...\",\n                        GcpServiceAccountJson = \"...my_gcp_service_account_json...\",\n                    },\n                    ClusterMaxRedirections = 10,\n                    ClusterNodes = new[]\n                    {\n                        new Konnect.Inputs.GatewayPluginAiSemanticPromptGuardConfigVectordbRedisClusterNodeArgs\n                        {\n                            Ip = \"...my_ip...\",\n                            Port = 4694,\n                        },\n                    },\n                    ConnectTimeout = 927722545,\n                    ConnectionIsProxied = false,\n                    Database = 7,\n                    Host = \"...my_host...\",\n                    KeepaliveBacklog = 1501125607,\n                    KeepalivePoolSize = 114222283,\n                    Password = \"...my_password...\",\n                    Port = 24350,\n                    ReadTimeout = 888592257,\n                    SendTimeout = 228434190,\n                    SentinelMaster = \"...my_sentinel_master...\",\n                    SentinelNodes = new[]\n                    {\n                        new Konnect.Inputs.GatewayPluginAiSemanticPromptGuardConfigVectordbRedisSentinelNodeArgs\n                        {\n                            Host = \"...my_host...\",\n                            Port = 18183,\n                        },\n                    },\n                    SentinelPassword = \"...my_sentinel_password...\",\n                    SentinelRole = \"any\",\n                    SentinelUsername = \"...my_sentinel_username...\",\n                    ServerName = \"...my_server_name...\",\n                    Ssl = false,\n                    SslVerify = true,\n                    Username = \"...my_username...\",\n                },\n                Strategy = \"redis\",\n                Threshold = 3.9,\n            },\n        },\n        Consumer = new Konnect.Inputs.GatewayPluginAiSemanticPromptGuardConsumerArgs\n        {\n            Id = \"...my_id...\",\n        },\n        ConsumerGroup = new Konnect.Inputs.GatewayPluginAiSemanticPromptGuardConsumerGroupArgs\n        {\n            Id = \"...my_id...\",\n        },\n        ControlPlaneId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        CreatedAt = 7,\n        Enabled = true,\n        GatewayPluginAiSemanticPromptGuardId = \"...my_id...\",\n        InstanceName = \"...my_instance_name...\",\n        Ordering = new Konnect.Inputs.GatewayPluginAiSemanticPromptGuardOrderingArgs\n        {\n            After = new Konnect.Inputs.GatewayPluginAiSemanticPromptGuardOrderingAfterArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n            Before = new Konnect.Inputs.GatewayPluginAiSemanticPromptGuardOrderingBeforeArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n        },\n        Partials = new[]\n        {\n            new Konnect.Inputs.GatewayPluginAiSemanticPromptGuardPartialArgs\n            {\n                Id = \"...my_id...\",\n                Name = \"...my_name...\",\n                Path = \"...my_path...\",\n            },\n        },\n        Protocols = new[]\n        {\n            \"http\",\n        },\n        Route = new Konnect.Inputs.GatewayPluginAiSemanticPromptGuardRouteArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Service = new Konnect.Inputs.GatewayPluginAiSemanticPromptGuardServiceArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Tags = new[]\n        {\n            \"...\",\n        },\n        UpdatedAt = 2,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewGatewayPluginAiSemanticPromptGuard(ctx, \"my_gatewaypluginaisemanticpromptguard\", \u0026konnect.GatewayPluginAiSemanticPromptGuardArgs{\n\t\t\tConfig: \u0026konnect.GatewayPluginAiSemanticPromptGuardConfigArgs{\n\t\t\t\tEmbeddings: \u0026konnect.GatewayPluginAiSemanticPromptGuardConfigEmbeddingsArgs{\n\t\t\t\t\tAuth: \u0026konnect.GatewayPluginAiSemanticPromptGuardConfigEmbeddingsAuthArgs{\n\t\t\t\t\t\tAllowOverride:           pulumi.Bool(false),\n\t\t\t\t\t\tAwsAccessKeyId:          pulumi.String(\"...my_aws_access_key_id...\"),\n\t\t\t\t\t\tAwsSecretAccessKey:      pulumi.String(\"...my_aws_secret_access_key...\"),\n\t\t\t\t\t\tAzureClientId:           pulumi.String(\"...my_azure_client_id...\"),\n\t\t\t\t\t\tAzureClientSecret:       pulumi.String(\"...my_azure_client_secret...\"),\n\t\t\t\t\t\tAzureTenantId:           pulumi.String(\"...my_azure_tenant_id...\"),\n\t\t\t\t\t\tAzureUseManagedIdentity: pulumi.Bool(true),\n\t\t\t\t\t\tGcpServiceAccountJson:   pulumi.String(\"...my_gcp_service_account_json...\"),\n\t\t\t\t\t\tGcpUseServiceAccount:    pulumi.Bool(true),\n\t\t\t\t\t\tHeaderName:              pulumi.String(\"...my_header_name...\"),\n\t\t\t\t\t\tHeaderValue:             pulumi.String(\"...my_header_value...\"),\n\t\t\t\t\t\tParamLocation:           pulumi.String(\"query\"),\n\t\t\t\t\t\tParamName:               pulumi.String(\"...my_param_name...\"),\n\t\t\t\t\t\tParamValue:              pulumi.String(\"...my_param_value...\"),\n\t\t\t\t\t},\n\t\t\t\t\tModel: \u0026konnect.GatewayPluginAiSemanticPromptGuardConfigEmbeddingsModelArgs{\n\t\t\t\t\t\tName: pulumi.String(\"...my_name...\"),\n\t\t\t\t\t\tOptions: \u0026konnect.GatewayPluginAiSemanticPromptGuardConfigEmbeddingsModelOptionsArgs{\n\t\t\t\t\t\t\tAzure: \u0026konnect.GatewayPluginAiSemanticPromptGuardConfigEmbeddingsModelOptionsAzureArgs{\n\t\t\t\t\t\t\t\tApiVersion:   pulumi.String(\"...my_api_version...\"),\n\t\t\t\t\t\t\t\tDeploymentId: pulumi.String(\"...my_deployment_id...\"),\n\t\t\t\t\t\t\t\tInstance:     pulumi.String(\"...my_instance...\"),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tBedrock: \u0026konnect.GatewayPluginAiSemanticPromptGuardConfigEmbeddingsModelOptionsBedrockArgs{\n\t\t\t\t\t\t\t\tAwsAssumeRoleArn:         pulumi.String(\"...my_aws_assume_role_arn...\"),\n\t\t\t\t\t\t\t\tAwsRegion:                pulumi.String(\"...my_aws_region...\"),\n\t\t\t\t\t\t\t\tAwsRoleSessionName:       pulumi.String(\"...my_aws_role_session_name...\"),\n\t\t\t\t\t\t\t\tAwsStsEndpointUrl:        pulumi.String(\"...my_aws_sts_endpoint_url...\"),\n\t\t\t\t\t\t\t\tEmbeddingsNormalize:      pulumi.Bool(true),\n\t\t\t\t\t\t\t\tPerformanceConfigLatency: pulumi.String(\"...my_performance_config_latency...\"),\n\t\t\t\t\t\t\t\tVideoOutputS3Uri:         pulumi.String(\"...my_video_output_s3_uri...\"),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tGemini: \u0026konnect.GatewayPluginAiSemanticPromptGuardConfigEmbeddingsModelOptionsGeminiArgs{\n\t\t\t\t\t\t\t\tApiEndpoint: pulumi.String(\"...my_api_endpoint...\"),\n\t\t\t\t\t\t\t\tLocationId:  pulumi.String(\"...my_location_id...\"),\n\t\t\t\t\t\t\t\tProjectId:   pulumi.String(\"...my_project_id...\"),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tHuggingface: \u0026konnect.GatewayPluginAiSemanticPromptGuardConfigEmbeddingsModelOptionsHuggingfaceArgs{\n\t\t\t\t\t\t\t\tUseCache:     pulumi.Bool(false),\n\t\t\t\t\t\t\t\tWaitForModel: pulumi.Bool(true),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tUpstreamUrl: pulumi.String(\"...my_upstream_url...\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\tProvider: pulumi.String(\"mistral\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tGenaiCategory:      pulumi.String(\"audio/speech\"),\n\t\t\t\tLlmFormat:          pulumi.String(\"cohere\"),\n\t\t\t\tMaxRequestBodySize: pulumi.Float64(6),\n\t\t\t\tRules: \u0026konnect.GatewayPluginAiSemanticPromptGuardConfigRulesArgs{\n\t\t\t\t\tAllowPrompts: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t\tDenyPrompts: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t\tMatchAllConversationHistory: pulumi.Bool(false),\n\t\t\t\t\tMatchAllRoles:               pulumi.Bool(false),\n\t\t\t\t\tMaxRequestBodySize:          pulumi.Float64(10),\n\t\t\t\t},\n\t\t\t\tSearch: \u0026konnect.GatewayPluginAiSemanticPromptGuardConfigSearchArgs{\n\t\t\t\t\tThreshold: pulumi.Float64(9.87),\n\t\t\t\t},\n\t\t\t\tVectordb: \u0026konnect.GatewayPluginAiSemanticPromptGuardConfigVectordbArgs{\n\t\t\t\t\tDimensions:     pulumi.Float64(4),\n\t\t\t\t\tDistanceMetric: pulumi.String(\"euclidean\"),\n\t\t\t\t\tPgvector: \u0026konnect.GatewayPluginAiSemanticPromptGuardConfigVectordbPgvectorArgs{\n\t\t\t\t\t\tDatabase:    pulumi.String(\"...my_database...\"),\n\t\t\t\t\t\tHost:        pulumi.String(\"...my_host...\"),\n\t\t\t\t\t\tPassword:    pulumi.String(\"...my_password...\"),\n\t\t\t\t\t\tPort:        pulumi.Float64(4),\n\t\t\t\t\t\tSsl:         pulumi.Bool(false),\n\t\t\t\t\t\tSslCert:     pulumi.String(\"...my_ssl_cert...\"),\n\t\t\t\t\t\tSslCertKey:  pulumi.String(\"...my_ssl_cert_key...\"),\n\t\t\t\t\t\tSslRequired: pulumi.Bool(false),\n\t\t\t\t\t\tSslVerify:   pulumi.Bool(false),\n\t\t\t\t\t\tSslVersion:  pulumi.String(\"tlsv1_3\"),\n\t\t\t\t\t\tTimeout:     pulumi.Float64(7.16),\n\t\t\t\t\t\tUser:        pulumi.String(\"...my_user...\"),\n\t\t\t\t\t},\n\t\t\t\t\tRedis: \u0026konnect.GatewayPluginAiSemanticPromptGuardConfigVectordbRedisArgs{\n\t\t\t\t\t\tCloudAuthentication: \u0026konnect.GatewayPluginAiSemanticPromptGuardConfigVectordbRedisCloudAuthenticationArgs{\n\t\t\t\t\t\t\tAuthProvider:          pulumi.String(\"azure\"),\n\t\t\t\t\t\t\tAwsAccessKeyId:        pulumi.String(\"...my_aws_access_key_id...\"),\n\t\t\t\t\t\t\tAwsAssumeRoleArn:      pulumi.String(\"...my_aws_assume_role_arn...\"),\n\t\t\t\t\t\t\tAwsCacheName:          pulumi.String(\"...my_aws_cache_name...\"),\n\t\t\t\t\t\t\tAwsIsServerless:       pulumi.Bool(true),\n\t\t\t\t\t\t\tAwsRegion:             pulumi.String(\"...my_aws_region...\"),\n\t\t\t\t\t\t\tAwsRoleSessionName:    pulumi.String(\"...my_aws_role_session_name...\"),\n\t\t\t\t\t\t\tAwsSecretAccessKey:    pulumi.String(\"...my_aws_secret_access_key...\"),\n\t\t\t\t\t\t\tAzureClientId:         pulumi.String(\"...my_azure_client_id...\"),\n\t\t\t\t\t\t\tAzureClientSecret:     pulumi.String(\"...my_azure_client_secret...\"),\n\t\t\t\t\t\t\tAzureTenantId:         pulumi.String(\"...my_azure_tenant_id...\"),\n\t\t\t\t\t\t\tGcpServiceAccountJson: pulumi.String(\"...my_gcp_service_account_json...\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\tClusterMaxRedirections: pulumi.Float64(10),\n\t\t\t\t\t\tClusterNodes: konnect.GatewayPluginAiSemanticPromptGuardConfigVectordbRedisClusterNodeArray{\n\t\t\t\t\t\t\t\u0026konnect.GatewayPluginAiSemanticPromptGuardConfigVectordbRedisClusterNodeArgs{\n\t\t\t\t\t\t\t\tIp:   pulumi.String(\"...my_ip...\"),\n\t\t\t\t\t\t\t\tPort: pulumi.Float64(4694),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t\tConnectTimeout:      pulumi.Float64(927722545),\n\t\t\t\t\t\tConnectionIsProxied: pulumi.Bool(false),\n\t\t\t\t\t\tDatabase:            pulumi.Float64(7),\n\t\t\t\t\t\tHost:                pulumi.String(\"...my_host...\"),\n\t\t\t\t\t\tKeepaliveBacklog:    pulumi.Float64(1501125607),\n\t\t\t\t\t\tKeepalivePoolSize:   pulumi.Float64(114222283),\n\t\t\t\t\t\tPassword:            pulumi.String(\"...my_password...\"),\n\t\t\t\t\t\tPort:                pulumi.Float64(24350),\n\t\t\t\t\t\tReadTimeout:         pulumi.Float64(888592257),\n\t\t\t\t\t\tSendTimeout:         pulumi.Float64(228434190),\n\t\t\t\t\t\tSentinelMaster:      pulumi.String(\"...my_sentinel_master...\"),\n\t\t\t\t\t\tSentinelNodes: konnect.GatewayPluginAiSemanticPromptGuardConfigVectordbRedisSentinelNodeArray{\n\t\t\t\t\t\t\t\u0026konnect.GatewayPluginAiSemanticPromptGuardConfigVectordbRedisSentinelNodeArgs{\n\t\t\t\t\t\t\t\tHost: pulumi.String(\"...my_host...\"),\n\t\t\t\t\t\t\t\tPort: pulumi.Float64(18183),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t\tSentinelPassword: pulumi.String(\"...my_sentinel_password...\"),\n\t\t\t\t\t\tSentinelRole:     pulumi.String(\"any\"),\n\t\t\t\t\t\tSentinelUsername: pulumi.String(\"...my_sentinel_username...\"),\n\t\t\t\t\t\tServerName:       pulumi.String(\"...my_server_name...\"),\n\t\t\t\t\t\tSsl:              pulumi.Bool(false),\n\t\t\t\t\t\tSslVerify:        pulumi.Bool(true),\n\t\t\t\t\t\tUsername:         pulumi.String(\"...my_username...\"),\n\t\t\t\t\t},\n\t\t\t\t\tStrategy:  pulumi.String(\"redis\"),\n\t\t\t\t\tThreshold: pulumi.Float64(3.9),\n\t\t\t\t},\n\t\t\t},\n\t\t\tConsumer: \u0026konnect.GatewayPluginAiSemanticPromptGuardConsumerArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tConsumerGroup: \u0026konnect.GatewayPluginAiSemanticPromptGuardConsumerGroupArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tControlPlaneId:                       pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tCreatedAt:                            pulumi.Float64(7),\n\t\t\tEnabled:                              pulumi.Bool(true),\n\t\t\tGatewayPluginAiSemanticPromptGuardId: pulumi.String(\"...my_id...\"),\n\t\t\tInstanceName:                         pulumi.String(\"...my_instance_name...\"),\n\t\t\tOrdering: \u0026konnect.GatewayPluginAiSemanticPromptGuardOrderingArgs{\n\t\t\t\tAfter: \u0026konnect.GatewayPluginAiSemanticPromptGuardOrderingAfterArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tBefore: \u0026konnect.GatewayPluginAiSemanticPromptGuardOrderingBeforeArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tPartials: konnect.GatewayPluginAiSemanticPromptGuardPartialArray{\n\t\t\t\t\u0026konnect.GatewayPluginAiSemanticPromptGuardPartialArgs{\n\t\t\t\t\tId:   pulumi.String(\"...my_id...\"),\n\t\t\t\t\tName: pulumi.String(\"...my_name...\"),\n\t\t\t\t\tPath: pulumi.String(\"...my_path...\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tProtocols: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"http\"),\n\t\t\t},\n\t\t\tRoute: \u0026konnect.GatewayPluginAiSemanticPromptGuardRouteArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tService: \u0026konnect.GatewayPluginAiSemanticPromptGuardServiceArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"...\"),\n\t\t\t},\n\t\t\tUpdatedAt: pulumi.Float64(2),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.GatewayPluginAiSemanticPromptGuard;\nimport com.pulumi.konnect.GatewayPluginAiSemanticPromptGuardArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiSemanticPromptGuardConfigArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiSemanticPromptGuardConfigEmbeddingsArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiSemanticPromptGuardConfigEmbeddingsAuthArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiSemanticPromptGuardConfigEmbeddingsModelArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiSemanticPromptGuardConfigEmbeddingsModelOptionsArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiSemanticPromptGuardConfigEmbeddingsModelOptionsAzureArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiSemanticPromptGuardConfigEmbeddingsModelOptionsBedrockArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiSemanticPromptGuardConfigEmbeddingsModelOptionsGeminiArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiSemanticPromptGuardConfigEmbeddingsModelOptionsHuggingfaceArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiSemanticPromptGuardConfigRulesArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiSemanticPromptGuardConfigSearchArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiSemanticPromptGuardConfigVectordbArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiSemanticPromptGuardConfigVectordbPgvectorArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiSemanticPromptGuardConfigVectordbRedisArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiSemanticPromptGuardConfigVectordbRedisCloudAuthenticationArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiSemanticPromptGuardConsumerArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiSemanticPromptGuardConsumerGroupArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiSemanticPromptGuardOrderingArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiSemanticPromptGuardOrderingAfterArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiSemanticPromptGuardOrderingBeforeArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiSemanticPromptGuardPartialArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiSemanticPromptGuardRouteArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiSemanticPromptGuardServiceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myGatewaypluginaisemanticpromptguard = new GatewayPluginAiSemanticPromptGuard(\"myGatewaypluginaisemanticpromptguard\", GatewayPluginAiSemanticPromptGuardArgs.builder()\n            .config(GatewayPluginAiSemanticPromptGuardConfigArgs.builder()\n                .embeddings(GatewayPluginAiSemanticPromptGuardConfigEmbeddingsArgs.builder()\n                    .auth(GatewayPluginAiSemanticPromptGuardConfigEmbeddingsAuthArgs.builder()\n                        .allowOverride(false)\n                        .awsAccessKeyId(\"...my_aws_access_key_id...\")\n                        .awsSecretAccessKey(\"...my_aws_secret_access_key...\")\n                        .azureClientId(\"...my_azure_client_id...\")\n                        .azureClientSecret(\"...my_azure_client_secret...\")\n                        .azureTenantId(\"...my_azure_tenant_id...\")\n                        .azureUseManagedIdentity(true)\n                        .gcpServiceAccountJson(\"...my_gcp_service_account_json...\")\n                        .gcpUseServiceAccount(true)\n                        .headerName(\"...my_header_name...\")\n                        .headerValue(\"...my_header_value...\")\n                        .paramLocation(\"query\")\n                        .paramName(\"...my_param_name...\")\n                        .paramValue(\"...my_param_value...\")\n                        .build())\n                    .model(GatewayPluginAiSemanticPromptGuardConfigEmbeddingsModelArgs.builder()\n                        .name(\"...my_name...\")\n                        .options(GatewayPluginAiSemanticPromptGuardConfigEmbeddingsModelOptionsArgs.builder()\n                            .azure(GatewayPluginAiSemanticPromptGuardConfigEmbeddingsModelOptionsAzureArgs.builder()\n                                .apiVersion(\"...my_api_version...\")\n                                .deploymentId(\"...my_deployment_id...\")\n                                .instance(\"...my_instance...\")\n                                .build())\n                            .bedrock(GatewayPluginAiSemanticPromptGuardConfigEmbeddingsModelOptionsBedrockArgs.builder()\n                                .awsAssumeRoleArn(\"...my_aws_assume_role_arn...\")\n                                .awsRegion(\"...my_aws_region...\")\n                                .awsRoleSessionName(\"...my_aws_role_session_name...\")\n                                .awsStsEndpointUrl(\"...my_aws_sts_endpoint_url...\")\n                                .embeddingsNormalize(true)\n                                .performanceConfigLatency(\"...my_performance_config_latency...\")\n                                .videoOutputS3Uri(\"...my_video_output_s3_uri...\")\n                                .build())\n                            .gemini(GatewayPluginAiSemanticPromptGuardConfigEmbeddingsModelOptionsGeminiArgs.builder()\n                                .apiEndpoint(\"...my_api_endpoint...\")\n                                .locationId(\"...my_location_id...\")\n                                .projectId(\"...my_project_id...\")\n                                .build())\n                            .huggingface(GatewayPluginAiSemanticPromptGuardConfigEmbeddingsModelOptionsHuggingfaceArgs.builder()\n                                .useCache(false)\n                                .waitForModel(true)\n                                .build())\n                            .upstreamUrl(\"...my_upstream_url...\")\n                            .build())\n                        .provider(\"mistral\")\n                        .build())\n                    .build())\n                .genaiCategory(\"audio/speech\")\n                .llmFormat(\"cohere\")\n                .maxRequestBodySize(6.0)\n                .rules(GatewayPluginAiSemanticPromptGuardConfigRulesArgs.builder()\n                    .allowPrompts(\"...\")\n                    .denyPrompts(\"...\")\n                    .matchAllConversationHistory(false)\n                    .matchAllRoles(false)\n                    .maxRequestBodySize(10.0)\n                    .build())\n                .search(GatewayPluginAiSemanticPromptGuardConfigSearchArgs.builder()\n                    .threshold(9.87)\n                    .build())\n                .vectordb(GatewayPluginAiSemanticPromptGuardConfigVectordbArgs.builder()\n                    .dimensions(4.0)\n                    .distanceMetric(\"euclidean\")\n                    .pgvector(GatewayPluginAiSemanticPromptGuardConfigVectordbPgvectorArgs.builder()\n                        .database(\"...my_database...\")\n                        .host(\"...my_host...\")\n                        .password(\"...my_password...\")\n                        .port(4.0)\n                        .ssl(false)\n                        .sslCert(\"...my_ssl_cert...\")\n                        .sslCertKey(\"...my_ssl_cert_key...\")\n                        .sslRequired(false)\n                        .sslVerify(false)\n                        .sslVersion(\"tlsv1_3\")\n                        .timeout(7.16)\n                        .user(\"...my_user...\")\n                        .build())\n                    .redis(GatewayPluginAiSemanticPromptGuardConfigVectordbRedisArgs.builder()\n                        .cloudAuthentication(GatewayPluginAiSemanticPromptGuardConfigVectordbRedisCloudAuthenticationArgs.builder()\n                            .authProvider(\"azure\")\n                            .awsAccessKeyId(\"...my_aws_access_key_id...\")\n                            .awsAssumeRoleArn(\"...my_aws_assume_role_arn...\")\n                            .awsCacheName(\"...my_aws_cache_name...\")\n                            .awsIsServerless(true)\n                            .awsRegion(\"...my_aws_region...\")\n                            .awsRoleSessionName(\"...my_aws_role_session_name...\")\n                            .awsSecretAccessKey(\"...my_aws_secret_access_key...\")\n                            .azureClientId(\"...my_azure_client_id...\")\n                            .azureClientSecret(\"...my_azure_client_secret...\")\n                            .azureTenantId(\"...my_azure_tenant_id...\")\n                            .gcpServiceAccountJson(\"...my_gcp_service_account_json...\")\n                            .build())\n                        .clusterMaxRedirections(10.0)\n                        .clusterNodes(GatewayPluginAiSemanticPromptGuardConfigVectordbRedisClusterNodeArgs.builder()\n                            .ip(\"...my_ip...\")\n                            .port(4694.0)\n                            .build())\n                        .connectTimeout(927722545.0)\n                        .connectionIsProxied(false)\n                        .database(7.0)\n                        .host(\"...my_host...\")\n                        .keepaliveBacklog(1501125607.0)\n                        .keepalivePoolSize(114222283.0)\n                        .password(\"...my_password...\")\n                        .port(24350.0)\n                        .readTimeout(888592257.0)\n                        .sendTimeout(228434190.0)\n                        .sentinelMaster(\"...my_sentinel_master...\")\n                        .sentinelNodes(GatewayPluginAiSemanticPromptGuardConfigVectordbRedisSentinelNodeArgs.builder()\n                            .host(\"...my_host...\")\n                            .port(18183.0)\n                            .build())\n                        .sentinelPassword(\"...my_sentinel_password...\")\n                        .sentinelRole(\"any\")\n                        .sentinelUsername(\"...my_sentinel_username...\")\n                        .serverName(\"...my_server_name...\")\n                        .ssl(false)\n                        .sslVerify(true)\n                        .username(\"...my_username...\")\n                        .build())\n                    .strategy(\"redis\")\n                    .threshold(3.9)\n                    .build())\n                .build())\n            .consumer(GatewayPluginAiSemanticPromptGuardConsumerArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .consumerGroup(GatewayPluginAiSemanticPromptGuardConsumerGroupArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .controlPlaneId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .createdAt(7.0)\n            .enabled(true)\n            .gatewayPluginAiSemanticPromptGuardId(\"...my_id...\")\n            .instanceName(\"...my_instance_name...\")\n            .ordering(GatewayPluginAiSemanticPromptGuardOrderingArgs.builder()\n                .after(GatewayPluginAiSemanticPromptGuardOrderingAfterArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .before(GatewayPluginAiSemanticPromptGuardOrderingBeforeArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .build())\n            .partials(GatewayPluginAiSemanticPromptGuardPartialArgs.builder()\n                .id(\"...my_id...\")\n                .name(\"...my_name...\")\n                .path(\"...my_path...\")\n                .build())\n            .protocols(\"http\")\n            .route(GatewayPluginAiSemanticPromptGuardRouteArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .service(GatewayPluginAiSemanticPromptGuardServiceArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .tags(\"...\")\n            .updatedAt(2.0)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myGatewaypluginaisemanticpromptguard:\n    type: konnect:GatewayPluginAiSemanticPromptGuard\n    name: my_gatewaypluginaisemanticpromptguard\n    properties:\n      config:\n        embeddings:\n          auth:\n            allowOverride: false\n            awsAccessKeyId: '...my_aws_access_key_id...'\n            awsSecretAccessKey: '...my_aws_secret_access_key...'\n            azureClientId: '...my_azure_client_id...'\n            azureClientSecret: '...my_azure_client_secret...'\n            azureTenantId: '...my_azure_tenant_id...'\n            azureUseManagedIdentity: true\n            gcpServiceAccountJson: '...my_gcp_service_account_json...'\n            gcpUseServiceAccount: true\n            headerName: '...my_header_name...'\n            headerValue: '...my_header_value...'\n            paramLocation: query\n            paramName: '...my_param_name...'\n            paramValue: '...my_param_value...'\n          model:\n            name: '...my_name...'\n            options:\n              azure:\n                apiVersion: '...my_api_version...'\n                deploymentId: '...my_deployment_id...'\n                instance: '...my_instance...'\n              bedrock:\n                awsAssumeRoleArn: '...my_aws_assume_role_arn...'\n                awsRegion: '...my_aws_region...'\n                awsRoleSessionName: '...my_aws_role_session_name...'\n                awsStsEndpointUrl: '...my_aws_sts_endpoint_url...'\n                embeddingsNormalize: true\n                performanceConfigLatency: '...my_performance_config_latency...'\n                videoOutputS3Uri: '...my_video_output_s3_uri...'\n              gemini:\n                apiEndpoint: '...my_api_endpoint...'\n                locationId: '...my_location_id...'\n                projectId: '...my_project_id...'\n              huggingface:\n                useCache: false\n                waitForModel: true\n              upstreamUrl: '...my_upstream_url...'\n            provider: mistral\n        genaiCategory: audio/speech\n        llmFormat: cohere\n        maxRequestBodySize: 6\n        rules:\n          allowPrompts:\n            - '...'\n          denyPrompts:\n            - '...'\n          matchAllConversationHistory: false\n          matchAllRoles: false\n          maxRequestBodySize: 10\n        search:\n          threshold: 9.87\n        vectordb:\n          dimensions: 4\n          distanceMetric: euclidean\n          pgvector:\n            database: '...my_database...'\n            host: '...my_host...'\n            password: '...my_password...'\n            port: 4\n            ssl: false\n            sslCert: '...my_ssl_cert...'\n            sslCertKey: '...my_ssl_cert_key...'\n            sslRequired: false\n            sslVerify: false\n            sslVersion: tlsv1_3\n            timeout: 7.16\n            user: '...my_user...'\n          redis:\n            cloudAuthentication:\n              authProvider: azure\n              awsAccessKeyId: '...my_aws_access_key_id...'\n              awsAssumeRoleArn: '...my_aws_assume_role_arn...'\n              awsCacheName: '...my_aws_cache_name...'\n              awsIsServerless: true\n              awsRegion: '...my_aws_region...'\n              awsRoleSessionName: '...my_aws_role_session_name...'\n              awsSecretAccessKey: '...my_aws_secret_access_key...'\n              azureClientId: '...my_azure_client_id...'\n              azureClientSecret: '...my_azure_client_secret...'\n              azureTenantId: '...my_azure_tenant_id...'\n              gcpServiceAccountJson: '...my_gcp_service_account_json...'\n            clusterMaxRedirections: 10\n            clusterNodes:\n              - ip: '...my_ip...'\n                port: 4694\n            connectTimeout: 9.27722545e+08\n            connectionIsProxied: false\n            database: 7\n            host: '...my_host...'\n            keepaliveBacklog: 1.501125607e+09\n            keepalivePoolSize: 1.14222283e+08\n            password: '...my_password...'\n            port: 24350\n            readTimeout: 8.88592257e+08\n            sendTimeout: 2.2843419e+08\n            sentinelMaster: '...my_sentinel_master...'\n            sentinelNodes:\n              - host: '...my_host...'\n                port: 18183\n            sentinelPassword: '...my_sentinel_password...'\n            sentinelRole: any\n            sentinelUsername: '...my_sentinel_username...'\n            serverName: '...my_server_name...'\n            ssl: false\n            sslVerify: true\n            username: '...my_username...'\n          strategy: redis\n          threshold: 3.9\n      consumer:\n        id: '...my_id...'\n      consumerGroup:\n        id: '...my_id...'\n      controlPlaneId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      createdAt: 7\n      enabled: true\n      gatewayPluginAiSemanticPromptGuardId: '...my_id...'\n      instanceName: '...my_instance_name...'\n      ordering:\n        after:\n          accesses:\n            - '...'\n        before:\n          accesses:\n            - '...'\n      partials:\n        - id: '...my_id...'\n          name: '...my_name...'\n          path: '...my_path...'\n      protocols:\n        - http\n      route:\n        id: '...my_id...'\n      service:\n        id: '...my_id...'\n      tags:\n        - '...'\n      updatedAt: 2\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_gateway_plugin_ai_semantic_prompt_guard.my_konnect_gateway_plugin_ai_semantic_prompt_guard\n\n  id = jsonencode({\n\n    control_plane_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/gatewayPluginAiSemanticPromptGuard:GatewayPluginAiSemanticPromptGuard my_konnect_gateway_plugin_ai_semantic_prompt_guard '{\"control_plane_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"}'\n```\n\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginAiSemanticPromptGuardConfig:GatewayPluginAiSemanticPromptGuardConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginAiSemanticPromptGuardConsumer:GatewayPluginAiSemanticPromptGuardConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"consumerGroup":{"$ref":"#/types/konnect:index%2FGatewayPluginAiSemanticPromptGuardConsumerGroup:GatewayPluginAiSemanticPromptGuardConsumerGroup","description":"If set, the plugin will activate only for requests where the specified consumer group has been authenticated. (Note that some plugins can not be restricted to consumers groups this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer Groups\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginAiSemanticPromptGuardId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginAiSemanticPromptGuardOrdering:GatewayPluginAiSemanticPromptGuardOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginAiSemanticPromptGuardPartial:GatewayPluginAiSemanticPromptGuardPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginAiSemanticPromptGuardRoute:GatewayPluginAiSemanticPromptGuardRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginAiSemanticPromptGuardService:GatewayPluginAiSemanticPromptGuardService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object","required":["config","consumer","consumerGroup","controlPlaneId","createdAt","enabled","gatewayPluginAiSemanticPromptGuardId","ordering","protocols","route","service","updatedAt"],"inputProperties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginAiSemanticPromptGuardConfig:GatewayPluginAiSemanticPromptGuardConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginAiSemanticPromptGuardConsumer:GatewayPluginAiSemanticPromptGuardConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"consumerGroup":{"$ref":"#/types/konnect:index%2FGatewayPluginAiSemanticPromptGuardConsumerGroup:GatewayPluginAiSemanticPromptGuardConsumerGroup","description":"If set, the plugin will activate only for requests where the specified consumer group has been authenticated. (Note that some plugins can not be restricted to consumers groups this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer Groups\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginAiSemanticPromptGuardId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginAiSemanticPromptGuardOrdering:GatewayPluginAiSemanticPromptGuardOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginAiSemanticPromptGuardPartial:GatewayPluginAiSemanticPromptGuardPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginAiSemanticPromptGuardRoute:GatewayPluginAiSemanticPromptGuardRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginAiSemanticPromptGuardService:GatewayPluginAiSemanticPromptGuardService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"requiredInputs":["config","controlPlaneId"],"stateInputs":{"description":"Input properties used for looking up and filtering GatewayPluginAiSemanticPromptGuard resources.\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginAiSemanticPromptGuardConfig:GatewayPluginAiSemanticPromptGuardConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginAiSemanticPromptGuardConsumer:GatewayPluginAiSemanticPromptGuardConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"consumerGroup":{"$ref":"#/types/konnect:index%2FGatewayPluginAiSemanticPromptGuardConsumerGroup:GatewayPluginAiSemanticPromptGuardConsumerGroup","description":"If set, the plugin will activate only for requests where the specified consumer group has been authenticated. (Note that some plugins can not be restricted to consumers groups this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer Groups\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginAiSemanticPromptGuardId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginAiSemanticPromptGuardOrdering:GatewayPluginAiSemanticPromptGuardOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginAiSemanticPromptGuardPartial:GatewayPluginAiSemanticPromptGuardPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginAiSemanticPromptGuardRoute:GatewayPluginAiSemanticPromptGuardRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginAiSemanticPromptGuardService:GatewayPluginAiSemanticPromptGuardService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object"}},"konnect:index/gatewayPluginAiSemanticResponseGuard:GatewayPluginAiSemanticResponseGuard":{"description":"GatewayPluginAiSemanticResponseGuard Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myGatewaypluginaisemanticresponseguard = new konnect.GatewayPluginAiSemanticResponseGuard(\"my_gatewaypluginaisemanticresponseguard\", {\n    config: {\n        embeddings: {\n            auth: {\n                allowOverride: false,\n                awsAccessKeyId: \"...my_aws_access_key_id...\",\n                awsSecretAccessKey: \"...my_aws_secret_access_key...\",\n                azureClientId: \"...my_azure_client_id...\",\n                azureClientSecret: \"...my_azure_client_secret...\",\n                azureTenantId: \"...my_azure_tenant_id...\",\n                azureUseManagedIdentity: true,\n                gcpServiceAccountJson: \"...my_gcp_service_account_json...\",\n                gcpUseServiceAccount: false,\n                headerName: \"...my_header_name...\",\n                headerValue: \"...my_header_value...\",\n                paramLocation: \"body\",\n                paramName: \"...my_param_name...\",\n                paramValue: \"...my_param_value...\",\n            },\n            model: {\n                name: \"...my_name...\",\n                options: {\n                    azure: {\n                        apiVersion: \"...my_api_version...\",\n                        deploymentId: \"...my_deployment_id...\",\n                        instance: \"...my_instance...\",\n                    },\n                    bedrock: {\n                        awsAssumeRoleArn: \"...my_aws_assume_role_arn...\",\n                        awsRegion: \"...my_aws_region...\",\n                        awsRoleSessionName: \"...my_aws_role_session_name...\",\n                        awsStsEndpointUrl: \"...my_aws_sts_endpoint_url...\",\n                        embeddingsNormalize: true,\n                        performanceConfigLatency: \"...my_performance_config_latency...\",\n                        videoOutputS3Uri: \"...my_video_output_s3_uri...\",\n                    },\n                    gemini: {\n                        apiEndpoint: \"...my_api_endpoint...\",\n                        locationId: \"...my_location_id...\",\n                        projectId: \"...my_project_id...\",\n                    },\n                    huggingface: {\n                        useCache: false,\n                        waitForModel: true,\n                    },\n                    upstreamUrl: \"...my_upstream_url...\",\n                },\n                provider: \"azure\",\n            },\n        },\n        genaiCategory: \"video/generation\",\n        llmFormat: \"anthropic\",\n        rules: {\n            allowResponses: [\"...\"],\n            denyResponses: [\"...\"],\n            maxResponseBodySize: 4,\n        },\n        search: {\n            threshold: 1.9,\n        },\n        vectordb: {\n            dimensions: 7,\n            distanceMetric: \"euclidean\",\n            pgvector: {\n                database: \"...my_database...\",\n                host: \"...my_host...\",\n                password: \"...my_password...\",\n                port: 1,\n                ssl: false,\n                sslCert: \"...my_ssl_cert...\",\n                sslCertKey: \"...my_ssl_cert_key...\",\n                sslRequired: true,\n                sslVerify: false,\n                sslVersion: \"any\",\n                timeout: 7.2,\n                user: \"...my_user...\",\n            },\n            redis: {\n                cloudAuthentication: {\n                    authProvider: \"gcp\",\n                    awsAccessKeyId: \"...my_aws_access_key_id...\",\n                    awsAssumeRoleArn: \"...my_aws_assume_role_arn...\",\n                    awsCacheName: \"...my_aws_cache_name...\",\n                    awsIsServerless: true,\n                    awsRegion: \"...my_aws_region...\",\n                    awsRoleSessionName: \"...my_aws_role_session_name...\",\n                    awsSecretAccessKey: \"...my_aws_secret_access_key...\",\n                    azureClientId: \"...my_azure_client_id...\",\n                    azureClientSecret: \"...my_azure_client_secret...\",\n                    azureTenantId: \"...my_azure_tenant_id...\",\n                    gcpServiceAccountJson: \"...my_gcp_service_account_json...\",\n                },\n                clusterMaxRedirections: 4,\n                clusterNodes: [{\n                    ip: \"...my_ip...\",\n                    port: 24018,\n                }],\n                connectTimeout: 1871752216,\n                connectionIsProxied: true,\n                database: 8,\n                host: \"...my_host...\",\n                keepaliveBacklog: 1017001581,\n                keepalivePoolSize: 843009957,\n                password: \"...my_password...\",\n                port: 9330,\n                readTimeout: 737805427,\n                sendTimeout: 1581780287,\n                sentinelMaster: \"...my_sentinel_master...\",\n                sentinelNodes: [{\n                    host: \"...my_host...\",\n                    port: 48060,\n                }],\n                sentinelPassword: \"...my_sentinel_password...\",\n                sentinelRole: \"any\",\n                sentinelUsername: \"...my_sentinel_username...\",\n                serverName: \"...my_server_name...\",\n                ssl: false,\n                sslVerify: true,\n                username: \"...my_username...\",\n            },\n            strategy: \"redis\",\n            threshold: 6.32,\n        },\n    },\n    consumer: {\n        id: \"...my_id...\",\n    },\n    consumerGroup: {\n        id: \"...my_id...\",\n    },\n    controlPlaneId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    createdAt: 7,\n    enabled: true,\n    gatewayPluginAiSemanticResponseGuardId: \"...my_id...\",\n    instanceName: \"...my_instance_name...\",\n    ordering: {\n        after: {\n            accesses: [\"...\"],\n        },\n        before: {\n            accesses: [\"...\"],\n        },\n    },\n    partials: [{\n        id: \"...my_id...\",\n        name: \"...my_name...\",\n        path: \"...my_path...\",\n    }],\n    protocols: [\"grpcs\"],\n    route: {\n        id: \"...my_id...\",\n    },\n    service: {\n        id: \"...my_id...\",\n    },\n    tags: [\"...\"],\n    updatedAt: 3,\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_gatewaypluginaisemanticresponseguard = konnect.GatewayPluginAiSemanticResponseGuard(\"my_gatewaypluginaisemanticresponseguard\",\n    config={\n        \"embeddings\": {\n            \"auth\": {\n                \"allow_override\": False,\n                \"aws_access_key_id\": \"...my_aws_access_key_id...\",\n                \"aws_secret_access_key\": \"...my_aws_secret_access_key...\",\n                \"azure_client_id\": \"...my_azure_client_id...\",\n                \"azure_client_secret\": \"...my_azure_client_secret...\",\n                \"azure_tenant_id\": \"...my_azure_tenant_id...\",\n                \"azure_use_managed_identity\": True,\n                \"gcp_service_account_json\": \"...my_gcp_service_account_json...\",\n                \"gcp_use_service_account\": False,\n                \"header_name\": \"...my_header_name...\",\n                \"header_value\": \"...my_header_value...\",\n                \"param_location\": \"body\",\n                \"param_name\": \"...my_param_name...\",\n                \"param_value\": \"...my_param_value...\",\n            },\n            \"model\": {\n                \"name\": \"...my_name...\",\n                \"options\": {\n                    \"azure\": {\n                        \"api_version\": \"...my_api_version...\",\n                        \"deployment_id\": \"...my_deployment_id...\",\n                        \"instance\": \"...my_instance...\",\n                    },\n                    \"bedrock\": {\n                        \"aws_assume_role_arn\": \"...my_aws_assume_role_arn...\",\n                        \"aws_region\": \"...my_aws_region...\",\n                        \"aws_role_session_name\": \"...my_aws_role_session_name...\",\n                        \"aws_sts_endpoint_url\": \"...my_aws_sts_endpoint_url...\",\n                        \"embeddings_normalize\": True,\n                        \"performance_config_latency\": \"...my_performance_config_latency...\",\n                        \"video_output_s3_uri\": \"...my_video_output_s3_uri...\",\n                    },\n                    \"gemini\": {\n                        \"api_endpoint\": \"...my_api_endpoint...\",\n                        \"location_id\": \"...my_location_id...\",\n                        \"project_id\": \"...my_project_id...\",\n                    },\n                    \"huggingface\": {\n                        \"use_cache\": False,\n                        \"wait_for_model\": True,\n                    },\n                    \"upstream_url\": \"...my_upstream_url...\",\n                },\n                \"provider\": \"azure\",\n            },\n        },\n        \"genai_category\": \"video/generation\",\n        \"llm_format\": \"anthropic\",\n        \"rules\": {\n            \"allow_responses\": [\"...\"],\n            \"deny_responses\": [\"...\"],\n            \"max_response_body_size\": 4,\n        },\n        \"search\": {\n            \"threshold\": 1.9,\n        },\n        \"vectordb\": {\n            \"dimensions\": 7,\n            \"distance_metric\": \"euclidean\",\n            \"pgvector\": {\n                \"database\": \"...my_database...\",\n                \"host\": \"...my_host...\",\n                \"password\": \"...my_password...\",\n                \"port\": 1,\n                \"ssl\": False,\n                \"ssl_cert\": \"...my_ssl_cert...\",\n                \"ssl_cert_key\": \"...my_ssl_cert_key...\",\n                \"ssl_required\": True,\n                \"ssl_verify\": False,\n                \"ssl_version\": \"any\",\n                \"timeout\": 7.2,\n                \"user\": \"...my_user...\",\n            },\n            \"redis\": {\n                \"cloud_authentication\": {\n                    \"auth_provider\": \"gcp\",\n                    \"aws_access_key_id\": \"...my_aws_access_key_id...\",\n                    \"aws_assume_role_arn\": \"...my_aws_assume_role_arn...\",\n                    \"aws_cache_name\": \"...my_aws_cache_name...\",\n                    \"aws_is_serverless\": True,\n                    \"aws_region\": \"...my_aws_region...\",\n                    \"aws_role_session_name\": \"...my_aws_role_session_name...\",\n                    \"aws_secret_access_key\": \"...my_aws_secret_access_key...\",\n                    \"azure_client_id\": \"...my_azure_client_id...\",\n                    \"azure_client_secret\": \"...my_azure_client_secret...\",\n                    \"azure_tenant_id\": \"...my_azure_tenant_id...\",\n                    \"gcp_service_account_json\": \"...my_gcp_service_account_json...\",\n                },\n                \"cluster_max_redirections\": 4,\n                \"cluster_nodes\": [{\n                    \"ip\": \"...my_ip...\",\n                    \"port\": 24018,\n                }],\n                \"connect_timeout\": 1871752216,\n                \"connection_is_proxied\": True,\n                \"database\": 8,\n                \"host\": \"...my_host...\",\n                \"keepalive_backlog\": 1017001581,\n                \"keepalive_pool_size\": 843009957,\n                \"password\": \"...my_password...\",\n                \"port\": 9330,\n                \"read_timeout\": 737805427,\n                \"send_timeout\": 1581780287,\n                \"sentinel_master\": \"...my_sentinel_master...\",\n                \"sentinel_nodes\": [{\n                    \"host\": \"...my_host...\",\n                    \"port\": 48060,\n                }],\n                \"sentinel_password\": \"...my_sentinel_password...\",\n                \"sentinel_role\": \"any\",\n                \"sentinel_username\": \"...my_sentinel_username...\",\n                \"server_name\": \"...my_server_name...\",\n                \"ssl\": False,\n                \"ssl_verify\": True,\n                \"username\": \"...my_username...\",\n            },\n            \"strategy\": \"redis\",\n            \"threshold\": 6.32,\n        },\n    },\n    consumer={\n        \"id\": \"...my_id...\",\n    },\n    consumer_group={\n        \"id\": \"...my_id...\",\n    },\n    control_plane_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    created_at=7,\n    enabled=True,\n    gateway_plugin_ai_semantic_response_guard_id=\"...my_id...\",\n    instance_name=\"...my_instance_name...\",\n    ordering={\n        \"after\": {\n            \"accesses\": [\"...\"],\n        },\n        \"before\": {\n            \"accesses\": [\"...\"],\n        },\n    },\n    partials=[{\n        \"id\": \"...my_id...\",\n        \"name\": \"...my_name...\",\n        \"path\": \"...my_path...\",\n    }],\n    protocols=[\"grpcs\"],\n    route={\n        \"id\": \"...my_id...\",\n    },\n    service={\n        \"id\": \"...my_id...\",\n    },\n    tags=[\"...\"],\n    updated_at=3)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myGatewaypluginaisemanticresponseguard = new Konnect.GatewayPluginAiSemanticResponseGuard(\"my_gatewaypluginaisemanticresponseguard\", new()\n    {\n        Config = new Konnect.Inputs.GatewayPluginAiSemanticResponseGuardConfigArgs\n        {\n            Embeddings = new Konnect.Inputs.GatewayPluginAiSemanticResponseGuardConfigEmbeddingsArgs\n            {\n                Auth = new Konnect.Inputs.GatewayPluginAiSemanticResponseGuardConfigEmbeddingsAuthArgs\n                {\n                    AllowOverride = false,\n                    AwsAccessKeyId = \"...my_aws_access_key_id...\",\n                    AwsSecretAccessKey = \"...my_aws_secret_access_key...\",\n                    AzureClientId = \"...my_azure_client_id...\",\n                    AzureClientSecret = \"...my_azure_client_secret...\",\n                    AzureTenantId = \"...my_azure_tenant_id...\",\n                    AzureUseManagedIdentity = true,\n                    GcpServiceAccountJson = \"...my_gcp_service_account_json...\",\n                    GcpUseServiceAccount = false,\n                    HeaderName = \"...my_header_name...\",\n                    HeaderValue = \"...my_header_value...\",\n                    ParamLocation = \"body\",\n                    ParamName = \"...my_param_name...\",\n                    ParamValue = \"...my_param_value...\",\n                },\n                Model = new Konnect.Inputs.GatewayPluginAiSemanticResponseGuardConfigEmbeddingsModelArgs\n                {\n                    Name = \"...my_name...\",\n                    Options = new Konnect.Inputs.GatewayPluginAiSemanticResponseGuardConfigEmbeddingsModelOptionsArgs\n                    {\n                        Azure = new Konnect.Inputs.GatewayPluginAiSemanticResponseGuardConfigEmbeddingsModelOptionsAzureArgs\n                        {\n                            ApiVersion = \"...my_api_version...\",\n                            DeploymentId = \"...my_deployment_id...\",\n                            Instance = \"...my_instance...\",\n                        },\n                        Bedrock = new Konnect.Inputs.GatewayPluginAiSemanticResponseGuardConfigEmbeddingsModelOptionsBedrockArgs\n                        {\n                            AwsAssumeRoleArn = \"...my_aws_assume_role_arn...\",\n                            AwsRegion = \"...my_aws_region...\",\n                            AwsRoleSessionName = \"...my_aws_role_session_name...\",\n                            AwsStsEndpointUrl = \"...my_aws_sts_endpoint_url...\",\n                            EmbeddingsNormalize = true,\n                            PerformanceConfigLatency = \"...my_performance_config_latency...\",\n                            VideoOutputS3Uri = \"...my_video_output_s3_uri...\",\n                        },\n                        Gemini = new Konnect.Inputs.GatewayPluginAiSemanticResponseGuardConfigEmbeddingsModelOptionsGeminiArgs\n                        {\n                            ApiEndpoint = \"...my_api_endpoint...\",\n                            LocationId = \"...my_location_id...\",\n                            ProjectId = \"...my_project_id...\",\n                        },\n                        Huggingface = new Konnect.Inputs.GatewayPluginAiSemanticResponseGuardConfigEmbeddingsModelOptionsHuggingfaceArgs\n                        {\n                            UseCache = false,\n                            WaitForModel = true,\n                        },\n                        UpstreamUrl = \"...my_upstream_url...\",\n                    },\n                    Provider = \"azure\",\n                },\n            },\n            GenaiCategory = \"video/generation\",\n            LlmFormat = \"anthropic\",\n            Rules = new Konnect.Inputs.GatewayPluginAiSemanticResponseGuardConfigRulesArgs\n            {\n                AllowResponses = new[]\n                {\n                    \"...\",\n                },\n                DenyResponses = new[]\n                {\n                    \"...\",\n                },\n                MaxResponseBodySize = 4,\n            },\n            Search = new Konnect.Inputs.GatewayPluginAiSemanticResponseGuardConfigSearchArgs\n            {\n                Threshold = 1.9,\n            },\n            Vectordb = new Konnect.Inputs.GatewayPluginAiSemanticResponseGuardConfigVectordbArgs\n            {\n                Dimensions = 7,\n                DistanceMetric = \"euclidean\",\n                Pgvector = new Konnect.Inputs.GatewayPluginAiSemanticResponseGuardConfigVectordbPgvectorArgs\n                {\n                    Database = \"...my_database...\",\n                    Host = \"...my_host...\",\n                    Password = \"...my_password...\",\n                    Port = 1,\n                    Ssl = false,\n                    SslCert = \"...my_ssl_cert...\",\n                    SslCertKey = \"...my_ssl_cert_key...\",\n                    SslRequired = true,\n                    SslVerify = false,\n                    SslVersion = \"any\",\n                    Timeout = 7.2,\n                    User = \"...my_user...\",\n                },\n                Redis = new Konnect.Inputs.GatewayPluginAiSemanticResponseGuardConfigVectordbRedisArgs\n                {\n                    CloudAuthentication = new Konnect.Inputs.GatewayPluginAiSemanticResponseGuardConfigVectordbRedisCloudAuthenticationArgs\n                    {\n                        AuthProvider = \"gcp\",\n                        AwsAccessKeyId = \"...my_aws_access_key_id...\",\n                        AwsAssumeRoleArn = \"...my_aws_assume_role_arn...\",\n                        AwsCacheName = \"...my_aws_cache_name...\",\n                        AwsIsServerless = true,\n                        AwsRegion = \"...my_aws_region...\",\n                        AwsRoleSessionName = \"...my_aws_role_session_name...\",\n                        AwsSecretAccessKey = \"...my_aws_secret_access_key...\",\n                        AzureClientId = \"...my_azure_client_id...\",\n                        AzureClientSecret = \"...my_azure_client_secret...\",\n                        AzureTenantId = \"...my_azure_tenant_id...\",\n                        GcpServiceAccountJson = \"...my_gcp_service_account_json...\",\n                    },\n                    ClusterMaxRedirections = 4,\n                    ClusterNodes = new[]\n                    {\n                        new Konnect.Inputs.GatewayPluginAiSemanticResponseGuardConfigVectordbRedisClusterNodeArgs\n                        {\n                            Ip = \"...my_ip...\",\n                            Port = 24018,\n                        },\n                    },\n                    ConnectTimeout = 1871752216,\n                    ConnectionIsProxied = true,\n                    Database = 8,\n                    Host = \"...my_host...\",\n                    KeepaliveBacklog = 1017001581,\n                    KeepalivePoolSize = 843009957,\n                    Password = \"...my_password...\",\n                    Port = 9330,\n                    ReadTimeout = 737805427,\n                    SendTimeout = 1581780287,\n                    SentinelMaster = \"...my_sentinel_master...\",\n                    SentinelNodes = new[]\n                    {\n                        new Konnect.Inputs.GatewayPluginAiSemanticResponseGuardConfigVectordbRedisSentinelNodeArgs\n                        {\n                            Host = \"...my_host...\",\n                            Port = 48060,\n                        },\n                    },\n                    SentinelPassword = \"...my_sentinel_password...\",\n                    SentinelRole = \"any\",\n                    SentinelUsername = \"...my_sentinel_username...\",\n                    ServerName = \"...my_server_name...\",\n                    Ssl = false,\n                    SslVerify = true,\n                    Username = \"...my_username...\",\n                },\n                Strategy = \"redis\",\n                Threshold = 6.32,\n            },\n        },\n        Consumer = new Konnect.Inputs.GatewayPluginAiSemanticResponseGuardConsumerArgs\n        {\n            Id = \"...my_id...\",\n        },\n        ConsumerGroup = new Konnect.Inputs.GatewayPluginAiSemanticResponseGuardConsumerGroupArgs\n        {\n            Id = \"...my_id...\",\n        },\n        ControlPlaneId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        CreatedAt = 7,\n        Enabled = true,\n        GatewayPluginAiSemanticResponseGuardId = \"...my_id...\",\n        InstanceName = \"...my_instance_name...\",\n        Ordering = new Konnect.Inputs.GatewayPluginAiSemanticResponseGuardOrderingArgs\n        {\n            After = new Konnect.Inputs.GatewayPluginAiSemanticResponseGuardOrderingAfterArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n            Before = new Konnect.Inputs.GatewayPluginAiSemanticResponseGuardOrderingBeforeArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n        },\n        Partials = new[]\n        {\n            new Konnect.Inputs.GatewayPluginAiSemanticResponseGuardPartialArgs\n            {\n                Id = \"...my_id...\",\n                Name = \"...my_name...\",\n                Path = \"...my_path...\",\n            },\n        },\n        Protocols = new[]\n        {\n            \"grpcs\",\n        },\n        Route = new Konnect.Inputs.GatewayPluginAiSemanticResponseGuardRouteArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Service = new Konnect.Inputs.GatewayPluginAiSemanticResponseGuardServiceArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Tags = new[]\n        {\n            \"...\",\n        },\n        UpdatedAt = 3,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewGatewayPluginAiSemanticResponseGuard(ctx, \"my_gatewaypluginaisemanticresponseguard\", \u0026konnect.GatewayPluginAiSemanticResponseGuardArgs{\n\t\t\tConfig: \u0026konnect.GatewayPluginAiSemanticResponseGuardConfigArgs{\n\t\t\t\tEmbeddings: \u0026konnect.GatewayPluginAiSemanticResponseGuardConfigEmbeddingsArgs{\n\t\t\t\t\tAuth: \u0026konnect.GatewayPluginAiSemanticResponseGuardConfigEmbeddingsAuthArgs{\n\t\t\t\t\t\tAllowOverride:           pulumi.Bool(false),\n\t\t\t\t\t\tAwsAccessKeyId:          pulumi.String(\"...my_aws_access_key_id...\"),\n\t\t\t\t\t\tAwsSecretAccessKey:      pulumi.String(\"...my_aws_secret_access_key...\"),\n\t\t\t\t\t\tAzureClientId:           pulumi.String(\"...my_azure_client_id...\"),\n\t\t\t\t\t\tAzureClientSecret:       pulumi.String(\"...my_azure_client_secret...\"),\n\t\t\t\t\t\tAzureTenantId:           pulumi.String(\"...my_azure_tenant_id...\"),\n\t\t\t\t\t\tAzureUseManagedIdentity: pulumi.Bool(true),\n\t\t\t\t\t\tGcpServiceAccountJson:   pulumi.String(\"...my_gcp_service_account_json...\"),\n\t\t\t\t\t\tGcpUseServiceAccount:    pulumi.Bool(false),\n\t\t\t\t\t\tHeaderName:              pulumi.String(\"...my_header_name...\"),\n\t\t\t\t\t\tHeaderValue:             pulumi.String(\"...my_header_value...\"),\n\t\t\t\t\t\tParamLocation:           pulumi.String(\"body\"),\n\t\t\t\t\t\tParamName:               pulumi.String(\"...my_param_name...\"),\n\t\t\t\t\t\tParamValue:              pulumi.String(\"...my_param_value...\"),\n\t\t\t\t\t},\n\t\t\t\t\tModel: \u0026konnect.GatewayPluginAiSemanticResponseGuardConfigEmbeddingsModelArgs{\n\t\t\t\t\t\tName: pulumi.String(\"...my_name...\"),\n\t\t\t\t\t\tOptions: \u0026konnect.GatewayPluginAiSemanticResponseGuardConfigEmbeddingsModelOptionsArgs{\n\t\t\t\t\t\t\tAzure: \u0026konnect.GatewayPluginAiSemanticResponseGuardConfigEmbeddingsModelOptionsAzureArgs{\n\t\t\t\t\t\t\t\tApiVersion:   pulumi.String(\"...my_api_version...\"),\n\t\t\t\t\t\t\t\tDeploymentId: pulumi.String(\"...my_deployment_id...\"),\n\t\t\t\t\t\t\t\tInstance:     pulumi.String(\"...my_instance...\"),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tBedrock: \u0026konnect.GatewayPluginAiSemanticResponseGuardConfigEmbeddingsModelOptionsBedrockArgs{\n\t\t\t\t\t\t\t\tAwsAssumeRoleArn:         pulumi.String(\"...my_aws_assume_role_arn...\"),\n\t\t\t\t\t\t\t\tAwsRegion:                pulumi.String(\"...my_aws_region...\"),\n\t\t\t\t\t\t\t\tAwsRoleSessionName:       pulumi.String(\"...my_aws_role_session_name...\"),\n\t\t\t\t\t\t\t\tAwsStsEndpointUrl:        pulumi.String(\"...my_aws_sts_endpoint_url...\"),\n\t\t\t\t\t\t\t\tEmbeddingsNormalize:      pulumi.Bool(true),\n\t\t\t\t\t\t\t\tPerformanceConfigLatency: pulumi.String(\"...my_performance_config_latency...\"),\n\t\t\t\t\t\t\t\tVideoOutputS3Uri:         pulumi.String(\"...my_video_output_s3_uri...\"),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tGemini: \u0026konnect.GatewayPluginAiSemanticResponseGuardConfigEmbeddingsModelOptionsGeminiArgs{\n\t\t\t\t\t\t\t\tApiEndpoint: pulumi.String(\"...my_api_endpoint...\"),\n\t\t\t\t\t\t\t\tLocationId:  pulumi.String(\"...my_location_id...\"),\n\t\t\t\t\t\t\t\tProjectId:   pulumi.String(\"...my_project_id...\"),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tHuggingface: \u0026konnect.GatewayPluginAiSemanticResponseGuardConfigEmbeddingsModelOptionsHuggingfaceArgs{\n\t\t\t\t\t\t\t\tUseCache:     pulumi.Bool(false),\n\t\t\t\t\t\t\t\tWaitForModel: pulumi.Bool(true),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tUpstreamUrl: pulumi.String(\"...my_upstream_url...\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\tProvider: pulumi.String(\"azure\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tGenaiCategory: pulumi.String(\"video/generation\"),\n\t\t\t\tLlmFormat:     pulumi.String(\"anthropic\"),\n\t\t\t\tRules: \u0026konnect.GatewayPluginAiSemanticResponseGuardConfigRulesArgs{\n\t\t\t\t\tAllowResponses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t\tDenyResponses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t\tMaxResponseBodySize: pulumi.Float64(4),\n\t\t\t\t},\n\t\t\t\tSearch: \u0026konnect.GatewayPluginAiSemanticResponseGuardConfigSearchArgs{\n\t\t\t\t\tThreshold: pulumi.Float64(1.9),\n\t\t\t\t},\n\t\t\t\tVectordb: \u0026konnect.GatewayPluginAiSemanticResponseGuardConfigVectordbArgs{\n\t\t\t\t\tDimensions:     pulumi.Float64(7),\n\t\t\t\t\tDistanceMetric: pulumi.String(\"euclidean\"),\n\t\t\t\t\tPgvector: \u0026konnect.GatewayPluginAiSemanticResponseGuardConfigVectordbPgvectorArgs{\n\t\t\t\t\t\tDatabase:    pulumi.String(\"...my_database...\"),\n\t\t\t\t\t\tHost:        pulumi.String(\"...my_host...\"),\n\t\t\t\t\t\tPassword:    pulumi.String(\"...my_password...\"),\n\t\t\t\t\t\tPort:        pulumi.Float64(1),\n\t\t\t\t\t\tSsl:         pulumi.Bool(false),\n\t\t\t\t\t\tSslCert:     pulumi.String(\"...my_ssl_cert...\"),\n\t\t\t\t\t\tSslCertKey:  pulumi.String(\"...my_ssl_cert_key...\"),\n\t\t\t\t\t\tSslRequired: pulumi.Bool(true),\n\t\t\t\t\t\tSslVerify:   pulumi.Bool(false),\n\t\t\t\t\t\tSslVersion:  pulumi.String(\"any\"),\n\t\t\t\t\t\tTimeout:     pulumi.Float64(7.2),\n\t\t\t\t\t\tUser:        pulumi.String(\"...my_user...\"),\n\t\t\t\t\t},\n\t\t\t\t\tRedis: \u0026konnect.GatewayPluginAiSemanticResponseGuardConfigVectordbRedisArgs{\n\t\t\t\t\t\tCloudAuthentication: \u0026konnect.GatewayPluginAiSemanticResponseGuardConfigVectordbRedisCloudAuthenticationArgs{\n\t\t\t\t\t\t\tAuthProvider:          pulumi.String(\"gcp\"),\n\t\t\t\t\t\t\tAwsAccessKeyId:        pulumi.String(\"...my_aws_access_key_id...\"),\n\t\t\t\t\t\t\tAwsAssumeRoleArn:      pulumi.String(\"...my_aws_assume_role_arn...\"),\n\t\t\t\t\t\t\tAwsCacheName:          pulumi.String(\"...my_aws_cache_name...\"),\n\t\t\t\t\t\t\tAwsIsServerless:       pulumi.Bool(true),\n\t\t\t\t\t\t\tAwsRegion:             pulumi.String(\"...my_aws_region...\"),\n\t\t\t\t\t\t\tAwsRoleSessionName:    pulumi.String(\"...my_aws_role_session_name...\"),\n\t\t\t\t\t\t\tAwsSecretAccessKey:    pulumi.String(\"...my_aws_secret_access_key...\"),\n\t\t\t\t\t\t\tAzureClientId:         pulumi.String(\"...my_azure_client_id...\"),\n\t\t\t\t\t\t\tAzureClientSecret:     pulumi.String(\"...my_azure_client_secret...\"),\n\t\t\t\t\t\t\tAzureTenantId:         pulumi.String(\"...my_azure_tenant_id...\"),\n\t\t\t\t\t\t\tGcpServiceAccountJson: pulumi.String(\"...my_gcp_service_account_json...\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\tClusterMaxRedirections: pulumi.Float64(4),\n\t\t\t\t\t\tClusterNodes: konnect.GatewayPluginAiSemanticResponseGuardConfigVectordbRedisClusterNodeArray{\n\t\t\t\t\t\t\t\u0026konnect.GatewayPluginAiSemanticResponseGuardConfigVectordbRedisClusterNodeArgs{\n\t\t\t\t\t\t\t\tIp:   pulumi.String(\"...my_ip...\"),\n\t\t\t\t\t\t\t\tPort: pulumi.Float64(24018),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t\tConnectTimeout:      pulumi.Float64(1871752216),\n\t\t\t\t\t\tConnectionIsProxied: pulumi.Bool(true),\n\t\t\t\t\t\tDatabase:            pulumi.Float64(8),\n\t\t\t\t\t\tHost:                pulumi.String(\"...my_host...\"),\n\t\t\t\t\t\tKeepaliveBacklog:    pulumi.Float64(1017001581),\n\t\t\t\t\t\tKeepalivePoolSize:   pulumi.Float64(843009957),\n\t\t\t\t\t\tPassword:            pulumi.String(\"...my_password...\"),\n\t\t\t\t\t\tPort:                pulumi.Float64(9330),\n\t\t\t\t\t\tReadTimeout:         pulumi.Float64(737805427),\n\t\t\t\t\t\tSendTimeout:         pulumi.Float64(1581780287),\n\t\t\t\t\t\tSentinelMaster:      pulumi.String(\"...my_sentinel_master...\"),\n\t\t\t\t\t\tSentinelNodes: konnect.GatewayPluginAiSemanticResponseGuardConfigVectordbRedisSentinelNodeArray{\n\t\t\t\t\t\t\t\u0026konnect.GatewayPluginAiSemanticResponseGuardConfigVectordbRedisSentinelNodeArgs{\n\t\t\t\t\t\t\t\tHost: pulumi.String(\"...my_host...\"),\n\t\t\t\t\t\t\t\tPort: pulumi.Float64(48060),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t\tSentinelPassword: pulumi.String(\"...my_sentinel_password...\"),\n\t\t\t\t\t\tSentinelRole:     pulumi.String(\"any\"),\n\t\t\t\t\t\tSentinelUsername: pulumi.String(\"...my_sentinel_username...\"),\n\t\t\t\t\t\tServerName:       pulumi.String(\"...my_server_name...\"),\n\t\t\t\t\t\tSsl:              pulumi.Bool(false),\n\t\t\t\t\t\tSslVerify:        pulumi.Bool(true),\n\t\t\t\t\t\tUsername:         pulumi.String(\"...my_username...\"),\n\t\t\t\t\t},\n\t\t\t\t\tStrategy:  pulumi.String(\"redis\"),\n\t\t\t\t\tThreshold: pulumi.Float64(6.32),\n\t\t\t\t},\n\t\t\t},\n\t\t\tConsumer: \u0026konnect.GatewayPluginAiSemanticResponseGuardConsumerArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tConsumerGroup: \u0026konnect.GatewayPluginAiSemanticResponseGuardConsumerGroupArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tControlPlaneId:                         pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tCreatedAt:                              pulumi.Float64(7),\n\t\t\tEnabled:                                pulumi.Bool(true),\n\t\t\tGatewayPluginAiSemanticResponseGuardId: pulumi.String(\"...my_id...\"),\n\t\t\tInstanceName:                           pulumi.String(\"...my_instance_name...\"),\n\t\t\tOrdering: \u0026konnect.GatewayPluginAiSemanticResponseGuardOrderingArgs{\n\t\t\t\tAfter: \u0026konnect.GatewayPluginAiSemanticResponseGuardOrderingAfterArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tBefore: \u0026konnect.GatewayPluginAiSemanticResponseGuardOrderingBeforeArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tPartials: konnect.GatewayPluginAiSemanticResponseGuardPartialArray{\n\t\t\t\t\u0026konnect.GatewayPluginAiSemanticResponseGuardPartialArgs{\n\t\t\t\t\tId:   pulumi.String(\"...my_id...\"),\n\t\t\t\t\tName: pulumi.String(\"...my_name...\"),\n\t\t\t\t\tPath: pulumi.String(\"...my_path...\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tProtocols: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"grpcs\"),\n\t\t\t},\n\t\t\tRoute: \u0026konnect.GatewayPluginAiSemanticResponseGuardRouteArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tService: \u0026konnect.GatewayPluginAiSemanticResponseGuardServiceArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"...\"),\n\t\t\t},\n\t\t\tUpdatedAt: pulumi.Float64(3),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.GatewayPluginAiSemanticResponseGuard;\nimport com.pulumi.konnect.GatewayPluginAiSemanticResponseGuardArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiSemanticResponseGuardConfigArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiSemanticResponseGuardConfigEmbeddingsArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiSemanticResponseGuardConfigEmbeddingsAuthArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiSemanticResponseGuardConfigEmbeddingsModelArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiSemanticResponseGuardConfigEmbeddingsModelOptionsArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiSemanticResponseGuardConfigEmbeddingsModelOptionsAzureArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiSemanticResponseGuardConfigEmbeddingsModelOptionsBedrockArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiSemanticResponseGuardConfigEmbeddingsModelOptionsGeminiArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiSemanticResponseGuardConfigEmbeddingsModelOptionsHuggingfaceArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiSemanticResponseGuardConfigRulesArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiSemanticResponseGuardConfigSearchArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiSemanticResponseGuardConfigVectordbArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiSemanticResponseGuardConfigVectordbPgvectorArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiSemanticResponseGuardConfigVectordbRedisArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiSemanticResponseGuardConfigVectordbRedisCloudAuthenticationArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiSemanticResponseGuardConsumerArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiSemanticResponseGuardConsumerGroupArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiSemanticResponseGuardOrderingArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiSemanticResponseGuardOrderingAfterArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiSemanticResponseGuardOrderingBeforeArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiSemanticResponseGuardPartialArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiSemanticResponseGuardRouteArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAiSemanticResponseGuardServiceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myGatewaypluginaisemanticresponseguard = new GatewayPluginAiSemanticResponseGuard(\"myGatewaypluginaisemanticresponseguard\", GatewayPluginAiSemanticResponseGuardArgs.builder()\n            .config(GatewayPluginAiSemanticResponseGuardConfigArgs.builder()\n                .embeddings(GatewayPluginAiSemanticResponseGuardConfigEmbeddingsArgs.builder()\n                    .auth(GatewayPluginAiSemanticResponseGuardConfigEmbeddingsAuthArgs.builder()\n                        .allowOverride(false)\n                        .awsAccessKeyId(\"...my_aws_access_key_id...\")\n                        .awsSecretAccessKey(\"...my_aws_secret_access_key...\")\n                        .azureClientId(\"...my_azure_client_id...\")\n                        .azureClientSecret(\"...my_azure_client_secret...\")\n                        .azureTenantId(\"...my_azure_tenant_id...\")\n                        .azureUseManagedIdentity(true)\n                        .gcpServiceAccountJson(\"...my_gcp_service_account_json...\")\n                        .gcpUseServiceAccount(false)\n                        .headerName(\"...my_header_name...\")\n                        .headerValue(\"...my_header_value...\")\n                        .paramLocation(\"body\")\n                        .paramName(\"...my_param_name...\")\n                        .paramValue(\"...my_param_value...\")\n                        .build())\n                    .model(GatewayPluginAiSemanticResponseGuardConfigEmbeddingsModelArgs.builder()\n                        .name(\"...my_name...\")\n                        .options(GatewayPluginAiSemanticResponseGuardConfigEmbeddingsModelOptionsArgs.builder()\n                            .azure(GatewayPluginAiSemanticResponseGuardConfigEmbeddingsModelOptionsAzureArgs.builder()\n                                .apiVersion(\"...my_api_version...\")\n                                .deploymentId(\"...my_deployment_id...\")\n                                .instance(\"...my_instance...\")\n                                .build())\n                            .bedrock(GatewayPluginAiSemanticResponseGuardConfigEmbeddingsModelOptionsBedrockArgs.builder()\n                                .awsAssumeRoleArn(\"...my_aws_assume_role_arn...\")\n                                .awsRegion(\"...my_aws_region...\")\n                                .awsRoleSessionName(\"...my_aws_role_session_name...\")\n                                .awsStsEndpointUrl(\"...my_aws_sts_endpoint_url...\")\n                                .embeddingsNormalize(true)\n                                .performanceConfigLatency(\"...my_performance_config_latency...\")\n                                .videoOutputS3Uri(\"...my_video_output_s3_uri...\")\n                                .build())\n                            .gemini(GatewayPluginAiSemanticResponseGuardConfigEmbeddingsModelOptionsGeminiArgs.builder()\n                                .apiEndpoint(\"...my_api_endpoint...\")\n                                .locationId(\"...my_location_id...\")\n                                .projectId(\"...my_project_id...\")\n                                .build())\n                            .huggingface(GatewayPluginAiSemanticResponseGuardConfigEmbeddingsModelOptionsHuggingfaceArgs.builder()\n                                .useCache(false)\n                                .waitForModel(true)\n                                .build())\n                            .upstreamUrl(\"...my_upstream_url...\")\n                            .build())\n                        .provider(\"azure\")\n                        .build())\n                    .build())\n                .genaiCategory(\"video/generation\")\n                .llmFormat(\"anthropic\")\n                .rules(GatewayPluginAiSemanticResponseGuardConfigRulesArgs.builder()\n                    .allowResponses(\"...\")\n                    .denyResponses(\"...\")\n                    .maxResponseBodySize(4.0)\n                    .build())\n                .search(GatewayPluginAiSemanticResponseGuardConfigSearchArgs.builder()\n                    .threshold(1.9)\n                    .build())\n                .vectordb(GatewayPluginAiSemanticResponseGuardConfigVectordbArgs.builder()\n                    .dimensions(7.0)\n                    .distanceMetric(\"euclidean\")\n                    .pgvector(GatewayPluginAiSemanticResponseGuardConfigVectordbPgvectorArgs.builder()\n                        .database(\"...my_database...\")\n                        .host(\"...my_host...\")\n                        .password(\"...my_password...\")\n                        .port(1.0)\n                        .ssl(false)\n                        .sslCert(\"...my_ssl_cert...\")\n                        .sslCertKey(\"...my_ssl_cert_key...\")\n                        .sslRequired(true)\n                        .sslVerify(false)\n                        .sslVersion(\"any\")\n                        .timeout(7.2)\n                        .user(\"...my_user...\")\n                        .build())\n                    .redis(GatewayPluginAiSemanticResponseGuardConfigVectordbRedisArgs.builder()\n                        .cloudAuthentication(GatewayPluginAiSemanticResponseGuardConfigVectordbRedisCloudAuthenticationArgs.builder()\n                            .authProvider(\"gcp\")\n                            .awsAccessKeyId(\"...my_aws_access_key_id...\")\n                            .awsAssumeRoleArn(\"...my_aws_assume_role_arn...\")\n                            .awsCacheName(\"...my_aws_cache_name...\")\n                            .awsIsServerless(true)\n                            .awsRegion(\"...my_aws_region...\")\n                            .awsRoleSessionName(\"...my_aws_role_session_name...\")\n                            .awsSecretAccessKey(\"...my_aws_secret_access_key...\")\n                            .azureClientId(\"...my_azure_client_id...\")\n                            .azureClientSecret(\"...my_azure_client_secret...\")\n                            .azureTenantId(\"...my_azure_tenant_id...\")\n                            .gcpServiceAccountJson(\"...my_gcp_service_account_json...\")\n                            .build())\n                        .clusterMaxRedirections(4.0)\n                        .clusterNodes(GatewayPluginAiSemanticResponseGuardConfigVectordbRedisClusterNodeArgs.builder()\n                            .ip(\"...my_ip...\")\n                            .port(24018.0)\n                            .build())\n                        .connectTimeout(1871752216.0)\n                        .connectionIsProxied(true)\n                        .database(8.0)\n                        .host(\"...my_host...\")\n                        .keepaliveBacklog(1017001581.0)\n                        .keepalivePoolSize(843009957.0)\n                        .password(\"...my_password...\")\n                        .port(9330.0)\n                        .readTimeout(737805427.0)\n                        .sendTimeout(1581780287.0)\n                        .sentinelMaster(\"...my_sentinel_master...\")\n                        .sentinelNodes(GatewayPluginAiSemanticResponseGuardConfigVectordbRedisSentinelNodeArgs.builder()\n                            .host(\"...my_host...\")\n                            .port(48060.0)\n                            .build())\n                        .sentinelPassword(\"...my_sentinel_password...\")\n                        .sentinelRole(\"any\")\n                        .sentinelUsername(\"...my_sentinel_username...\")\n                        .serverName(\"...my_server_name...\")\n                        .ssl(false)\n                        .sslVerify(true)\n                        .username(\"...my_username...\")\n                        .build())\n                    .strategy(\"redis\")\n                    .threshold(6.32)\n                    .build())\n                .build())\n            .consumer(GatewayPluginAiSemanticResponseGuardConsumerArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .consumerGroup(GatewayPluginAiSemanticResponseGuardConsumerGroupArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .controlPlaneId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .createdAt(7.0)\n            .enabled(true)\n            .gatewayPluginAiSemanticResponseGuardId(\"...my_id...\")\n            .instanceName(\"...my_instance_name...\")\n            .ordering(GatewayPluginAiSemanticResponseGuardOrderingArgs.builder()\n                .after(GatewayPluginAiSemanticResponseGuardOrderingAfterArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .before(GatewayPluginAiSemanticResponseGuardOrderingBeforeArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .build())\n            .partials(GatewayPluginAiSemanticResponseGuardPartialArgs.builder()\n                .id(\"...my_id...\")\n                .name(\"...my_name...\")\n                .path(\"...my_path...\")\n                .build())\n            .protocols(\"grpcs\")\n            .route(GatewayPluginAiSemanticResponseGuardRouteArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .service(GatewayPluginAiSemanticResponseGuardServiceArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .tags(\"...\")\n            .updatedAt(3.0)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myGatewaypluginaisemanticresponseguard:\n    type: konnect:GatewayPluginAiSemanticResponseGuard\n    name: my_gatewaypluginaisemanticresponseguard\n    properties:\n      config:\n        embeddings:\n          auth:\n            allowOverride: false\n            awsAccessKeyId: '...my_aws_access_key_id...'\n            awsSecretAccessKey: '...my_aws_secret_access_key...'\n            azureClientId: '...my_azure_client_id...'\n            azureClientSecret: '...my_azure_client_secret...'\n            azureTenantId: '...my_azure_tenant_id...'\n            azureUseManagedIdentity: true\n            gcpServiceAccountJson: '...my_gcp_service_account_json...'\n            gcpUseServiceAccount: false\n            headerName: '...my_header_name...'\n            headerValue: '...my_header_value...'\n            paramLocation: body\n            paramName: '...my_param_name...'\n            paramValue: '...my_param_value...'\n          model:\n            name: '...my_name...'\n            options:\n              azure:\n                apiVersion: '...my_api_version...'\n                deploymentId: '...my_deployment_id...'\n                instance: '...my_instance...'\n              bedrock:\n                awsAssumeRoleArn: '...my_aws_assume_role_arn...'\n                awsRegion: '...my_aws_region...'\n                awsRoleSessionName: '...my_aws_role_session_name...'\n                awsStsEndpointUrl: '...my_aws_sts_endpoint_url...'\n                embeddingsNormalize: true\n                performanceConfigLatency: '...my_performance_config_latency...'\n                videoOutputS3Uri: '...my_video_output_s3_uri...'\n              gemini:\n                apiEndpoint: '...my_api_endpoint...'\n                locationId: '...my_location_id...'\n                projectId: '...my_project_id...'\n              huggingface:\n                useCache: false\n                waitForModel: true\n              upstreamUrl: '...my_upstream_url...'\n            provider: azure\n        genaiCategory: video/generation\n        llmFormat: anthropic\n        rules:\n          allowResponses:\n            - '...'\n          denyResponses:\n            - '...'\n          maxResponseBodySize: 4\n        search:\n          threshold: 1.9\n        vectordb:\n          dimensions: 7\n          distanceMetric: euclidean\n          pgvector:\n            database: '...my_database...'\n            host: '...my_host...'\n            password: '...my_password...'\n            port: 1\n            ssl: false\n            sslCert: '...my_ssl_cert...'\n            sslCertKey: '...my_ssl_cert_key...'\n            sslRequired: true\n            sslVerify: false\n            sslVersion: any\n            timeout: 7.2\n            user: '...my_user...'\n          redis:\n            cloudAuthentication:\n              authProvider: gcp\n              awsAccessKeyId: '...my_aws_access_key_id...'\n              awsAssumeRoleArn: '...my_aws_assume_role_arn...'\n              awsCacheName: '...my_aws_cache_name...'\n              awsIsServerless: true\n              awsRegion: '...my_aws_region...'\n              awsRoleSessionName: '...my_aws_role_session_name...'\n              awsSecretAccessKey: '...my_aws_secret_access_key...'\n              azureClientId: '...my_azure_client_id...'\n              azureClientSecret: '...my_azure_client_secret...'\n              azureTenantId: '...my_azure_tenant_id...'\n              gcpServiceAccountJson: '...my_gcp_service_account_json...'\n            clusterMaxRedirections: 4\n            clusterNodes:\n              - ip: '...my_ip...'\n                port: 24018\n            connectTimeout: 1.871752216e+09\n            connectionIsProxied: true\n            database: 8\n            host: '...my_host...'\n            keepaliveBacklog: 1.017001581e+09\n            keepalivePoolSize: 8.43009957e+08\n            password: '...my_password...'\n            port: 9330\n            readTimeout: 7.37805427e+08\n            sendTimeout: 1.581780287e+09\n            sentinelMaster: '...my_sentinel_master...'\n            sentinelNodes:\n              - host: '...my_host...'\n                port: 48060\n            sentinelPassword: '...my_sentinel_password...'\n            sentinelRole: any\n            sentinelUsername: '...my_sentinel_username...'\n            serverName: '...my_server_name...'\n            ssl: false\n            sslVerify: true\n            username: '...my_username...'\n          strategy: redis\n          threshold: 6.32\n      consumer:\n        id: '...my_id...'\n      consumerGroup:\n        id: '...my_id...'\n      controlPlaneId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      createdAt: 7\n      enabled: true\n      gatewayPluginAiSemanticResponseGuardId: '...my_id...'\n      instanceName: '...my_instance_name...'\n      ordering:\n        after:\n          accesses:\n            - '...'\n        before:\n          accesses:\n            - '...'\n      partials:\n        - id: '...my_id...'\n          name: '...my_name...'\n          path: '...my_path...'\n      protocols:\n        - grpcs\n      route:\n        id: '...my_id...'\n      service:\n        id: '...my_id...'\n      tags:\n        - '...'\n      updatedAt: 3\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_gateway_plugin_ai_semantic_response_guard.my_konnect_gateway_plugin_ai_semantic_response_guard\n\n  id = jsonencode({\n\n    control_plane_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/gatewayPluginAiSemanticResponseGuard:GatewayPluginAiSemanticResponseGuard my_konnect_gateway_plugin_ai_semantic_response_guard '{\"control_plane_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"}'\n```\n\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginAiSemanticResponseGuardConfig:GatewayPluginAiSemanticResponseGuardConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginAiSemanticResponseGuardConsumer:GatewayPluginAiSemanticResponseGuardConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"consumerGroup":{"$ref":"#/types/konnect:index%2FGatewayPluginAiSemanticResponseGuardConsumerGroup:GatewayPluginAiSemanticResponseGuardConsumerGroup","description":"If set, the plugin will activate only for requests where the specified consumer group has been authenticated. (Note that some plugins can not be restricted to consumers groups this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer Groups\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginAiSemanticResponseGuardId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginAiSemanticResponseGuardOrdering:GatewayPluginAiSemanticResponseGuardOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginAiSemanticResponseGuardPartial:GatewayPluginAiSemanticResponseGuardPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginAiSemanticResponseGuardRoute:GatewayPluginAiSemanticResponseGuardRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginAiSemanticResponseGuardService:GatewayPluginAiSemanticResponseGuardService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object","required":["config","consumer","consumerGroup","controlPlaneId","createdAt","enabled","gatewayPluginAiSemanticResponseGuardId","ordering","protocols","route","service","updatedAt"],"inputProperties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginAiSemanticResponseGuardConfig:GatewayPluginAiSemanticResponseGuardConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginAiSemanticResponseGuardConsumer:GatewayPluginAiSemanticResponseGuardConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"consumerGroup":{"$ref":"#/types/konnect:index%2FGatewayPluginAiSemanticResponseGuardConsumerGroup:GatewayPluginAiSemanticResponseGuardConsumerGroup","description":"If set, the plugin will activate only for requests where the specified consumer group has been authenticated. (Note that some plugins can not be restricted to consumers groups this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer Groups\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginAiSemanticResponseGuardId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginAiSemanticResponseGuardOrdering:GatewayPluginAiSemanticResponseGuardOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginAiSemanticResponseGuardPartial:GatewayPluginAiSemanticResponseGuardPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginAiSemanticResponseGuardRoute:GatewayPluginAiSemanticResponseGuardRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginAiSemanticResponseGuardService:GatewayPluginAiSemanticResponseGuardService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"requiredInputs":["config","controlPlaneId"],"stateInputs":{"description":"Input properties used for looking up and filtering GatewayPluginAiSemanticResponseGuard resources.\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginAiSemanticResponseGuardConfig:GatewayPluginAiSemanticResponseGuardConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginAiSemanticResponseGuardConsumer:GatewayPluginAiSemanticResponseGuardConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"consumerGroup":{"$ref":"#/types/konnect:index%2FGatewayPluginAiSemanticResponseGuardConsumerGroup:GatewayPluginAiSemanticResponseGuardConsumerGroup","description":"If set, the plugin will activate only for requests where the specified consumer group has been authenticated. (Note that some plugins can not be restricted to consumers groups this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer Groups\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginAiSemanticResponseGuardId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginAiSemanticResponseGuardOrdering:GatewayPluginAiSemanticResponseGuardOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginAiSemanticResponseGuardPartial:GatewayPluginAiSemanticResponseGuardPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginAiSemanticResponseGuardRoute:GatewayPluginAiSemanticResponseGuardRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginAiSemanticResponseGuardService:GatewayPluginAiSemanticResponseGuardService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object"}},"konnect:index/gatewayPluginAppDynamics:GatewayPluginAppDynamics":{"description":"GatewayPluginAppDynamics Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myGatewaypluginappdynamics = new konnect.GatewayPluginAppDynamics(\"my_gatewaypluginappdynamics\", {\n    config: {\n        key: JSON.stringify(\"value\"),\n    },\n    consumer: {\n        id: \"...my_id...\",\n    },\n    controlPlaneId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    createdAt: 0,\n    enabled: false,\n    gatewayPluginAppDynamicsId: \"...my_id...\",\n    instanceName: \"...my_instance_name...\",\n    ordering: {\n        after: {\n            accesses: [\"...\"],\n        },\n        before: {\n            accesses: [\"...\"],\n        },\n    },\n    partials: [{\n        id: \"...my_id...\",\n        name: \"...my_name...\",\n        path: \"...my_path...\",\n    }],\n    protocols: [\"grpc\"],\n    route: {\n        id: \"...my_id...\",\n    },\n    service: {\n        id: \"...my_id...\",\n    },\n    tags: [\"...\"],\n    updatedAt: 7,\n});\n```\n```python\nimport pulumi\nimport json\nimport pulumi_konnect as konnect\n\nmy_gatewaypluginappdynamics = konnect.GatewayPluginAppDynamics(\"my_gatewaypluginappdynamics\",\n    config={\n        \"key\": json.dumps(\"value\"),\n    },\n    consumer={\n        \"id\": \"...my_id...\",\n    },\n    control_plane_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    created_at=0,\n    enabled=False,\n    gateway_plugin_app_dynamics_id=\"...my_id...\",\n    instance_name=\"...my_instance_name...\",\n    ordering={\n        \"after\": {\n            \"accesses\": [\"...\"],\n        },\n        \"before\": {\n            \"accesses\": [\"...\"],\n        },\n    },\n    partials=[{\n        \"id\": \"...my_id...\",\n        \"name\": \"...my_name...\",\n        \"path\": \"...my_path...\",\n    }],\n    protocols=[\"grpc\"],\n    route={\n        \"id\": \"...my_id...\",\n    },\n    service={\n        \"id\": \"...my_id...\",\n    },\n    tags=[\"...\"],\n    updated_at=7)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text.Json;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myGatewaypluginappdynamics = new Konnect.GatewayPluginAppDynamics(\"my_gatewaypluginappdynamics\", new()\n    {\n        Config = \n        {\n            { \"key\", JsonSerializer.Serialize(\"value\") },\n        },\n        Consumer = new Konnect.Inputs.GatewayPluginAppDynamicsConsumerArgs\n        {\n            Id = \"...my_id...\",\n        },\n        ControlPlaneId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        CreatedAt = 0,\n        Enabled = false,\n        GatewayPluginAppDynamicsId = \"...my_id...\",\n        InstanceName = \"...my_instance_name...\",\n        Ordering = new Konnect.Inputs.GatewayPluginAppDynamicsOrderingArgs\n        {\n            After = new Konnect.Inputs.GatewayPluginAppDynamicsOrderingAfterArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n            Before = new Konnect.Inputs.GatewayPluginAppDynamicsOrderingBeforeArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n        },\n        Partials = new[]\n        {\n            new Konnect.Inputs.GatewayPluginAppDynamicsPartialArgs\n            {\n                Id = \"...my_id...\",\n                Name = \"...my_name...\",\n                Path = \"...my_path...\",\n            },\n        },\n        Protocols = new[]\n        {\n            \"grpc\",\n        },\n        Route = new Konnect.Inputs.GatewayPluginAppDynamicsRouteArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Service = new Konnect.Inputs.GatewayPluginAppDynamicsServiceArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Tags = new[]\n        {\n            \"...\",\n        },\n        UpdatedAt = 7,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"encoding/json\"\n\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\ttmpJSON0, err := json.Marshal(\"value\")\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tjson0 := string(tmpJSON0)\n\t\t_, err = konnect.NewGatewayPluginAppDynamics(ctx, \"my_gatewaypluginappdynamics\", \u0026konnect.GatewayPluginAppDynamicsArgs{\n\t\t\tConfig: pulumi.StringMap{\n\t\t\t\t\"key\": pulumi.String(json0),\n\t\t\t},\n\t\t\tConsumer: \u0026konnect.GatewayPluginAppDynamicsConsumerArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tControlPlaneId:             pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tCreatedAt:                  pulumi.Float64(0),\n\t\t\tEnabled:                    pulumi.Bool(false),\n\t\t\tGatewayPluginAppDynamicsId: pulumi.String(\"...my_id...\"),\n\t\t\tInstanceName:               pulumi.String(\"...my_instance_name...\"),\n\t\t\tOrdering: \u0026konnect.GatewayPluginAppDynamicsOrderingArgs{\n\t\t\t\tAfter: \u0026konnect.GatewayPluginAppDynamicsOrderingAfterArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tBefore: \u0026konnect.GatewayPluginAppDynamicsOrderingBeforeArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tPartials: konnect.GatewayPluginAppDynamicsPartialArray{\n\t\t\t\t\u0026konnect.GatewayPluginAppDynamicsPartialArgs{\n\t\t\t\t\tId:   pulumi.String(\"...my_id...\"),\n\t\t\t\t\tName: pulumi.String(\"...my_name...\"),\n\t\t\t\t\tPath: pulumi.String(\"...my_path...\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tProtocols: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"grpc\"),\n\t\t\t},\n\t\t\tRoute: \u0026konnect.GatewayPluginAppDynamicsRouteArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tService: \u0026konnect.GatewayPluginAppDynamicsServiceArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"...\"),\n\t\t\t},\n\t\t\tUpdatedAt: pulumi.Float64(7),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.GatewayPluginAppDynamics;\nimport com.pulumi.konnect.GatewayPluginAppDynamicsArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAppDynamicsConsumerArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAppDynamicsOrderingArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAppDynamicsOrderingAfterArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAppDynamicsOrderingBeforeArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAppDynamicsPartialArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAppDynamicsRouteArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAppDynamicsServiceArgs;\nimport static com.pulumi.codegen.internal.Serialization.*;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myGatewaypluginappdynamics = new GatewayPluginAppDynamics(\"myGatewaypluginappdynamics\", GatewayPluginAppDynamicsArgs.builder()\n            .config(Map.of(\"key\", serializeJson(\n                \"value\")))\n            .consumer(GatewayPluginAppDynamicsConsumerArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .controlPlaneId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .createdAt(0.0)\n            .enabled(false)\n            .gatewayPluginAppDynamicsId(\"...my_id...\")\n            .instanceName(\"...my_instance_name...\")\n            .ordering(GatewayPluginAppDynamicsOrderingArgs.builder()\n                .after(GatewayPluginAppDynamicsOrderingAfterArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .before(GatewayPluginAppDynamicsOrderingBeforeArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .build())\n            .partials(GatewayPluginAppDynamicsPartialArgs.builder()\n                .id(\"...my_id...\")\n                .name(\"...my_name...\")\n                .path(\"...my_path...\")\n                .build())\n            .protocols(\"grpc\")\n            .route(GatewayPluginAppDynamicsRouteArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .service(GatewayPluginAppDynamicsServiceArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .tags(\"...\")\n            .updatedAt(7.0)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myGatewaypluginappdynamics:\n    type: konnect:GatewayPluginAppDynamics\n    name: my_gatewaypluginappdynamics\n    properties:\n      config:\n        key:\n          fn::toJSON: value\n      consumer:\n        id: '...my_id...'\n      controlPlaneId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      createdAt: 0\n      enabled: false\n      gatewayPluginAppDynamicsId: '...my_id...'\n      instanceName: '...my_instance_name...'\n      ordering:\n        after:\n          accesses:\n            - '...'\n        before:\n          accesses:\n            - '...'\n      partials:\n        - id: '...my_id...'\n          name: '...my_name...'\n          path: '...my_path...'\n      protocols:\n        - grpc\n      route:\n        id: '...my_id...'\n      service:\n        id: '...my_id...'\n      tags:\n        - '...'\n      updatedAt: 7\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_gateway_plugin_app_dynamics.my_konnect_gateway_plugin_app_dynamics\n\n  id = jsonencode({\n\n    control_plane_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/gatewayPluginAppDynamics:GatewayPluginAppDynamics my_konnect_gateway_plugin_app_dynamics '{\"control_plane_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"}'\n```\n\n","properties":{"config":{"type":"object","additionalProperties":{"type":"string"}},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginAppDynamicsConsumer:GatewayPluginAppDynamicsConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginAppDynamicsId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginAppDynamicsOrdering:GatewayPluginAppDynamicsOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginAppDynamicsPartial:GatewayPluginAppDynamicsPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginAppDynamicsRoute:GatewayPluginAppDynamicsRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginAppDynamicsService:GatewayPluginAppDynamicsService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object","required":["consumer","controlPlaneId","createdAt","enabled","gatewayPluginAppDynamicsId","ordering","protocols","route","service","updatedAt"],"inputProperties":{"config":{"type":"object","additionalProperties":{"type":"string"}},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginAppDynamicsConsumer:GatewayPluginAppDynamicsConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginAppDynamicsId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginAppDynamicsOrdering:GatewayPluginAppDynamicsOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginAppDynamicsPartial:GatewayPluginAppDynamicsPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginAppDynamicsRoute:GatewayPluginAppDynamicsRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginAppDynamicsService:GatewayPluginAppDynamicsService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"requiredInputs":["controlPlaneId"],"stateInputs":{"description":"Input properties used for looking up and filtering GatewayPluginAppDynamics resources.\n","properties":{"config":{"type":"object","additionalProperties":{"type":"string"}},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginAppDynamicsConsumer:GatewayPluginAppDynamicsConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginAppDynamicsId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginAppDynamicsOrdering:GatewayPluginAppDynamicsOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginAppDynamicsPartial:GatewayPluginAppDynamicsPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginAppDynamicsRoute:GatewayPluginAppDynamicsRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginAppDynamicsService:GatewayPluginAppDynamicsService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object"}},"konnect:index/gatewayPluginAwsLambda:GatewayPluginAwsLambda":{"description":"GatewayPluginAwsLambda Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myGatewaypluginawslambda = new konnect.GatewayPluginAwsLambda(\"my_gatewaypluginawslambda\", {\n    config: {\n        awsAssumeRoleArn: \"...my_aws_assume_role_arn...\",\n        awsImdsProtocolVersion: \"v1\",\n        awsKey: \"...my_aws_key...\",\n        awsRegion: \"...my_aws_region...\",\n        awsRoleSessionName: \"...my_aws_role_session_name...\",\n        awsSecret: \"...my_aws_secret...\",\n        awsStsEndpointUrl: \"...my_aws_sts_endpoint_url...\",\n        awsgatewayCompatible: true,\n        awsgatewayCompatiblePayloadVersion: \"1.0\",\n        base64EncodeBody: false,\n        disableHttps: false,\n        emptyArraysMode: \"legacy\",\n        forwardRequestBody: false,\n        forwardRequestHeaders: true,\n        forwardRequestMethod: true,\n        forwardRequestUri: true,\n        functionName: \"...my_function_name...\",\n        host: \"...my_host...\",\n        invocationType: \"DryRun\",\n        isProxyIntegration: false,\n        keepalive: 6.97,\n        logType: \"None\",\n        port: 25235,\n        proxyUrl: \"...my_proxy_url...\",\n        qualifier: \"...my_qualifier...\",\n        skipLargeBodies: false,\n        timeout: 4.31,\n        unhandledStatus: 115,\n    },\n    consumer: {\n        id: \"...my_id...\",\n    },\n    controlPlaneId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    createdAt: 9,\n    enabled: false,\n    gatewayPluginAwsLambdaId: \"...my_id...\",\n    instanceName: \"...my_instance_name...\",\n    ordering: {\n        after: {\n            accesses: [\"...\"],\n        },\n        before: {\n            accesses: [\"...\"],\n        },\n    },\n    partials: [{\n        id: \"...my_id...\",\n        name: \"...my_name...\",\n        path: \"...my_path...\",\n    }],\n    protocols: [\"http\"],\n    route: {\n        id: \"...my_id...\",\n    },\n    service: {\n        id: \"...my_id...\",\n    },\n    tags: [\"...\"],\n    updatedAt: 6,\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_gatewaypluginawslambda = konnect.GatewayPluginAwsLambda(\"my_gatewaypluginawslambda\",\n    config={\n        \"aws_assume_role_arn\": \"...my_aws_assume_role_arn...\",\n        \"aws_imds_protocol_version\": \"v1\",\n        \"aws_key\": \"...my_aws_key...\",\n        \"aws_region\": \"...my_aws_region...\",\n        \"aws_role_session_name\": \"...my_aws_role_session_name...\",\n        \"aws_secret\": \"...my_aws_secret...\",\n        \"aws_sts_endpoint_url\": \"...my_aws_sts_endpoint_url...\",\n        \"awsgateway_compatible\": True,\n        \"awsgateway_compatible_payload_version\": \"1.0\",\n        \"base64_encode_body\": False,\n        \"disable_https\": False,\n        \"empty_arrays_mode\": \"legacy\",\n        \"forward_request_body\": False,\n        \"forward_request_headers\": True,\n        \"forward_request_method\": True,\n        \"forward_request_uri\": True,\n        \"function_name\": \"...my_function_name...\",\n        \"host\": \"...my_host...\",\n        \"invocation_type\": \"DryRun\",\n        \"is_proxy_integration\": False,\n        \"keepalive\": 6.97,\n        \"log_type\": \"None\",\n        \"port\": 25235,\n        \"proxy_url\": \"...my_proxy_url...\",\n        \"qualifier\": \"...my_qualifier...\",\n        \"skip_large_bodies\": False,\n        \"timeout\": 4.31,\n        \"unhandled_status\": 115,\n    },\n    consumer={\n        \"id\": \"...my_id...\",\n    },\n    control_plane_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    created_at=9,\n    enabled=False,\n    gateway_plugin_aws_lambda_id=\"...my_id...\",\n    instance_name=\"...my_instance_name...\",\n    ordering={\n        \"after\": {\n            \"accesses\": [\"...\"],\n        },\n        \"before\": {\n            \"accesses\": [\"...\"],\n        },\n    },\n    partials=[{\n        \"id\": \"...my_id...\",\n        \"name\": \"...my_name...\",\n        \"path\": \"...my_path...\",\n    }],\n    protocols=[\"http\"],\n    route={\n        \"id\": \"...my_id...\",\n    },\n    service={\n        \"id\": \"...my_id...\",\n    },\n    tags=[\"...\"],\n    updated_at=6)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myGatewaypluginawslambda = new Konnect.GatewayPluginAwsLambda(\"my_gatewaypluginawslambda\", new()\n    {\n        Config = new Konnect.Inputs.GatewayPluginAwsLambdaConfigArgs\n        {\n            AwsAssumeRoleArn = \"...my_aws_assume_role_arn...\",\n            AwsImdsProtocolVersion = \"v1\",\n            AwsKey = \"...my_aws_key...\",\n            AwsRegion = \"...my_aws_region...\",\n            AwsRoleSessionName = \"...my_aws_role_session_name...\",\n            AwsSecret = \"...my_aws_secret...\",\n            AwsStsEndpointUrl = \"...my_aws_sts_endpoint_url...\",\n            AwsgatewayCompatible = true,\n            AwsgatewayCompatiblePayloadVersion = \"1.0\",\n            Base64EncodeBody = false,\n            DisableHttps = false,\n            EmptyArraysMode = \"legacy\",\n            ForwardRequestBody = false,\n            ForwardRequestHeaders = true,\n            ForwardRequestMethod = true,\n            ForwardRequestUri = true,\n            FunctionName = \"...my_function_name...\",\n            Host = \"...my_host...\",\n            InvocationType = \"DryRun\",\n            IsProxyIntegration = false,\n            Keepalive = 6.97,\n            LogType = \"None\",\n            Port = 25235,\n            ProxyUrl = \"...my_proxy_url...\",\n            Qualifier = \"...my_qualifier...\",\n            SkipLargeBodies = false,\n            Timeout = 4.31,\n            UnhandledStatus = 115,\n        },\n        Consumer = new Konnect.Inputs.GatewayPluginAwsLambdaConsumerArgs\n        {\n            Id = \"...my_id...\",\n        },\n        ControlPlaneId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        CreatedAt = 9,\n        Enabled = false,\n        GatewayPluginAwsLambdaId = \"...my_id...\",\n        InstanceName = \"...my_instance_name...\",\n        Ordering = new Konnect.Inputs.GatewayPluginAwsLambdaOrderingArgs\n        {\n            After = new Konnect.Inputs.GatewayPluginAwsLambdaOrderingAfterArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n            Before = new Konnect.Inputs.GatewayPluginAwsLambdaOrderingBeforeArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n        },\n        Partials = new[]\n        {\n            new Konnect.Inputs.GatewayPluginAwsLambdaPartialArgs\n            {\n                Id = \"...my_id...\",\n                Name = \"...my_name...\",\n                Path = \"...my_path...\",\n            },\n        },\n        Protocols = new[]\n        {\n            \"http\",\n        },\n        Route = new Konnect.Inputs.GatewayPluginAwsLambdaRouteArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Service = new Konnect.Inputs.GatewayPluginAwsLambdaServiceArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Tags = new[]\n        {\n            \"...\",\n        },\n        UpdatedAt = 6,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewGatewayPluginAwsLambda(ctx, \"my_gatewaypluginawslambda\", \u0026konnect.GatewayPluginAwsLambdaArgs{\n\t\t\tConfig: \u0026konnect.GatewayPluginAwsLambdaConfigArgs{\n\t\t\t\tAwsAssumeRoleArn:                   pulumi.String(\"...my_aws_assume_role_arn...\"),\n\t\t\t\tAwsImdsProtocolVersion:             pulumi.String(\"v1\"),\n\t\t\t\tAwsKey:                             pulumi.String(\"...my_aws_key...\"),\n\t\t\t\tAwsRegion:                          pulumi.String(\"...my_aws_region...\"),\n\t\t\t\tAwsRoleSessionName:                 pulumi.String(\"...my_aws_role_session_name...\"),\n\t\t\t\tAwsSecret:                          pulumi.String(\"...my_aws_secret...\"),\n\t\t\t\tAwsStsEndpointUrl:                  pulumi.String(\"...my_aws_sts_endpoint_url...\"),\n\t\t\t\tAwsgatewayCompatible:               pulumi.Bool(true),\n\t\t\t\tAwsgatewayCompatiblePayloadVersion: pulumi.String(\"1.0\"),\n\t\t\t\tBase64EncodeBody:                   pulumi.Bool(false),\n\t\t\t\tDisableHttps:                       pulumi.Bool(false),\n\t\t\t\tEmptyArraysMode:                    pulumi.String(\"legacy\"),\n\t\t\t\tForwardRequestBody:                 pulumi.Bool(false),\n\t\t\t\tForwardRequestHeaders:              pulumi.Bool(true),\n\t\t\t\tForwardRequestMethod:               pulumi.Bool(true),\n\t\t\t\tForwardRequestUri:                  pulumi.Bool(true),\n\t\t\t\tFunctionName:                       pulumi.String(\"...my_function_name...\"),\n\t\t\t\tHost:                               pulumi.String(\"...my_host...\"),\n\t\t\t\tInvocationType:                     pulumi.String(\"DryRun\"),\n\t\t\t\tIsProxyIntegration:                 pulumi.Bool(false),\n\t\t\t\tKeepalive:                          pulumi.Float64(6.97),\n\t\t\t\tLogType:                            pulumi.String(\"None\"),\n\t\t\t\tPort:                               pulumi.Float64(25235),\n\t\t\t\tProxyUrl:                           pulumi.String(\"...my_proxy_url...\"),\n\t\t\t\tQualifier:                          pulumi.String(\"...my_qualifier...\"),\n\t\t\t\tSkipLargeBodies:                    pulumi.Bool(false),\n\t\t\t\tTimeout:                            pulumi.Float64(4.31),\n\t\t\t\tUnhandledStatus:                    pulumi.Float64(115),\n\t\t\t},\n\t\t\tConsumer: \u0026konnect.GatewayPluginAwsLambdaConsumerArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tControlPlaneId:           pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tCreatedAt:                pulumi.Float64(9),\n\t\t\tEnabled:                  pulumi.Bool(false),\n\t\t\tGatewayPluginAwsLambdaId: pulumi.String(\"...my_id...\"),\n\t\t\tInstanceName:             pulumi.String(\"...my_instance_name...\"),\n\t\t\tOrdering: \u0026konnect.GatewayPluginAwsLambdaOrderingArgs{\n\t\t\t\tAfter: \u0026konnect.GatewayPluginAwsLambdaOrderingAfterArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tBefore: \u0026konnect.GatewayPluginAwsLambdaOrderingBeforeArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tPartials: konnect.GatewayPluginAwsLambdaPartialArray{\n\t\t\t\t\u0026konnect.GatewayPluginAwsLambdaPartialArgs{\n\t\t\t\t\tId:   pulumi.String(\"...my_id...\"),\n\t\t\t\t\tName: pulumi.String(\"...my_name...\"),\n\t\t\t\t\tPath: pulumi.String(\"...my_path...\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tProtocols: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"http\"),\n\t\t\t},\n\t\t\tRoute: \u0026konnect.GatewayPluginAwsLambdaRouteArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tService: \u0026konnect.GatewayPluginAwsLambdaServiceArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"...\"),\n\t\t\t},\n\t\t\tUpdatedAt: pulumi.Float64(6),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.GatewayPluginAwsLambda;\nimport com.pulumi.konnect.GatewayPluginAwsLambdaArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAwsLambdaConfigArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAwsLambdaConsumerArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAwsLambdaOrderingArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAwsLambdaOrderingAfterArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAwsLambdaOrderingBeforeArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAwsLambdaPartialArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAwsLambdaRouteArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAwsLambdaServiceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myGatewaypluginawslambda = new GatewayPluginAwsLambda(\"myGatewaypluginawslambda\", GatewayPluginAwsLambdaArgs.builder()\n            .config(GatewayPluginAwsLambdaConfigArgs.builder()\n                .awsAssumeRoleArn(\"...my_aws_assume_role_arn...\")\n                .awsImdsProtocolVersion(\"v1\")\n                .awsKey(\"...my_aws_key...\")\n                .awsRegion(\"...my_aws_region...\")\n                .awsRoleSessionName(\"...my_aws_role_session_name...\")\n                .awsSecret(\"...my_aws_secret...\")\n                .awsStsEndpointUrl(\"...my_aws_sts_endpoint_url...\")\n                .awsgatewayCompatible(true)\n                .awsgatewayCompatiblePayloadVersion(\"1.0\")\n                .base64EncodeBody(false)\n                .disableHttps(false)\n                .emptyArraysMode(\"legacy\")\n                .forwardRequestBody(false)\n                .forwardRequestHeaders(true)\n                .forwardRequestMethod(true)\n                .forwardRequestUri(true)\n                .functionName(\"...my_function_name...\")\n                .host(\"...my_host...\")\n                .invocationType(\"DryRun\")\n                .isProxyIntegration(false)\n                .keepalive(6.97)\n                .logType(\"None\")\n                .port(25235.0)\n                .proxyUrl(\"...my_proxy_url...\")\n                .qualifier(\"...my_qualifier...\")\n                .skipLargeBodies(false)\n                .timeout(4.31)\n                .unhandledStatus(115.0)\n                .build())\n            .consumer(GatewayPluginAwsLambdaConsumerArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .controlPlaneId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .createdAt(9.0)\n            .enabled(false)\n            .gatewayPluginAwsLambdaId(\"...my_id...\")\n            .instanceName(\"...my_instance_name...\")\n            .ordering(GatewayPluginAwsLambdaOrderingArgs.builder()\n                .after(GatewayPluginAwsLambdaOrderingAfterArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .before(GatewayPluginAwsLambdaOrderingBeforeArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .build())\n            .partials(GatewayPluginAwsLambdaPartialArgs.builder()\n                .id(\"...my_id...\")\n                .name(\"...my_name...\")\n                .path(\"...my_path...\")\n                .build())\n            .protocols(\"http\")\n            .route(GatewayPluginAwsLambdaRouteArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .service(GatewayPluginAwsLambdaServiceArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .tags(\"...\")\n            .updatedAt(6.0)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myGatewaypluginawslambda:\n    type: konnect:GatewayPluginAwsLambda\n    name: my_gatewaypluginawslambda\n    properties:\n      config:\n        awsAssumeRoleArn: '...my_aws_assume_role_arn...'\n        awsImdsProtocolVersion: v1\n        awsKey: '...my_aws_key...'\n        awsRegion: '...my_aws_region...'\n        awsRoleSessionName: '...my_aws_role_session_name...'\n        awsSecret: '...my_aws_secret...'\n        awsStsEndpointUrl: '...my_aws_sts_endpoint_url...'\n        awsgatewayCompatible: true\n        awsgatewayCompatiblePayloadVersion: '1.0'\n        base64EncodeBody: false\n        disableHttps: false\n        emptyArraysMode: legacy\n        forwardRequestBody: false\n        forwardRequestHeaders: true\n        forwardRequestMethod: true\n        forwardRequestUri: true\n        functionName: '...my_function_name...'\n        host: '...my_host...'\n        invocationType: DryRun\n        isProxyIntegration: false\n        keepalive: 6.97\n        logType: None\n        port: 25235\n        proxyUrl: '...my_proxy_url...'\n        qualifier: '...my_qualifier...'\n        skipLargeBodies: false\n        timeout: 4.31\n        unhandledStatus: 115\n      consumer:\n        id: '...my_id...'\n      controlPlaneId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      createdAt: 9\n      enabled: false\n      gatewayPluginAwsLambdaId: '...my_id...'\n      instanceName: '...my_instance_name...'\n      ordering:\n        after:\n          accesses:\n            - '...'\n        before:\n          accesses:\n            - '...'\n      partials:\n        - id: '...my_id...'\n          name: '...my_name...'\n          path: '...my_path...'\n      protocols:\n        - http\n      route:\n        id: '...my_id...'\n      service:\n        id: '...my_id...'\n      tags:\n        - '...'\n      updatedAt: 6\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_gateway_plugin_aws_lambda.my_konnect_gateway_plugin_aws_lambda\n\n  id = jsonencode({\n\n    control_plane_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/gatewayPluginAwsLambda:GatewayPluginAwsLambda my_konnect_gateway_plugin_aws_lambda '{\"control_plane_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"}'\n```\n\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginAwsLambdaConfig:GatewayPluginAwsLambdaConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginAwsLambdaConsumer:GatewayPluginAwsLambdaConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginAwsLambdaId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginAwsLambdaOrdering:GatewayPluginAwsLambdaOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginAwsLambdaPartial:GatewayPluginAwsLambdaPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginAwsLambdaRoute:GatewayPluginAwsLambdaRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginAwsLambdaService:GatewayPluginAwsLambdaService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object","required":["config","consumer","controlPlaneId","createdAt","enabled","gatewayPluginAwsLambdaId","ordering","protocols","route","service","updatedAt"],"inputProperties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginAwsLambdaConfig:GatewayPluginAwsLambdaConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginAwsLambdaConsumer:GatewayPluginAwsLambdaConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginAwsLambdaId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginAwsLambdaOrdering:GatewayPluginAwsLambdaOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginAwsLambdaPartial:GatewayPluginAwsLambdaPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginAwsLambdaRoute:GatewayPluginAwsLambdaRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginAwsLambdaService:GatewayPluginAwsLambdaService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"requiredInputs":["controlPlaneId"],"stateInputs":{"description":"Input properties used for looking up and filtering GatewayPluginAwsLambda resources.\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginAwsLambdaConfig:GatewayPluginAwsLambdaConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginAwsLambdaConsumer:GatewayPluginAwsLambdaConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginAwsLambdaId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginAwsLambdaOrdering:GatewayPluginAwsLambdaOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginAwsLambdaPartial:GatewayPluginAwsLambdaPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginAwsLambdaRoute:GatewayPluginAwsLambdaRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginAwsLambdaService:GatewayPluginAwsLambdaService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object"}},"konnect:index/gatewayPluginAzureFunctions:GatewayPluginAzureFunctions":{"description":"GatewayPluginAzureFunctions Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myGatewaypluginazurefunctions = new konnect.GatewayPluginAzureFunctions(\"my_gatewaypluginazurefunctions\", {\n    config: {\n        apikey: \"...my_apikey...\",\n        appname: \"...my_appname...\",\n        clientid: \"...my_clientid...\",\n        functionname: \"...my_functionname...\",\n        hostdomain: \"...my_hostdomain...\",\n        https: false,\n        httpsVerify: false,\n        keepalive: 4.24,\n        routeprefix: \"...my_routeprefix...\",\n        timeout: 0.71,\n    },\n    consumer: {\n        id: \"...my_id...\",\n    },\n    controlPlaneId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    createdAt: 5,\n    enabled: true,\n    gatewayPluginAzureFunctionsId: \"...my_id...\",\n    instanceName: \"...my_instance_name...\",\n    ordering: {\n        after: {\n            accesses: [\"...\"],\n        },\n        before: {\n            accesses: [\"...\"],\n        },\n    },\n    partials: [{\n        id: \"...my_id...\",\n        name: \"...my_name...\",\n        path: \"...my_path...\",\n    }],\n    protocols: [\"http\"],\n    route: {\n        id: \"...my_id...\",\n    },\n    service: {\n        id: \"...my_id...\",\n    },\n    tags: [\"...\"],\n    updatedAt: 2,\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_gatewaypluginazurefunctions = konnect.GatewayPluginAzureFunctions(\"my_gatewaypluginazurefunctions\",\n    config={\n        \"apikey\": \"...my_apikey...\",\n        \"appname\": \"...my_appname...\",\n        \"clientid\": \"...my_clientid...\",\n        \"functionname\": \"...my_functionname...\",\n        \"hostdomain\": \"...my_hostdomain...\",\n        \"https\": False,\n        \"https_verify\": False,\n        \"keepalive\": 4.24,\n        \"routeprefix\": \"...my_routeprefix...\",\n        \"timeout\": 0.71,\n    },\n    consumer={\n        \"id\": \"...my_id...\",\n    },\n    control_plane_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    created_at=5,\n    enabled=True,\n    gateway_plugin_azure_functions_id=\"...my_id...\",\n    instance_name=\"...my_instance_name...\",\n    ordering={\n        \"after\": {\n            \"accesses\": [\"...\"],\n        },\n        \"before\": {\n            \"accesses\": [\"...\"],\n        },\n    },\n    partials=[{\n        \"id\": \"...my_id...\",\n        \"name\": \"...my_name...\",\n        \"path\": \"...my_path...\",\n    }],\n    protocols=[\"http\"],\n    route={\n        \"id\": \"...my_id...\",\n    },\n    service={\n        \"id\": \"...my_id...\",\n    },\n    tags=[\"...\"],\n    updated_at=2)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myGatewaypluginazurefunctions = new Konnect.GatewayPluginAzureFunctions(\"my_gatewaypluginazurefunctions\", new()\n    {\n        Config = new Konnect.Inputs.GatewayPluginAzureFunctionsConfigArgs\n        {\n            Apikey = \"...my_apikey...\",\n            Appname = \"...my_appname...\",\n            Clientid = \"...my_clientid...\",\n            Functionname = \"...my_functionname...\",\n            Hostdomain = \"...my_hostdomain...\",\n            Https = false,\n            HttpsVerify = false,\n            Keepalive = 4.24,\n            Routeprefix = \"...my_routeprefix...\",\n            Timeout = 0.71,\n        },\n        Consumer = new Konnect.Inputs.GatewayPluginAzureFunctionsConsumerArgs\n        {\n            Id = \"...my_id...\",\n        },\n        ControlPlaneId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        CreatedAt = 5,\n        Enabled = true,\n        GatewayPluginAzureFunctionsId = \"...my_id...\",\n        InstanceName = \"...my_instance_name...\",\n        Ordering = new Konnect.Inputs.GatewayPluginAzureFunctionsOrderingArgs\n        {\n            After = new Konnect.Inputs.GatewayPluginAzureFunctionsOrderingAfterArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n            Before = new Konnect.Inputs.GatewayPluginAzureFunctionsOrderingBeforeArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n        },\n        Partials = new[]\n        {\n            new Konnect.Inputs.GatewayPluginAzureFunctionsPartialArgs\n            {\n                Id = \"...my_id...\",\n                Name = \"...my_name...\",\n                Path = \"...my_path...\",\n            },\n        },\n        Protocols = new[]\n        {\n            \"http\",\n        },\n        Route = new Konnect.Inputs.GatewayPluginAzureFunctionsRouteArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Service = new Konnect.Inputs.GatewayPluginAzureFunctionsServiceArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Tags = new[]\n        {\n            \"...\",\n        },\n        UpdatedAt = 2,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewGatewayPluginAzureFunctions(ctx, \"my_gatewaypluginazurefunctions\", \u0026konnect.GatewayPluginAzureFunctionsArgs{\n\t\t\tConfig: \u0026konnect.GatewayPluginAzureFunctionsConfigArgs{\n\t\t\t\tApikey:       pulumi.String(\"...my_apikey...\"),\n\t\t\t\tAppname:      pulumi.String(\"...my_appname...\"),\n\t\t\t\tClientid:     pulumi.String(\"...my_clientid...\"),\n\t\t\t\tFunctionname: pulumi.String(\"...my_functionname...\"),\n\t\t\t\tHostdomain:   pulumi.String(\"...my_hostdomain...\"),\n\t\t\t\tHttps:        pulumi.Bool(false),\n\t\t\t\tHttpsVerify:  pulumi.Bool(false),\n\t\t\t\tKeepalive:    pulumi.Float64(4.24),\n\t\t\t\tRouteprefix:  pulumi.String(\"...my_routeprefix...\"),\n\t\t\t\tTimeout:      pulumi.Float64(0.71),\n\t\t\t},\n\t\t\tConsumer: \u0026konnect.GatewayPluginAzureFunctionsConsumerArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tControlPlaneId:                pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tCreatedAt:                     pulumi.Float64(5),\n\t\t\tEnabled:                       pulumi.Bool(true),\n\t\t\tGatewayPluginAzureFunctionsId: pulumi.String(\"...my_id...\"),\n\t\t\tInstanceName:                  pulumi.String(\"...my_instance_name...\"),\n\t\t\tOrdering: \u0026konnect.GatewayPluginAzureFunctionsOrderingArgs{\n\t\t\t\tAfter: \u0026konnect.GatewayPluginAzureFunctionsOrderingAfterArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tBefore: \u0026konnect.GatewayPluginAzureFunctionsOrderingBeforeArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tPartials: konnect.GatewayPluginAzureFunctionsPartialArray{\n\t\t\t\t\u0026konnect.GatewayPluginAzureFunctionsPartialArgs{\n\t\t\t\t\tId:   pulumi.String(\"...my_id...\"),\n\t\t\t\t\tName: pulumi.String(\"...my_name...\"),\n\t\t\t\t\tPath: pulumi.String(\"...my_path...\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tProtocols: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"http\"),\n\t\t\t},\n\t\t\tRoute: \u0026konnect.GatewayPluginAzureFunctionsRouteArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tService: \u0026konnect.GatewayPluginAzureFunctionsServiceArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"...\"),\n\t\t\t},\n\t\t\tUpdatedAt: pulumi.Float64(2),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.GatewayPluginAzureFunctions;\nimport com.pulumi.konnect.GatewayPluginAzureFunctionsArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAzureFunctionsConfigArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAzureFunctionsConsumerArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAzureFunctionsOrderingArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAzureFunctionsOrderingAfterArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAzureFunctionsOrderingBeforeArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAzureFunctionsPartialArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAzureFunctionsRouteArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginAzureFunctionsServiceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myGatewaypluginazurefunctions = new GatewayPluginAzureFunctions(\"myGatewaypluginazurefunctions\", GatewayPluginAzureFunctionsArgs.builder()\n            .config(GatewayPluginAzureFunctionsConfigArgs.builder()\n                .apikey(\"...my_apikey...\")\n                .appname(\"...my_appname...\")\n                .clientid(\"...my_clientid...\")\n                .functionname(\"...my_functionname...\")\n                .hostdomain(\"...my_hostdomain...\")\n                .https(false)\n                .httpsVerify(false)\n                .keepalive(4.24)\n                .routeprefix(\"...my_routeprefix...\")\n                .timeout(0.71)\n                .build())\n            .consumer(GatewayPluginAzureFunctionsConsumerArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .controlPlaneId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .createdAt(5.0)\n            .enabled(true)\n            .gatewayPluginAzureFunctionsId(\"...my_id...\")\n            .instanceName(\"...my_instance_name...\")\n            .ordering(GatewayPluginAzureFunctionsOrderingArgs.builder()\n                .after(GatewayPluginAzureFunctionsOrderingAfterArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .before(GatewayPluginAzureFunctionsOrderingBeforeArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .build())\n            .partials(GatewayPluginAzureFunctionsPartialArgs.builder()\n                .id(\"...my_id...\")\n                .name(\"...my_name...\")\n                .path(\"...my_path...\")\n                .build())\n            .protocols(\"http\")\n            .route(GatewayPluginAzureFunctionsRouteArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .service(GatewayPluginAzureFunctionsServiceArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .tags(\"...\")\n            .updatedAt(2.0)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myGatewaypluginazurefunctions:\n    type: konnect:GatewayPluginAzureFunctions\n    name: my_gatewaypluginazurefunctions\n    properties:\n      config:\n        apikey: '...my_apikey...'\n        appname: '...my_appname...'\n        clientid: '...my_clientid...'\n        functionname: '...my_functionname...'\n        hostdomain: '...my_hostdomain...'\n        https: false\n        httpsVerify: false\n        keepalive: 4.24\n        routeprefix: '...my_routeprefix...'\n        timeout: 0.71\n      consumer:\n        id: '...my_id...'\n      controlPlaneId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      createdAt: 5\n      enabled: true\n      gatewayPluginAzureFunctionsId: '...my_id...'\n      instanceName: '...my_instance_name...'\n      ordering:\n        after:\n          accesses:\n            - '...'\n        before:\n          accesses:\n            - '...'\n      partials:\n        - id: '...my_id...'\n          name: '...my_name...'\n          path: '...my_path...'\n      protocols:\n        - http\n      route:\n        id: '...my_id...'\n      service:\n        id: '...my_id...'\n      tags:\n        - '...'\n      updatedAt: 2\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_gateway_plugin_azure_functions.my_konnect_gateway_plugin_azure_functions\n\n  id = jsonencode({\n\n    control_plane_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/gatewayPluginAzureFunctions:GatewayPluginAzureFunctions my_konnect_gateway_plugin_azure_functions '{\"control_plane_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"}'\n```\n\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginAzureFunctionsConfig:GatewayPluginAzureFunctionsConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginAzureFunctionsConsumer:GatewayPluginAzureFunctionsConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginAzureFunctionsId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginAzureFunctionsOrdering:GatewayPluginAzureFunctionsOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginAzureFunctionsPartial:GatewayPluginAzureFunctionsPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginAzureFunctionsRoute:GatewayPluginAzureFunctionsRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginAzureFunctionsService:GatewayPluginAzureFunctionsService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object","required":["config","consumer","controlPlaneId","createdAt","enabled","gatewayPluginAzureFunctionsId","ordering","protocols","route","service","updatedAt"],"inputProperties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginAzureFunctionsConfig:GatewayPluginAzureFunctionsConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginAzureFunctionsConsumer:GatewayPluginAzureFunctionsConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginAzureFunctionsId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginAzureFunctionsOrdering:GatewayPluginAzureFunctionsOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginAzureFunctionsPartial:GatewayPluginAzureFunctionsPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginAzureFunctionsRoute:GatewayPluginAzureFunctionsRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginAzureFunctionsService:GatewayPluginAzureFunctionsService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"requiredInputs":["config","controlPlaneId"],"stateInputs":{"description":"Input properties used for looking up and filtering GatewayPluginAzureFunctions resources.\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginAzureFunctionsConfig:GatewayPluginAzureFunctionsConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginAzureFunctionsConsumer:GatewayPluginAzureFunctionsConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginAzureFunctionsId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginAzureFunctionsOrdering:GatewayPluginAzureFunctionsOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginAzureFunctionsPartial:GatewayPluginAzureFunctionsPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginAzureFunctionsRoute:GatewayPluginAzureFunctionsRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginAzureFunctionsService:GatewayPluginAzureFunctionsService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object"}},"konnect:index/gatewayPluginBasicAuth:GatewayPluginBasicAuth":{"description":"GatewayPluginBasicAuth Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myGatewaypluginbasicauth = new konnect.GatewayPluginBasicAuth(\"my_gatewaypluginbasicauth\", {\n    config: {\n        anonymous: \"...my_anonymous...\",\n        bruteForceProtection: {\n            redis: {\n                cloudAuthentication: {\n                    authProvider: \"azure\",\n                    awsAccessKeyId: \"...my_aws_access_key_id...\",\n                    awsAssumeRoleArn: \"...my_aws_assume_role_arn...\",\n                    awsCacheName: \"...my_aws_cache_name...\",\n                    awsIsServerless: true,\n                    awsRegion: \"...my_aws_region...\",\n                    awsRoleSessionName: \"...my_aws_role_session_name...\",\n                    awsSecretAccessKey: \"...my_aws_secret_access_key...\",\n                    azureClientId: \"...my_azure_client_id...\",\n                    azureClientSecret: \"...my_azure_client_secret...\",\n                    azureTenantId: \"...my_azure_tenant_id...\",\n                    gcpServiceAccountJson: \"...my_gcp_service_account_json...\",\n                },\n                database: 2,\n                host: \"...my_host...\",\n                password: \"...my_password...\",\n                port: 18528,\n                serverName: \"...my_server_name...\",\n                ssl: true,\n                sslVerify: true,\n                timeout: 1835674936,\n                username: \"...my_username...\",\n            },\n            strategy: \"redis\",\n        },\n        hideCredentials: false,\n        realm: \"...my_realm...\",\n    },\n    controlPlaneId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    createdAt: 6,\n    enabled: false,\n    gatewayPluginBasicAuthId: \"...my_id...\",\n    instanceName: \"...my_instance_name...\",\n    ordering: {\n        after: {\n            accesses: [\"...\"],\n        },\n        before: {\n            accesses: [\"...\"],\n        },\n    },\n    partials: [{\n        id: \"...my_id...\",\n        name: \"...my_name...\",\n        path: \"...my_path...\",\n    }],\n    protocols: [\"http\"],\n    route: {\n        id: \"...my_id...\",\n    },\n    service: {\n        id: \"...my_id...\",\n    },\n    tags: [\"...\"],\n    updatedAt: 10,\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_gatewaypluginbasicauth = konnect.GatewayPluginBasicAuth(\"my_gatewaypluginbasicauth\",\n    config={\n        \"anonymous\": \"...my_anonymous...\",\n        \"brute_force_protection\": {\n            \"redis\": {\n                \"cloud_authentication\": {\n                    \"auth_provider\": \"azure\",\n                    \"aws_access_key_id\": \"...my_aws_access_key_id...\",\n                    \"aws_assume_role_arn\": \"...my_aws_assume_role_arn...\",\n                    \"aws_cache_name\": \"...my_aws_cache_name...\",\n                    \"aws_is_serverless\": True,\n                    \"aws_region\": \"...my_aws_region...\",\n                    \"aws_role_session_name\": \"...my_aws_role_session_name...\",\n                    \"aws_secret_access_key\": \"...my_aws_secret_access_key...\",\n                    \"azure_client_id\": \"...my_azure_client_id...\",\n                    \"azure_client_secret\": \"...my_azure_client_secret...\",\n                    \"azure_tenant_id\": \"...my_azure_tenant_id...\",\n                    \"gcp_service_account_json\": \"...my_gcp_service_account_json...\",\n                },\n                \"database\": 2,\n                \"host\": \"...my_host...\",\n                \"password\": \"...my_password...\",\n                \"port\": 18528,\n                \"server_name\": \"...my_server_name...\",\n                \"ssl\": True,\n                \"ssl_verify\": True,\n                \"timeout\": 1835674936,\n                \"username\": \"...my_username...\",\n            },\n            \"strategy\": \"redis\",\n        },\n        \"hide_credentials\": False,\n        \"realm\": \"...my_realm...\",\n    },\n    control_plane_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    created_at=6,\n    enabled=False,\n    gateway_plugin_basic_auth_id=\"...my_id...\",\n    instance_name=\"...my_instance_name...\",\n    ordering={\n        \"after\": {\n            \"accesses\": [\"...\"],\n        },\n        \"before\": {\n            \"accesses\": [\"...\"],\n        },\n    },\n    partials=[{\n        \"id\": \"...my_id...\",\n        \"name\": \"...my_name...\",\n        \"path\": \"...my_path...\",\n    }],\n    protocols=[\"http\"],\n    route={\n        \"id\": \"...my_id...\",\n    },\n    service={\n        \"id\": \"...my_id...\",\n    },\n    tags=[\"...\"],\n    updated_at=10)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myGatewaypluginbasicauth = new Konnect.GatewayPluginBasicAuth(\"my_gatewaypluginbasicauth\", new()\n    {\n        Config = new Konnect.Inputs.GatewayPluginBasicAuthConfigArgs\n        {\n            Anonymous = \"...my_anonymous...\",\n            BruteForceProtection = new Konnect.Inputs.GatewayPluginBasicAuthConfigBruteForceProtectionArgs\n            {\n                Redis = new Konnect.Inputs.GatewayPluginBasicAuthConfigBruteForceProtectionRedisArgs\n                {\n                    CloudAuthentication = new Konnect.Inputs.GatewayPluginBasicAuthConfigBruteForceProtectionRedisCloudAuthenticationArgs\n                    {\n                        AuthProvider = \"azure\",\n                        AwsAccessKeyId = \"...my_aws_access_key_id...\",\n                        AwsAssumeRoleArn = \"...my_aws_assume_role_arn...\",\n                        AwsCacheName = \"...my_aws_cache_name...\",\n                        AwsIsServerless = true,\n                        AwsRegion = \"...my_aws_region...\",\n                        AwsRoleSessionName = \"...my_aws_role_session_name...\",\n                        AwsSecretAccessKey = \"...my_aws_secret_access_key...\",\n                        AzureClientId = \"...my_azure_client_id...\",\n                        AzureClientSecret = \"...my_azure_client_secret...\",\n                        AzureTenantId = \"...my_azure_tenant_id...\",\n                        GcpServiceAccountJson = \"...my_gcp_service_account_json...\",\n                    },\n                    Database = 2,\n                    Host = \"...my_host...\",\n                    Password = \"...my_password...\",\n                    Port = 18528,\n                    ServerName = \"...my_server_name...\",\n                    Ssl = true,\n                    SslVerify = true,\n                    Timeout = 1835674936,\n                    Username = \"...my_username...\",\n                },\n                Strategy = \"redis\",\n            },\n            HideCredentials = false,\n            Realm = \"...my_realm...\",\n        },\n        ControlPlaneId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        CreatedAt = 6,\n        Enabled = false,\n        GatewayPluginBasicAuthId = \"...my_id...\",\n        InstanceName = \"...my_instance_name...\",\n        Ordering = new Konnect.Inputs.GatewayPluginBasicAuthOrderingArgs\n        {\n            After = new Konnect.Inputs.GatewayPluginBasicAuthOrderingAfterArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n            Before = new Konnect.Inputs.GatewayPluginBasicAuthOrderingBeforeArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n        },\n        Partials = new[]\n        {\n            new Konnect.Inputs.GatewayPluginBasicAuthPartialArgs\n            {\n                Id = \"...my_id...\",\n                Name = \"...my_name...\",\n                Path = \"...my_path...\",\n            },\n        },\n        Protocols = new[]\n        {\n            \"http\",\n        },\n        Route = new Konnect.Inputs.GatewayPluginBasicAuthRouteArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Service = new Konnect.Inputs.GatewayPluginBasicAuthServiceArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Tags = new[]\n        {\n            \"...\",\n        },\n        UpdatedAt = 10,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewGatewayPluginBasicAuth(ctx, \"my_gatewaypluginbasicauth\", \u0026konnect.GatewayPluginBasicAuthArgs{\n\t\t\tConfig: \u0026konnect.GatewayPluginBasicAuthConfigArgs{\n\t\t\t\tAnonymous: pulumi.String(\"...my_anonymous...\"),\n\t\t\t\tBruteForceProtection: \u0026konnect.GatewayPluginBasicAuthConfigBruteForceProtectionArgs{\n\t\t\t\t\tRedis: \u0026konnect.GatewayPluginBasicAuthConfigBruteForceProtectionRedisArgs{\n\t\t\t\t\t\tCloudAuthentication: \u0026konnect.GatewayPluginBasicAuthConfigBruteForceProtectionRedisCloudAuthenticationArgs{\n\t\t\t\t\t\t\tAuthProvider:          pulumi.String(\"azure\"),\n\t\t\t\t\t\t\tAwsAccessKeyId:        pulumi.String(\"...my_aws_access_key_id...\"),\n\t\t\t\t\t\t\tAwsAssumeRoleArn:      pulumi.String(\"...my_aws_assume_role_arn...\"),\n\t\t\t\t\t\t\tAwsCacheName:          pulumi.String(\"...my_aws_cache_name...\"),\n\t\t\t\t\t\t\tAwsIsServerless:       pulumi.Bool(true),\n\t\t\t\t\t\t\tAwsRegion:             pulumi.String(\"...my_aws_region...\"),\n\t\t\t\t\t\t\tAwsRoleSessionName:    pulumi.String(\"...my_aws_role_session_name...\"),\n\t\t\t\t\t\t\tAwsSecretAccessKey:    pulumi.String(\"...my_aws_secret_access_key...\"),\n\t\t\t\t\t\t\tAzureClientId:         pulumi.String(\"...my_azure_client_id...\"),\n\t\t\t\t\t\t\tAzureClientSecret:     pulumi.String(\"...my_azure_client_secret...\"),\n\t\t\t\t\t\t\tAzureTenantId:         pulumi.String(\"...my_azure_tenant_id...\"),\n\t\t\t\t\t\t\tGcpServiceAccountJson: pulumi.String(\"...my_gcp_service_account_json...\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\tDatabase:   pulumi.Float64(2),\n\t\t\t\t\t\tHost:       pulumi.String(\"...my_host...\"),\n\t\t\t\t\t\tPassword:   pulumi.String(\"...my_password...\"),\n\t\t\t\t\t\tPort:       pulumi.Float64(18528),\n\t\t\t\t\t\tServerName: pulumi.String(\"...my_server_name...\"),\n\t\t\t\t\t\tSsl:        pulumi.Bool(true),\n\t\t\t\t\t\tSslVerify:  pulumi.Bool(true),\n\t\t\t\t\t\tTimeout:    pulumi.Float64(1835674936),\n\t\t\t\t\t\tUsername:   pulumi.String(\"...my_username...\"),\n\t\t\t\t\t},\n\t\t\t\t\tStrategy: pulumi.String(\"redis\"),\n\t\t\t\t},\n\t\t\t\tHideCredentials: pulumi.Bool(false),\n\t\t\t\tRealm:           pulumi.String(\"...my_realm...\"),\n\t\t\t},\n\t\t\tControlPlaneId:           pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tCreatedAt:                pulumi.Float64(6),\n\t\t\tEnabled:                  pulumi.Bool(false),\n\t\t\tGatewayPluginBasicAuthId: pulumi.String(\"...my_id...\"),\n\t\t\tInstanceName:             pulumi.String(\"...my_instance_name...\"),\n\t\t\tOrdering: \u0026konnect.GatewayPluginBasicAuthOrderingArgs{\n\t\t\t\tAfter: \u0026konnect.GatewayPluginBasicAuthOrderingAfterArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tBefore: \u0026konnect.GatewayPluginBasicAuthOrderingBeforeArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tPartials: konnect.GatewayPluginBasicAuthPartialArray{\n\t\t\t\t\u0026konnect.GatewayPluginBasicAuthPartialArgs{\n\t\t\t\t\tId:   pulumi.String(\"...my_id...\"),\n\t\t\t\t\tName: pulumi.String(\"...my_name...\"),\n\t\t\t\t\tPath: pulumi.String(\"...my_path...\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tProtocols: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"http\"),\n\t\t\t},\n\t\t\tRoute: \u0026konnect.GatewayPluginBasicAuthRouteArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tService: \u0026konnect.GatewayPluginBasicAuthServiceArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"...\"),\n\t\t\t},\n\t\t\tUpdatedAt: pulumi.Float64(10),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.GatewayPluginBasicAuth;\nimport com.pulumi.konnect.GatewayPluginBasicAuthArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginBasicAuthConfigArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginBasicAuthConfigBruteForceProtectionArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginBasicAuthConfigBruteForceProtectionRedisArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginBasicAuthConfigBruteForceProtectionRedisCloudAuthenticationArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginBasicAuthOrderingArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginBasicAuthOrderingAfterArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginBasicAuthOrderingBeforeArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginBasicAuthPartialArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginBasicAuthRouteArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginBasicAuthServiceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myGatewaypluginbasicauth = new GatewayPluginBasicAuth(\"myGatewaypluginbasicauth\", GatewayPluginBasicAuthArgs.builder()\n            .config(GatewayPluginBasicAuthConfigArgs.builder()\n                .anonymous(\"...my_anonymous...\")\n                .bruteForceProtection(GatewayPluginBasicAuthConfigBruteForceProtectionArgs.builder()\n                    .redis(GatewayPluginBasicAuthConfigBruteForceProtectionRedisArgs.builder()\n                        .cloudAuthentication(GatewayPluginBasicAuthConfigBruteForceProtectionRedisCloudAuthenticationArgs.builder()\n                            .authProvider(\"azure\")\n                            .awsAccessKeyId(\"...my_aws_access_key_id...\")\n                            .awsAssumeRoleArn(\"...my_aws_assume_role_arn...\")\n                            .awsCacheName(\"...my_aws_cache_name...\")\n                            .awsIsServerless(true)\n                            .awsRegion(\"...my_aws_region...\")\n                            .awsRoleSessionName(\"...my_aws_role_session_name...\")\n                            .awsSecretAccessKey(\"...my_aws_secret_access_key...\")\n                            .azureClientId(\"...my_azure_client_id...\")\n                            .azureClientSecret(\"...my_azure_client_secret...\")\n                            .azureTenantId(\"...my_azure_tenant_id...\")\n                            .gcpServiceAccountJson(\"...my_gcp_service_account_json...\")\n                            .build())\n                        .database(2.0)\n                        .host(\"...my_host...\")\n                        .password(\"...my_password...\")\n                        .port(18528.0)\n                        .serverName(\"...my_server_name...\")\n                        .ssl(true)\n                        .sslVerify(true)\n                        .timeout(1835674936.0)\n                        .username(\"...my_username...\")\n                        .build())\n                    .strategy(\"redis\")\n                    .build())\n                .hideCredentials(false)\n                .realm(\"...my_realm...\")\n                .build())\n            .controlPlaneId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .createdAt(6.0)\n            .enabled(false)\n            .gatewayPluginBasicAuthId(\"...my_id...\")\n            .instanceName(\"...my_instance_name...\")\n            .ordering(GatewayPluginBasicAuthOrderingArgs.builder()\n                .after(GatewayPluginBasicAuthOrderingAfterArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .before(GatewayPluginBasicAuthOrderingBeforeArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .build())\n            .partials(GatewayPluginBasicAuthPartialArgs.builder()\n                .id(\"...my_id...\")\n                .name(\"...my_name...\")\n                .path(\"...my_path...\")\n                .build())\n            .protocols(\"http\")\n            .route(GatewayPluginBasicAuthRouteArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .service(GatewayPluginBasicAuthServiceArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .tags(\"...\")\n            .updatedAt(10.0)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myGatewaypluginbasicauth:\n    type: konnect:GatewayPluginBasicAuth\n    name: my_gatewaypluginbasicauth\n    properties:\n      config:\n        anonymous: '...my_anonymous...'\n        bruteForceProtection:\n          redis:\n            cloudAuthentication:\n              authProvider: azure\n              awsAccessKeyId: '...my_aws_access_key_id...'\n              awsAssumeRoleArn: '...my_aws_assume_role_arn...'\n              awsCacheName: '...my_aws_cache_name...'\n              awsIsServerless: true\n              awsRegion: '...my_aws_region...'\n              awsRoleSessionName: '...my_aws_role_session_name...'\n              awsSecretAccessKey: '...my_aws_secret_access_key...'\n              azureClientId: '...my_azure_client_id...'\n              azureClientSecret: '...my_azure_client_secret...'\n              azureTenantId: '...my_azure_tenant_id...'\n              gcpServiceAccountJson: '...my_gcp_service_account_json...'\n            database: 2\n            host: '...my_host...'\n            password: '...my_password...'\n            port: 18528\n            serverName: '...my_server_name...'\n            ssl: true\n            sslVerify: true\n            timeout: 1.835674936e+09\n            username: '...my_username...'\n          strategy: redis\n        hideCredentials: false\n        realm: '...my_realm...'\n      controlPlaneId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      createdAt: 6\n      enabled: false\n      gatewayPluginBasicAuthId: '...my_id...'\n      instanceName: '...my_instance_name...'\n      ordering:\n        after:\n          accesses:\n            - '...'\n        before:\n          accesses:\n            - '...'\n      partials:\n        - id: '...my_id...'\n          name: '...my_name...'\n          path: '...my_path...'\n      protocols:\n        - http\n      route:\n        id: '...my_id...'\n      service:\n        id: '...my_id...'\n      tags:\n        - '...'\n      updatedAt: 10\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_gateway_plugin_basic_auth.my_konnect_gateway_plugin_basic_auth\n\n  id = jsonencode({\n\n    control_plane_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/gatewayPluginBasicAuth:GatewayPluginBasicAuth my_konnect_gateway_plugin_basic_auth '{\"control_plane_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"}'\n```\n\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginBasicAuthConfig:GatewayPluginBasicAuthConfig"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginBasicAuthId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginBasicAuthOrdering:GatewayPluginBasicAuthOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginBasicAuthPartial:GatewayPluginBasicAuthPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A list of the request protocols that will trigger this plugin. The default value, as well as the possible values allowed on this field, may change depending on the plugin type. For example, plugins that only work in stream mode will only support tcp and tls. Default: [\"grpc\",\"grpcs\",\"http\",\"https\",\"ws\",\"wss\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginBasicAuthRoute:GatewayPluginBasicAuthRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginBasicAuthService:GatewayPluginBasicAuthService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object","required":["config","controlPlaneId","createdAt","enabled","gatewayPluginBasicAuthId","ordering","protocols","route","service","updatedAt"],"inputProperties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginBasicAuthConfig:GatewayPluginBasicAuthConfig"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginBasicAuthId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginBasicAuthOrdering:GatewayPluginBasicAuthOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginBasicAuthPartial:GatewayPluginBasicAuthPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A list of the request protocols that will trigger this plugin. The default value, as well as the possible values allowed on this field, may change depending on the plugin type. For example, plugins that only work in stream mode will only support tcp and tls. Default: [\"grpc\",\"grpcs\",\"http\",\"https\",\"ws\",\"wss\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginBasicAuthRoute:GatewayPluginBasicAuthRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginBasicAuthService:GatewayPluginBasicAuthService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"requiredInputs":["controlPlaneId"],"stateInputs":{"description":"Input properties used for looking up and filtering GatewayPluginBasicAuth resources.\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginBasicAuthConfig:GatewayPluginBasicAuthConfig"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginBasicAuthId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginBasicAuthOrdering:GatewayPluginBasicAuthOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginBasicAuthPartial:GatewayPluginBasicAuthPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A list of the request protocols that will trigger this plugin. The default value, as well as the possible values allowed on this field, may change depending on the plugin type. For example, plugins that only work in stream mode will only support tcp and tls. Default: [\"grpc\",\"grpcs\",\"http\",\"https\",\"ws\",\"wss\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginBasicAuthRoute:GatewayPluginBasicAuthRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginBasicAuthService:GatewayPluginBasicAuthService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object"}},"konnect:index/gatewayPluginBotDetection:GatewayPluginBotDetection":{"description":"GatewayPluginBotDetection Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myGatewaypluginbotdetection = new konnect.GatewayPluginBotDetection(\"my_gatewaypluginbotdetection\", {\n    config: {\n        allows: [\"...\"],\n        denies: [\"...\"],\n    },\n    controlPlaneId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    createdAt: 4,\n    enabled: true,\n    gatewayPluginBotDetectionId: \"...my_id...\",\n    instanceName: \"...my_instance_name...\",\n    ordering: {\n        after: {\n            accesses: [\"...\"],\n        },\n        before: {\n            accesses: [\"...\"],\n        },\n    },\n    partials: [{\n        id: \"...my_id...\",\n        name: \"...my_name...\",\n        path: \"...my_path...\",\n    }],\n    protocols: [\"https\"],\n    route: {\n        id: \"...my_id...\",\n    },\n    service: {\n        id: \"...my_id...\",\n    },\n    tags: [\"...\"],\n    updatedAt: 5,\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_gatewaypluginbotdetection = konnect.GatewayPluginBotDetection(\"my_gatewaypluginbotdetection\",\n    config={\n        \"allows\": [\"...\"],\n        \"denies\": [\"...\"],\n    },\n    control_plane_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    created_at=4,\n    enabled=True,\n    gateway_plugin_bot_detection_id=\"...my_id...\",\n    instance_name=\"...my_instance_name...\",\n    ordering={\n        \"after\": {\n            \"accesses\": [\"...\"],\n        },\n        \"before\": {\n            \"accesses\": [\"...\"],\n        },\n    },\n    partials=[{\n        \"id\": \"...my_id...\",\n        \"name\": \"...my_name...\",\n        \"path\": \"...my_path...\",\n    }],\n    protocols=[\"https\"],\n    route={\n        \"id\": \"...my_id...\",\n    },\n    service={\n        \"id\": \"...my_id...\",\n    },\n    tags=[\"...\"],\n    updated_at=5)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myGatewaypluginbotdetection = new Konnect.GatewayPluginBotDetection(\"my_gatewaypluginbotdetection\", new()\n    {\n        Config = new Konnect.Inputs.GatewayPluginBotDetectionConfigArgs\n        {\n            Allows = new[]\n            {\n                \"...\",\n            },\n            Denies = new[]\n            {\n                \"...\",\n            },\n        },\n        ControlPlaneId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        CreatedAt = 4,\n        Enabled = true,\n        GatewayPluginBotDetectionId = \"...my_id...\",\n        InstanceName = \"...my_instance_name...\",\n        Ordering = new Konnect.Inputs.GatewayPluginBotDetectionOrderingArgs\n        {\n            After = new Konnect.Inputs.GatewayPluginBotDetectionOrderingAfterArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n            Before = new Konnect.Inputs.GatewayPluginBotDetectionOrderingBeforeArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n        },\n        Partials = new[]\n        {\n            new Konnect.Inputs.GatewayPluginBotDetectionPartialArgs\n            {\n                Id = \"...my_id...\",\n                Name = \"...my_name...\",\n                Path = \"...my_path...\",\n            },\n        },\n        Protocols = new[]\n        {\n            \"https\",\n        },\n        Route = new Konnect.Inputs.GatewayPluginBotDetectionRouteArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Service = new Konnect.Inputs.GatewayPluginBotDetectionServiceArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Tags = new[]\n        {\n            \"...\",\n        },\n        UpdatedAt = 5,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewGatewayPluginBotDetection(ctx, \"my_gatewaypluginbotdetection\", \u0026konnect.GatewayPluginBotDetectionArgs{\n\t\t\tConfig: \u0026konnect.GatewayPluginBotDetectionConfigArgs{\n\t\t\t\tAllows: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tDenies: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tControlPlaneId:              pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tCreatedAt:                   pulumi.Float64(4),\n\t\t\tEnabled:                     pulumi.Bool(true),\n\t\t\tGatewayPluginBotDetectionId: pulumi.String(\"...my_id...\"),\n\t\t\tInstanceName:                pulumi.String(\"...my_instance_name...\"),\n\t\t\tOrdering: \u0026konnect.GatewayPluginBotDetectionOrderingArgs{\n\t\t\t\tAfter: \u0026konnect.GatewayPluginBotDetectionOrderingAfterArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tBefore: \u0026konnect.GatewayPluginBotDetectionOrderingBeforeArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tPartials: konnect.GatewayPluginBotDetectionPartialArray{\n\t\t\t\t\u0026konnect.GatewayPluginBotDetectionPartialArgs{\n\t\t\t\t\tId:   pulumi.String(\"...my_id...\"),\n\t\t\t\t\tName: pulumi.String(\"...my_name...\"),\n\t\t\t\t\tPath: pulumi.String(\"...my_path...\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tProtocols: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"https\"),\n\t\t\t},\n\t\t\tRoute: \u0026konnect.GatewayPluginBotDetectionRouteArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tService: \u0026konnect.GatewayPluginBotDetectionServiceArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"...\"),\n\t\t\t},\n\t\t\tUpdatedAt: pulumi.Float64(5),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.GatewayPluginBotDetection;\nimport com.pulumi.konnect.GatewayPluginBotDetectionArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginBotDetectionConfigArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginBotDetectionOrderingArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginBotDetectionOrderingAfterArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginBotDetectionOrderingBeforeArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginBotDetectionPartialArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginBotDetectionRouteArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginBotDetectionServiceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myGatewaypluginbotdetection = new GatewayPluginBotDetection(\"myGatewaypluginbotdetection\", GatewayPluginBotDetectionArgs.builder()\n            .config(GatewayPluginBotDetectionConfigArgs.builder()\n                .allows(\"...\")\n                .denies(\"...\")\n                .build())\n            .controlPlaneId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .createdAt(4.0)\n            .enabled(true)\n            .gatewayPluginBotDetectionId(\"...my_id...\")\n            .instanceName(\"...my_instance_name...\")\n            .ordering(GatewayPluginBotDetectionOrderingArgs.builder()\n                .after(GatewayPluginBotDetectionOrderingAfterArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .before(GatewayPluginBotDetectionOrderingBeforeArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .build())\n            .partials(GatewayPluginBotDetectionPartialArgs.builder()\n                .id(\"...my_id...\")\n                .name(\"...my_name...\")\n                .path(\"...my_path...\")\n                .build())\n            .protocols(\"https\")\n            .route(GatewayPluginBotDetectionRouteArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .service(GatewayPluginBotDetectionServiceArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .tags(\"...\")\n            .updatedAt(5.0)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myGatewaypluginbotdetection:\n    type: konnect:GatewayPluginBotDetection\n    name: my_gatewaypluginbotdetection\n    properties:\n      config:\n        allows:\n          - '...'\n        denies:\n          - '...'\n      controlPlaneId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      createdAt: 4\n      enabled: true\n      gatewayPluginBotDetectionId: '...my_id...'\n      instanceName: '...my_instance_name...'\n      ordering:\n        after:\n          accesses:\n            - '...'\n        before:\n          accesses:\n            - '...'\n      partials:\n        - id: '...my_id...'\n          name: '...my_name...'\n          path: '...my_path...'\n      protocols:\n        - https\n      route:\n        id: '...my_id...'\n      service:\n        id: '...my_id...'\n      tags:\n        - '...'\n      updatedAt: 5\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_gateway_plugin_bot_detection.my_konnect_gateway_plugin_bot_detection\n\n  id = jsonencode({\n\n    control_plane_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/gatewayPluginBotDetection:GatewayPluginBotDetection my_konnect_gateway_plugin_bot_detection '{\"control_plane_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"}'\n```\n\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginBotDetectionConfig:GatewayPluginBotDetectionConfig"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginBotDetectionId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginBotDetectionOrdering:GatewayPluginBotDetectionOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginBotDetectionPartial:GatewayPluginBotDetectionPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginBotDetectionRoute:GatewayPluginBotDetectionRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginBotDetectionService:GatewayPluginBotDetectionService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object","required":["config","controlPlaneId","createdAt","enabled","gatewayPluginBotDetectionId","ordering","protocols","route","service","updatedAt"],"inputProperties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginBotDetectionConfig:GatewayPluginBotDetectionConfig"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginBotDetectionId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginBotDetectionOrdering:GatewayPluginBotDetectionOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginBotDetectionPartial:GatewayPluginBotDetectionPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginBotDetectionRoute:GatewayPluginBotDetectionRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginBotDetectionService:GatewayPluginBotDetectionService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"requiredInputs":["controlPlaneId"],"stateInputs":{"description":"Input properties used for looking up and filtering GatewayPluginBotDetection resources.\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginBotDetectionConfig:GatewayPluginBotDetectionConfig"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginBotDetectionId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginBotDetectionOrdering:GatewayPluginBotDetectionOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginBotDetectionPartial:GatewayPluginBotDetectionPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginBotDetectionRoute:GatewayPluginBotDetectionRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginBotDetectionService:GatewayPluginBotDetectionService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object"}},"konnect:index/gatewayPluginCanary:GatewayPluginCanary":{"description":"GatewayPluginCanary Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myGatewayplugincanary = new konnect.GatewayPluginCanary(\"my_gatewayplugincanary\", {\n    config: {\n        canaryByHeaderName: \"...my_canary_by_header_name...\",\n        duration: 0.88,\n        groups: [\"...\"],\n        hash: \"ip\",\n        hashHeader: \"...my_hash_header...\",\n        percentage: 35.35,\n        start: 7.39,\n        steps: 5.98,\n        upstreamFallback: false,\n        upstreamHost: \"...my_upstream_host...\",\n        upstreamPort: 15742,\n        upstreamUri: \"...my_upstream_uri...\",\n    },\n    controlPlaneId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    createdAt: 10,\n    enabled: false,\n    gatewayPluginCanaryId: \"...my_id...\",\n    instanceName: \"...my_instance_name...\",\n    ordering: {\n        after: {\n            accesses: [\"...\"],\n        },\n        before: {\n            accesses: [\"...\"],\n        },\n    },\n    partials: [{\n        id: \"...my_id...\",\n        name: \"...my_name...\",\n        path: \"...my_path...\",\n    }],\n    protocols: [\"grpc\"],\n    route: {\n        id: \"...my_id...\",\n    },\n    service: {\n        id: \"...my_id...\",\n    },\n    tags: [\"...\"],\n    updatedAt: 4,\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_gatewayplugincanary = konnect.GatewayPluginCanary(\"my_gatewayplugincanary\",\n    config={\n        \"canary_by_header_name\": \"...my_canary_by_header_name...\",\n        \"duration\": 0.88,\n        \"groups\": [\"...\"],\n        \"hash\": \"ip\",\n        \"hash_header\": \"...my_hash_header...\",\n        \"percentage\": 35.35,\n        \"start\": 7.39,\n        \"steps\": 5.98,\n        \"upstream_fallback\": False,\n        \"upstream_host\": \"...my_upstream_host...\",\n        \"upstream_port\": 15742,\n        \"upstream_uri\": \"...my_upstream_uri...\",\n    },\n    control_plane_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    created_at=10,\n    enabled=False,\n    gateway_plugin_canary_id=\"...my_id...\",\n    instance_name=\"...my_instance_name...\",\n    ordering={\n        \"after\": {\n            \"accesses\": [\"...\"],\n        },\n        \"before\": {\n            \"accesses\": [\"...\"],\n        },\n    },\n    partials=[{\n        \"id\": \"...my_id...\",\n        \"name\": \"...my_name...\",\n        \"path\": \"...my_path...\",\n    }],\n    protocols=[\"grpc\"],\n    route={\n        \"id\": \"...my_id...\",\n    },\n    service={\n        \"id\": \"...my_id...\",\n    },\n    tags=[\"...\"],\n    updated_at=4)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myGatewayplugincanary = new Konnect.GatewayPluginCanary(\"my_gatewayplugincanary\", new()\n    {\n        Config = new Konnect.Inputs.GatewayPluginCanaryConfigArgs\n        {\n            CanaryByHeaderName = \"...my_canary_by_header_name...\",\n            Duration = 0.88,\n            Groups = new[]\n            {\n                \"...\",\n            },\n            Hash = \"ip\",\n            HashHeader = \"...my_hash_header...\",\n            Percentage = 35.35,\n            Start = 7.39,\n            Steps = 5.98,\n            UpstreamFallback = false,\n            UpstreamHost = \"...my_upstream_host...\",\n            UpstreamPort = 15742,\n            UpstreamUri = \"...my_upstream_uri...\",\n        },\n        ControlPlaneId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        CreatedAt = 10,\n        Enabled = false,\n        GatewayPluginCanaryId = \"...my_id...\",\n        InstanceName = \"...my_instance_name...\",\n        Ordering = new Konnect.Inputs.GatewayPluginCanaryOrderingArgs\n        {\n            After = new Konnect.Inputs.GatewayPluginCanaryOrderingAfterArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n            Before = new Konnect.Inputs.GatewayPluginCanaryOrderingBeforeArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n        },\n        Partials = new[]\n        {\n            new Konnect.Inputs.GatewayPluginCanaryPartialArgs\n            {\n                Id = \"...my_id...\",\n                Name = \"...my_name...\",\n                Path = \"...my_path...\",\n            },\n        },\n        Protocols = new[]\n        {\n            \"grpc\",\n        },\n        Route = new Konnect.Inputs.GatewayPluginCanaryRouteArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Service = new Konnect.Inputs.GatewayPluginCanaryServiceArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Tags = new[]\n        {\n            \"...\",\n        },\n        UpdatedAt = 4,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewGatewayPluginCanary(ctx, \"my_gatewayplugincanary\", \u0026konnect.GatewayPluginCanaryArgs{\n\t\t\tConfig: \u0026konnect.GatewayPluginCanaryConfigArgs{\n\t\t\t\tCanaryByHeaderName: pulumi.String(\"...my_canary_by_header_name...\"),\n\t\t\t\tDuration:           pulumi.Float64(0.88),\n\t\t\t\tGroups: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tHash:             pulumi.String(\"ip\"),\n\t\t\t\tHashHeader:       pulumi.String(\"...my_hash_header...\"),\n\t\t\t\tPercentage:       pulumi.Float64(35.35),\n\t\t\t\tStart:            pulumi.Float64(7.39),\n\t\t\t\tSteps:            pulumi.Float64(5.98),\n\t\t\t\tUpstreamFallback: pulumi.Bool(false),\n\t\t\t\tUpstreamHost:     pulumi.String(\"...my_upstream_host...\"),\n\t\t\t\tUpstreamPort:     pulumi.Float64(15742),\n\t\t\t\tUpstreamUri:      pulumi.String(\"...my_upstream_uri...\"),\n\t\t\t},\n\t\t\tControlPlaneId:        pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tCreatedAt:             pulumi.Float64(10),\n\t\t\tEnabled:               pulumi.Bool(false),\n\t\t\tGatewayPluginCanaryId: pulumi.String(\"...my_id...\"),\n\t\t\tInstanceName:          pulumi.String(\"...my_instance_name...\"),\n\t\t\tOrdering: \u0026konnect.GatewayPluginCanaryOrderingArgs{\n\t\t\t\tAfter: \u0026konnect.GatewayPluginCanaryOrderingAfterArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tBefore: \u0026konnect.GatewayPluginCanaryOrderingBeforeArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tPartials: konnect.GatewayPluginCanaryPartialArray{\n\t\t\t\t\u0026konnect.GatewayPluginCanaryPartialArgs{\n\t\t\t\t\tId:   pulumi.String(\"...my_id...\"),\n\t\t\t\t\tName: pulumi.String(\"...my_name...\"),\n\t\t\t\t\tPath: pulumi.String(\"...my_path...\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tProtocols: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"grpc\"),\n\t\t\t},\n\t\t\tRoute: \u0026konnect.GatewayPluginCanaryRouteArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tService: \u0026konnect.GatewayPluginCanaryServiceArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"...\"),\n\t\t\t},\n\t\t\tUpdatedAt: pulumi.Float64(4),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.GatewayPluginCanary;\nimport com.pulumi.konnect.GatewayPluginCanaryArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginCanaryConfigArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginCanaryOrderingArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginCanaryOrderingAfterArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginCanaryOrderingBeforeArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginCanaryPartialArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginCanaryRouteArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginCanaryServiceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myGatewayplugincanary = new GatewayPluginCanary(\"myGatewayplugincanary\", GatewayPluginCanaryArgs.builder()\n            .config(GatewayPluginCanaryConfigArgs.builder()\n                .canaryByHeaderName(\"...my_canary_by_header_name...\")\n                .duration(0.88)\n                .groups(\"...\")\n                .hash(\"ip\")\n                .hashHeader(\"...my_hash_header...\")\n                .percentage(35.35)\n                .start(7.39)\n                .steps(5.98)\n                .upstreamFallback(false)\n                .upstreamHost(\"...my_upstream_host...\")\n                .upstreamPort(15742.0)\n                .upstreamUri(\"...my_upstream_uri...\")\n                .build())\n            .controlPlaneId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .createdAt(10.0)\n            .enabled(false)\n            .gatewayPluginCanaryId(\"...my_id...\")\n            .instanceName(\"...my_instance_name...\")\n            .ordering(GatewayPluginCanaryOrderingArgs.builder()\n                .after(GatewayPluginCanaryOrderingAfterArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .before(GatewayPluginCanaryOrderingBeforeArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .build())\n            .partials(GatewayPluginCanaryPartialArgs.builder()\n                .id(\"...my_id...\")\n                .name(\"...my_name...\")\n                .path(\"...my_path...\")\n                .build())\n            .protocols(\"grpc\")\n            .route(GatewayPluginCanaryRouteArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .service(GatewayPluginCanaryServiceArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .tags(\"...\")\n            .updatedAt(4.0)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myGatewayplugincanary:\n    type: konnect:GatewayPluginCanary\n    name: my_gatewayplugincanary\n    properties:\n      config:\n        canaryByHeaderName: '...my_canary_by_header_name...'\n        duration: 0.88\n        groups:\n          - '...'\n        hash: ip\n        hashHeader: '...my_hash_header...'\n        percentage: 35.35\n        start: 7.39\n        steps: 5.98\n        upstreamFallback: false\n        upstreamHost: '...my_upstream_host...'\n        upstreamPort: 15742\n        upstreamUri: '...my_upstream_uri...'\n      controlPlaneId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      createdAt: 10\n      enabled: false\n      gatewayPluginCanaryId: '...my_id...'\n      instanceName: '...my_instance_name...'\n      ordering:\n        after:\n          accesses:\n            - '...'\n        before:\n          accesses:\n            - '...'\n      partials:\n        - id: '...my_id...'\n          name: '...my_name...'\n          path: '...my_path...'\n      protocols:\n        - grpc\n      route:\n        id: '...my_id...'\n      service:\n        id: '...my_id...'\n      tags:\n        - '...'\n      updatedAt: 4\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_gateway_plugin_canary.my_konnect_gateway_plugin_canary\n\n  id = jsonencode({\n\n    control_plane_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/gatewayPluginCanary:GatewayPluginCanary my_konnect_gateway_plugin_canary '{\"control_plane_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"}'\n```\n\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginCanaryConfig:GatewayPluginCanaryConfig"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginCanaryId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginCanaryOrdering:GatewayPluginCanaryOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginCanaryPartial:GatewayPluginCanaryPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginCanaryRoute:GatewayPluginCanaryRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginCanaryService:GatewayPluginCanaryService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object","required":["config","controlPlaneId","createdAt","enabled","gatewayPluginCanaryId","ordering","protocols","route","service","updatedAt"],"inputProperties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginCanaryConfig:GatewayPluginCanaryConfig"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginCanaryId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginCanaryOrdering:GatewayPluginCanaryOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginCanaryPartial:GatewayPluginCanaryPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginCanaryRoute:GatewayPluginCanaryRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginCanaryService:GatewayPluginCanaryService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"requiredInputs":["controlPlaneId"],"stateInputs":{"description":"Input properties used for looking up and filtering GatewayPluginCanary resources.\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginCanaryConfig:GatewayPluginCanaryConfig"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginCanaryId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginCanaryOrdering:GatewayPluginCanaryOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginCanaryPartial:GatewayPluginCanaryPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginCanaryRoute:GatewayPluginCanaryRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginCanaryService:GatewayPluginCanaryService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object"}},"konnect:index/gatewayPluginConfluent:GatewayPluginConfluent":{"description":"GatewayPluginConfluent Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myGatewaypluginconfluent = new konnect.GatewayPluginConfluent(\"my_gatewaypluginconfluent\", {\n    config: {\n        allowedTopics: [\"...\"],\n        bootstrapServers: [{\n            host: \"...my_host...\",\n            port: 53037,\n        }],\n        clusterApiKey: \"...my_cluster_api_key...\",\n        clusterApiSecret: \"...my_cluster_api_secret...\",\n        clusterName: \"...my_cluster_name...\",\n        confluentCloudApiKey: \"...my_confluent_cloud_api_key...\",\n        confluentCloudApiSecret: \"...my_confluent_cloud_api_secret...\",\n        forwardBody: false,\n        forwardHeaders: false,\n        forwardMethod: false,\n        forwardUri: true,\n        keepalive: 3,\n        keepaliveEnabled: true,\n        keyQueryArg: \"...my_key_query_arg...\",\n        messageByLuaFunctions: [\"...\"],\n        producerAsync: false,\n        producerAsyncBufferingLimitsMessagesInMemory: 9,\n        producerAsyncFlushTimeout: 1,\n        producerRequestAcks: 0,\n        producerRequestLimitsBytesPerRequest: 7,\n        producerRequestLimitsMessagesPerRequest: 6,\n        producerRequestRetriesBackoffTimeout: 4,\n        producerRequestRetriesMaxAttempts: 2,\n        producerRequestTimeout: 1,\n        schemaRegistry: {\n            confluent: {\n                authentication: {\n                    basic: {\n                        password: \"...my_password...\",\n                        username: \"...my_username...\",\n                    },\n                    mode: \"none\",\n                    oauth2: {\n                        audiences: [\"...\"],\n                        clientId: \"...my_client_id...\",\n                        clientSecret: \"...my_client_secret...\",\n                        grantType: \"password\",\n                        password: \"...my_password...\",\n                        scopes: [\"...\"],\n                        tokenEndpoint: \"...my_token_endpoint...\",\n                        tokenHeaders: {\n                            key: \"value\",\n                        },\n                        tokenPostArgs: {\n                            key: \"value\",\n                        },\n                        username: \"...my_username...\",\n                    },\n                    oauth2Client: {\n                        authMethod: \"none\",\n                        clientSecretJwtAlg: \"HS512\",\n                        httpProxy: \"...my_http_proxy...\",\n                        httpProxyAuthorization: \"...my_http_proxy_authorization...\",\n                        httpVersion: 1.18,\n                        httpsProxy: \"...my_https_proxy...\",\n                        httpsProxyAuthorization: \"...my_https_proxy_authorization...\",\n                        keepAlive: false,\n                        noProxy: \"...my_no_proxy...\",\n                        sslVerify: true,\n                        timeout: 170470379,\n                    },\n                },\n                keySchema: {\n                    schemaVersion: \"...my_schema_version...\",\n                    subjectName: \"...my_subject_name...\",\n                },\n                sslVerify: true,\n                ttl: 1001.01,\n                url: \"...my_url...\",\n                valueSchema: {\n                    schemaVersion: \"...my_schema_version...\",\n                    subjectName: \"...my_subject_name...\",\n                },\n            },\n        },\n        security: {\n            sslVerify: true,\n        },\n        timeout: 0,\n        topic: \"...my_topic...\",\n        topicsQueryArg: \"...my_topics_query_arg...\",\n    },\n    consumer: {\n        id: \"...my_id...\",\n    },\n    controlPlaneId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    createdAt: 0,\n    enabled: true,\n    gatewayPluginConfluentId: \"...my_id...\",\n    instanceName: \"...my_instance_name...\",\n    ordering: {\n        after: {\n            accesses: [\"...\"],\n        },\n        before: {\n            accesses: [\"...\"],\n        },\n    },\n    partials: [{\n        id: \"...my_id...\",\n        name: \"...my_name...\",\n        path: \"...my_path...\",\n    }],\n    protocols: [\"http\"],\n    route: {\n        id: \"...my_id...\",\n    },\n    service: {\n        id: \"...my_id...\",\n    },\n    tags: [\"...\"],\n    updatedAt: 1,\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_gatewaypluginconfluent = konnect.GatewayPluginConfluent(\"my_gatewaypluginconfluent\",\n    config={\n        \"allowed_topics\": [\"...\"],\n        \"bootstrap_servers\": [{\n            \"host\": \"...my_host...\",\n            \"port\": 53037,\n        }],\n        \"cluster_api_key\": \"...my_cluster_api_key...\",\n        \"cluster_api_secret\": \"...my_cluster_api_secret...\",\n        \"cluster_name\": \"...my_cluster_name...\",\n        \"confluent_cloud_api_key\": \"...my_confluent_cloud_api_key...\",\n        \"confluent_cloud_api_secret\": \"...my_confluent_cloud_api_secret...\",\n        \"forward_body\": False,\n        \"forward_headers\": False,\n        \"forward_method\": False,\n        \"forward_uri\": True,\n        \"keepalive\": 3,\n        \"keepalive_enabled\": True,\n        \"key_query_arg\": \"...my_key_query_arg...\",\n        \"message_by_lua_functions\": [\"...\"],\n        \"producer_async\": False,\n        \"producer_async_buffering_limits_messages_in_memory\": 9,\n        \"producer_async_flush_timeout\": 1,\n        \"producer_request_acks\": 0,\n        \"producer_request_limits_bytes_per_request\": 7,\n        \"producer_request_limits_messages_per_request\": 6,\n        \"producer_request_retries_backoff_timeout\": 4,\n        \"producer_request_retries_max_attempts\": 2,\n        \"producer_request_timeout\": 1,\n        \"schema_registry\": {\n            \"confluent\": {\n                \"authentication\": {\n                    \"basic\": {\n                        \"password\": \"...my_password...\",\n                        \"username\": \"...my_username...\",\n                    },\n                    \"mode\": \"none\",\n                    \"oauth2\": {\n                        \"audiences\": [\"...\"],\n                        \"client_id\": \"...my_client_id...\",\n                        \"client_secret\": \"...my_client_secret...\",\n                        \"grant_type\": \"password\",\n                        \"password\": \"...my_password...\",\n                        \"scopes\": [\"...\"],\n                        \"token_endpoint\": \"...my_token_endpoint...\",\n                        \"token_headers\": {\n                            \"key\": \"value\",\n                        },\n                        \"token_post_args\": {\n                            \"key\": \"value\",\n                        },\n                        \"username\": \"...my_username...\",\n                    },\n                    \"oauth2_client\": {\n                        \"auth_method\": \"none\",\n                        \"client_secret_jwt_alg\": \"HS512\",\n                        \"http_proxy\": \"...my_http_proxy...\",\n                        \"http_proxy_authorization\": \"...my_http_proxy_authorization...\",\n                        \"http_version\": 1.18,\n                        \"https_proxy\": \"...my_https_proxy...\",\n                        \"https_proxy_authorization\": \"...my_https_proxy_authorization...\",\n                        \"keep_alive\": False,\n                        \"no_proxy\": \"...my_no_proxy...\",\n                        \"ssl_verify\": True,\n                        \"timeout\": 170470379,\n                    },\n                },\n                \"key_schema\": {\n                    \"schema_version\": \"...my_schema_version...\",\n                    \"subject_name\": \"...my_subject_name...\",\n                },\n                \"ssl_verify\": True,\n                \"ttl\": 1001.01,\n                \"url\": \"...my_url...\",\n                \"value_schema\": {\n                    \"schema_version\": \"...my_schema_version...\",\n                    \"subject_name\": \"...my_subject_name...\",\n                },\n            },\n        },\n        \"security\": {\n            \"ssl_verify\": True,\n        },\n        \"timeout\": 0,\n        \"topic\": \"...my_topic...\",\n        \"topics_query_arg\": \"...my_topics_query_arg...\",\n    },\n    consumer={\n        \"id\": \"...my_id...\",\n    },\n    control_plane_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    created_at=0,\n    enabled=True,\n    gateway_plugin_confluent_id=\"...my_id...\",\n    instance_name=\"...my_instance_name...\",\n    ordering={\n        \"after\": {\n            \"accesses\": [\"...\"],\n        },\n        \"before\": {\n            \"accesses\": [\"...\"],\n        },\n    },\n    partials=[{\n        \"id\": \"...my_id...\",\n        \"name\": \"...my_name...\",\n        \"path\": \"...my_path...\",\n    }],\n    protocols=[\"http\"],\n    route={\n        \"id\": \"...my_id...\",\n    },\n    service={\n        \"id\": \"...my_id...\",\n    },\n    tags=[\"...\"],\n    updated_at=1)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myGatewaypluginconfluent = new Konnect.GatewayPluginConfluent(\"my_gatewaypluginconfluent\", new()\n    {\n        Config = new Konnect.Inputs.GatewayPluginConfluentConfigArgs\n        {\n            AllowedTopics = new[]\n            {\n                \"...\",\n            },\n            BootstrapServers = new[]\n            {\n                new Konnect.Inputs.GatewayPluginConfluentConfigBootstrapServerArgs\n                {\n                    Host = \"...my_host...\",\n                    Port = 53037,\n                },\n            },\n            ClusterApiKey = \"...my_cluster_api_key...\",\n            ClusterApiSecret = \"...my_cluster_api_secret...\",\n            ClusterName = \"...my_cluster_name...\",\n            ConfluentCloudApiKey = \"...my_confluent_cloud_api_key...\",\n            ConfluentCloudApiSecret = \"...my_confluent_cloud_api_secret...\",\n            ForwardBody = false,\n            ForwardHeaders = false,\n            ForwardMethod = false,\n            ForwardUri = true,\n            Keepalive = 3,\n            KeepaliveEnabled = true,\n            KeyQueryArg = \"...my_key_query_arg...\",\n            MessageByLuaFunctions = new[]\n            {\n                \"...\",\n            },\n            ProducerAsync = false,\n            ProducerAsyncBufferingLimitsMessagesInMemory = 9,\n            ProducerAsyncFlushTimeout = 1,\n            ProducerRequestAcks = 0,\n            ProducerRequestLimitsBytesPerRequest = 7,\n            ProducerRequestLimitsMessagesPerRequest = 6,\n            ProducerRequestRetriesBackoffTimeout = 4,\n            ProducerRequestRetriesMaxAttempts = 2,\n            ProducerRequestTimeout = 1,\n            SchemaRegistry = new Konnect.Inputs.GatewayPluginConfluentConfigSchemaRegistryArgs\n            {\n                Confluent = new Konnect.Inputs.GatewayPluginConfluentConfigSchemaRegistryConfluentArgs\n                {\n                    Authentication = new Konnect.Inputs.GatewayPluginConfluentConfigSchemaRegistryConfluentAuthenticationArgs\n                    {\n                        Basic = new Konnect.Inputs.GatewayPluginConfluentConfigSchemaRegistryConfluentAuthenticationBasicArgs\n                        {\n                            Password = \"...my_password...\",\n                            Username = \"...my_username...\",\n                        },\n                        Mode = \"none\",\n                        Oauth2 = new Konnect.Inputs.GatewayPluginConfluentConfigSchemaRegistryConfluentAuthenticationOauth2Args\n                        {\n                            Audiences = new[]\n                            {\n                                \"...\",\n                            },\n                            ClientId = \"...my_client_id...\",\n                            ClientSecret = \"...my_client_secret...\",\n                            GrantType = \"password\",\n                            Password = \"...my_password...\",\n                            Scopes = new[]\n                            {\n                                \"...\",\n                            },\n                            TokenEndpoint = \"...my_token_endpoint...\",\n                            TokenHeaders = \n                            {\n                                { \"key\", \"value\" },\n                            },\n                            TokenPostArgs = \n                            {\n                                { \"key\", \"value\" },\n                            },\n                            Username = \"...my_username...\",\n                        },\n                        Oauth2Client = new Konnect.Inputs.GatewayPluginConfluentConfigSchemaRegistryConfluentAuthenticationOauth2ClientArgs\n                        {\n                            AuthMethod = \"none\",\n                            ClientSecretJwtAlg = \"HS512\",\n                            HttpProxy = \"...my_http_proxy...\",\n                            HttpProxyAuthorization = \"...my_http_proxy_authorization...\",\n                            HttpVersion = 1.18,\n                            HttpsProxy = \"...my_https_proxy...\",\n                            HttpsProxyAuthorization = \"...my_https_proxy_authorization...\",\n                            KeepAlive = false,\n                            NoProxy = \"...my_no_proxy...\",\n                            SslVerify = true,\n                            Timeout = 170470379,\n                        },\n                    },\n                    KeySchema = new Konnect.Inputs.GatewayPluginConfluentConfigSchemaRegistryConfluentKeySchemaArgs\n                    {\n                        SchemaVersion = \"...my_schema_version...\",\n                        SubjectName = \"...my_subject_name...\",\n                    },\n                    SslVerify = true,\n                    Ttl = 1001.01,\n                    Url = \"...my_url...\",\n                    ValueSchema = new Konnect.Inputs.GatewayPluginConfluentConfigSchemaRegistryConfluentValueSchemaArgs\n                    {\n                        SchemaVersion = \"...my_schema_version...\",\n                        SubjectName = \"...my_subject_name...\",\n                    },\n                },\n            },\n            Security = new Konnect.Inputs.GatewayPluginConfluentConfigSecurityArgs\n            {\n                SslVerify = true,\n            },\n            Timeout = 0,\n            Topic = \"...my_topic...\",\n            TopicsQueryArg = \"...my_topics_query_arg...\",\n        },\n        Consumer = new Konnect.Inputs.GatewayPluginConfluentConsumerArgs\n        {\n            Id = \"...my_id...\",\n        },\n        ControlPlaneId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        CreatedAt = 0,\n        Enabled = true,\n        GatewayPluginConfluentId = \"...my_id...\",\n        InstanceName = \"...my_instance_name...\",\n        Ordering = new Konnect.Inputs.GatewayPluginConfluentOrderingArgs\n        {\n            After = new Konnect.Inputs.GatewayPluginConfluentOrderingAfterArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n            Before = new Konnect.Inputs.GatewayPluginConfluentOrderingBeforeArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n        },\n        Partials = new[]\n        {\n            new Konnect.Inputs.GatewayPluginConfluentPartialArgs\n            {\n                Id = \"...my_id...\",\n                Name = \"...my_name...\",\n                Path = \"...my_path...\",\n            },\n        },\n        Protocols = new[]\n        {\n            \"http\",\n        },\n        Route = new Konnect.Inputs.GatewayPluginConfluentRouteArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Service = new Konnect.Inputs.GatewayPluginConfluentServiceArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Tags = new[]\n        {\n            \"...\",\n        },\n        UpdatedAt = 1,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewGatewayPluginConfluent(ctx, \"my_gatewaypluginconfluent\", \u0026konnect.GatewayPluginConfluentArgs{\n\t\t\tConfig: \u0026konnect.GatewayPluginConfluentConfigArgs{\n\t\t\t\tAllowedTopics: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tBootstrapServers: konnect.GatewayPluginConfluentConfigBootstrapServerArray{\n\t\t\t\t\t\u0026konnect.GatewayPluginConfluentConfigBootstrapServerArgs{\n\t\t\t\t\t\tHost: pulumi.String(\"...my_host...\"),\n\t\t\t\t\t\tPort: pulumi.Float64(53037),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tClusterApiKey:           pulumi.String(\"...my_cluster_api_key...\"),\n\t\t\t\tClusterApiSecret:        pulumi.String(\"...my_cluster_api_secret...\"),\n\t\t\t\tClusterName:             pulumi.String(\"...my_cluster_name...\"),\n\t\t\t\tConfluentCloudApiKey:    pulumi.String(\"...my_confluent_cloud_api_key...\"),\n\t\t\t\tConfluentCloudApiSecret: pulumi.String(\"...my_confluent_cloud_api_secret...\"),\n\t\t\t\tForwardBody:             pulumi.Bool(false),\n\t\t\t\tForwardHeaders:          pulumi.Bool(false),\n\t\t\t\tForwardMethod:           pulumi.Bool(false),\n\t\t\t\tForwardUri:              pulumi.Bool(true),\n\t\t\t\tKeepalive:               pulumi.Float64(3),\n\t\t\t\tKeepaliveEnabled:        pulumi.Bool(true),\n\t\t\t\tKeyQueryArg:             pulumi.String(\"...my_key_query_arg...\"),\n\t\t\t\tMessageByLuaFunctions: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tProducerAsync: pulumi.Bool(false),\n\t\t\t\tProducerAsyncBufferingLimitsMessagesInMemory: pulumi.Float64(9),\n\t\t\t\tProducerAsyncFlushTimeout:                    pulumi.Float64(1),\n\t\t\t\tProducerRequestAcks:                          pulumi.Float64(0),\n\t\t\t\tProducerRequestLimitsBytesPerRequest:         pulumi.Float64(7),\n\t\t\t\tProducerRequestLimitsMessagesPerRequest:      pulumi.Float64(6),\n\t\t\t\tProducerRequestRetriesBackoffTimeout:         pulumi.Float64(4),\n\t\t\t\tProducerRequestRetriesMaxAttempts:            pulumi.Float64(2),\n\t\t\t\tProducerRequestTimeout:                       pulumi.Float64(1),\n\t\t\t\tSchemaRegistry: \u0026konnect.GatewayPluginConfluentConfigSchemaRegistryArgs{\n\t\t\t\t\tConfluent: \u0026konnect.GatewayPluginConfluentConfigSchemaRegistryConfluentArgs{\n\t\t\t\t\t\tAuthentication: \u0026konnect.GatewayPluginConfluentConfigSchemaRegistryConfluentAuthenticationArgs{\n\t\t\t\t\t\t\tBasic: \u0026konnect.GatewayPluginConfluentConfigSchemaRegistryConfluentAuthenticationBasicArgs{\n\t\t\t\t\t\t\t\tPassword: pulumi.String(\"...my_password...\"),\n\t\t\t\t\t\t\t\tUsername: pulumi.String(\"...my_username...\"),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tMode: pulumi.String(\"none\"),\n\t\t\t\t\t\t\tOauth2: \u0026konnect.GatewayPluginConfluentConfigSchemaRegistryConfluentAuthenticationOauth2Args{\n\t\t\t\t\t\t\t\tAudiences: pulumi.StringArray{\n\t\t\t\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\tClientId:     pulumi.String(\"...my_client_id...\"),\n\t\t\t\t\t\t\t\tClientSecret: pulumi.String(\"...my_client_secret...\"),\n\t\t\t\t\t\t\t\tGrantType:    pulumi.String(\"password\"),\n\t\t\t\t\t\t\t\tPassword:     pulumi.String(\"...my_password...\"),\n\t\t\t\t\t\t\t\tScopes: pulumi.StringArray{\n\t\t\t\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\tTokenEndpoint: pulumi.String(\"...my_token_endpoint...\"),\n\t\t\t\t\t\t\t\tTokenHeaders: pulumi.StringMap{\n\t\t\t\t\t\t\t\t\t\"key\": pulumi.String(\"value\"),\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\tTokenPostArgs: pulumi.StringMap{\n\t\t\t\t\t\t\t\t\t\"key\": pulumi.String(\"value\"),\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\tUsername: pulumi.String(\"...my_username...\"),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tOauth2Client: \u0026konnect.GatewayPluginConfluentConfigSchemaRegistryConfluentAuthenticationOauth2ClientArgs{\n\t\t\t\t\t\t\t\tAuthMethod:              pulumi.String(\"none\"),\n\t\t\t\t\t\t\t\tClientSecretJwtAlg:      pulumi.String(\"HS512\"),\n\t\t\t\t\t\t\t\tHttpProxy:               pulumi.String(\"...my_http_proxy...\"),\n\t\t\t\t\t\t\t\tHttpProxyAuthorization:  pulumi.String(\"...my_http_proxy_authorization...\"),\n\t\t\t\t\t\t\t\tHttpVersion:             pulumi.Float64(1.18),\n\t\t\t\t\t\t\t\tHttpsProxy:              pulumi.String(\"...my_https_proxy...\"),\n\t\t\t\t\t\t\t\tHttpsProxyAuthorization: pulumi.String(\"...my_https_proxy_authorization...\"),\n\t\t\t\t\t\t\t\tKeepAlive:               pulumi.Bool(false),\n\t\t\t\t\t\t\t\tNoProxy:                 pulumi.String(\"...my_no_proxy...\"),\n\t\t\t\t\t\t\t\tSslVerify:               pulumi.Bool(true),\n\t\t\t\t\t\t\t\tTimeout:                 pulumi.Float64(170470379),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t\tKeySchema: \u0026konnect.GatewayPluginConfluentConfigSchemaRegistryConfluentKeySchemaArgs{\n\t\t\t\t\t\t\tSchemaVersion: pulumi.String(\"...my_schema_version...\"),\n\t\t\t\t\t\t\tSubjectName:   pulumi.String(\"...my_subject_name...\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\tSslVerify: pulumi.Bool(true),\n\t\t\t\t\t\tTtl:       pulumi.Float64(1001.01),\n\t\t\t\t\t\tUrl:       pulumi.String(\"...my_url...\"),\n\t\t\t\t\t\tValueSchema: \u0026konnect.GatewayPluginConfluentConfigSchemaRegistryConfluentValueSchemaArgs{\n\t\t\t\t\t\t\tSchemaVersion: pulumi.String(\"...my_schema_version...\"),\n\t\t\t\t\t\t\tSubjectName:   pulumi.String(\"...my_subject_name...\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tSecurity: \u0026konnect.GatewayPluginConfluentConfigSecurityArgs{\n\t\t\t\t\tSslVerify: pulumi.Bool(true),\n\t\t\t\t},\n\t\t\t\tTimeout:        pulumi.Float64(0),\n\t\t\t\tTopic:          pulumi.String(\"...my_topic...\"),\n\t\t\t\tTopicsQueryArg: pulumi.String(\"...my_topics_query_arg...\"),\n\t\t\t},\n\t\t\tConsumer: \u0026konnect.GatewayPluginConfluentConsumerArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tControlPlaneId:           pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tCreatedAt:                pulumi.Float64(0),\n\t\t\tEnabled:                  pulumi.Bool(true),\n\t\t\tGatewayPluginConfluentId: pulumi.String(\"...my_id...\"),\n\t\t\tInstanceName:             pulumi.String(\"...my_instance_name...\"),\n\t\t\tOrdering: \u0026konnect.GatewayPluginConfluentOrderingArgs{\n\t\t\t\tAfter: \u0026konnect.GatewayPluginConfluentOrderingAfterArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tBefore: \u0026konnect.GatewayPluginConfluentOrderingBeforeArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tPartials: konnect.GatewayPluginConfluentPartialArray{\n\t\t\t\t\u0026konnect.GatewayPluginConfluentPartialArgs{\n\t\t\t\t\tId:   pulumi.String(\"...my_id...\"),\n\t\t\t\t\tName: pulumi.String(\"...my_name...\"),\n\t\t\t\t\tPath: pulumi.String(\"...my_path...\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tProtocols: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"http\"),\n\t\t\t},\n\t\t\tRoute: \u0026konnect.GatewayPluginConfluentRouteArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tService: \u0026konnect.GatewayPluginConfluentServiceArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"...\"),\n\t\t\t},\n\t\t\tUpdatedAt: pulumi.Float64(1),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.GatewayPluginConfluent;\nimport com.pulumi.konnect.GatewayPluginConfluentArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginConfluentConfigArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginConfluentConfigSchemaRegistryArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginConfluentConfigSchemaRegistryConfluentArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginConfluentConfigSchemaRegistryConfluentAuthenticationArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginConfluentConfigSchemaRegistryConfluentAuthenticationBasicArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginConfluentConfigSchemaRegistryConfluentAuthenticationOauth2Args;\nimport com.pulumi.konnect.inputs.GatewayPluginConfluentConfigSchemaRegistryConfluentAuthenticationOauth2ClientArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginConfluentConfigSchemaRegistryConfluentKeySchemaArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginConfluentConfigSchemaRegistryConfluentValueSchemaArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginConfluentConfigSecurityArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginConfluentConsumerArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginConfluentOrderingArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginConfluentOrderingAfterArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginConfluentOrderingBeforeArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginConfluentPartialArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginConfluentRouteArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginConfluentServiceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myGatewaypluginconfluent = new GatewayPluginConfluent(\"myGatewaypluginconfluent\", GatewayPluginConfluentArgs.builder()\n            .config(GatewayPluginConfluentConfigArgs.builder()\n                .allowedTopics(\"...\")\n                .bootstrapServers(GatewayPluginConfluentConfigBootstrapServerArgs.builder()\n                    .host(\"...my_host...\")\n                    .port(53037.0)\n                    .build())\n                .clusterApiKey(\"...my_cluster_api_key...\")\n                .clusterApiSecret(\"...my_cluster_api_secret...\")\n                .clusterName(\"...my_cluster_name...\")\n                .confluentCloudApiKey(\"...my_confluent_cloud_api_key...\")\n                .confluentCloudApiSecret(\"...my_confluent_cloud_api_secret...\")\n                .forwardBody(false)\n                .forwardHeaders(false)\n                .forwardMethod(false)\n                .forwardUri(true)\n                .keepalive(3.0)\n                .keepaliveEnabled(true)\n                .keyQueryArg(\"...my_key_query_arg...\")\n                .messageByLuaFunctions(\"...\")\n                .producerAsync(false)\n                .producerAsyncBufferingLimitsMessagesInMemory(9.0)\n                .producerAsyncFlushTimeout(1.0)\n                .producerRequestAcks(0.0)\n                .producerRequestLimitsBytesPerRequest(7.0)\n                .producerRequestLimitsMessagesPerRequest(6.0)\n                .producerRequestRetriesBackoffTimeout(4.0)\n                .producerRequestRetriesMaxAttempts(2.0)\n                .producerRequestTimeout(1.0)\n                .schemaRegistry(GatewayPluginConfluentConfigSchemaRegistryArgs.builder()\n                    .confluent(GatewayPluginConfluentConfigSchemaRegistryConfluentArgs.builder()\n                        .authentication(GatewayPluginConfluentConfigSchemaRegistryConfluentAuthenticationArgs.builder()\n                            .basic(GatewayPluginConfluentConfigSchemaRegistryConfluentAuthenticationBasicArgs.builder()\n                                .password(\"...my_password...\")\n                                .username(\"...my_username...\")\n                                .build())\n                            .mode(\"none\")\n                            .oauth2(GatewayPluginConfluentConfigSchemaRegistryConfluentAuthenticationOauth2Args.builder()\n                                .audiences(\"...\")\n                                .clientId(\"...my_client_id...\")\n                                .clientSecret(\"...my_client_secret...\")\n                                .grantType(\"password\")\n                                .password(\"...my_password...\")\n                                .scopes(\"...\")\n                                .tokenEndpoint(\"...my_token_endpoint...\")\n                                .tokenHeaders(Map.of(\"key\", \"value\"))\n                                .tokenPostArgs(Map.of(\"key\", \"value\"))\n                                .username(\"...my_username...\")\n                                .build())\n                            .oauth2Client(GatewayPluginConfluentConfigSchemaRegistryConfluentAuthenticationOauth2ClientArgs.builder()\n                                .authMethod(\"none\")\n                                .clientSecretJwtAlg(\"HS512\")\n                                .httpProxy(\"...my_http_proxy...\")\n                                .httpProxyAuthorization(\"...my_http_proxy_authorization...\")\n                                .httpVersion(1.18)\n                                .httpsProxy(\"...my_https_proxy...\")\n                                .httpsProxyAuthorization(\"...my_https_proxy_authorization...\")\n                                .keepAlive(false)\n                                .noProxy(\"...my_no_proxy...\")\n                                .sslVerify(true)\n                                .timeout(170470379.0)\n                                .build())\n                            .build())\n                        .keySchema(GatewayPluginConfluentConfigSchemaRegistryConfluentKeySchemaArgs.builder()\n                            .schemaVersion(\"...my_schema_version...\")\n                            .subjectName(\"...my_subject_name...\")\n                            .build())\n                        .sslVerify(true)\n                        .ttl(1001.01)\n                        .url(\"...my_url...\")\n                        .valueSchema(GatewayPluginConfluentConfigSchemaRegistryConfluentValueSchemaArgs.builder()\n                            .schemaVersion(\"...my_schema_version...\")\n                            .subjectName(\"...my_subject_name...\")\n                            .build())\n                        .build())\n                    .build())\n                .security(GatewayPluginConfluentConfigSecurityArgs.builder()\n                    .sslVerify(true)\n                    .build())\n                .timeout(0.0)\n                .topic(\"...my_topic...\")\n                .topicsQueryArg(\"...my_topics_query_arg...\")\n                .build())\n            .consumer(GatewayPluginConfluentConsumerArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .controlPlaneId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .createdAt(0.0)\n            .enabled(true)\n            .gatewayPluginConfluentId(\"...my_id...\")\n            .instanceName(\"...my_instance_name...\")\n            .ordering(GatewayPluginConfluentOrderingArgs.builder()\n                .after(GatewayPluginConfluentOrderingAfterArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .before(GatewayPluginConfluentOrderingBeforeArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .build())\n            .partials(GatewayPluginConfluentPartialArgs.builder()\n                .id(\"...my_id...\")\n                .name(\"...my_name...\")\n                .path(\"...my_path...\")\n                .build())\n            .protocols(\"http\")\n            .route(GatewayPluginConfluentRouteArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .service(GatewayPluginConfluentServiceArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .tags(\"...\")\n            .updatedAt(1.0)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myGatewaypluginconfluent:\n    type: konnect:GatewayPluginConfluent\n    name: my_gatewaypluginconfluent\n    properties:\n      config:\n        allowedTopics:\n          - '...'\n        bootstrapServers:\n          - host: '...my_host...'\n            port: 53037\n        clusterApiKey: '...my_cluster_api_key...'\n        clusterApiSecret: '...my_cluster_api_secret...'\n        clusterName: '...my_cluster_name...'\n        confluentCloudApiKey: '...my_confluent_cloud_api_key...'\n        confluentCloudApiSecret: '...my_confluent_cloud_api_secret...'\n        forwardBody: false\n        forwardHeaders: false\n        forwardMethod: false\n        forwardUri: true\n        keepalive: 3\n        keepaliveEnabled: true\n        keyQueryArg: '...my_key_query_arg...'\n        messageByLuaFunctions:\n          - '...'\n        producerAsync: false\n        producerAsyncBufferingLimitsMessagesInMemory: 9\n        producerAsyncFlushTimeout: 1\n        producerRequestAcks: 0\n        producerRequestLimitsBytesPerRequest: 7\n        producerRequestLimitsMessagesPerRequest: 6\n        producerRequestRetriesBackoffTimeout: 4\n        producerRequestRetriesMaxAttempts: 2\n        producerRequestTimeout: 1\n        schemaRegistry:\n          confluent:\n            authentication:\n              basic:\n                password: '...my_password...'\n                username: '...my_username...'\n              mode: none\n              oauth2:\n                audiences:\n                  - '...'\n                clientId: '...my_client_id...'\n                clientSecret: '...my_client_secret...'\n                grantType: password\n                password: '...my_password...'\n                scopes:\n                  - '...'\n                tokenEndpoint: '...my_token_endpoint...'\n                tokenHeaders:\n                  key: value\n                tokenPostArgs:\n                  key: value\n                username: '...my_username...'\n              oauth2Client:\n                authMethod: none\n                clientSecretJwtAlg: HS512\n                httpProxy: '...my_http_proxy...'\n                httpProxyAuthorization: '...my_http_proxy_authorization...'\n                httpVersion: 1.18\n                httpsProxy: '...my_https_proxy...'\n                httpsProxyAuthorization: '...my_https_proxy_authorization...'\n                keepAlive: false\n                noProxy: '...my_no_proxy...'\n                sslVerify: true\n                timeout: 1.70470379e+08\n            keySchema:\n              schemaVersion: '...my_schema_version...'\n              subjectName: '...my_subject_name...'\n            sslVerify: true\n            ttl: 1001.01\n            url: '...my_url...'\n            valueSchema:\n              schemaVersion: '...my_schema_version...'\n              subjectName: '...my_subject_name...'\n        security:\n          sslVerify: true\n        timeout: 0\n        topic: '...my_topic...'\n        topicsQueryArg: '...my_topics_query_arg...'\n      consumer:\n        id: '...my_id...'\n      controlPlaneId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      createdAt: 0\n      enabled: true\n      gatewayPluginConfluentId: '...my_id...'\n      instanceName: '...my_instance_name...'\n      ordering:\n        after:\n          accesses:\n            - '...'\n        before:\n          accesses:\n            - '...'\n      partials:\n        - id: '...my_id...'\n          name: '...my_name...'\n          path: '...my_path...'\n      protocols:\n        - http\n      route:\n        id: '...my_id...'\n      service:\n        id: '...my_id...'\n      tags:\n        - '...'\n      updatedAt: 1\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_gateway_plugin_confluent.my_konnect_gateway_plugin_confluent\n\n  id = jsonencode({\n\n    control_plane_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/gatewayPluginConfluent:GatewayPluginConfluent my_konnect_gateway_plugin_confluent '{\"control_plane_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"}'\n```\n\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginConfluentConfig:GatewayPluginConfluentConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginConfluentConsumer:GatewayPluginConfluentConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginConfluentId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginConfluentOrdering:GatewayPluginConfluentOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginConfluentPartial:GatewayPluginConfluentPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginConfluentRoute:GatewayPluginConfluentRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginConfluentService:GatewayPluginConfluentService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object","required":["config","consumer","controlPlaneId","createdAt","enabled","gatewayPluginConfluentId","ordering","protocols","route","service","updatedAt"],"inputProperties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginConfluentConfig:GatewayPluginConfluentConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginConfluentConsumer:GatewayPluginConfluentConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginConfluentId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginConfluentOrdering:GatewayPluginConfluentOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginConfluentPartial:GatewayPluginConfluentPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginConfluentRoute:GatewayPluginConfluentRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginConfluentService:GatewayPluginConfluentService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"requiredInputs":["config","controlPlaneId"],"stateInputs":{"description":"Input properties used for looking up and filtering GatewayPluginConfluent resources.\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginConfluentConfig:GatewayPluginConfluentConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginConfluentConsumer:GatewayPluginConfluentConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginConfluentId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginConfluentOrdering:GatewayPluginConfluentOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginConfluentPartial:GatewayPluginConfluentPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginConfluentRoute:GatewayPluginConfluentRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginConfluentService:GatewayPluginConfluentService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object"}},"konnect:index/gatewayPluginConfluentConsume:GatewayPluginConfluentConsume":{"description":"GatewayPluginConfluentConsume Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myGatewaypluginconfluentconsume = new konnect.GatewayPluginConfluentConsume(\"my_gatewaypluginconfluentconsume\", {\n    config: {\n        autoOffsetReset: \"earliest\",\n        bootstrapServers: [{\n            host: \"...my_host...\",\n            port: 58521,\n        }],\n        clusterApiKey: \"...my_cluster_api_key...\",\n        clusterApiSecret: \"...my_cluster_api_secret...\",\n        clusterName: \"...my_cluster_name...\",\n        commitStrategy: \"auto\",\n        confluentCloudApiKey: \"...my_confluent_cloud_api_key...\",\n        confluentCloudApiSecret: \"...my_confluent_cloud_api_secret...\",\n        dlqTopic: \"...my_dlq_topic...\",\n        enableDlq: true,\n        enforceLatestOffsetReset: false,\n        keepalive: 2,\n        keepaliveEnabled: true,\n        messageByLuaFunctions: [\"...\"],\n        messageDeserializer: \"noop\",\n        mode: \"http-get\",\n        schemaRegistry: {\n            confluent: {\n                authentication: {\n                    basic: {\n                        password: \"...my_password...\",\n                        username: \"...my_username...\",\n                    },\n                    mode: \"basic\",\n                    oauth2: {\n                        audiences: [\"...\"],\n                        clientId: \"...my_client_id...\",\n                        clientSecret: \"...my_client_secret...\",\n                        grantType: \"password\",\n                        password: \"...my_password...\",\n                        scopes: [\"...\"],\n                        tokenEndpoint: \"...my_token_endpoint...\",\n                        tokenHeaders: {\n                            key: \"value\",\n                        },\n                        tokenPostArgs: {\n                            key: \"value\",\n                        },\n                        username: \"...my_username...\",\n                    },\n                    oauth2Client: {\n                        authMethod: \"client_secret_basic\",\n                        clientSecretJwtAlg: \"HS512\",\n                        httpProxy: \"...my_http_proxy...\",\n                        httpProxyAuthorization: \"...my_http_proxy_authorization...\",\n                        httpVersion: 8.6,\n                        httpsProxy: \"...my_https_proxy...\",\n                        httpsProxyAuthorization: \"...my_https_proxy_authorization...\",\n                        keepAlive: false,\n                        noProxy: \"...my_no_proxy...\",\n                        sslVerify: true,\n                        timeout: 595962925,\n                    },\n                },\n                sslVerify: false,\n                ttl: 2309.04,\n                url: \"...my_url...\",\n            },\n        },\n        security: {\n            sslVerify: false,\n        },\n        timeout: 7,\n        topics: [{\n            name: \"...my_name...\",\n            schemaRegistry: {\n                confluent: {\n                    authentication: {\n                        basic: {\n                            password: \"...my_password...\",\n                            username: \"...my_username...\",\n                        },\n                        mode: \"basic\",\n                        oauth2: {\n                            audiences: [\"...\"],\n                            clientId: \"...my_client_id...\",\n                            clientSecret: \"...my_client_secret...\",\n                            grantType: \"client_credentials\",\n                            password: \"...my_password...\",\n                            scopes: [\"...\"],\n                            tokenEndpoint: \"...my_token_endpoint...\",\n                            tokenHeaders: {\n                                key: \"value\",\n                            },\n                            tokenPostArgs: {\n                                key: \"value\",\n                            },\n                            username: \"...my_username...\",\n                        },\n                        oauth2Client: {\n                            authMethod: \"client_secret_basic\",\n                            clientSecretJwtAlg: \"HS512\",\n                            httpProxy: \"...my_http_proxy...\",\n                            httpProxyAuthorization: \"...my_http_proxy_authorization...\",\n                            httpVersion: 5.07,\n                            httpsProxy: \"...my_https_proxy...\",\n                            httpsProxyAuthorization: \"...my_https_proxy_authorization...\",\n                            keepAlive: false,\n                            noProxy: \"...my_no_proxy...\",\n                            sslVerify: true,\n                            timeout: 1747283445,\n                        },\n                    },\n                    sslVerify: true,\n                    ttl: 179.01,\n                    url: \"...my_url...\",\n                },\n            },\n        }],\n    },\n    consumer: {\n        id: \"...my_id...\",\n    },\n    controlPlaneId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    createdAt: 6,\n    enabled: true,\n    gatewayPluginConfluentConsumeId: \"...my_id...\",\n    instanceName: \"...my_instance_name...\",\n    ordering: {\n        after: {\n            accesses: [\"...\"],\n        },\n        before: {\n            accesses: [\"...\"],\n        },\n    },\n    partials: [{\n        id: \"...my_id...\",\n        name: \"...my_name...\",\n        path: \"...my_path...\",\n    }],\n    protocols: [\"wss\"],\n    route: {\n        id: \"...my_id...\",\n    },\n    service: {\n        id: \"...my_id...\",\n    },\n    tags: [\"...\"],\n    updatedAt: 0,\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_gatewaypluginconfluentconsume = konnect.GatewayPluginConfluentConsume(\"my_gatewaypluginconfluentconsume\",\n    config={\n        \"auto_offset_reset\": \"earliest\",\n        \"bootstrap_servers\": [{\n            \"host\": \"...my_host...\",\n            \"port\": 58521,\n        }],\n        \"cluster_api_key\": \"...my_cluster_api_key...\",\n        \"cluster_api_secret\": \"...my_cluster_api_secret...\",\n        \"cluster_name\": \"...my_cluster_name...\",\n        \"commit_strategy\": \"auto\",\n        \"confluent_cloud_api_key\": \"...my_confluent_cloud_api_key...\",\n        \"confluent_cloud_api_secret\": \"...my_confluent_cloud_api_secret...\",\n        \"dlq_topic\": \"...my_dlq_topic...\",\n        \"enable_dlq\": True,\n        \"enforce_latest_offset_reset\": False,\n        \"keepalive\": 2,\n        \"keepalive_enabled\": True,\n        \"message_by_lua_functions\": [\"...\"],\n        \"message_deserializer\": \"noop\",\n        \"mode\": \"http-get\",\n        \"schema_registry\": {\n            \"confluent\": {\n                \"authentication\": {\n                    \"basic\": {\n                        \"password\": \"...my_password...\",\n                        \"username\": \"...my_username...\",\n                    },\n                    \"mode\": \"basic\",\n                    \"oauth2\": {\n                        \"audiences\": [\"...\"],\n                        \"client_id\": \"...my_client_id...\",\n                        \"client_secret\": \"...my_client_secret...\",\n                        \"grant_type\": \"password\",\n                        \"password\": \"...my_password...\",\n                        \"scopes\": [\"...\"],\n                        \"token_endpoint\": \"...my_token_endpoint...\",\n                        \"token_headers\": {\n                            \"key\": \"value\",\n                        },\n                        \"token_post_args\": {\n                            \"key\": \"value\",\n                        },\n                        \"username\": \"...my_username...\",\n                    },\n                    \"oauth2_client\": {\n                        \"auth_method\": \"client_secret_basic\",\n                        \"client_secret_jwt_alg\": \"HS512\",\n                        \"http_proxy\": \"...my_http_proxy...\",\n                        \"http_proxy_authorization\": \"...my_http_proxy_authorization...\",\n                        \"http_version\": 8.6,\n                        \"https_proxy\": \"...my_https_proxy...\",\n                        \"https_proxy_authorization\": \"...my_https_proxy_authorization...\",\n                        \"keep_alive\": False,\n                        \"no_proxy\": \"...my_no_proxy...\",\n                        \"ssl_verify\": True,\n                        \"timeout\": 595962925,\n                    },\n                },\n                \"ssl_verify\": False,\n                \"ttl\": 2309.04,\n                \"url\": \"...my_url...\",\n            },\n        },\n        \"security\": {\n            \"ssl_verify\": False,\n        },\n        \"timeout\": 7,\n        \"topics\": [{\n            \"name\": \"...my_name...\",\n            \"schema_registry\": {\n                \"confluent\": {\n                    \"authentication\": {\n                        \"basic\": {\n                            \"password\": \"...my_password...\",\n                            \"username\": \"...my_username...\",\n                        },\n                        \"mode\": \"basic\",\n                        \"oauth2\": {\n                            \"audiences\": [\"...\"],\n                            \"client_id\": \"...my_client_id...\",\n                            \"client_secret\": \"...my_client_secret...\",\n                            \"grant_type\": \"client_credentials\",\n                            \"password\": \"...my_password...\",\n                            \"scopes\": [\"...\"],\n                            \"token_endpoint\": \"...my_token_endpoint...\",\n                            \"token_headers\": {\n                                \"key\": \"value\",\n                            },\n                            \"token_post_args\": {\n                                \"key\": \"value\",\n                            },\n                            \"username\": \"...my_username...\",\n                        },\n                        \"oauth2_client\": {\n                            \"auth_method\": \"client_secret_basic\",\n                            \"client_secret_jwt_alg\": \"HS512\",\n                            \"http_proxy\": \"...my_http_proxy...\",\n                            \"http_proxy_authorization\": \"...my_http_proxy_authorization...\",\n                            \"http_version\": 5.07,\n                            \"https_proxy\": \"...my_https_proxy...\",\n                            \"https_proxy_authorization\": \"...my_https_proxy_authorization...\",\n                            \"keep_alive\": False,\n                            \"no_proxy\": \"...my_no_proxy...\",\n                            \"ssl_verify\": True,\n                            \"timeout\": 1747283445,\n                        },\n                    },\n                    \"ssl_verify\": True,\n                    \"ttl\": 179.01,\n                    \"url\": \"...my_url...\",\n                },\n            },\n        }],\n    },\n    consumer={\n        \"id\": \"...my_id...\",\n    },\n    control_plane_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    created_at=6,\n    enabled=True,\n    gateway_plugin_confluent_consume_id=\"...my_id...\",\n    instance_name=\"...my_instance_name...\",\n    ordering={\n        \"after\": {\n            \"accesses\": [\"...\"],\n        },\n        \"before\": {\n            \"accesses\": [\"...\"],\n        },\n    },\n    partials=[{\n        \"id\": \"...my_id...\",\n        \"name\": \"...my_name...\",\n        \"path\": \"...my_path...\",\n    }],\n    protocols=[\"wss\"],\n    route={\n        \"id\": \"...my_id...\",\n    },\n    service={\n        \"id\": \"...my_id...\",\n    },\n    tags=[\"...\"],\n    updated_at=0)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myGatewaypluginconfluentconsume = new Konnect.GatewayPluginConfluentConsume(\"my_gatewaypluginconfluentconsume\", new()\n    {\n        Config = new Konnect.Inputs.GatewayPluginConfluentConsumeConfigArgs\n        {\n            AutoOffsetReset = \"earliest\",\n            BootstrapServers = new[]\n            {\n                new Konnect.Inputs.GatewayPluginConfluentConsumeConfigBootstrapServerArgs\n                {\n                    Host = \"...my_host...\",\n                    Port = 58521,\n                },\n            },\n            ClusterApiKey = \"...my_cluster_api_key...\",\n            ClusterApiSecret = \"...my_cluster_api_secret...\",\n            ClusterName = \"...my_cluster_name...\",\n            CommitStrategy = \"auto\",\n            ConfluentCloudApiKey = \"...my_confluent_cloud_api_key...\",\n            ConfluentCloudApiSecret = \"...my_confluent_cloud_api_secret...\",\n            DlqTopic = \"...my_dlq_topic...\",\n            EnableDlq = true,\n            EnforceLatestOffsetReset = false,\n            Keepalive = 2,\n            KeepaliveEnabled = true,\n            MessageByLuaFunctions = new[]\n            {\n                \"...\",\n            },\n            MessageDeserializer = \"noop\",\n            Mode = \"http-get\",\n            SchemaRegistry = new Konnect.Inputs.GatewayPluginConfluentConsumeConfigSchemaRegistryArgs\n            {\n                Confluent = new Konnect.Inputs.GatewayPluginConfluentConsumeConfigSchemaRegistryConfluentArgs\n                {\n                    Authentication = new Konnect.Inputs.GatewayPluginConfluentConsumeConfigSchemaRegistryConfluentAuthenticationArgs\n                    {\n                        Basic = new Konnect.Inputs.GatewayPluginConfluentConsumeConfigSchemaRegistryConfluentAuthenticationBasicArgs\n                        {\n                            Password = \"...my_password...\",\n                            Username = \"...my_username...\",\n                        },\n                        Mode = \"basic\",\n                        Oauth2 = new Konnect.Inputs.GatewayPluginConfluentConsumeConfigSchemaRegistryConfluentAuthenticationOauth2Args\n                        {\n                            Audiences = new[]\n                            {\n                                \"...\",\n                            },\n                            ClientId = \"...my_client_id...\",\n                            ClientSecret = \"...my_client_secret...\",\n                            GrantType = \"password\",\n                            Password = \"...my_password...\",\n                            Scopes = new[]\n                            {\n                                \"...\",\n                            },\n                            TokenEndpoint = \"...my_token_endpoint...\",\n                            TokenHeaders = \n                            {\n                                { \"key\", \"value\" },\n                            },\n                            TokenPostArgs = \n                            {\n                                { \"key\", \"value\" },\n                            },\n                            Username = \"...my_username...\",\n                        },\n                        Oauth2Client = new Konnect.Inputs.GatewayPluginConfluentConsumeConfigSchemaRegistryConfluentAuthenticationOauth2ClientArgs\n                        {\n                            AuthMethod = \"client_secret_basic\",\n                            ClientSecretJwtAlg = \"HS512\",\n                            HttpProxy = \"...my_http_proxy...\",\n                            HttpProxyAuthorization = \"...my_http_proxy_authorization...\",\n                            HttpVersion = 8.6,\n                            HttpsProxy = \"...my_https_proxy...\",\n                            HttpsProxyAuthorization = \"...my_https_proxy_authorization...\",\n                            KeepAlive = false,\n                            NoProxy = \"...my_no_proxy...\",\n                            SslVerify = true,\n                            Timeout = 595962925,\n                        },\n                    },\n                    SslVerify = false,\n                    Ttl = 2309.04,\n                    Url = \"...my_url...\",\n                },\n            },\n            Security = new Konnect.Inputs.GatewayPluginConfluentConsumeConfigSecurityArgs\n            {\n                SslVerify = false,\n            },\n            Timeout = 7,\n            Topics = new[]\n            {\n                new Konnect.Inputs.GatewayPluginConfluentConsumeConfigTopicArgs\n                {\n                    Name = \"...my_name...\",\n                    SchemaRegistry = new Konnect.Inputs.GatewayPluginConfluentConsumeConfigTopicSchemaRegistryArgs\n                    {\n                        Confluent = new Konnect.Inputs.GatewayPluginConfluentConsumeConfigTopicSchemaRegistryConfluentArgs\n                        {\n                            Authentication = new Konnect.Inputs.GatewayPluginConfluentConsumeConfigTopicSchemaRegistryConfluentAuthenticationArgs\n                            {\n                                Basic = new Konnect.Inputs.GatewayPluginConfluentConsumeConfigTopicSchemaRegistryConfluentAuthenticationBasicArgs\n                                {\n                                    Password = \"...my_password...\",\n                                    Username = \"...my_username...\",\n                                },\n                                Mode = \"basic\",\n                                Oauth2 = new Konnect.Inputs.GatewayPluginConfluentConsumeConfigTopicSchemaRegistryConfluentAuthenticationOauth2Args\n                                {\n                                    Audiences = new[]\n                                    {\n                                        \"...\",\n                                    },\n                                    ClientId = \"...my_client_id...\",\n                                    ClientSecret = \"...my_client_secret...\",\n                                    GrantType = \"client_credentials\",\n                                    Password = \"...my_password...\",\n                                    Scopes = new[]\n                                    {\n                                        \"...\",\n                                    },\n                                    TokenEndpoint = \"...my_token_endpoint...\",\n                                    TokenHeaders = \n                                    {\n                                        { \"key\", \"value\" },\n                                    },\n                                    TokenPostArgs = \n                                    {\n                                        { \"key\", \"value\" },\n                                    },\n                                    Username = \"...my_username...\",\n                                },\n                                Oauth2Client = new Konnect.Inputs.GatewayPluginConfluentConsumeConfigTopicSchemaRegistryConfluentAuthenticationOauth2ClientArgs\n                                {\n                                    AuthMethod = \"client_secret_basic\",\n                                    ClientSecretJwtAlg = \"HS512\",\n                                    HttpProxy = \"...my_http_proxy...\",\n                                    HttpProxyAuthorization = \"...my_http_proxy_authorization...\",\n                                    HttpVersion = 5.07,\n                                    HttpsProxy = \"...my_https_proxy...\",\n                                    HttpsProxyAuthorization = \"...my_https_proxy_authorization...\",\n                                    KeepAlive = false,\n                                    NoProxy = \"...my_no_proxy...\",\n                                    SslVerify = true,\n                                    Timeout = 1747283445,\n                                },\n                            },\n                            SslVerify = true,\n                            Ttl = 179.01,\n                            Url = \"...my_url...\",\n                        },\n                    },\n                },\n            },\n        },\n        Consumer = new Konnect.Inputs.GatewayPluginConfluentConsumeConsumerArgs\n        {\n            Id = \"...my_id...\",\n        },\n        ControlPlaneId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        CreatedAt = 6,\n        Enabled = true,\n        GatewayPluginConfluentConsumeId = \"...my_id...\",\n        InstanceName = \"...my_instance_name...\",\n        Ordering = new Konnect.Inputs.GatewayPluginConfluentConsumeOrderingArgs\n        {\n            After = new Konnect.Inputs.GatewayPluginConfluentConsumeOrderingAfterArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n            Before = new Konnect.Inputs.GatewayPluginConfluentConsumeOrderingBeforeArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n        },\n        Partials = new[]\n        {\n            new Konnect.Inputs.GatewayPluginConfluentConsumePartialArgs\n            {\n                Id = \"...my_id...\",\n                Name = \"...my_name...\",\n                Path = \"...my_path...\",\n            },\n        },\n        Protocols = new[]\n        {\n            \"wss\",\n        },\n        Route = new Konnect.Inputs.GatewayPluginConfluentConsumeRouteArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Service = new Konnect.Inputs.GatewayPluginConfluentConsumeServiceArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Tags = new[]\n        {\n            \"...\",\n        },\n        UpdatedAt = 0,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewGatewayPluginConfluentConsume(ctx, \"my_gatewaypluginconfluentconsume\", \u0026konnect.GatewayPluginConfluentConsumeArgs{\n\t\t\tConfig: \u0026konnect.GatewayPluginConfluentConsumeConfigArgs{\n\t\t\t\tAutoOffsetReset: pulumi.String(\"earliest\"),\n\t\t\t\tBootstrapServers: konnect.GatewayPluginConfluentConsumeConfigBootstrapServerArray{\n\t\t\t\t\t\u0026konnect.GatewayPluginConfluentConsumeConfigBootstrapServerArgs{\n\t\t\t\t\t\tHost: pulumi.String(\"...my_host...\"),\n\t\t\t\t\t\tPort: pulumi.Float64(58521),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tClusterApiKey:            pulumi.String(\"...my_cluster_api_key...\"),\n\t\t\t\tClusterApiSecret:         pulumi.String(\"...my_cluster_api_secret...\"),\n\t\t\t\tClusterName:              pulumi.String(\"...my_cluster_name...\"),\n\t\t\t\tCommitStrategy:           pulumi.String(\"auto\"),\n\t\t\t\tConfluentCloudApiKey:     pulumi.String(\"...my_confluent_cloud_api_key...\"),\n\t\t\t\tConfluentCloudApiSecret:  pulumi.String(\"...my_confluent_cloud_api_secret...\"),\n\t\t\t\tDlqTopic:                 pulumi.String(\"...my_dlq_topic...\"),\n\t\t\t\tEnableDlq:                pulumi.Bool(true),\n\t\t\t\tEnforceLatestOffsetReset: pulumi.Bool(false),\n\t\t\t\tKeepalive:                pulumi.Float64(2),\n\t\t\t\tKeepaliveEnabled:         pulumi.Bool(true),\n\t\t\t\tMessageByLuaFunctions: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tMessageDeserializer: pulumi.String(\"noop\"),\n\t\t\t\tMode:                pulumi.String(\"http-get\"),\n\t\t\t\tSchemaRegistry: \u0026konnect.GatewayPluginConfluentConsumeConfigSchemaRegistryArgs{\n\t\t\t\t\tConfluent: \u0026konnect.GatewayPluginConfluentConsumeConfigSchemaRegistryConfluentArgs{\n\t\t\t\t\t\tAuthentication: \u0026konnect.GatewayPluginConfluentConsumeConfigSchemaRegistryConfluentAuthenticationArgs{\n\t\t\t\t\t\t\tBasic: \u0026konnect.GatewayPluginConfluentConsumeConfigSchemaRegistryConfluentAuthenticationBasicArgs{\n\t\t\t\t\t\t\t\tPassword: pulumi.String(\"...my_password...\"),\n\t\t\t\t\t\t\t\tUsername: pulumi.String(\"...my_username...\"),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tMode: pulumi.String(\"basic\"),\n\t\t\t\t\t\t\tOauth2: \u0026konnect.GatewayPluginConfluentConsumeConfigSchemaRegistryConfluentAuthenticationOauth2Args{\n\t\t\t\t\t\t\t\tAudiences: pulumi.StringArray{\n\t\t\t\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\tClientId:     pulumi.String(\"...my_client_id...\"),\n\t\t\t\t\t\t\t\tClientSecret: pulumi.String(\"...my_client_secret...\"),\n\t\t\t\t\t\t\t\tGrantType:    pulumi.String(\"password\"),\n\t\t\t\t\t\t\t\tPassword:     pulumi.String(\"...my_password...\"),\n\t\t\t\t\t\t\t\tScopes: pulumi.StringArray{\n\t\t\t\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\tTokenEndpoint: pulumi.String(\"...my_token_endpoint...\"),\n\t\t\t\t\t\t\t\tTokenHeaders: pulumi.StringMap{\n\t\t\t\t\t\t\t\t\t\"key\": pulumi.String(\"value\"),\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\tTokenPostArgs: pulumi.StringMap{\n\t\t\t\t\t\t\t\t\t\"key\": pulumi.String(\"value\"),\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\tUsername: pulumi.String(\"...my_username...\"),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tOauth2Client: \u0026konnect.GatewayPluginConfluentConsumeConfigSchemaRegistryConfluentAuthenticationOauth2ClientArgs{\n\t\t\t\t\t\t\t\tAuthMethod:              pulumi.String(\"client_secret_basic\"),\n\t\t\t\t\t\t\t\tClientSecretJwtAlg:      pulumi.String(\"HS512\"),\n\t\t\t\t\t\t\t\tHttpProxy:               pulumi.String(\"...my_http_proxy...\"),\n\t\t\t\t\t\t\t\tHttpProxyAuthorization:  pulumi.String(\"...my_http_proxy_authorization...\"),\n\t\t\t\t\t\t\t\tHttpVersion:             pulumi.Float64(8.6),\n\t\t\t\t\t\t\t\tHttpsProxy:              pulumi.String(\"...my_https_proxy...\"),\n\t\t\t\t\t\t\t\tHttpsProxyAuthorization: pulumi.String(\"...my_https_proxy_authorization...\"),\n\t\t\t\t\t\t\t\tKeepAlive:               pulumi.Bool(false),\n\t\t\t\t\t\t\t\tNoProxy:                 pulumi.String(\"...my_no_proxy...\"),\n\t\t\t\t\t\t\t\tSslVerify:               pulumi.Bool(true),\n\t\t\t\t\t\t\t\tTimeout:                 pulumi.Float64(595962925),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t\tSslVerify: pulumi.Bool(false),\n\t\t\t\t\t\tTtl:       pulumi.Float64(2309.04),\n\t\t\t\t\t\tUrl:       pulumi.String(\"...my_url...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tSecurity: \u0026konnect.GatewayPluginConfluentConsumeConfigSecurityArgs{\n\t\t\t\t\tSslVerify: pulumi.Bool(false),\n\t\t\t\t},\n\t\t\t\tTimeout: pulumi.Float64(7),\n\t\t\t\tTopics: konnect.GatewayPluginConfluentConsumeConfigTopicArray{\n\t\t\t\t\t\u0026konnect.GatewayPluginConfluentConsumeConfigTopicArgs{\n\t\t\t\t\t\tName: pulumi.String(\"...my_name...\"),\n\t\t\t\t\t\tSchemaRegistry: \u0026konnect.GatewayPluginConfluentConsumeConfigTopicSchemaRegistryArgs{\n\t\t\t\t\t\t\tConfluent: \u0026konnect.GatewayPluginConfluentConsumeConfigTopicSchemaRegistryConfluentArgs{\n\t\t\t\t\t\t\t\tAuthentication: \u0026konnect.GatewayPluginConfluentConsumeConfigTopicSchemaRegistryConfluentAuthenticationArgs{\n\t\t\t\t\t\t\t\t\tBasic: \u0026konnect.GatewayPluginConfluentConsumeConfigTopicSchemaRegistryConfluentAuthenticationBasicArgs{\n\t\t\t\t\t\t\t\t\t\tPassword: pulumi.String(\"...my_password...\"),\n\t\t\t\t\t\t\t\t\t\tUsername: pulumi.String(\"...my_username...\"),\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\tMode: pulumi.String(\"basic\"),\n\t\t\t\t\t\t\t\t\tOauth2: \u0026konnect.GatewayPluginConfluentConsumeConfigTopicSchemaRegistryConfluentAuthenticationOauth2Args{\n\t\t\t\t\t\t\t\t\t\tAudiences: pulumi.StringArray{\n\t\t\t\t\t\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\tClientId:     pulumi.String(\"...my_client_id...\"),\n\t\t\t\t\t\t\t\t\t\tClientSecret: pulumi.String(\"...my_client_secret...\"),\n\t\t\t\t\t\t\t\t\t\tGrantType:    pulumi.String(\"client_credentials\"),\n\t\t\t\t\t\t\t\t\t\tPassword:     pulumi.String(\"...my_password...\"),\n\t\t\t\t\t\t\t\t\t\tScopes: pulumi.StringArray{\n\t\t\t\t\t\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\tTokenEndpoint: pulumi.String(\"...my_token_endpoint...\"),\n\t\t\t\t\t\t\t\t\t\tTokenHeaders: pulumi.StringMap{\n\t\t\t\t\t\t\t\t\t\t\t\"key\": pulumi.String(\"value\"),\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\tTokenPostArgs: pulumi.StringMap{\n\t\t\t\t\t\t\t\t\t\t\t\"key\": pulumi.String(\"value\"),\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\tUsername: pulumi.String(\"...my_username...\"),\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\tOauth2Client: \u0026konnect.GatewayPluginConfluentConsumeConfigTopicSchemaRegistryConfluentAuthenticationOauth2ClientArgs{\n\t\t\t\t\t\t\t\t\t\tAuthMethod:              pulumi.String(\"client_secret_basic\"),\n\t\t\t\t\t\t\t\t\t\tClientSecretJwtAlg:      pulumi.String(\"HS512\"),\n\t\t\t\t\t\t\t\t\t\tHttpProxy:               pulumi.String(\"...my_http_proxy...\"),\n\t\t\t\t\t\t\t\t\t\tHttpProxyAuthorization:  pulumi.String(\"...my_http_proxy_authorization...\"),\n\t\t\t\t\t\t\t\t\t\tHttpVersion:             pulumi.Float64(5.07),\n\t\t\t\t\t\t\t\t\t\tHttpsProxy:              pulumi.String(\"...my_https_proxy...\"),\n\t\t\t\t\t\t\t\t\t\tHttpsProxyAuthorization: pulumi.String(\"...my_https_proxy_authorization...\"),\n\t\t\t\t\t\t\t\t\t\tKeepAlive:               pulumi.Bool(false),\n\t\t\t\t\t\t\t\t\t\tNoProxy:                 pulumi.String(\"...my_no_proxy...\"),\n\t\t\t\t\t\t\t\t\t\tSslVerify:               pulumi.Bool(true),\n\t\t\t\t\t\t\t\t\t\tTimeout:                 pulumi.Float64(1747283445),\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\tSslVerify: pulumi.Bool(true),\n\t\t\t\t\t\t\t\tTtl:       pulumi.Float64(179.01),\n\t\t\t\t\t\t\t\tUrl:       pulumi.String(\"...my_url...\"),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tConsumer: \u0026konnect.GatewayPluginConfluentConsumeConsumerArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tControlPlaneId:                  pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tCreatedAt:                       pulumi.Float64(6),\n\t\t\tEnabled:                         pulumi.Bool(true),\n\t\t\tGatewayPluginConfluentConsumeId: pulumi.String(\"...my_id...\"),\n\t\t\tInstanceName:                    pulumi.String(\"...my_instance_name...\"),\n\t\t\tOrdering: \u0026konnect.GatewayPluginConfluentConsumeOrderingArgs{\n\t\t\t\tAfter: \u0026konnect.GatewayPluginConfluentConsumeOrderingAfterArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tBefore: \u0026konnect.GatewayPluginConfluentConsumeOrderingBeforeArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tPartials: konnect.GatewayPluginConfluentConsumePartialArray{\n\t\t\t\t\u0026konnect.GatewayPluginConfluentConsumePartialArgs{\n\t\t\t\t\tId:   pulumi.String(\"...my_id...\"),\n\t\t\t\t\tName: pulumi.String(\"...my_name...\"),\n\t\t\t\t\tPath: pulumi.String(\"...my_path...\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tProtocols: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"wss\"),\n\t\t\t},\n\t\t\tRoute: \u0026konnect.GatewayPluginConfluentConsumeRouteArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tService: \u0026konnect.GatewayPluginConfluentConsumeServiceArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"...\"),\n\t\t\t},\n\t\t\tUpdatedAt: pulumi.Float64(0),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.GatewayPluginConfluentConsume;\nimport com.pulumi.konnect.GatewayPluginConfluentConsumeArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginConfluentConsumeConfigArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginConfluentConsumeConfigSchemaRegistryArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginConfluentConsumeConfigSchemaRegistryConfluentArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginConfluentConsumeConfigSchemaRegistryConfluentAuthenticationArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginConfluentConsumeConfigSchemaRegistryConfluentAuthenticationBasicArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginConfluentConsumeConfigSchemaRegistryConfluentAuthenticationOauth2Args;\nimport com.pulumi.konnect.inputs.GatewayPluginConfluentConsumeConfigSchemaRegistryConfluentAuthenticationOauth2ClientArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginConfluentConsumeConfigSecurityArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginConfluentConsumeConsumerArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginConfluentConsumeOrderingArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginConfluentConsumeOrderingAfterArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginConfluentConsumeOrderingBeforeArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginConfluentConsumePartialArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginConfluentConsumeRouteArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginConfluentConsumeServiceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myGatewaypluginconfluentconsume = new GatewayPluginConfluentConsume(\"myGatewaypluginconfluentconsume\", GatewayPluginConfluentConsumeArgs.builder()\n            .config(GatewayPluginConfluentConsumeConfigArgs.builder()\n                .autoOffsetReset(\"earliest\")\n                .bootstrapServers(GatewayPluginConfluentConsumeConfigBootstrapServerArgs.builder()\n                    .host(\"...my_host...\")\n                    .port(58521.0)\n                    .build())\n                .clusterApiKey(\"...my_cluster_api_key...\")\n                .clusterApiSecret(\"...my_cluster_api_secret...\")\n                .clusterName(\"...my_cluster_name...\")\n                .commitStrategy(\"auto\")\n                .confluentCloudApiKey(\"...my_confluent_cloud_api_key...\")\n                .confluentCloudApiSecret(\"...my_confluent_cloud_api_secret...\")\n                .dlqTopic(\"...my_dlq_topic...\")\n                .enableDlq(true)\n                .enforceLatestOffsetReset(false)\n                .keepalive(2.0)\n                .keepaliveEnabled(true)\n                .messageByLuaFunctions(\"...\")\n                .messageDeserializer(\"noop\")\n                .mode(\"http-get\")\n                .schemaRegistry(GatewayPluginConfluentConsumeConfigSchemaRegistryArgs.builder()\n                    .confluent(GatewayPluginConfluentConsumeConfigSchemaRegistryConfluentArgs.builder()\n                        .authentication(GatewayPluginConfluentConsumeConfigSchemaRegistryConfluentAuthenticationArgs.builder()\n                            .basic(GatewayPluginConfluentConsumeConfigSchemaRegistryConfluentAuthenticationBasicArgs.builder()\n                                .password(\"...my_password...\")\n                                .username(\"...my_username...\")\n                                .build())\n                            .mode(\"basic\")\n                            .oauth2(GatewayPluginConfluentConsumeConfigSchemaRegistryConfluentAuthenticationOauth2Args.builder()\n                                .audiences(\"...\")\n                                .clientId(\"...my_client_id...\")\n                                .clientSecret(\"...my_client_secret...\")\n                                .grantType(\"password\")\n                                .password(\"...my_password...\")\n                                .scopes(\"...\")\n                                .tokenEndpoint(\"...my_token_endpoint...\")\n                                .tokenHeaders(Map.of(\"key\", \"value\"))\n                                .tokenPostArgs(Map.of(\"key\", \"value\"))\n                                .username(\"...my_username...\")\n                                .build())\n                            .oauth2Client(GatewayPluginConfluentConsumeConfigSchemaRegistryConfluentAuthenticationOauth2ClientArgs.builder()\n                                .authMethod(\"client_secret_basic\")\n                                .clientSecretJwtAlg(\"HS512\")\n                                .httpProxy(\"...my_http_proxy...\")\n                                .httpProxyAuthorization(\"...my_http_proxy_authorization...\")\n                                .httpVersion(8.6)\n                                .httpsProxy(\"...my_https_proxy...\")\n                                .httpsProxyAuthorization(\"...my_https_proxy_authorization...\")\n                                .keepAlive(false)\n                                .noProxy(\"...my_no_proxy...\")\n                                .sslVerify(true)\n                                .timeout(595962925.0)\n                                .build())\n                            .build())\n                        .sslVerify(false)\n                        .ttl(2309.04)\n                        .url(\"...my_url...\")\n                        .build())\n                    .build())\n                .security(GatewayPluginConfluentConsumeConfigSecurityArgs.builder()\n                    .sslVerify(false)\n                    .build())\n                .timeout(7.0)\n                .topics(GatewayPluginConfluentConsumeConfigTopicArgs.builder()\n                    .name(\"...my_name...\")\n                    .schemaRegistry(GatewayPluginConfluentConsumeConfigTopicSchemaRegistryArgs.builder()\n                        .confluent(GatewayPluginConfluentConsumeConfigTopicSchemaRegistryConfluentArgs.builder()\n                            .authentication(GatewayPluginConfluentConsumeConfigTopicSchemaRegistryConfluentAuthenticationArgs.builder()\n                                .basic(GatewayPluginConfluentConsumeConfigTopicSchemaRegistryConfluentAuthenticationBasicArgs.builder()\n                                    .password(\"...my_password...\")\n                                    .username(\"...my_username...\")\n                                    .build())\n                                .mode(\"basic\")\n                                .oauth2(GatewayPluginConfluentConsumeConfigTopicSchemaRegistryConfluentAuthenticationOauth2Args.builder()\n                                    .audiences(\"...\")\n                                    .clientId(\"...my_client_id...\")\n                                    .clientSecret(\"...my_client_secret...\")\n                                    .grantType(\"client_credentials\")\n                                    .password(\"...my_password...\")\n                                    .scopes(\"...\")\n                                    .tokenEndpoint(\"...my_token_endpoint...\")\n                                    .tokenHeaders(Map.of(\"key\", \"value\"))\n                                    .tokenPostArgs(Map.of(\"key\", \"value\"))\n                                    .username(\"...my_username...\")\n                                    .build())\n                                .oauth2Client(GatewayPluginConfluentConsumeConfigTopicSchemaRegistryConfluentAuthenticationOauth2ClientArgs.builder()\n                                    .authMethod(\"client_secret_basic\")\n                                    .clientSecretJwtAlg(\"HS512\")\n                                    .httpProxy(\"...my_http_proxy...\")\n                                    .httpProxyAuthorization(\"...my_http_proxy_authorization...\")\n                                    .httpVersion(5.07)\n                                    .httpsProxy(\"...my_https_proxy...\")\n                                    .httpsProxyAuthorization(\"...my_https_proxy_authorization...\")\n                                    .keepAlive(false)\n                                    .noProxy(\"...my_no_proxy...\")\n                                    .sslVerify(true)\n                                    .timeout(1747283445.0)\n                                    .build())\n                                .build())\n                            .sslVerify(true)\n                            .ttl(179.01)\n                            .url(\"...my_url...\")\n                            .build())\n                        .build())\n                    .build())\n                .build())\n            .consumer(GatewayPluginConfluentConsumeConsumerArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .controlPlaneId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .createdAt(6.0)\n            .enabled(true)\n            .gatewayPluginConfluentConsumeId(\"...my_id...\")\n            .instanceName(\"...my_instance_name...\")\n            .ordering(GatewayPluginConfluentConsumeOrderingArgs.builder()\n                .after(GatewayPluginConfluentConsumeOrderingAfterArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .before(GatewayPluginConfluentConsumeOrderingBeforeArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .build())\n            .partials(GatewayPluginConfluentConsumePartialArgs.builder()\n                .id(\"...my_id...\")\n                .name(\"...my_name...\")\n                .path(\"...my_path...\")\n                .build())\n            .protocols(\"wss\")\n            .route(GatewayPluginConfluentConsumeRouteArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .service(GatewayPluginConfluentConsumeServiceArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .tags(\"...\")\n            .updatedAt(0.0)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myGatewaypluginconfluentconsume:\n    type: konnect:GatewayPluginConfluentConsume\n    name: my_gatewaypluginconfluentconsume\n    properties:\n      config:\n        autoOffsetReset: earliest\n        bootstrapServers:\n          - host: '...my_host...'\n            port: 58521\n        clusterApiKey: '...my_cluster_api_key...'\n        clusterApiSecret: '...my_cluster_api_secret...'\n        clusterName: '...my_cluster_name...'\n        commitStrategy: auto\n        confluentCloudApiKey: '...my_confluent_cloud_api_key...'\n        confluentCloudApiSecret: '...my_confluent_cloud_api_secret...'\n        dlqTopic: '...my_dlq_topic...'\n        enableDlq: true\n        enforceLatestOffsetReset: false\n        keepalive: 2\n        keepaliveEnabled: true\n        messageByLuaFunctions:\n          - '...'\n        messageDeserializer: noop\n        mode: http-get\n        schemaRegistry:\n          confluent:\n            authentication:\n              basic:\n                password: '...my_password...'\n                username: '...my_username...'\n              mode: basic\n              oauth2:\n                audiences:\n                  - '...'\n                clientId: '...my_client_id...'\n                clientSecret: '...my_client_secret...'\n                grantType: password\n                password: '...my_password...'\n                scopes:\n                  - '...'\n                tokenEndpoint: '...my_token_endpoint...'\n                tokenHeaders:\n                  key: value\n                tokenPostArgs:\n                  key: value\n                username: '...my_username...'\n              oauth2Client:\n                authMethod: client_secret_basic\n                clientSecretJwtAlg: HS512\n                httpProxy: '...my_http_proxy...'\n                httpProxyAuthorization: '...my_http_proxy_authorization...'\n                httpVersion: 8.6\n                httpsProxy: '...my_https_proxy...'\n                httpsProxyAuthorization: '...my_https_proxy_authorization...'\n                keepAlive: false\n                noProxy: '...my_no_proxy...'\n                sslVerify: true\n                timeout: 5.95962925e+08\n            sslVerify: false\n            ttl: 2309.04\n            url: '...my_url...'\n        security:\n          sslVerify: false\n        timeout: 7\n        topics:\n          - name: '...my_name...'\n            schemaRegistry:\n              confluent:\n                authentication:\n                  basic:\n                    password: '...my_password...'\n                    username: '...my_username...'\n                  mode: basic\n                  oauth2:\n                    audiences:\n                      - '...'\n                    clientId: '...my_client_id...'\n                    clientSecret: '...my_client_secret...'\n                    grantType: client_credentials\n                    password: '...my_password...'\n                    scopes:\n                      - '...'\n                    tokenEndpoint: '...my_token_endpoint...'\n                    tokenHeaders:\n                      key: value\n                    tokenPostArgs:\n                      key: value\n                    username: '...my_username...'\n                  oauth2Client:\n                    authMethod: client_secret_basic\n                    clientSecretJwtAlg: HS512\n                    httpProxy: '...my_http_proxy...'\n                    httpProxyAuthorization: '...my_http_proxy_authorization...'\n                    httpVersion: 5.07\n                    httpsProxy: '...my_https_proxy...'\n                    httpsProxyAuthorization: '...my_https_proxy_authorization...'\n                    keepAlive: false\n                    noProxy: '...my_no_proxy...'\n                    sslVerify: true\n                    timeout: 1.747283445e+09\n                sslVerify: true\n                ttl: 179.01\n                url: '...my_url...'\n      consumer:\n        id: '...my_id...'\n      controlPlaneId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      createdAt: 6\n      enabled: true\n      gatewayPluginConfluentConsumeId: '...my_id...'\n      instanceName: '...my_instance_name...'\n      ordering:\n        after:\n          accesses:\n            - '...'\n        before:\n          accesses:\n            - '...'\n      partials:\n        - id: '...my_id...'\n          name: '...my_name...'\n          path: '...my_path...'\n      protocols:\n        - wss\n      route:\n        id: '...my_id...'\n      service:\n        id: '...my_id...'\n      tags:\n        - '...'\n      updatedAt: 0\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_gateway_plugin_confluent_consume.my_konnect_gateway_plugin_confluent_consume\n\n  id = jsonencode({\n\n    control_plane_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/gatewayPluginConfluentConsume:GatewayPluginConfluentConsume my_konnect_gateway_plugin_confluent_consume '{\"control_plane_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"}'\n```\n\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginConfluentConsumeConfig:GatewayPluginConfluentConsumeConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginConfluentConsumeConsumer:GatewayPluginConfluentConsumeConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginConfluentConsumeId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginConfluentConsumeOrdering:GatewayPluginConfluentConsumeOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginConfluentConsumePartial:GatewayPluginConfluentConsumePartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A list of the request protocols that will trigger this plugin. The default value, as well as the possible values allowed on this field, may change depending on the plugin type. For example, plugins that only work in stream mode will only support tcp and tls. Default: [\"grpc\",\"grpcs\",\"http\",\"https\",\"ws\",\"wss\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginConfluentConsumeRoute:GatewayPluginConfluentConsumeRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginConfluentConsumeService:GatewayPluginConfluentConsumeService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object","required":["config","consumer","controlPlaneId","createdAt","enabled","gatewayPluginConfluentConsumeId","ordering","protocols","route","service","updatedAt"],"inputProperties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginConfluentConsumeConfig:GatewayPluginConfluentConsumeConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginConfluentConsumeConsumer:GatewayPluginConfluentConsumeConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginConfluentConsumeId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginConfluentConsumeOrdering:GatewayPluginConfluentConsumeOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginConfluentConsumePartial:GatewayPluginConfluentConsumePartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A list of the request protocols that will trigger this plugin. The default value, as well as the possible values allowed on this field, may change depending on the plugin type. For example, plugins that only work in stream mode will only support tcp and tls. Default: [\"grpc\",\"grpcs\",\"http\",\"https\",\"ws\",\"wss\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginConfluentConsumeRoute:GatewayPluginConfluentConsumeRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginConfluentConsumeService:GatewayPluginConfluentConsumeService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"requiredInputs":["config","controlPlaneId"],"stateInputs":{"description":"Input properties used for looking up and filtering GatewayPluginConfluentConsume resources.\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginConfluentConsumeConfig:GatewayPluginConfluentConsumeConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginConfluentConsumeConsumer:GatewayPluginConfluentConsumeConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginConfluentConsumeId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginConfluentConsumeOrdering:GatewayPluginConfluentConsumeOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginConfluentConsumePartial:GatewayPluginConfluentConsumePartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A list of the request protocols that will trigger this plugin. The default value, as well as the possible values allowed on this field, may change depending on the plugin type. For example, plugins that only work in stream mode will only support tcp and tls. Default: [\"grpc\",\"grpcs\",\"http\",\"https\",\"ws\",\"wss\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginConfluentConsumeRoute:GatewayPluginConfluentConsumeRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginConfluentConsumeService:GatewayPluginConfluentConsumeService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object"}},"konnect:index/gatewayPluginCorrelationId:GatewayPluginCorrelationId":{"description":"GatewayPluginCorrelationID Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myGatewayplugincorrelationid = new konnect.GatewayPluginCorrelationId(\"my_gatewayplugincorrelationid\", {\n    config: {\n        echoDownstream: false,\n        generator: \"uuid\",\n        headerName: \"...my_header_name...\",\n    },\n    consumer: {\n        id: \"...my_id...\",\n    },\n    controlPlaneId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    createdAt: 1,\n    enabled: false,\n    gatewayPluginCorrelationIdId: \"...my_id...\",\n    instanceName: \"...my_instance_name...\",\n    ordering: {\n        after: {\n            accesses: [\"...\"],\n        },\n        before: {\n            accesses: [\"...\"],\n        },\n    },\n    partials: [{\n        id: \"...my_id...\",\n        name: \"...my_name...\",\n        path: \"...my_path...\",\n    }],\n    protocols: [\"grpc\"],\n    route: {\n        id: \"...my_id...\",\n    },\n    service: {\n        id: \"...my_id...\",\n    },\n    tags: [\"...\"],\n    updatedAt: 10,\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_gatewayplugincorrelationid = konnect.GatewayPluginCorrelationId(\"my_gatewayplugincorrelationid\",\n    config={\n        \"echo_downstream\": False,\n        \"generator\": \"uuid\",\n        \"header_name\": \"...my_header_name...\",\n    },\n    consumer={\n        \"id\": \"...my_id...\",\n    },\n    control_plane_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    created_at=1,\n    enabled=False,\n    gateway_plugin_correlation_id_id=\"...my_id...\",\n    instance_name=\"...my_instance_name...\",\n    ordering={\n        \"after\": {\n            \"accesses\": [\"...\"],\n        },\n        \"before\": {\n            \"accesses\": [\"...\"],\n        },\n    },\n    partials=[{\n        \"id\": \"...my_id...\",\n        \"name\": \"...my_name...\",\n        \"path\": \"...my_path...\",\n    }],\n    protocols=[\"grpc\"],\n    route={\n        \"id\": \"...my_id...\",\n    },\n    service={\n        \"id\": \"...my_id...\",\n    },\n    tags=[\"...\"],\n    updated_at=10)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myGatewayplugincorrelationid = new Konnect.GatewayPluginCorrelationId(\"my_gatewayplugincorrelationid\", new()\n    {\n        Config = new Konnect.Inputs.GatewayPluginCorrelationIdConfigArgs\n        {\n            EchoDownstream = false,\n            Generator = \"uuid\",\n            HeaderName = \"...my_header_name...\",\n        },\n        Consumer = new Konnect.Inputs.GatewayPluginCorrelationIdConsumerArgs\n        {\n            Id = \"...my_id...\",\n        },\n        ControlPlaneId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        CreatedAt = 1,\n        Enabled = false,\n        GatewayPluginCorrelationIdId = \"...my_id...\",\n        InstanceName = \"...my_instance_name...\",\n        Ordering = new Konnect.Inputs.GatewayPluginCorrelationIdOrderingArgs\n        {\n            After = new Konnect.Inputs.GatewayPluginCorrelationIdOrderingAfterArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n            Before = new Konnect.Inputs.GatewayPluginCorrelationIdOrderingBeforeArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n        },\n        Partials = new[]\n        {\n            new Konnect.Inputs.GatewayPluginCorrelationIdPartialArgs\n            {\n                Id = \"...my_id...\",\n                Name = \"...my_name...\",\n                Path = \"...my_path...\",\n            },\n        },\n        Protocols = new[]\n        {\n            \"grpc\",\n        },\n        Route = new Konnect.Inputs.GatewayPluginCorrelationIdRouteArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Service = new Konnect.Inputs.GatewayPluginCorrelationIdServiceArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Tags = new[]\n        {\n            \"...\",\n        },\n        UpdatedAt = 10,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewGatewayPluginCorrelationId(ctx, \"my_gatewayplugincorrelationid\", \u0026konnect.GatewayPluginCorrelationIdArgs{\n\t\t\tConfig: \u0026konnect.GatewayPluginCorrelationIdConfigArgs{\n\t\t\t\tEchoDownstream: pulumi.Bool(false),\n\t\t\t\tGenerator:      pulumi.String(\"uuid\"),\n\t\t\t\tHeaderName:     pulumi.String(\"...my_header_name...\"),\n\t\t\t},\n\t\t\tConsumer: \u0026konnect.GatewayPluginCorrelationIdConsumerArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tControlPlaneId:               pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tCreatedAt:                    pulumi.Float64(1),\n\t\t\tEnabled:                      pulumi.Bool(false),\n\t\t\tGatewayPluginCorrelationIdId: pulumi.String(\"...my_id...\"),\n\t\t\tInstanceName:                 pulumi.String(\"...my_instance_name...\"),\n\t\t\tOrdering: \u0026konnect.GatewayPluginCorrelationIdOrderingArgs{\n\t\t\t\tAfter: \u0026konnect.GatewayPluginCorrelationIdOrderingAfterArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tBefore: \u0026konnect.GatewayPluginCorrelationIdOrderingBeforeArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tPartials: konnect.GatewayPluginCorrelationIdPartialArray{\n\t\t\t\t\u0026konnect.GatewayPluginCorrelationIdPartialArgs{\n\t\t\t\t\tId:   pulumi.String(\"...my_id...\"),\n\t\t\t\t\tName: pulumi.String(\"...my_name...\"),\n\t\t\t\t\tPath: pulumi.String(\"...my_path...\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tProtocols: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"grpc\"),\n\t\t\t},\n\t\t\tRoute: \u0026konnect.GatewayPluginCorrelationIdRouteArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tService: \u0026konnect.GatewayPluginCorrelationIdServiceArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"...\"),\n\t\t\t},\n\t\t\tUpdatedAt: pulumi.Float64(10),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.GatewayPluginCorrelationId;\nimport com.pulumi.konnect.GatewayPluginCorrelationIdArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginCorrelationIdConfigArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginCorrelationIdConsumerArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginCorrelationIdOrderingArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginCorrelationIdOrderingAfterArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginCorrelationIdOrderingBeforeArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginCorrelationIdPartialArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginCorrelationIdRouteArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginCorrelationIdServiceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myGatewayplugincorrelationid = new GatewayPluginCorrelationId(\"myGatewayplugincorrelationid\", GatewayPluginCorrelationIdArgs.builder()\n            .config(GatewayPluginCorrelationIdConfigArgs.builder()\n                .echoDownstream(false)\n                .generator(\"uuid\")\n                .headerName(\"...my_header_name...\")\n                .build())\n            .consumer(GatewayPluginCorrelationIdConsumerArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .controlPlaneId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .createdAt(1.0)\n            .enabled(false)\n            .gatewayPluginCorrelationIdId(\"...my_id...\")\n            .instanceName(\"...my_instance_name...\")\n            .ordering(GatewayPluginCorrelationIdOrderingArgs.builder()\n                .after(GatewayPluginCorrelationIdOrderingAfterArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .before(GatewayPluginCorrelationIdOrderingBeforeArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .build())\n            .partials(GatewayPluginCorrelationIdPartialArgs.builder()\n                .id(\"...my_id...\")\n                .name(\"...my_name...\")\n                .path(\"...my_path...\")\n                .build())\n            .protocols(\"grpc\")\n            .route(GatewayPluginCorrelationIdRouteArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .service(GatewayPluginCorrelationIdServiceArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .tags(\"...\")\n            .updatedAt(10.0)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myGatewayplugincorrelationid:\n    type: konnect:GatewayPluginCorrelationId\n    name: my_gatewayplugincorrelationid\n    properties:\n      config:\n        echoDownstream: false\n        generator: uuid\n        headerName: '...my_header_name...'\n      consumer:\n        id: '...my_id...'\n      controlPlaneId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      createdAt: 1\n      enabled: false\n      gatewayPluginCorrelationIdId: '...my_id...'\n      instanceName: '...my_instance_name...'\n      ordering:\n        after:\n          accesses:\n            - '...'\n        before:\n          accesses:\n            - '...'\n      partials:\n        - id: '...my_id...'\n          name: '...my_name...'\n          path: '...my_path...'\n      protocols:\n        - grpc\n      route:\n        id: '...my_id...'\n      service:\n        id: '...my_id...'\n      tags:\n        - '...'\n      updatedAt: 10\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_gateway_plugin_correlation_id.my_konnect_gateway_plugin_correlation_id\n\n  id = jsonencode({\n\n    control_plane_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/gatewayPluginCorrelationId:GatewayPluginCorrelationId my_konnect_gateway_plugin_correlation_id '{\"control_plane_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"}'\n```\n\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginCorrelationIdConfig:GatewayPluginCorrelationIdConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginCorrelationIdConsumer:GatewayPluginCorrelationIdConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginCorrelationIdId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginCorrelationIdOrdering:GatewayPluginCorrelationIdOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginCorrelationIdPartial:GatewayPluginCorrelationIdPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginCorrelationIdRoute:GatewayPluginCorrelationIdRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginCorrelationIdService:GatewayPluginCorrelationIdService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object","required":["config","consumer","controlPlaneId","createdAt","enabled","gatewayPluginCorrelationIdId","ordering","protocols","route","service","updatedAt"],"inputProperties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginCorrelationIdConfig:GatewayPluginCorrelationIdConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginCorrelationIdConsumer:GatewayPluginCorrelationIdConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginCorrelationIdId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginCorrelationIdOrdering:GatewayPluginCorrelationIdOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginCorrelationIdPartial:GatewayPluginCorrelationIdPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginCorrelationIdRoute:GatewayPluginCorrelationIdRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginCorrelationIdService:GatewayPluginCorrelationIdService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"requiredInputs":["controlPlaneId"],"stateInputs":{"description":"Input properties used for looking up and filtering GatewayPluginCorrelationId resources.\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginCorrelationIdConfig:GatewayPluginCorrelationIdConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginCorrelationIdConsumer:GatewayPluginCorrelationIdConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginCorrelationIdId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginCorrelationIdOrdering:GatewayPluginCorrelationIdOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginCorrelationIdPartial:GatewayPluginCorrelationIdPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginCorrelationIdRoute:GatewayPluginCorrelationIdRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginCorrelationIdService:GatewayPluginCorrelationIdService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object"}},"konnect:index/gatewayPluginCors:GatewayPluginCors":{"description":"GatewayPluginCors Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myGatewayplugincors = new konnect.GatewayPluginCors(\"my_gatewayplugincors\", {\n    config: {\n        allowOriginAbsent: true,\n        credentials: true,\n        exposedHeaders: [\"...\"],\n        headers: [\"...\"],\n        maxAge: 8.8,\n        methods: [\"DELETE\"],\n        origins: [\"...\"],\n        preflightContinue: true,\n        privateNetwork: true,\n    },\n    controlPlaneId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    createdAt: 3,\n    enabled: true,\n    gatewayPluginCorsId: \"...my_id...\",\n    instanceName: \"...my_instance_name...\",\n    ordering: {\n        after: {\n            accesses: [\"...\"],\n        },\n        before: {\n            accesses: [\"...\"],\n        },\n    },\n    partials: [{\n        id: \"...my_id...\",\n        name: \"...my_name...\",\n        path: \"...my_path...\",\n    }],\n    protocols: [\"grpcs\"],\n    route: {\n        id: \"...my_id...\",\n    },\n    service: {\n        id: \"...my_id...\",\n    },\n    tags: [\"...\"],\n    updatedAt: 2,\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_gatewayplugincors = konnect.GatewayPluginCors(\"my_gatewayplugincors\",\n    config={\n        \"allow_origin_absent\": True,\n        \"credentials\": True,\n        \"exposed_headers\": [\"...\"],\n        \"headers\": [\"...\"],\n        \"max_age\": 8.8,\n        \"methods\": [\"DELETE\"],\n        \"origins\": [\"...\"],\n        \"preflight_continue\": True,\n        \"private_network\": True,\n    },\n    control_plane_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    created_at=3,\n    enabled=True,\n    gateway_plugin_cors_id=\"...my_id...\",\n    instance_name=\"...my_instance_name...\",\n    ordering={\n        \"after\": {\n            \"accesses\": [\"...\"],\n        },\n        \"before\": {\n            \"accesses\": [\"...\"],\n        },\n    },\n    partials=[{\n        \"id\": \"...my_id...\",\n        \"name\": \"...my_name...\",\n        \"path\": \"...my_path...\",\n    }],\n    protocols=[\"grpcs\"],\n    route={\n        \"id\": \"...my_id...\",\n    },\n    service={\n        \"id\": \"...my_id...\",\n    },\n    tags=[\"...\"],\n    updated_at=2)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myGatewayplugincors = new Konnect.GatewayPluginCors(\"my_gatewayplugincors\", new()\n    {\n        Config = new Konnect.Inputs.GatewayPluginCorsConfigArgs\n        {\n            AllowOriginAbsent = true,\n            Credentials = true,\n            ExposedHeaders = new[]\n            {\n                \"...\",\n            },\n            Headers = new[]\n            {\n                \"...\",\n            },\n            MaxAge = 8.8,\n            Methods = new[]\n            {\n                \"DELETE\",\n            },\n            Origins = new[]\n            {\n                \"...\",\n            },\n            PreflightContinue = true,\n            PrivateNetwork = true,\n        },\n        ControlPlaneId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        CreatedAt = 3,\n        Enabled = true,\n        GatewayPluginCorsId = \"...my_id...\",\n        InstanceName = \"...my_instance_name...\",\n        Ordering = new Konnect.Inputs.GatewayPluginCorsOrderingArgs\n        {\n            After = new Konnect.Inputs.GatewayPluginCorsOrderingAfterArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n            Before = new Konnect.Inputs.GatewayPluginCorsOrderingBeforeArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n        },\n        Partials = new[]\n        {\n            new Konnect.Inputs.GatewayPluginCorsPartialArgs\n            {\n                Id = \"...my_id...\",\n                Name = \"...my_name...\",\n                Path = \"...my_path...\",\n            },\n        },\n        Protocols = new[]\n        {\n            \"grpcs\",\n        },\n        Route = new Konnect.Inputs.GatewayPluginCorsRouteArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Service = new Konnect.Inputs.GatewayPluginCorsServiceArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Tags = new[]\n        {\n            \"...\",\n        },\n        UpdatedAt = 2,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewGatewayPluginCors(ctx, \"my_gatewayplugincors\", \u0026konnect.GatewayPluginCorsArgs{\n\t\t\tConfig: \u0026konnect.GatewayPluginCorsConfigArgs{\n\t\t\t\tAllowOriginAbsent: pulumi.Bool(true),\n\t\t\t\tCredentials:       pulumi.Bool(true),\n\t\t\t\tExposedHeaders: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tHeaders: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tMaxAge: pulumi.Float64(8.8),\n\t\t\t\tMethods: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"DELETE\"),\n\t\t\t\t},\n\t\t\t\tOrigins: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tPreflightContinue: pulumi.Bool(true),\n\t\t\t\tPrivateNetwork:    pulumi.Bool(true),\n\t\t\t},\n\t\t\tControlPlaneId:      pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tCreatedAt:           pulumi.Float64(3),\n\t\t\tEnabled:             pulumi.Bool(true),\n\t\t\tGatewayPluginCorsId: pulumi.String(\"...my_id...\"),\n\t\t\tInstanceName:        pulumi.String(\"...my_instance_name...\"),\n\t\t\tOrdering: \u0026konnect.GatewayPluginCorsOrderingArgs{\n\t\t\t\tAfter: \u0026konnect.GatewayPluginCorsOrderingAfterArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tBefore: \u0026konnect.GatewayPluginCorsOrderingBeforeArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tPartials: konnect.GatewayPluginCorsPartialArray{\n\t\t\t\t\u0026konnect.GatewayPluginCorsPartialArgs{\n\t\t\t\t\tId:   pulumi.String(\"...my_id...\"),\n\t\t\t\t\tName: pulumi.String(\"...my_name...\"),\n\t\t\t\t\tPath: pulumi.String(\"...my_path...\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tProtocols: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"grpcs\"),\n\t\t\t},\n\t\t\tRoute: \u0026konnect.GatewayPluginCorsRouteArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tService: \u0026konnect.GatewayPluginCorsServiceArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"...\"),\n\t\t\t},\n\t\t\tUpdatedAt: pulumi.Float64(2),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.GatewayPluginCors;\nimport com.pulumi.konnect.GatewayPluginCorsArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginCorsConfigArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginCorsOrderingArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginCorsOrderingAfterArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginCorsOrderingBeforeArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginCorsPartialArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginCorsRouteArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginCorsServiceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myGatewayplugincors = new GatewayPluginCors(\"myGatewayplugincors\", GatewayPluginCorsArgs.builder()\n            .config(GatewayPluginCorsConfigArgs.builder()\n                .allowOriginAbsent(true)\n                .credentials(true)\n                .exposedHeaders(\"...\")\n                .headers(\"...\")\n                .maxAge(8.8)\n                .methods(\"DELETE\")\n                .origins(\"...\")\n                .preflightContinue(true)\n                .privateNetwork(true)\n                .build())\n            .controlPlaneId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .createdAt(3.0)\n            .enabled(true)\n            .gatewayPluginCorsId(\"...my_id...\")\n            .instanceName(\"...my_instance_name...\")\n            .ordering(GatewayPluginCorsOrderingArgs.builder()\n                .after(GatewayPluginCorsOrderingAfterArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .before(GatewayPluginCorsOrderingBeforeArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .build())\n            .partials(GatewayPluginCorsPartialArgs.builder()\n                .id(\"...my_id...\")\n                .name(\"...my_name...\")\n                .path(\"...my_path...\")\n                .build())\n            .protocols(\"grpcs\")\n            .route(GatewayPluginCorsRouteArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .service(GatewayPluginCorsServiceArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .tags(\"...\")\n            .updatedAt(2.0)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myGatewayplugincors:\n    type: konnect:GatewayPluginCors\n    name: my_gatewayplugincors\n    properties:\n      config:\n        allowOriginAbsent: true\n        credentials: true\n        exposedHeaders:\n          - '...'\n        headers:\n          - '...'\n        maxAge: 8.8\n        methods:\n          - DELETE\n        origins:\n          - '...'\n        preflightContinue: true\n        privateNetwork: true\n      controlPlaneId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      createdAt: 3\n      enabled: true\n      gatewayPluginCorsId: '...my_id...'\n      instanceName: '...my_instance_name...'\n      ordering:\n        after:\n          accesses:\n            - '...'\n        before:\n          accesses:\n            - '...'\n      partials:\n        - id: '...my_id...'\n          name: '...my_name...'\n          path: '...my_path...'\n      protocols:\n        - grpcs\n      route:\n        id: '...my_id...'\n      service:\n        id: '...my_id...'\n      tags:\n        - '...'\n      updatedAt: 2\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_gateway_plugin_cors.my_konnect_gateway_plugin_cors\n\n  id = jsonencode({\n\n    control_plane_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/gatewayPluginCors:GatewayPluginCors my_konnect_gateway_plugin_cors '{\"control_plane_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"}'\n```\n\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginCorsConfig:GatewayPluginCorsConfig"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginCorsId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginCorsOrdering:GatewayPluginCorsOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginCorsPartial:GatewayPluginCorsPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginCorsRoute:GatewayPluginCorsRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginCorsService:GatewayPluginCorsService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object","required":["config","controlPlaneId","createdAt","enabled","gatewayPluginCorsId","ordering","protocols","route","service","updatedAt"],"inputProperties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginCorsConfig:GatewayPluginCorsConfig"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginCorsId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginCorsOrdering:GatewayPluginCorsOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginCorsPartial:GatewayPluginCorsPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginCorsRoute:GatewayPluginCorsRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginCorsService:GatewayPluginCorsService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"requiredInputs":["controlPlaneId"],"stateInputs":{"description":"Input properties used for looking up and filtering GatewayPluginCors resources.\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginCorsConfig:GatewayPluginCorsConfig"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginCorsId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginCorsOrdering:GatewayPluginCorsOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginCorsPartial:GatewayPluginCorsPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginCorsRoute:GatewayPluginCorsRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginCorsService:GatewayPluginCorsService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object"}},"konnect:index/gatewayPluginDatadog:GatewayPluginDatadog":{"description":"GatewayPluginDatadog Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myGatewayplugindatadog = new konnect.GatewayPluginDatadog(\"my_gatewayplugindatadog\", {\n    config: {\n        consumerTag: \"...my_consumer_tag...\",\n        flushTimeout: 5.18,\n        host: \"...my_host...\",\n        metrics: [{\n            consumerIdentifier: \"username\",\n            name: \"request_size\",\n            sampleRate: 0.12,\n            statType: \"set\",\n            tags: [\"...\"],\n        }],\n        port: 19191,\n        prefix: \"...my_prefix...\",\n        queue: {\n            concurrencyLimit: 1,\n            initialRetryDelay: 632515.49,\n            maxBatchSize: 689907,\n            maxBytes: 2,\n            maxCoalescingDelay: 645.74,\n            maxEntries: 470545,\n            maxRetryDelay: 272290.78,\n            maxRetryTime: 9.63,\n        },\n        queueSize: 10,\n        retryCount: 2,\n        routeNameTag: \"...my_route_name_tag...\",\n        serviceNameTag: \"...my_service_name_tag...\",\n        statusTag: \"...my_status_tag...\",\n    },\n    consumer: {\n        id: \"...my_id...\",\n    },\n    controlPlaneId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    createdAt: 5,\n    enabled: true,\n    gatewayPluginDatadogId: \"...my_id...\",\n    instanceName: \"...my_instance_name...\",\n    ordering: {\n        after: {\n            accesses: [\"...\"],\n        },\n        before: {\n            accesses: [\"...\"],\n        },\n    },\n    partials: [{\n        id: \"...my_id...\",\n        name: \"...my_name...\",\n        path: \"...my_path...\",\n    }],\n    protocols: [\"ws\"],\n    route: {\n        id: \"...my_id...\",\n    },\n    service: {\n        id: \"...my_id...\",\n    },\n    tags: [\"...\"],\n    updatedAt: 1,\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_gatewayplugindatadog = konnect.GatewayPluginDatadog(\"my_gatewayplugindatadog\",\n    config={\n        \"consumer_tag\": \"...my_consumer_tag...\",\n        \"flush_timeout\": 5.18,\n        \"host\": \"...my_host...\",\n        \"metrics\": [{\n            \"consumer_identifier\": \"username\",\n            \"name\": \"request_size\",\n            \"sample_rate\": 0.12,\n            \"stat_type\": \"set\",\n            \"tags\": [\"...\"],\n        }],\n        \"port\": 19191,\n        \"prefix\": \"...my_prefix...\",\n        \"queue\": {\n            \"concurrency_limit\": 1,\n            \"initial_retry_delay\": 632515.49,\n            \"max_batch_size\": 689907,\n            \"max_bytes\": 2,\n            \"max_coalescing_delay\": 645.74,\n            \"max_entries\": 470545,\n            \"max_retry_delay\": 272290.78,\n            \"max_retry_time\": 9.63,\n        },\n        \"queue_size\": 10,\n        \"retry_count\": 2,\n        \"route_name_tag\": \"...my_route_name_tag...\",\n        \"service_name_tag\": \"...my_service_name_tag...\",\n        \"status_tag\": \"...my_status_tag...\",\n    },\n    consumer={\n        \"id\": \"...my_id...\",\n    },\n    control_plane_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    created_at=5,\n    enabled=True,\n    gateway_plugin_datadog_id=\"...my_id...\",\n    instance_name=\"...my_instance_name...\",\n    ordering={\n        \"after\": {\n            \"accesses\": [\"...\"],\n        },\n        \"before\": {\n            \"accesses\": [\"...\"],\n        },\n    },\n    partials=[{\n        \"id\": \"...my_id...\",\n        \"name\": \"...my_name...\",\n        \"path\": \"...my_path...\",\n    }],\n    protocols=[\"ws\"],\n    route={\n        \"id\": \"...my_id...\",\n    },\n    service={\n        \"id\": \"...my_id...\",\n    },\n    tags=[\"...\"],\n    updated_at=1)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myGatewayplugindatadog = new Konnect.GatewayPluginDatadog(\"my_gatewayplugindatadog\", new()\n    {\n        Config = new Konnect.Inputs.GatewayPluginDatadogConfigArgs\n        {\n            ConsumerTag = \"...my_consumer_tag...\",\n            FlushTimeout = 5.18,\n            Host = \"...my_host...\",\n            Metrics = new[]\n            {\n                new Konnect.Inputs.GatewayPluginDatadogConfigMetricArgs\n                {\n                    ConsumerIdentifier = \"username\",\n                    Name = \"request_size\",\n                    SampleRate = 0.12,\n                    StatType = \"set\",\n                    Tags = new[]\n                    {\n                        \"...\",\n                    },\n                },\n            },\n            Port = 19191,\n            Prefix = \"...my_prefix...\",\n            Queue = new Konnect.Inputs.GatewayPluginDatadogConfigQueueArgs\n            {\n                ConcurrencyLimit = 1,\n                InitialRetryDelay = 632515.49,\n                MaxBatchSize = 689907,\n                MaxBytes = 2,\n                MaxCoalescingDelay = 645.74,\n                MaxEntries = 470545,\n                MaxRetryDelay = 272290.78,\n                MaxRetryTime = 9.63,\n            },\n            QueueSize = 10,\n            RetryCount = 2,\n            RouteNameTag = \"...my_route_name_tag...\",\n            ServiceNameTag = \"...my_service_name_tag...\",\n            StatusTag = \"...my_status_tag...\",\n        },\n        Consumer = new Konnect.Inputs.GatewayPluginDatadogConsumerArgs\n        {\n            Id = \"...my_id...\",\n        },\n        ControlPlaneId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        CreatedAt = 5,\n        Enabled = true,\n        GatewayPluginDatadogId = \"...my_id...\",\n        InstanceName = \"...my_instance_name...\",\n        Ordering = new Konnect.Inputs.GatewayPluginDatadogOrderingArgs\n        {\n            After = new Konnect.Inputs.GatewayPluginDatadogOrderingAfterArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n            Before = new Konnect.Inputs.GatewayPluginDatadogOrderingBeforeArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n        },\n        Partials = new[]\n        {\n            new Konnect.Inputs.GatewayPluginDatadogPartialArgs\n            {\n                Id = \"...my_id...\",\n                Name = \"...my_name...\",\n                Path = \"...my_path...\",\n            },\n        },\n        Protocols = new[]\n        {\n            \"ws\",\n        },\n        Route = new Konnect.Inputs.GatewayPluginDatadogRouteArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Service = new Konnect.Inputs.GatewayPluginDatadogServiceArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Tags = new[]\n        {\n            \"...\",\n        },\n        UpdatedAt = 1,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewGatewayPluginDatadog(ctx, \"my_gatewayplugindatadog\", \u0026konnect.GatewayPluginDatadogArgs{\n\t\t\tConfig: \u0026konnect.GatewayPluginDatadogConfigArgs{\n\t\t\t\tConsumerTag:  pulumi.String(\"...my_consumer_tag...\"),\n\t\t\t\tFlushTimeout: pulumi.Float64(5.18),\n\t\t\t\tHost:         pulumi.String(\"...my_host...\"),\n\t\t\t\tMetrics: konnect.GatewayPluginDatadogConfigMetricArray{\n\t\t\t\t\t\u0026konnect.GatewayPluginDatadogConfigMetricArgs{\n\t\t\t\t\t\tConsumerIdentifier: pulumi.String(\"username\"),\n\t\t\t\t\t\tName:               pulumi.String(\"request_size\"),\n\t\t\t\t\t\tSampleRate:         pulumi.Float64(0.12),\n\t\t\t\t\t\tStatType:           pulumi.String(\"set\"),\n\t\t\t\t\t\tTags: pulumi.StringArray{\n\t\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tPort:   pulumi.Float64(19191),\n\t\t\t\tPrefix: pulumi.String(\"...my_prefix...\"),\n\t\t\t\tQueue: \u0026konnect.GatewayPluginDatadogConfigQueueArgs{\n\t\t\t\t\tConcurrencyLimit:   pulumi.Float64(1),\n\t\t\t\t\tInitialRetryDelay:  pulumi.Float64(632515.49),\n\t\t\t\t\tMaxBatchSize:       pulumi.Float64(689907),\n\t\t\t\t\tMaxBytes:           pulumi.Float64(2),\n\t\t\t\t\tMaxCoalescingDelay: pulumi.Float64(645.74),\n\t\t\t\t\tMaxEntries:         pulumi.Float64(470545),\n\t\t\t\t\tMaxRetryDelay:      pulumi.Float64(272290.78),\n\t\t\t\t\tMaxRetryTime:       pulumi.Float64(9.63),\n\t\t\t\t},\n\t\t\t\tQueueSize:      pulumi.Float64(10),\n\t\t\t\tRetryCount:     pulumi.Float64(2),\n\t\t\t\tRouteNameTag:   pulumi.String(\"...my_route_name_tag...\"),\n\t\t\t\tServiceNameTag: pulumi.String(\"...my_service_name_tag...\"),\n\t\t\t\tStatusTag:      pulumi.String(\"...my_status_tag...\"),\n\t\t\t},\n\t\t\tConsumer: \u0026konnect.GatewayPluginDatadogConsumerArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tControlPlaneId:         pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tCreatedAt:              pulumi.Float64(5),\n\t\t\tEnabled:                pulumi.Bool(true),\n\t\t\tGatewayPluginDatadogId: pulumi.String(\"...my_id...\"),\n\t\t\tInstanceName:           pulumi.String(\"...my_instance_name...\"),\n\t\t\tOrdering: \u0026konnect.GatewayPluginDatadogOrderingArgs{\n\t\t\t\tAfter: \u0026konnect.GatewayPluginDatadogOrderingAfterArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tBefore: \u0026konnect.GatewayPluginDatadogOrderingBeforeArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tPartials: konnect.GatewayPluginDatadogPartialArray{\n\t\t\t\t\u0026konnect.GatewayPluginDatadogPartialArgs{\n\t\t\t\t\tId:   pulumi.String(\"...my_id...\"),\n\t\t\t\t\tName: pulumi.String(\"...my_name...\"),\n\t\t\t\t\tPath: pulumi.String(\"...my_path...\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tProtocols: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"ws\"),\n\t\t\t},\n\t\t\tRoute: \u0026konnect.GatewayPluginDatadogRouteArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tService: \u0026konnect.GatewayPluginDatadogServiceArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"...\"),\n\t\t\t},\n\t\t\tUpdatedAt: pulumi.Float64(1),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.GatewayPluginDatadog;\nimport com.pulumi.konnect.GatewayPluginDatadogArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginDatadogConfigArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginDatadogConfigQueueArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginDatadogConsumerArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginDatadogOrderingArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginDatadogOrderingAfterArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginDatadogOrderingBeforeArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginDatadogPartialArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginDatadogRouteArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginDatadogServiceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myGatewayplugindatadog = new GatewayPluginDatadog(\"myGatewayplugindatadog\", GatewayPluginDatadogArgs.builder()\n            .config(GatewayPluginDatadogConfigArgs.builder()\n                .consumerTag(\"...my_consumer_tag...\")\n                .flushTimeout(5.18)\n                .host(\"...my_host...\")\n                .metrics(GatewayPluginDatadogConfigMetricArgs.builder()\n                    .consumerIdentifier(\"username\")\n                    .name(\"request_size\")\n                    .sampleRate(0.12)\n                    .statType(\"set\")\n                    .tags(\"...\")\n                    .build())\n                .port(19191.0)\n                .prefix(\"...my_prefix...\")\n                .queue(GatewayPluginDatadogConfigQueueArgs.builder()\n                    .concurrencyLimit(1.0)\n                    .initialRetryDelay(632515.49)\n                    .maxBatchSize(689907.0)\n                    .maxBytes(2.0)\n                    .maxCoalescingDelay(645.74)\n                    .maxEntries(470545.0)\n                    .maxRetryDelay(272290.78)\n                    .maxRetryTime(9.63)\n                    .build())\n                .queueSize(10.0)\n                .retryCount(2.0)\n                .routeNameTag(\"...my_route_name_tag...\")\n                .serviceNameTag(\"...my_service_name_tag...\")\n                .statusTag(\"...my_status_tag...\")\n                .build())\n            .consumer(GatewayPluginDatadogConsumerArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .controlPlaneId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .createdAt(5.0)\n            .enabled(true)\n            .gatewayPluginDatadogId(\"...my_id...\")\n            .instanceName(\"...my_instance_name...\")\n            .ordering(GatewayPluginDatadogOrderingArgs.builder()\n                .after(GatewayPluginDatadogOrderingAfterArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .before(GatewayPluginDatadogOrderingBeforeArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .build())\n            .partials(GatewayPluginDatadogPartialArgs.builder()\n                .id(\"...my_id...\")\n                .name(\"...my_name...\")\n                .path(\"...my_path...\")\n                .build())\n            .protocols(\"ws\")\n            .route(GatewayPluginDatadogRouteArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .service(GatewayPluginDatadogServiceArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .tags(\"...\")\n            .updatedAt(1.0)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myGatewayplugindatadog:\n    type: konnect:GatewayPluginDatadog\n    name: my_gatewayplugindatadog\n    properties:\n      config:\n        consumerTag: '...my_consumer_tag...'\n        flushTimeout: 5.18\n        host: '...my_host...'\n        metrics:\n          - consumerIdentifier: username\n            name: request_size\n            sampleRate: 0.12\n            statType: set\n            tags:\n              - '...'\n        port: 19191\n        prefix: '...my_prefix...'\n        queue:\n          concurrencyLimit: 1\n          initialRetryDelay: 632515.49\n          maxBatchSize: 689907\n          maxBytes: 2\n          maxCoalescingDelay: 645.74\n          maxEntries: 470545\n          maxRetryDelay: 272290.78\n          maxRetryTime: 9.63\n        queueSize: 10\n        retryCount: 2\n        routeNameTag: '...my_route_name_tag...'\n        serviceNameTag: '...my_service_name_tag...'\n        statusTag: '...my_status_tag...'\n      consumer:\n        id: '...my_id...'\n      controlPlaneId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      createdAt: 5\n      enabled: true\n      gatewayPluginDatadogId: '...my_id...'\n      instanceName: '...my_instance_name...'\n      ordering:\n        after:\n          accesses:\n            - '...'\n        before:\n          accesses:\n            - '...'\n      partials:\n        - id: '...my_id...'\n          name: '...my_name...'\n          path: '...my_path...'\n      protocols:\n        - ws\n      route:\n        id: '...my_id...'\n      service:\n        id: '...my_id...'\n      tags:\n        - '...'\n      updatedAt: 1\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_gateway_plugin_datadog.my_konnect_gateway_plugin_datadog\n\n  id = jsonencode({\n\n    control_plane_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/gatewayPluginDatadog:GatewayPluginDatadog my_konnect_gateway_plugin_datadog '{\"control_plane_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"}'\n```\n\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginDatadogConfig:GatewayPluginDatadogConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginDatadogConsumer:GatewayPluginDatadogConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginDatadogId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginDatadogOrdering:GatewayPluginDatadogOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginDatadogPartial:GatewayPluginDatadogPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginDatadogRoute:GatewayPluginDatadogRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginDatadogService:GatewayPluginDatadogService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object","required":["config","consumer","controlPlaneId","createdAt","enabled","gatewayPluginDatadogId","ordering","protocols","route","service","updatedAt"],"inputProperties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginDatadogConfig:GatewayPluginDatadogConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginDatadogConsumer:GatewayPluginDatadogConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginDatadogId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginDatadogOrdering:GatewayPluginDatadogOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginDatadogPartial:GatewayPluginDatadogPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginDatadogRoute:GatewayPluginDatadogRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginDatadogService:GatewayPluginDatadogService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"requiredInputs":["controlPlaneId"],"stateInputs":{"description":"Input properties used for looking up and filtering GatewayPluginDatadog resources.\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginDatadogConfig:GatewayPluginDatadogConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginDatadogConsumer:GatewayPluginDatadogConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginDatadogId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginDatadogOrdering:GatewayPluginDatadogOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginDatadogPartial:GatewayPluginDatadogPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginDatadogRoute:GatewayPluginDatadogRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginDatadogService:GatewayPluginDatadogService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object"}},"konnect:index/gatewayPluginDatakit:GatewayPluginDatakit":{"description":"GatewayPluginDatakit Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myGatewayplugindatakit = new konnect.GatewayPluginDatakit(\"my_gatewayplugindatakit\", {\n    config: {\n        debug: false,\n        nodes: [{\n            xmlToJson: {\n                attributesBlockName: \"...my_attributes_block_name...\",\n                attributesNamePrefix: \"...my_attributes_name_prefix...\",\n                input: \"...my_input...\",\n                name: \"...my_name...\",\n                output: \"...my_output...\",\n                recognizeType: true,\n                textAsProperty: true,\n                textBlockName: \"...my_text_block_name...\",\n                xpath: \"...my_xpath...\",\n            },\n        }],\n        resources: {\n            cache: {\n                memory: {\n                    dictionaryName: \"...my_dictionary_name...\",\n                },\n                redis: {\n                    cloudAuthentication: {\n                        authProvider: \"gcp\",\n                        awsAccessKeyId: \"...my_aws_access_key_id...\",\n                        awsAssumeRoleArn: \"...my_aws_assume_role_arn...\",\n                        awsCacheName: \"...my_aws_cache_name...\",\n                        awsIsServerless: false,\n                        awsRegion: \"...my_aws_region...\",\n                        awsRoleSessionName: \"...my_aws_role_session_name...\",\n                        awsSecretAccessKey: \"...my_aws_secret_access_key...\",\n                        azureClientId: \"...my_azure_client_id...\",\n                        azureClientSecret: \"...my_azure_client_secret...\",\n                        azureTenantId: \"...my_azure_tenant_id...\",\n                        gcpServiceAccountJson: \"...my_gcp_service_account_json...\",\n                    },\n                    clusterMaxRedirections: 10,\n                    clusterNodes: [{\n                        ip: \"...my_ip...\",\n                        port: 23392,\n                    }],\n                    connectTimeout: 2043965363,\n                    connectionIsProxied: true,\n                    database: 6,\n                    host: \"...my_host...\",\n                    keepaliveBacklog: 1403771087,\n                    keepalivePoolSize: 371071403,\n                    password: \"...my_password...\",\n                    port: 3296,\n                    readTimeout: 1474836361,\n                    sendTimeout: 1614607440,\n                    sentinelMaster: \"...my_sentinel_master...\",\n                    sentinelNodes: [{\n                        host: \"...my_host...\",\n                        port: 15355,\n                    }],\n                    sentinelPassword: \"...my_sentinel_password...\",\n                    sentinelRole: \"master\",\n                    sentinelUsername: \"...my_sentinel_username...\",\n                    serverName: \"...my_server_name...\",\n                    ssl: false,\n                    sslVerify: false,\n                    username: \"...my_username...\",\n                },\n                strategy: \"memory\",\n            },\n            vault: {\n                key: \"value\",\n            },\n        },\n    },\n    consumer: {\n        id: \"...my_id...\",\n    },\n    consumerGroup: {\n        id: \"...my_id...\",\n    },\n    controlPlaneId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    createdAt: 4,\n    enabled: true,\n    gatewayPluginDatakitId: \"...my_id...\",\n    instanceName: \"...my_instance_name...\",\n    ordering: {\n        after: {\n            accesses: [\"...\"],\n        },\n        before: {\n            accesses: [\"...\"],\n        },\n    },\n    partials: [{\n        id: \"...my_id...\",\n        name: \"...my_name...\",\n        path: \"...my_path...\",\n    }],\n    protocols: [\"grpcs\"],\n    route: {\n        id: \"...my_id...\",\n    },\n    service: {\n        id: \"...my_id...\",\n    },\n    tags: [\"...\"],\n    updatedAt: 5,\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_gatewayplugindatakit = konnect.GatewayPluginDatakit(\"my_gatewayplugindatakit\",\n    config={\n        \"debug\": False,\n        \"nodes\": [{\n            \"xml_to_json\": {\n                \"attributes_block_name\": \"...my_attributes_block_name...\",\n                \"attributes_name_prefix\": \"...my_attributes_name_prefix...\",\n                \"input\": \"...my_input...\",\n                \"name\": \"...my_name...\",\n                \"output\": \"...my_output...\",\n                \"recognize_type\": True,\n                \"text_as_property\": True,\n                \"text_block_name\": \"...my_text_block_name...\",\n                \"xpath\": \"...my_xpath...\",\n            },\n        }],\n        \"resources\": {\n            \"cache\": {\n                \"memory\": {\n                    \"dictionary_name\": \"...my_dictionary_name...\",\n                },\n                \"redis\": {\n                    \"cloud_authentication\": {\n                        \"auth_provider\": \"gcp\",\n                        \"aws_access_key_id\": \"...my_aws_access_key_id...\",\n                        \"aws_assume_role_arn\": \"...my_aws_assume_role_arn...\",\n                        \"aws_cache_name\": \"...my_aws_cache_name...\",\n                        \"aws_is_serverless\": False,\n                        \"aws_region\": \"...my_aws_region...\",\n                        \"aws_role_session_name\": \"...my_aws_role_session_name...\",\n                        \"aws_secret_access_key\": \"...my_aws_secret_access_key...\",\n                        \"azure_client_id\": \"...my_azure_client_id...\",\n                        \"azure_client_secret\": \"...my_azure_client_secret...\",\n                        \"azure_tenant_id\": \"...my_azure_tenant_id...\",\n                        \"gcp_service_account_json\": \"...my_gcp_service_account_json...\",\n                    },\n                    \"cluster_max_redirections\": 10,\n                    \"cluster_nodes\": [{\n                        \"ip\": \"...my_ip...\",\n                        \"port\": 23392,\n                    }],\n                    \"connect_timeout\": 2043965363,\n                    \"connection_is_proxied\": True,\n                    \"database\": 6,\n                    \"host\": \"...my_host...\",\n                    \"keepalive_backlog\": 1403771087,\n                    \"keepalive_pool_size\": 371071403,\n                    \"password\": \"...my_password...\",\n                    \"port\": 3296,\n                    \"read_timeout\": 1474836361,\n                    \"send_timeout\": 1614607440,\n                    \"sentinel_master\": \"...my_sentinel_master...\",\n                    \"sentinel_nodes\": [{\n                        \"host\": \"...my_host...\",\n                        \"port\": 15355,\n                    }],\n                    \"sentinel_password\": \"...my_sentinel_password...\",\n                    \"sentinel_role\": \"master\",\n                    \"sentinel_username\": \"...my_sentinel_username...\",\n                    \"server_name\": \"...my_server_name...\",\n                    \"ssl\": False,\n                    \"ssl_verify\": False,\n                    \"username\": \"...my_username...\",\n                },\n                \"strategy\": \"memory\",\n            },\n            \"vault\": {\n                \"key\": \"value\",\n            },\n        },\n    },\n    consumer={\n        \"id\": \"...my_id...\",\n    },\n    consumer_group={\n        \"id\": \"...my_id...\",\n    },\n    control_plane_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    created_at=4,\n    enabled=True,\n    gateway_plugin_datakit_id=\"...my_id...\",\n    instance_name=\"...my_instance_name...\",\n    ordering={\n        \"after\": {\n            \"accesses\": [\"...\"],\n        },\n        \"before\": {\n            \"accesses\": [\"...\"],\n        },\n    },\n    partials=[{\n        \"id\": \"...my_id...\",\n        \"name\": \"...my_name...\",\n        \"path\": \"...my_path...\",\n    }],\n    protocols=[\"grpcs\"],\n    route={\n        \"id\": \"...my_id...\",\n    },\n    service={\n        \"id\": \"...my_id...\",\n    },\n    tags=[\"...\"],\n    updated_at=5)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myGatewayplugindatakit = new Konnect.GatewayPluginDatakit(\"my_gatewayplugindatakit\", new()\n    {\n        Config = new Konnect.Inputs.GatewayPluginDatakitConfigArgs\n        {\n            Debug = false,\n            Nodes = new[]\n            {\n                new Konnect.Inputs.GatewayPluginDatakitConfigNodeArgs\n                {\n                    XmlToJson = new Konnect.Inputs.GatewayPluginDatakitConfigNodeXmlToJsonArgs\n                    {\n                        AttributesBlockName = \"...my_attributes_block_name...\",\n                        AttributesNamePrefix = \"...my_attributes_name_prefix...\",\n                        Input = \"...my_input...\",\n                        Name = \"...my_name...\",\n                        Output = \"...my_output...\",\n                        RecognizeType = true,\n                        TextAsProperty = true,\n                        TextBlockName = \"...my_text_block_name...\",\n                        Xpath = \"...my_xpath...\",\n                    },\n                },\n            },\n            Resources = new Konnect.Inputs.GatewayPluginDatakitConfigResourcesArgs\n            {\n                Cache = new Konnect.Inputs.GatewayPluginDatakitConfigResourcesCacheArgs\n                {\n                    Memory = new Konnect.Inputs.GatewayPluginDatakitConfigResourcesCacheMemoryArgs\n                    {\n                        DictionaryName = \"...my_dictionary_name...\",\n                    },\n                    Redis = new Konnect.Inputs.GatewayPluginDatakitConfigResourcesCacheRedisArgs\n                    {\n                        CloudAuthentication = new Konnect.Inputs.GatewayPluginDatakitConfigResourcesCacheRedisCloudAuthenticationArgs\n                        {\n                            AuthProvider = \"gcp\",\n                            AwsAccessKeyId = \"...my_aws_access_key_id...\",\n                            AwsAssumeRoleArn = \"...my_aws_assume_role_arn...\",\n                            AwsCacheName = \"...my_aws_cache_name...\",\n                            AwsIsServerless = false,\n                            AwsRegion = \"...my_aws_region...\",\n                            AwsRoleSessionName = \"...my_aws_role_session_name...\",\n                            AwsSecretAccessKey = \"...my_aws_secret_access_key...\",\n                            AzureClientId = \"...my_azure_client_id...\",\n                            AzureClientSecret = \"...my_azure_client_secret...\",\n                            AzureTenantId = \"...my_azure_tenant_id...\",\n                            GcpServiceAccountJson = \"...my_gcp_service_account_json...\",\n                        },\n                        ClusterMaxRedirections = 10,\n                        ClusterNodes = new[]\n                        {\n                            new Konnect.Inputs.GatewayPluginDatakitConfigResourcesCacheRedisClusterNodeArgs\n                            {\n                                Ip = \"...my_ip...\",\n                                Port = 23392,\n                            },\n                        },\n                        ConnectTimeout = 2043965363,\n                        ConnectionIsProxied = true,\n                        Database = 6,\n                        Host = \"...my_host...\",\n                        KeepaliveBacklog = 1403771087,\n                        KeepalivePoolSize = 371071403,\n                        Password = \"...my_password...\",\n                        Port = 3296,\n                        ReadTimeout = 1474836361,\n                        SendTimeout = 1614607440,\n                        SentinelMaster = \"...my_sentinel_master...\",\n                        SentinelNodes = new[]\n                        {\n                            new Konnect.Inputs.GatewayPluginDatakitConfigResourcesCacheRedisSentinelNodeArgs\n                            {\n                                Host = \"...my_host...\",\n                                Port = 15355,\n                            },\n                        },\n                        SentinelPassword = \"...my_sentinel_password...\",\n                        SentinelRole = \"master\",\n                        SentinelUsername = \"...my_sentinel_username...\",\n                        ServerName = \"...my_server_name...\",\n                        Ssl = false,\n                        SslVerify = false,\n                        Username = \"...my_username...\",\n                    },\n                    Strategy = \"memory\",\n                },\n                Vault = \n                {\n                    { \"key\", \"value\" },\n                },\n            },\n        },\n        Consumer = new Konnect.Inputs.GatewayPluginDatakitConsumerArgs\n        {\n            Id = \"...my_id...\",\n        },\n        ConsumerGroup = new Konnect.Inputs.GatewayPluginDatakitConsumerGroupArgs\n        {\n            Id = \"...my_id...\",\n        },\n        ControlPlaneId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        CreatedAt = 4,\n        Enabled = true,\n        GatewayPluginDatakitId = \"...my_id...\",\n        InstanceName = \"...my_instance_name...\",\n        Ordering = new Konnect.Inputs.GatewayPluginDatakitOrderingArgs\n        {\n            After = new Konnect.Inputs.GatewayPluginDatakitOrderingAfterArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n            Before = new Konnect.Inputs.GatewayPluginDatakitOrderingBeforeArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n        },\n        Partials = new[]\n        {\n            new Konnect.Inputs.GatewayPluginDatakitPartialArgs\n            {\n                Id = \"...my_id...\",\n                Name = \"...my_name...\",\n                Path = \"...my_path...\",\n            },\n        },\n        Protocols = new[]\n        {\n            \"grpcs\",\n        },\n        Route = new Konnect.Inputs.GatewayPluginDatakitRouteArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Service = new Konnect.Inputs.GatewayPluginDatakitServiceArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Tags = new[]\n        {\n            \"...\",\n        },\n        UpdatedAt = 5,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewGatewayPluginDatakit(ctx, \"my_gatewayplugindatakit\", \u0026konnect.GatewayPluginDatakitArgs{\n\t\t\tConfig: \u0026konnect.GatewayPluginDatakitConfigArgs{\n\t\t\t\tDebug: pulumi.Bool(false),\n\t\t\t\tNodes: konnect.GatewayPluginDatakitConfigNodeArray{\n\t\t\t\t\t\u0026konnect.GatewayPluginDatakitConfigNodeArgs{\n\t\t\t\t\t\tXmlToJson: \u0026konnect.GatewayPluginDatakitConfigNodeXmlToJsonArgs{\n\t\t\t\t\t\t\tAttributesBlockName:  pulumi.String(\"...my_attributes_block_name...\"),\n\t\t\t\t\t\t\tAttributesNamePrefix: pulumi.String(\"...my_attributes_name_prefix...\"),\n\t\t\t\t\t\t\tInput:                pulumi.String(\"...my_input...\"),\n\t\t\t\t\t\t\tName:                 pulumi.String(\"...my_name...\"),\n\t\t\t\t\t\t\tOutput:               pulumi.String(\"...my_output...\"),\n\t\t\t\t\t\t\tRecognizeType:        pulumi.Bool(true),\n\t\t\t\t\t\t\tTextAsProperty:       pulumi.Bool(true),\n\t\t\t\t\t\t\tTextBlockName:        pulumi.String(\"...my_text_block_name...\"),\n\t\t\t\t\t\t\tXpath:                pulumi.String(\"...my_xpath...\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tResources: \u0026konnect.GatewayPluginDatakitConfigResourcesArgs{\n\t\t\t\t\tCache: \u0026konnect.GatewayPluginDatakitConfigResourcesCacheArgs{\n\t\t\t\t\t\tMemory: \u0026konnect.GatewayPluginDatakitConfigResourcesCacheMemoryArgs{\n\t\t\t\t\t\t\tDictionaryName: pulumi.String(\"...my_dictionary_name...\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\tRedis: \u0026konnect.GatewayPluginDatakitConfigResourcesCacheRedisArgs{\n\t\t\t\t\t\t\tCloudAuthentication: \u0026konnect.GatewayPluginDatakitConfigResourcesCacheRedisCloudAuthenticationArgs{\n\t\t\t\t\t\t\t\tAuthProvider:          pulumi.String(\"gcp\"),\n\t\t\t\t\t\t\t\tAwsAccessKeyId:        pulumi.String(\"...my_aws_access_key_id...\"),\n\t\t\t\t\t\t\t\tAwsAssumeRoleArn:      pulumi.String(\"...my_aws_assume_role_arn...\"),\n\t\t\t\t\t\t\t\tAwsCacheName:          pulumi.String(\"...my_aws_cache_name...\"),\n\t\t\t\t\t\t\t\tAwsIsServerless:       pulumi.Bool(false),\n\t\t\t\t\t\t\t\tAwsRegion:             pulumi.String(\"...my_aws_region...\"),\n\t\t\t\t\t\t\t\tAwsRoleSessionName:    pulumi.String(\"...my_aws_role_session_name...\"),\n\t\t\t\t\t\t\t\tAwsSecretAccessKey:    pulumi.String(\"...my_aws_secret_access_key...\"),\n\t\t\t\t\t\t\t\tAzureClientId:         pulumi.String(\"...my_azure_client_id...\"),\n\t\t\t\t\t\t\t\tAzureClientSecret:     pulumi.String(\"...my_azure_client_secret...\"),\n\t\t\t\t\t\t\t\tAzureTenantId:         pulumi.String(\"...my_azure_tenant_id...\"),\n\t\t\t\t\t\t\t\tGcpServiceAccountJson: pulumi.String(\"...my_gcp_service_account_json...\"),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tClusterMaxRedirections: pulumi.Float64(10),\n\t\t\t\t\t\t\tClusterNodes: konnect.GatewayPluginDatakitConfigResourcesCacheRedisClusterNodeArray{\n\t\t\t\t\t\t\t\t\u0026konnect.GatewayPluginDatakitConfigResourcesCacheRedisClusterNodeArgs{\n\t\t\t\t\t\t\t\t\tIp:   pulumi.String(\"...my_ip...\"),\n\t\t\t\t\t\t\t\t\tPort: pulumi.Float64(23392),\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tConnectTimeout:      pulumi.Float64(2043965363),\n\t\t\t\t\t\t\tConnectionIsProxied: pulumi.Bool(true),\n\t\t\t\t\t\t\tDatabase:            pulumi.Float64(6),\n\t\t\t\t\t\t\tHost:                pulumi.String(\"...my_host...\"),\n\t\t\t\t\t\t\tKeepaliveBacklog:    pulumi.Float64(1403771087),\n\t\t\t\t\t\t\tKeepalivePoolSize:   pulumi.Float64(371071403),\n\t\t\t\t\t\t\tPassword:            pulumi.String(\"...my_password...\"),\n\t\t\t\t\t\t\tPort:                pulumi.Float64(3296),\n\t\t\t\t\t\t\tReadTimeout:         pulumi.Float64(1474836361),\n\t\t\t\t\t\t\tSendTimeout:         pulumi.Float64(1614607440),\n\t\t\t\t\t\t\tSentinelMaster:      pulumi.String(\"...my_sentinel_master...\"),\n\t\t\t\t\t\t\tSentinelNodes: konnect.GatewayPluginDatakitConfigResourcesCacheRedisSentinelNodeArray{\n\t\t\t\t\t\t\t\t\u0026konnect.GatewayPluginDatakitConfigResourcesCacheRedisSentinelNodeArgs{\n\t\t\t\t\t\t\t\t\tHost: pulumi.String(\"...my_host...\"),\n\t\t\t\t\t\t\t\t\tPort: pulumi.Float64(15355),\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tSentinelPassword: pulumi.String(\"...my_sentinel_password...\"),\n\t\t\t\t\t\t\tSentinelRole:     pulumi.String(\"master\"),\n\t\t\t\t\t\t\tSentinelUsername: pulumi.String(\"...my_sentinel_username...\"),\n\t\t\t\t\t\t\tServerName:       pulumi.String(\"...my_server_name...\"),\n\t\t\t\t\t\t\tSsl:              pulumi.Bool(false),\n\t\t\t\t\t\t\tSslVerify:        pulumi.Bool(false),\n\t\t\t\t\t\t\tUsername:         pulumi.String(\"...my_username...\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\tStrategy: pulumi.String(\"memory\"),\n\t\t\t\t\t},\n\t\t\t\t\tVault: pulumi.StringMap{\n\t\t\t\t\t\t\"key\": pulumi.String(\"value\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tConsumer: \u0026konnect.GatewayPluginDatakitConsumerArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tConsumerGroup: \u0026konnect.GatewayPluginDatakitConsumerGroupArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tControlPlaneId:         pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tCreatedAt:              pulumi.Float64(4),\n\t\t\tEnabled:                pulumi.Bool(true),\n\t\t\tGatewayPluginDatakitId: pulumi.String(\"...my_id...\"),\n\t\t\tInstanceName:           pulumi.String(\"...my_instance_name...\"),\n\t\t\tOrdering: \u0026konnect.GatewayPluginDatakitOrderingArgs{\n\t\t\t\tAfter: \u0026konnect.GatewayPluginDatakitOrderingAfterArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tBefore: \u0026konnect.GatewayPluginDatakitOrderingBeforeArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tPartials: konnect.GatewayPluginDatakitPartialArray{\n\t\t\t\t\u0026konnect.GatewayPluginDatakitPartialArgs{\n\t\t\t\t\tId:   pulumi.String(\"...my_id...\"),\n\t\t\t\t\tName: pulumi.String(\"...my_name...\"),\n\t\t\t\t\tPath: pulumi.String(\"...my_path...\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tProtocols: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"grpcs\"),\n\t\t\t},\n\t\t\tRoute: \u0026konnect.GatewayPluginDatakitRouteArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tService: \u0026konnect.GatewayPluginDatakitServiceArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"...\"),\n\t\t\t},\n\t\t\tUpdatedAt: pulumi.Float64(5),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.GatewayPluginDatakit;\nimport com.pulumi.konnect.GatewayPluginDatakitArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginDatakitConfigArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginDatakitConfigResourcesArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginDatakitConfigResourcesCacheArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginDatakitConfigResourcesCacheMemoryArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginDatakitConfigResourcesCacheRedisArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginDatakitConfigResourcesCacheRedisCloudAuthenticationArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginDatakitConsumerArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginDatakitConsumerGroupArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginDatakitOrderingArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginDatakitOrderingAfterArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginDatakitOrderingBeforeArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginDatakitPartialArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginDatakitRouteArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginDatakitServiceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myGatewayplugindatakit = new GatewayPluginDatakit(\"myGatewayplugindatakit\", GatewayPluginDatakitArgs.builder()\n            .config(GatewayPluginDatakitConfigArgs.builder()\n                .debug(false)\n                .nodes(GatewayPluginDatakitConfigNodeArgs.builder()\n                    .xmlToJson(GatewayPluginDatakitConfigNodeXmlToJsonArgs.builder()\n                        .attributesBlockName(\"...my_attributes_block_name...\")\n                        .attributesNamePrefix(\"...my_attributes_name_prefix...\")\n                        .input(\"...my_input...\")\n                        .name(\"...my_name...\")\n                        .output(\"...my_output...\")\n                        .recognizeType(true)\n                        .textAsProperty(true)\n                        .textBlockName(\"...my_text_block_name...\")\n                        .xpath(\"...my_xpath...\")\n                        .build())\n                    .build())\n                .resources(GatewayPluginDatakitConfigResourcesArgs.builder()\n                    .cache(GatewayPluginDatakitConfigResourcesCacheArgs.builder()\n                        .memory(GatewayPluginDatakitConfigResourcesCacheMemoryArgs.builder()\n                            .dictionaryName(\"...my_dictionary_name...\")\n                            .build())\n                        .redis(GatewayPluginDatakitConfigResourcesCacheRedisArgs.builder()\n                            .cloudAuthentication(GatewayPluginDatakitConfigResourcesCacheRedisCloudAuthenticationArgs.builder()\n                                .authProvider(\"gcp\")\n                                .awsAccessKeyId(\"...my_aws_access_key_id...\")\n                                .awsAssumeRoleArn(\"...my_aws_assume_role_arn...\")\n                                .awsCacheName(\"...my_aws_cache_name...\")\n                                .awsIsServerless(false)\n                                .awsRegion(\"...my_aws_region...\")\n                                .awsRoleSessionName(\"...my_aws_role_session_name...\")\n                                .awsSecretAccessKey(\"...my_aws_secret_access_key...\")\n                                .azureClientId(\"...my_azure_client_id...\")\n                                .azureClientSecret(\"...my_azure_client_secret...\")\n                                .azureTenantId(\"...my_azure_tenant_id...\")\n                                .gcpServiceAccountJson(\"...my_gcp_service_account_json...\")\n                                .build())\n                            .clusterMaxRedirections(10.0)\n                            .clusterNodes(GatewayPluginDatakitConfigResourcesCacheRedisClusterNodeArgs.builder()\n                                .ip(\"...my_ip...\")\n                                .port(23392.0)\n                                .build())\n                            .connectTimeout(2043965363.0)\n                            .connectionIsProxied(true)\n                            .database(6.0)\n                            .host(\"...my_host...\")\n                            .keepaliveBacklog(1403771087.0)\n                            .keepalivePoolSize(371071403.0)\n                            .password(\"...my_password...\")\n                            .port(3296.0)\n                            .readTimeout(1474836361.0)\n                            .sendTimeout(1614607440.0)\n                            .sentinelMaster(\"...my_sentinel_master...\")\n                            .sentinelNodes(GatewayPluginDatakitConfigResourcesCacheRedisSentinelNodeArgs.builder()\n                                .host(\"...my_host...\")\n                                .port(15355.0)\n                                .build())\n                            .sentinelPassword(\"...my_sentinel_password...\")\n                            .sentinelRole(\"master\")\n                            .sentinelUsername(\"...my_sentinel_username...\")\n                            .serverName(\"...my_server_name...\")\n                            .ssl(false)\n                            .sslVerify(false)\n                            .username(\"...my_username...\")\n                            .build())\n                        .strategy(\"memory\")\n                        .build())\n                    .vault(Map.of(\"key\", \"value\"))\n                    .build())\n                .build())\n            .consumer(GatewayPluginDatakitConsumerArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .consumerGroup(GatewayPluginDatakitConsumerGroupArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .controlPlaneId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .createdAt(4.0)\n            .enabled(true)\n            .gatewayPluginDatakitId(\"...my_id...\")\n            .instanceName(\"...my_instance_name...\")\n            .ordering(GatewayPluginDatakitOrderingArgs.builder()\n                .after(GatewayPluginDatakitOrderingAfterArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .before(GatewayPluginDatakitOrderingBeforeArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .build())\n            .partials(GatewayPluginDatakitPartialArgs.builder()\n                .id(\"...my_id...\")\n                .name(\"...my_name...\")\n                .path(\"...my_path...\")\n                .build())\n            .protocols(\"grpcs\")\n            .route(GatewayPluginDatakitRouteArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .service(GatewayPluginDatakitServiceArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .tags(\"...\")\n            .updatedAt(5.0)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myGatewayplugindatakit:\n    type: konnect:GatewayPluginDatakit\n    name: my_gatewayplugindatakit\n    properties:\n      config:\n        debug: false\n        nodes:\n          - xmlToJson:\n              attributesBlockName: '...my_attributes_block_name...'\n              attributesNamePrefix: '...my_attributes_name_prefix...'\n              input: '...my_input...'\n              name: '...my_name...'\n              output: '...my_output...'\n              recognizeType: true\n              textAsProperty: true\n              textBlockName: '...my_text_block_name...'\n              xpath: '...my_xpath...'\n        resources:\n          cache:\n            memory:\n              dictionaryName: '...my_dictionary_name...'\n            redis:\n              cloudAuthentication:\n                authProvider: gcp\n                awsAccessKeyId: '...my_aws_access_key_id...'\n                awsAssumeRoleArn: '...my_aws_assume_role_arn...'\n                awsCacheName: '...my_aws_cache_name...'\n                awsIsServerless: false\n                awsRegion: '...my_aws_region...'\n                awsRoleSessionName: '...my_aws_role_session_name...'\n                awsSecretAccessKey: '...my_aws_secret_access_key...'\n                azureClientId: '...my_azure_client_id...'\n                azureClientSecret: '...my_azure_client_secret...'\n                azureTenantId: '...my_azure_tenant_id...'\n                gcpServiceAccountJson: '...my_gcp_service_account_json...'\n              clusterMaxRedirections: 10\n              clusterNodes:\n                - ip: '...my_ip...'\n                  port: 23392\n              connectTimeout: 2.043965363e+09\n              connectionIsProxied: true\n              database: 6\n              host: '...my_host...'\n              keepaliveBacklog: 1.403771087e+09\n              keepalivePoolSize: 3.71071403e+08\n              password: '...my_password...'\n              port: 3296\n              readTimeout: 1.474836361e+09\n              sendTimeout: 1.61460744e+09\n              sentinelMaster: '...my_sentinel_master...'\n              sentinelNodes:\n                - host: '...my_host...'\n                  port: 15355\n              sentinelPassword: '...my_sentinel_password...'\n              sentinelRole: master\n              sentinelUsername: '...my_sentinel_username...'\n              serverName: '...my_server_name...'\n              ssl: false\n              sslVerify: false\n              username: '...my_username...'\n            strategy: memory\n          vault:\n            key: value\n      consumer:\n        id: '...my_id...'\n      consumerGroup:\n        id: '...my_id...'\n      controlPlaneId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      createdAt: 4\n      enabled: true\n      gatewayPluginDatakitId: '...my_id...'\n      instanceName: '...my_instance_name...'\n      ordering:\n        after:\n          accesses:\n            - '...'\n        before:\n          accesses:\n            - '...'\n      partials:\n        - id: '...my_id...'\n          name: '...my_name...'\n          path: '...my_path...'\n      protocols:\n        - grpcs\n      route:\n        id: '...my_id...'\n      service:\n        id: '...my_id...'\n      tags:\n        - '...'\n      updatedAt: 5\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_gateway_plugin_datakit.my_konnect_gateway_plugin_datakit\n\n  id = jsonencode({\n\n    control_plane_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/gatewayPluginDatakit:GatewayPluginDatakit my_konnect_gateway_plugin_datakit '{\"control_plane_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"}'\n```\n\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginDatakitConfig:GatewayPluginDatakitConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginDatakitConsumer:GatewayPluginDatakitConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"consumerGroup":{"$ref":"#/types/konnect:index%2FGatewayPluginDatakitConsumerGroup:GatewayPluginDatakitConsumerGroup","description":"If set, the plugin will activate only for requests where the specified consumer group has been authenticated. (Note that some plugins can not be restricted to consumers groups this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer Groups\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginDatakitId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginDatakitOrdering:GatewayPluginDatakitOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginDatakitPartial:GatewayPluginDatakitPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginDatakitRoute:GatewayPluginDatakitRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginDatakitService:GatewayPluginDatakitService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object","required":["config","consumer","consumerGroup","controlPlaneId","createdAt","enabled","gatewayPluginDatakitId","ordering","protocols","route","service","updatedAt"],"inputProperties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginDatakitConfig:GatewayPluginDatakitConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginDatakitConsumer:GatewayPluginDatakitConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"consumerGroup":{"$ref":"#/types/konnect:index%2FGatewayPluginDatakitConsumerGroup:GatewayPluginDatakitConsumerGroup","description":"If set, the plugin will activate only for requests where the specified consumer group has been authenticated. (Note that some plugins can not be restricted to consumers groups this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer Groups\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginDatakitId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginDatakitOrdering:GatewayPluginDatakitOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginDatakitPartial:GatewayPluginDatakitPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginDatakitRoute:GatewayPluginDatakitRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginDatakitService:GatewayPluginDatakitService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"requiredInputs":["config","controlPlaneId"],"stateInputs":{"description":"Input properties used for looking up and filtering GatewayPluginDatakit resources.\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginDatakitConfig:GatewayPluginDatakitConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginDatakitConsumer:GatewayPluginDatakitConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"consumerGroup":{"$ref":"#/types/konnect:index%2FGatewayPluginDatakitConsumerGroup:GatewayPluginDatakitConsumerGroup","description":"If set, the plugin will activate only for requests where the specified consumer group has been authenticated. (Note that some plugins can not be restricted to consumers groups this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer Groups\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginDatakitId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginDatakitOrdering:GatewayPluginDatakitOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginDatakitPartial:GatewayPluginDatakitPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginDatakitRoute:GatewayPluginDatakitRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginDatakitService:GatewayPluginDatakitService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object"}},"konnect:index/gatewayPluginDegraphql:GatewayPluginDegraphql":{"description":"GatewayPluginDegraphql Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myGatewayplugindegraphql = new konnect.GatewayPluginDegraphql(\"my_gatewayplugindegraphql\", {\n    config: {\n        graphqlServerPath: \"...my_graphql_server_path...\",\n    },\n    controlPlaneId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    createdAt: 9,\n    enabled: false,\n    gatewayPluginDegraphqlId: \"...my_id...\",\n    instanceName: \"...my_instance_name...\",\n    ordering: {\n        after: {\n            accesses: [\"...\"],\n        },\n        before: {\n            accesses: [\"...\"],\n        },\n    },\n    partials: [{\n        id: \"...my_id...\",\n        name: \"...my_name...\",\n        path: \"...my_path...\",\n    }],\n    protocols: [\"grpc\"],\n    route: {\n        id: \"...my_id...\",\n    },\n    service: {\n        id: \"...my_id...\",\n    },\n    tags: [\"...\"],\n    updatedAt: 1,\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_gatewayplugindegraphql = konnect.GatewayPluginDegraphql(\"my_gatewayplugindegraphql\",\n    config={\n        \"graphql_server_path\": \"...my_graphql_server_path...\",\n    },\n    control_plane_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    created_at=9,\n    enabled=False,\n    gateway_plugin_degraphql_id=\"...my_id...\",\n    instance_name=\"...my_instance_name...\",\n    ordering={\n        \"after\": {\n            \"accesses\": [\"...\"],\n        },\n        \"before\": {\n            \"accesses\": [\"...\"],\n        },\n    },\n    partials=[{\n        \"id\": \"...my_id...\",\n        \"name\": \"...my_name...\",\n        \"path\": \"...my_path...\",\n    }],\n    protocols=[\"grpc\"],\n    route={\n        \"id\": \"...my_id...\",\n    },\n    service={\n        \"id\": \"...my_id...\",\n    },\n    tags=[\"...\"],\n    updated_at=1)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myGatewayplugindegraphql = new Konnect.GatewayPluginDegraphql(\"my_gatewayplugindegraphql\", new()\n    {\n        Config = new Konnect.Inputs.GatewayPluginDegraphqlConfigArgs\n        {\n            GraphqlServerPath = \"...my_graphql_server_path...\",\n        },\n        ControlPlaneId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        CreatedAt = 9,\n        Enabled = false,\n        GatewayPluginDegraphqlId = \"...my_id...\",\n        InstanceName = \"...my_instance_name...\",\n        Ordering = new Konnect.Inputs.GatewayPluginDegraphqlOrderingArgs\n        {\n            After = new Konnect.Inputs.GatewayPluginDegraphqlOrderingAfterArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n            Before = new Konnect.Inputs.GatewayPluginDegraphqlOrderingBeforeArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n        },\n        Partials = new[]\n        {\n            new Konnect.Inputs.GatewayPluginDegraphqlPartialArgs\n            {\n                Id = \"...my_id...\",\n                Name = \"...my_name...\",\n                Path = \"...my_path...\",\n            },\n        },\n        Protocols = new[]\n        {\n            \"grpc\",\n        },\n        Route = new Konnect.Inputs.GatewayPluginDegraphqlRouteArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Service = new Konnect.Inputs.GatewayPluginDegraphqlServiceArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Tags = new[]\n        {\n            \"...\",\n        },\n        UpdatedAt = 1,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewGatewayPluginDegraphql(ctx, \"my_gatewayplugindegraphql\", \u0026konnect.GatewayPluginDegraphqlArgs{\n\t\t\tConfig: \u0026konnect.GatewayPluginDegraphqlConfigArgs{\n\t\t\t\tGraphqlServerPath: pulumi.String(\"...my_graphql_server_path...\"),\n\t\t\t},\n\t\t\tControlPlaneId:           pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tCreatedAt:                pulumi.Float64(9),\n\t\t\tEnabled:                  pulumi.Bool(false),\n\t\t\tGatewayPluginDegraphqlId: pulumi.String(\"...my_id...\"),\n\t\t\tInstanceName:             pulumi.String(\"...my_instance_name...\"),\n\t\t\tOrdering: \u0026konnect.GatewayPluginDegraphqlOrderingArgs{\n\t\t\t\tAfter: \u0026konnect.GatewayPluginDegraphqlOrderingAfterArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tBefore: \u0026konnect.GatewayPluginDegraphqlOrderingBeforeArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tPartials: konnect.GatewayPluginDegraphqlPartialArray{\n\t\t\t\t\u0026konnect.GatewayPluginDegraphqlPartialArgs{\n\t\t\t\t\tId:   pulumi.String(\"...my_id...\"),\n\t\t\t\t\tName: pulumi.String(\"...my_name...\"),\n\t\t\t\t\tPath: pulumi.String(\"...my_path...\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tProtocols: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"grpc\"),\n\t\t\t},\n\t\t\tRoute: \u0026konnect.GatewayPluginDegraphqlRouteArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tService: \u0026konnect.GatewayPluginDegraphqlServiceArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"...\"),\n\t\t\t},\n\t\t\tUpdatedAt: pulumi.Float64(1),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.GatewayPluginDegraphql;\nimport com.pulumi.konnect.GatewayPluginDegraphqlArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginDegraphqlConfigArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginDegraphqlOrderingArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginDegraphqlOrderingAfterArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginDegraphqlOrderingBeforeArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginDegraphqlPartialArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginDegraphqlRouteArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginDegraphqlServiceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myGatewayplugindegraphql = new GatewayPluginDegraphql(\"myGatewayplugindegraphql\", GatewayPluginDegraphqlArgs.builder()\n            .config(GatewayPluginDegraphqlConfigArgs.builder()\n                .graphqlServerPath(\"...my_graphql_server_path...\")\n                .build())\n            .controlPlaneId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .createdAt(9.0)\n            .enabled(false)\n            .gatewayPluginDegraphqlId(\"...my_id...\")\n            .instanceName(\"...my_instance_name...\")\n            .ordering(GatewayPluginDegraphqlOrderingArgs.builder()\n                .after(GatewayPluginDegraphqlOrderingAfterArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .before(GatewayPluginDegraphqlOrderingBeforeArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .build())\n            .partials(GatewayPluginDegraphqlPartialArgs.builder()\n                .id(\"...my_id...\")\n                .name(\"...my_name...\")\n                .path(\"...my_path...\")\n                .build())\n            .protocols(\"grpc\")\n            .route(GatewayPluginDegraphqlRouteArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .service(GatewayPluginDegraphqlServiceArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .tags(\"...\")\n            .updatedAt(1.0)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myGatewayplugindegraphql:\n    type: konnect:GatewayPluginDegraphql\n    name: my_gatewayplugindegraphql\n    properties:\n      config:\n        graphqlServerPath: '...my_graphql_server_path...'\n      controlPlaneId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      createdAt: 9\n      enabled: false\n      gatewayPluginDegraphqlId: '...my_id...'\n      instanceName: '...my_instance_name...'\n      ordering:\n        after:\n          accesses:\n            - '...'\n        before:\n          accesses:\n            - '...'\n      partials:\n        - id: '...my_id...'\n          name: '...my_name...'\n          path: '...my_path...'\n      protocols:\n        - grpc\n      route:\n        id: '...my_id...'\n      service:\n        id: '...my_id...'\n      tags:\n        - '...'\n      updatedAt: 1\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_gateway_plugin_degraphql.my_konnect_gateway_plugin_degraphql\n\n  id = jsonencode({\n\n    control_plane_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/gatewayPluginDegraphql:GatewayPluginDegraphql my_konnect_gateway_plugin_degraphql '{\"control_plane_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"}'\n```\n\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginDegraphqlConfig:GatewayPluginDegraphqlConfig"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginDegraphqlId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginDegraphqlOrdering:GatewayPluginDegraphqlOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginDegraphqlPartial:GatewayPluginDegraphqlPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginDegraphqlRoute:GatewayPluginDegraphqlRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginDegraphqlService:GatewayPluginDegraphqlService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object","required":["config","controlPlaneId","createdAt","enabled","gatewayPluginDegraphqlId","ordering","protocols","route","service","updatedAt"],"inputProperties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginDegraphqlConfig:GatewayPluginDegraphqlConfig"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginDegraphqlId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginDegraphqlOrdering:GatewayPluginDegraphqlOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginDegraphqlPartial:GatewayPluginDegraphqlPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginDegraphqlRoute:GatewayPluginDegraphqlRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginDegraphqlService:GatewayPluginDegraphqlService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"requiredInputs":["controlPlaneId"],"stateInputs":{"description":"Input properties used for looking up and filtering GatewayPluginDegraphql resources.\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginDegraphqlConfig:GatewayPluginDegraphqlConfig"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginDegraphqlId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginDegraphqlOrdering:GatewayPluginDegraphqlOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginDegraphqlPartial:GatewayPluginDegraphqlPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginDegraphqlRoute:GatewayPluginDegraphqlRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginDegraphqlService:GatewayPluginDegraphqlService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object"}},"konnect:index/gatewayPluginExitTransformer:GatewayPluginExitTransformer":{"description":"GatewayPluginExitTransformer Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myGatewaypluginexittransformer = new konnect.GatewayPluginExitTransformer(\"my_gatewaypluginexittransformer\", {\n    config: {\n        functions: [\"...\"],\n        handleUnexpected: true,\n        handleUnknown: true,\n    },\n    consumer: {\n        id: \"...my_id...\",\n    },\n    controlPlaneId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    createdAt: 2,\n    enabled: true,\n    gatewayPluginExitTransformerId: \"...my_id...\",\n    instanceName: \"...my_instance_name...\",\n    ordering: {\n        after: {\n            accesses: [\"...\"],\n        },\n        before: {\n            accesses: [\"...\"],\n        },\n    },\n    partials: [{\n        id: \"...my_id...\",\n        name: \"...my_name...\",\n        path: \"...my_path...\",\n    }],\n    protocols: [\"grpcs\"],\n    route: {\n        id: \"...my_id...\",\n    },\n    service: {\n        id: \"...my_id...\",\n    },\n    tags: [\"...\"],\n    updatedAt: 2,\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_gatewaypluginexittransformer = konnect.GatewayPluginExitTransformer(\"my_gatewaypluginexittransformer\",\n    config={\n        \"functions\": [\"...\"],\n        \"handle_unexpected\": True,\n        \"handle_unknown\": True,\n    },\n    consumer={\n        \"id\": \"...my_id...\",\n    },\n    control_plane_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    created_at=2,\n    enabled=True,\n    gateway_plugin_exit_transformer_id=\"...my_id...\",\n    instance_name=\"...my_instance_name...\",\n    ordering={\n        \"after\": {\n            \"accesses\": [\"...\"],\n        },\n        \"before\": {\n            \"accesses\": [\"...\"],\n        },\n    },\n    partials=[{\n        \"id\": \"...my_id...\",\n        \"name\": \"...my_name...\",\n        \"path\": \"...my_path...\",\n    }],\n    protocols=[\"grpcs\"],\n    route={\n        \"id\": \"...my_id...\",\n    },\n    service={\n        \"id\": \"...my_id...\",\n    },\n    tags=[\"...\"],\n    updated_at=2)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myGatewaypluginexittransformer = new Konnect.GatewayPluginExitTransformer(\"my_gatewaypluginexittransformer\", new()\n    {\n        Config = new Konnect.Inputs.GatewayPluginExitTransformerConfigArgs\n        {\n            Functions = new[]\n            {\n                \"...\",\n            },\n            HandleUnexpected = true,\n            HandleUnknown = true,\n        },\n        Consumer = new Konnect.Inputs.GatewayPluginExitTransformerConsumerArgs\n        {\n            Id = \"...my_id...\",\n        },\n        ControlPlaneId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        CreatedAt = 2,\n        Enabled = true,\n        GatewayPluginExitTransformerId = \"...my_id...\",\n        InstanceName = \"...my_instance_name...\",\n        Ordering = new Konnect.Inputs.GatewayPluginExitTransformerOrderingArgs\n        {\n            After = new Konnect.Inputs.GatewayPluginExitTransformerOrderingAfterArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n            Before = new Konnect.Inputs.GatewayPluginExitTransformerOrderingBeforeArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n        },\n        Partials = new[]\n        {\n            new Konnect.Inputs.GatewayPluginExitTransformerPartialArgs\n            {\n                Id = \"...my_id...\",\n                Name = \"...my_name...\",\n                Path = \"...my_path...\",\n            },\n        },\n        Protocols = new[]\n        {\n            \"grpcs\",\n        },\n        Route = new Konnect.Inputs.GatewayPluginExitTransformerRouteArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Service = new Konnect.Inputs.GatewayPluginExitTransformerServiceArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Tags = new[]\n        {\n            \"...\",\n        },\n        UpdatedAt = 2,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewGatewayPluginExitTransformer(ctx, \"my_gatewaypluginexittransformer\", \u0026konnect.GatewayPluginExitTransformerArgs{\n\t\t\tConfig: \u0026konnect.GatewayPluginExitTransformerConfigArgs{\n\t\t\t\tFunctions: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tHandleUnexpected: pulumi.Bool(true),\n\t\t\t\tHandleUnknown:    pulumi.Bool(true),\n\t\t\t},\n\t\t\tConsumer: \u0026konnect.GatewayPluginExitTransformerConsumerArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tControlPlaneId:                 pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tCreatedAt:                      pulumi.Float64(2),\n\t\t\tEnabled:                        pulumi.Bool(true),\n\t\t\tGatewayPluginExitTransformerId: pulumi.String(\"...my_id...\"),\n\t\t\tInstanceName:                   pulumi.String(\"...my_instance_name...\"),\n\t\t\tOrdering: \u0026konnect.GatewayPluginExitTransformerOrderingArgs{\n\t\t\t\tAfter: \u0026konnect.GatewayPluginExitTransformerOrderingAfterArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tBefore: \u0026konnect.GatewayPluginExitTransformerOrderingBeforeArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tPartials: konnect.GatewayPluginExitTransformerPartialArray{\n\t\t\t\t\u0026konnect.GatewayPluginExitTransformerPartialArgs{\n\t\t\t\t\tId:   pulumi.String(\"...my_id...\"),\n\t\t\t\t\tName: pulumi.String(\"...my_name...\"),\n\t\t\t\t\tPath: pulumi.String(\"...my_path...\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tProtocols: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"grpcs\"),\n\t\t\t},\n\t\t\tRoute: \u0026konnect.GatewayPluginExitTransformerRouteArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tService: \u0026konnect.GatewayPluginExitTransformerServiceArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"...\"),\n\t\t\t},\n\t\t\tUpdatedAt: pulumi.Float64(2),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.GatewayPluginExitTransformer;\nimport com.pulumi.konnect.GatewayPluginExitTransformerArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginExitTransformerConfigArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginExitTransformerConsumerArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginExitTransformerOrderingArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginExitTransformerOrderingAfterArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginExitTransformerOrderingBeforeArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginExitTransformerPartialArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginExitTransformerRouteArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginExitTransformerServiceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myGatewaypluginexittransformer = new GatewayPluginExitTransformer(\"myGatewaypluginexittransformer\", GatewayPluginExitTransformerArgs.builder()\n            .config(GatewayPluginExitTransformerConfigArgs.builder()\n                .functions(\"...\")\n                .handleUnexpected(true)\n                .handleUnknown(true)\n                .build())\n            .consumer(GatewayPluginExitTransformerConsumerArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .controlPlaneId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .createdAt(2.0)\n            .enabled(true)\n            .gatewayPluginExitTransformerId(\"...my_id...\")\n            .instanceName(\"...my_instance_name...\")\n            .ordering(GatewayPluginExitTransformerOrderingArgs.builder()\n                .after(GatewayPluginExitTransformerOrderingAfterArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .before(GatewayPluginExitTransformerOrderingBeforeArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .build())\n            .partials(GatewayPluginExitTransformerPartialArgs.builder()\n                .id(\"...my_id...\")\n                .name(\"...my_name...\")\n                .path(\"...my_path...\")\n                .build())\n            .protocols(\"grpcs\")\n            .route(GatewayPluginExitTransformerRouteArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .service(GatewayPluginExitTransformerServiceArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .tags(\"...\")\n            .updatedAt(2.0)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myGatewaypluginexittransformer:\n    type: konnect:GatewayPluginExitTransformer\n    name: my_gatewaypluginexittransformer\n    properties:\n      config:\n        functions:\n          - '...'\n        handleUnexpected: true\n        handleUnknown: true\n      consumer:\n        id: '...my_id...'\n      controlPlaneId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      createdAt: 2\n      enabled: true\n      gatewayPluginExitTransformerId: '...my_id...'\n      instanceName: '...my_instance_name...'\n      ordering:\n        after:\n          accesses:\n            - '...'\n        before:\n          accesses:\n            - '...'\n      partials:\n        - id: '...my_id...'\n          name: '...my_name...'\n          path: '...my_path...'\n      protocols:\n        - grpcs\n      route:\n        id: '...my_id...'\n      service:\n        id: '...my_id...'\n      tags:\n        - '...'\n      updatedAt: 2\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_gateway_plugin_exit_transformer.my_konnect_gateway_plugin_exit_transformer\n\n  id = jsonencode({\n\n    control_plane_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/gatewayPluginExitTransformer:GatewayPluginExitTransformer my_konnect_gateway_plugin_exit_transformer '{\"control_plane_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"}'\n```\n\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginExitTransformerConfig:GatewayPluginExitTransformerConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginExitTransformerConsumer:GatewayPluginExitTransformerConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginExitTransformerId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginExitTransformerOrdering:GatewayPluginExitTransformerOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginExitTransformerPartial:GatewayPluginExitTransformerPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginExitTransformerRoute:GatewayPluginExitTransformerRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginExitTransformerService:GatewayPluginExitTransformerService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object","required":["config","consumer","controlPlaneId","createdAt","enabled","gatewayPluginExitTransformerId","ordering","protocols","route","service","updatedAt"],"inputProperties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginExitTransformerConfig:GatewayPluginExitTransformerConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginExitTransformerConsumer:GatewayPluginExitTransformerConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginExitTransformerId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginExitTransformerOrdering:GatewayPluginExitTransformerOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginExitTransformerPartial:GatewayPluginExitTransformerPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginExitTransformerRoute:GatewayPluginExitTransformerRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginExitTransformerService:GatewayPluginExitTransformerService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"requiredInputs":["config","controlPlaneId"],"stateInputs":{"description":"Input properties used for looking up and filtering GatewayPluginExitTransformer resources.\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginExitTransformerConfig:GatewayPluginExitTransformerConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginExitTransformerConsumer:GatewayPluginExitTransformerConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginExitTransformerId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginExitTransformerOrdering:GatewayPluginExitTransformerOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginExitTransformerPartial:GatewayPluginExitTransformerPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginExitTransformerRoute:GatewayPluginExitTransformerRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginExitTransformerService:GatewayPluginExitTransformerService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object"}},"konnect:index/gatewayPluginFileLog:GatewayPluginFileLog":{"description":"GatewayPluginFileLog Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myGatewaypluginfilelog = new konnect.GatewayPluginFileLog(\"my_gatewaypluginfilelog\", {\n    config: {\n        customFieldsByLua: {\n            key: \"value\",\n        },\n        path: \"...my_path...\",\n        reopen: false,\n    },\n    consumer: {\n        id: \"...my_id...\",\n    },\n    controlPlaneId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    createdAt: 4,\n    enabled: true,\n    gatewayPluginFileLogId: \"...my_id...\",\n    instanceName: \"...my_instance_name...\",\n    ordering: {\n        after: {\n            accesses: [\"...\"],\n        },\n        before: {\n            accesses: [\"...\"],\n        },\n    },\n    partials: [{\n        id: \"...my_id...\",\n        name: \"...my_name...\",\n        path: \"...my_path...\",\n    }],\n    protocols: [\"grpcs\"],\n    route: {\n        id: \"...my_id...\",\n    },\n    service: {\n        id: \"...my_id...\",\n    },\n    tags: [\"...\"],\n    updatedAt: 0,\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_gatewaypluginfilelog = konnect.GatewayPluginFileLog(\"my_gatewaypluginfilelog\",\n    config={\n        \"custom_fields_by_lua\": {\n            \"key\": \"value\",\n        },\n        \"path\": \"...my_path...\",\n        \"reopen\": False,\n    },\n    consumer={\n        \"id\": \"...my_id...\",\n    },\n    control_plane_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    created_at=4,\n    enabled=True,\n    gateway_plugin_file_log_id=\"...my_id...\",\n    instance_name=\"...my_instance_name...\",\n    ordering={\n        \"after\": {\n            \"accesses\": [\"...\"],\n        },\n        \"before\": {\n            \"accesses\": [\"...\"],\n        },\n    },\n    partials=[{\n        \"id\": \"...my_id...\",\n        \"name\": \"...my_name...\",\n        \"path\": \"...my_path...\",\n    }],\n    protocols=[\"grpcs\"],\n    route={\n        \"id\": \"...my_id...\",\n    },\n    service={\n        \"id\": \"...my_id...\",\n    },\n    tags=[\"...\"],\n    updated_at=0)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myGatewaypluginfilelog = new Konnect.GatewayPluginFileLog(\"my_gatewaypluginfilelog\", new()\n    {\n        Config = new Konnect.Inputs.GatewayPluginFileLogConfigArgs\n        {\n            CustomFieldsByLua = \n            {\n                { \"key\", \"value\" },\n            },\n            Path = \"...my_path...\",\n            Reopen = false,\n        },\n        Consumer = new Konnect.Inputs.GatewayPluginFileLogConsumerArgs\n        {\n            Id = \"...my_id...\",\n        },\n        ControlPlaneId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        CreatedAt = 4,\n        Enabled = true,\n        GatewayPluginFileLogId = \"...my_id...\",\n        InstanceName = \"...my_instance_name...\",\n        Ordering = new Konnect.Inputs.GatewayPluginFileLogOrderingArgs\n        {\n            After = new Konnect.Inputs.GatewayPluginFileLogOrderingAfterArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n            Before = new Konnect.Inputs.GatewayPluginFileLogOrderingBeforeArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n        },\n        Partials = new[]\n        {\n            new Konnect.Inputs.GatewayPluginFileLogPartialArgs\n            {\n                Id = \"...my_id...\",\n                Name = \"...my_name...\",\n                Path = \"...my_path...\",\n            },\n        },\n        Protocols = new[]\n        {\n            \"grpcs\",\n        },\n        Route = new Konnect.Inputs.GatewayPluginFileLogRouteArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Service = new Konnect.Inputs.GatewayPluginFileLogServiceArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Tags = new[]\n        {\n            \"...\",\n        },\n        UpdatedAt = 0,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewGatewayPluginFileLog(ctx, \"my_gatewaypluginfilelog\", \u0026konnect.GatewayPluginFileLogArgs{\n\t\t\tConfig: \u0026konnect.GatewayPluginFileLogConfigArgs{\n\t\t\t\tCustomFieldsByLua: pulumi.StringMap{\n\t\t\t\t\t\"key\": pulumi.String(\"value\"),\n\t\t\t\t},\n\t\t\t\tPath:   pulumi.String(\"...my_path...\"),\n\t\t\t\tReopen: pulumi.Bool(false),\n\t\t\t},\n\t\t\tConsumer: \u0026konnect.GatewayPluginFileLogConsumerArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tControlPlaneId:         pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tCreatedAt:              pulumi.Float64(4),\n\t\t\tEnabled:                pulumi.Bool(true),\n\t\t\tGatewayPluginFileLogId: pulumi.String(\"...my_id...\"),\n\t\t\tInstanceName:           pulumi.String(\"...my_instance_name...\"),\n\t\t\tOrdering: \u0026konnect.GatewayPluginFileLogOrderingArgs{\n\t\t\t\tAfter: \u0026konnect.GatewayPluginFileLogOrderingAfterArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tBefore: \u0026konnect.GatewayPluginFileLogOrderingBeforeArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tPartials: konnect.GatewayPluginFileLogPartialArray{\n\t\t\t\t\u0026konnect.GatewayPluginFileLogPartialArgs{\n\t\t\t\t\tId:   pulumi.String(\"...my_id...\"),\n\t\t\t\t\tName: pulumi.String(\"...my_name...\"),\n\t\t\t\t\tPath: pulumi.String(\"...my_path...\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tProtocols: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"grpcs\"),\n\t\t\t},\n\t\t\tRoute: \u0026konnect.GatewayPluginFileLogRouteArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tService: \u0026konnect.GatewayPluginFileLogServiceArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"...\"),\n\t\t\t},\n\t\t\tUpdatedAt: pulumi.Float64(0),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.GatewayPluginFileLog;\nimport com.pulumi.konnect.GatewayPluginFileLogArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginFileLogConfigArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginFileLogConsumerArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginFileLogOrderingArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginFileLogOrderingAfterArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginFileLogOrderingBeforeArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginFileLogPartialArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginFileLogRouteArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginFileLogServiceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myGatewaypluginfilelog = new GatewayPluginFileLog(\"myGatewaypluginfilelog\", GatewayPluginFileLogArgs.builder()\n            .config(GatewayPluginFileLogConfigArgs.builder()\n                .customFieldsByLua(Map.of(\"key\", \"value\"))\n                .path(\"...my_path...\")\n                .reopen(false)\n                .build())\n            .consumer(GatewayPluginFileLogConsumerArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .controlPlaneId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .createdAt(4.0)\n            .enabled(true)\n            .gatewayPluginFileLogId(\"...my_id...\")\n            .instanceName(\"...my_instance_name...\")\n            .ordering(GatewayPluginFileLogOrderingArgs.builder()\n                .after(GatewayPluginFileLogOrderingAfterArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .before(GatewayPluginFileLogOrderingBeforeArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .build())\n            .partials(GatewayPluginFileLogPartialArgs.builder()\n                .id(\"...my_id...\")\n                .name(\"...my_name...\")\n                .path(\"...my_path...\")\n                .build())\n            .protocols(\"grpcs\")\n            .route(GatewayPluginFileLogRouteArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .service(GatewayPluginFileLogServiceArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .tags(\"...\")\n            .updatedAt(0.0)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myGatewaypluginfilelog:\n    type: konnect:GatewayPluginFileLog\n    name: my_gatewaypluginfilelog\n    properties:\n      config:\n        customFieldsByLua:\n          key: value\n        path: '...my_path...'\n        reopen: false\n      consumer:\n        id: '...my_id...'\n      controlPlaneId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      createdAt: 4\n      enabled: true\n      gatewayPluginFileLogId: '...my_id...'\n      instanceName: '...my_instance_name...'\n      ordering:\n        after:\n          accesses:\n            - '...'\n        before:\n          accesses:\n            - '...'\n      partials:\n        - id: '...my_id...'\n          name: '...my_name...'\n          path: '...my_path...'\n      protocols:\n        - grpcs\n      route:\n        id: '...my_id...'\n      service:\n        id: '...my_id...'\n      tags:\n        - '...'\n      updatedAt: 0\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_gateway_plugin_file_log.my_konnect_gateway_plugin_file_log\n\n  id = jsonencode({\n\n    control_plane_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/gatewayPluginFileLog:GatewayPluginFileLog my_konnect_gateway_plugin_file_log '{\"control_plane_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"}'\n```\n\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginFileLogConfig:GatewayPluginFileLogConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginFileLogConsumer:GatewayPluginFileLogConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginFileLogId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginFileLogOrdering:GatewayPluginFileLogOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginFileLogPartial:GatewayPluginFileLogPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginFileLogRoute:GatewayPluginFileLogRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginFileLogService:GatewayPluginFileLogService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object","required":["config","consumer","controlPlaneId","createdAt","enabled","gatewayPluginFileLogId","ordering","protocols","route","service","updatedAt"],"inputProperties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginFileLogConfig:GatewayPluginFileLogConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginFileLogConsumer:GatewayPluginFileLogConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginFileLogId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginFileLogOrdering:GatewayPluginFileLogOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginFileLogPartial:GatewayPluginFileLogPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginFileLogRoute:GatewayPluginFileLogRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginFileLogService:GatewayPluginFileLogService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"requiredInputs":["config","controlPlaneId"],"stateInputs":{"description":"Input properties used for looking up and filtering GatewayPluginFileLog resources.\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginFileLogConfig:GatewayPluginFileLogConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginFileLogConsumer:GatewayPluginFileLogConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginFileLogId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginFileLogOrdering:GatewayPluginFileLogOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginFileLogPartial:GatewayPluginFileLogPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginFileLogRoute:GatewayPluginFileLogRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginFileLogService:GatewayPluginFileLogService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object"}},"konnect:index/gatewayPluginForwardProxy:GatewayPluginForwardProxy":{"description":"GatewayPluginForwardProxy Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myGatewaypluginforwardproxy = new konnect.GatewayPluginForwardProxy(\"my_gatewaypluginforwardproxy\", {\n    config: {\n        authPassword: \"...my_auth_password...\",\n        authUsername: \"...my_auth_username...\",\n        httpProxyHost: \"...my_http_proxy_host...\",\n        httpProxyPort: 61130,\n        httpsProxyHost: \"...my_https_proxy_host...\",\n        httpsProxyPort: 38011,\n        httpsVerify: false,\n        proxyScheme: \"http\",\n        xHeaders: \"delete\",\n    },\n    consumer: {\n        id: \"...my_id...\",\n    },\n    controlPlaneId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    createdAt: 8,\n    enabled: false,\n    gatewayPluginForwardProxyId: \"...my_id...\",\n    instanceName: \"...my_instance_name...\",\n    ordering: {\n        after: {\n            accesses: [\"...\"],\n        },\n        before: {\n            accesses: [\"...\"],\n        },\n    },\n    partials: [{\n        id: \"...my_id...\",\n        name: \"...my_name...\",\n        path: \"...my_path...\",\n    }],\n    protocols: [\"https\"],\n    route: {\n        id: \"...my_id...\",\n    },\n    service: {\n        id: \"...my_id...\",\n    },\n    tags: [\"...\"],\n    updatedAt: 1,\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_gatewaypluginforwardproxy = konnect.GatewayPluginForwardProxy(\"my_gatewaypluginforwardproxy\",\n    config={\n        \"auth_password\": \"...my_auth_password...\",\n        \"auth_username\": \"...my_auth_username...\",\n        \"http_proxy_host\": \"...my_http_proxy_host...\",\n        \"http_proxy_port\": 61130,\n        \"https_proxy_host\": \"...my_https_proxy_host...\",\n        \"https_proxy_port\": 38011,\n        \"https_verify\": False,\n        \"proxy_scheme\": \"http\",\n        \"x_headers\": \"delete\",\n    },\n    consumer={\n        \"id\": \"...my_id...\",\n    },\n    control_plane_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    created_at=8,\n    enabled=False,\n    gateway_plugin_forward_proxy_id=\"...my_id...\",\n    instance_name=\"...my_instance_name...\",\n    ordering={\n        \"after\": {\n            \"accesses\": [\"...\"],\n        },\n        \"before\": {\n            \"accesses\": [\"...\"],\n        },\n    },\n    partials=[{\n        \"id\": \"...my_id...\",\n        \"name\": \"...my_name...\",\n        \"path\": \"...my_path...\",\n    }],\n    protocols=[\"https\"],\n    route={\n        \"id\": \"...my_id...\",\n    },\n    service={\n        \"id\": \"...my_id...\",\n    },\n    tags=[\"...\"],\n    updated_at=1)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myGatewaypluginforwardproxy = new Konnect.GatewayPluginForwardProxy(\"my_gatewaypluginforwardproxy\", new()\n    {\n        Config = new Konnect.Inputs.GatewayPluginForwardProxyConfigArgs\n        {\n            AuthPassword = \"...my_auth_password...\",\n            AuthUsername = \"...my_auth_username...\",\n            HttpProxyHost = \"...my_http_proxy_host...\",\n            HttpProxyPort = 61130,\n            HttpsProxyHost = \"...my_https_proxy_host...\",\n            HttpsProxyPort = 38011,\n            HttpsVerify = false,\n            ProxyScheme = \"http\",\n            XHeaders = \"delete\",\n        },\n        Consumer = new Konnect.Inputs.GatewayPluginForwardProxyConsumerArgs\n        {\n            Id = \"...my_id...\",\n        },\n        ControlPlaneId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        CreatedAt = 8,\n        Enabled = false,\n        GatewayPluginForwardProxyId = \"...my_id...\",\n        InstanceName = \"...my_instance_name...\",\n        Ordering = new Konnect.Inputs.GatewayPluginForwardProxyOrderingArgs\n        {\n            After = new Konnect.Inputs.GatewayPluginForwardProxyOrderingAfterArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n            Before = new Konnect.Inputs.GatewayPluginForwardProxyOrderingBeforeArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n        },\n        Partials = new[]\n        {\n            new Konnect.Inputs.GatewayPluginForwardProxyPartialArgs\n            {\n                Id = \"...my_id...\",\n                Name = \"...my_name...\",\n                Path = \"...my_path...\",\n            },\n        },\n        Protocols = new[]\n        {\n            \"https\",\n        },\n        Route = new Konnect.Inputs.GatewayPluginForwardProxyRouteArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Service = new Konnect.Inputs.GatewayPluginForwardProxyServiceArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Tags = new[]\n        {\n            \"...\",\n        },\n        UpdatedAt = 1,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewGatewayPluginForwardProxy(ctx, \"my_gatewaypluginforwardproxy\", \u0026konnect.GatewayPluginForwardProxyArgs{\n\t\t\tConfig: \u0026konnect.GatewayPluginForwardProxyConfigArgs{\n\t\t\t\tAuthPassword:   pulumi.String(\"...my_auth_password...\"),\n\t\t\t\tAuthUsername:   pulumi.String(\"...my_auth_username...\"),\n\t\t\t\tHttpProxyHost:  pulumi.String(\"...my_http_proxy_host...\"),\n\t\t\t\tHttpProxyPort:  pulumi.Float64(61130),\n\t\t\t\tHttpsProxyHost: pulumi.String(\"...my_https_proxy_host...\"),\n\t\t\t\tHttpsProxyPort: pulumi.Float64(38011),\n\t\t\t\tHttpsVerify:    pulumi.Bool(false),\n\t\t\t\tProxyScheme:    pulumi.String(\"http\"),\n\t\t\t\tXHeaders:       pulumi.String(\"delete\"),\n\t\t\t},\n\t\t\tConsumer: \u0026konnect.GatewayPluginForwardProxyConsumerArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tControlPlaneId:              pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tCreatedAt:                   pulumi.Float64(8),\n\t\t\tEnabled:                     pulumi.Bool(false),\n\t\t\tGatewayPluginForwardProxyId: pulumi.String(\"...my_id...\"),\n\t\t\tInstanceName:                pulumi.String(\"...my_instance_name...\"),\n\t\t\tOrdering: \u0026konnect.GatewayPluginForwardProxyOrderingArgs{\n\t\t\t\tAfter: \u0026konnect.GatewayPluginForwardProxyOrderingAfterArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tBefore: \u0026konnect.GatewayPluginForwardProxyOrderingBeforeArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tPartials: konnect.GatewayPluginForwardProxyPartialArray{\n\t\t\t\t\u0026konnect.GatewayPluginForwardProxyPartialArgs{\n\t\t\t\t\tId:   pulumi.String(\"...my_id...\"),\n\t\t\t\t\tName: pulumi.String(\"...my_name...\"),\n\t\t\t\t\tPath: pulumi.String(\"...my_path...\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tProtocols: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"https\"),\n\t\t\t},\n\t\t\tRoute: \u0026konnect.GatewayPluginForwardProxyRouteArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tService: \u0026konnect.GatewayPluginForwardProxyServiceArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"...\"),\n\t\t\t},\n\t\t\tUpdatedAt: pulumi.Float64(1),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.GatewayPluginForwardProxy;\nimport com.pulumi.konnect.GatewayPluginForwardProxyArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginForwardProxyConfigArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginForwardProxyConsumerArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginForwardProxyOrderingArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginForwardProxyOrderingAfterArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginForwardProxyOrderingBeforeArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginForwardProxyPartialArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginForwardProxyRouteArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginForwardProxyServiceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myGatewaypluginforwardproxy = new GatewayPluginForwardProxy(\"myGatewaypluginforwardproxy\", GatewayPluginForwardProxyArgs.builder()\n            .config(GatewayPluginForwardProxyConfigArgs.builder()\n                .authPassword(\"...my_auth_password...\")\n                .authUsername(\"...my_auth_username...\")\n                .httpProxyHost(\"...my_http_proxy_host...\")\n                .httpProxyPort(61130.0)\n                .httpsProxyHost(\"...my_https_proxy_host...\")\n                .httpsProxyPort(38011.0)\n                .httpsVerify(false)\n                .proxyScheme(\"http\")\n                .xHeaders(\"delete\")\n                .build())\n            .consumer(GatewayPluginForwardProxyConsumerArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .controlPlaneId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .createdAt(8.0)\n            .enabled(false)\n            .gatewayPluginForwardProxyId(\"...my_id...\")\n            .instanceName(\"...my_instance_name...\")\n            .ordering(GatewayPluginForwardProxyOrderingArgs.builder()\n                .after(GatewayPluginForwardProxyOrderingAfterArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .before(GatewayPluginForwardProxyOrderingBeforeArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .build())\n            .partials(GatewayPluginForwardProxyPartialArgs.builder()\n                .id(\"...my_id...\")\n                .name(\"...my_name...\")\n                .path(\"...my_path...\")\n                .build())\n            .protocols(\"https\")\n            .route(GatewayPluginForwardProxyRouteArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .service(GatewayPluginForwardProxyServiceArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .tags(\"...\")\n            .updatedAt(1.0)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myGatewaypluginforwardproxy:\n    type: konnect:GatewayPluginForwardProxy\n    name: my_gatewaypluginforwardproxy\n    properties:\n      config:\n        authPassword: '...my_auth_password...'\n        authUsername: '...my_auth_username...'\n        httpProxyHost: '...my_http_proxy_host...'\n        httpProxyPort: 61130\n        httpsProxyHost: '...my_https_proxy_host...'\n        httpsProxyPort: 38011\n        httpsVerify: false\n        proxyScheme: http\n        xHeaders: delete\n      consumer:\n        id: '...my_id...'\n      controlPlaneId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      createdAt: 8\n      enabled: false\n      gatewayPluginForwardProxyId: '...my_id...'\n      instanceName: '...my_instance_name...'\n      ordering:\n        after:\n          accesses:\n            - '...'\n        before:\n          accesses:\n            - '...'\n      partials:\n        - id: '...my_id...'\n          name: '...my_name...'\n          path: '...my_path...'\n      protocols:\n        - https\n      route:\n        id: '...my_id...'\n      service:\n        id: '...my_id...'\n      tags:\n        - '...'\n      updatedAt: 1\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_gateway_plugin_forward_proxy.my_konnect_gateway_plugin_forward_proxy\n\n  id = jsonencode({\n\n    control_plane_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/gatewayPluginForwardProxy:GatewayPluginForwardProxy my_konnect_gateway_plugin_forward_proxy '{\"control_plane_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"}'\n```\n\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginForwardProxyConfig:GatewayPluginForwardProxyConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginForwardProxyConsumer:GatewayPluginForwardProxyConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginForwardProxyId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginForwardProxyOrdering:GatewayPluginForwardProxyOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginForwardProxyPartial:GatewayPluginForwardProxyPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginForwardProxyRoute:GatewayPluginForwardProxyRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginForwardProxyService:GatewayPluginForwardProxyService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object","required":["config","consumer","controlPlaneId","createdAt","enabled","gatewayPluginForwardProxyId","ordering","protocols","route","service","updatedAt"],"inputProperties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginForwardProxyConfig:GatewayPluginForwardProxyConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginForwardProxyConsumer:GatewayPluginForwardProxyConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginForwardProxyId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginForwardProxyOrdering:GatewayPluginForwardProxyOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginForwardProxyPartial:GatewayPluginForwardProxyPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginForwardProxyRoute:GatewayPluginForwardProxyRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginForwardProxyService:GatewayPluginForwardProxyService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"requiredInputs":["controlPlaneId"],"stateInputs":{"description":"Input properties used for looking up and filtering GatewayPluginForwardProxy resources.\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginForwardProxyConfig:GatewayPluginForwardProxyConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginForwardProxyConsumer:GatewayPluginForwardProxyConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginForwardProxyId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginForwardProxyOrdering:GatewayPluginForwardProxyOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginForwardProxyPartial:GatewayPluginForwardProxyPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginForwardProxyRoute:GatewayPluginForwardProxyRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginForwardProxyService:GatewayPluginForwardProxyService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object"}},"konnect:index/gatewayPluginGraphqlProxyCacheAdvanced:GatewayPluginGraphqlProxyCacheAdvanced":{"description":"GatewayPluginGraphqlProxyCacheAdvanced Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myGatewayplugingraphqlproxycacheadvanced = new konnect.GatewayPluginGraphqlProxyCacheAdvanced(\"my_gatewayplugingraphqlproxycacheadvanced\", {\n    config: {\n        bypassOnErr: true,\n        cacheTtl: 7,\n        memory: {\n            dictionaryName: \"...my_dictionary_name...\",\n        },\n        redis: {\n            cloudAuthentication: {\n                authProvider: \"azure\",\n                awsAccessKeyId: \"...my_aws_access_key_id...\",\n                awsAssumeRoleArn: \"...my_aws_assume_role_arn...\",\n                awsCacheName: \"...my_aws_cache_name...\",\n                awsIsServerless: true,\n                awsRegion: \"...my_aws_region...\",\n                awsRoleSessionName: \"...my_aws_role_session_name...\",\n                awsSecretAccessKey: \"...my_aws_secret_access_key...\",\n                azureClientId: \"...my_azure_client_id...\",\n                azureClientSecret: \"...my_azure_client_secret...\",\n                azureTenantId: \"...my_azure_tenant_id...\",\n                gcpServiceAccountJson: \"...my_gcp_service_account_json...\",\n            },\n            clusterMaxRedirections: 8,\n            clusterNodes: [{\n                ip: \"...my_ip...\",\n                port: 438,\n            }],\n            connectTimeout: 974295670,\n            connectionIsProxied: true,\n            database: 0,\n            host: \"...my_host...\",\n            keepaliveBacklog: 329763938,\n            keepalivePoolSize: 353109135,\n            password: \"...my_password...\",\n            port: 47126,\n            readTimeout: 1749476727,\n            sendTimeout: 2078135811,\n            sentinelMaster: \"...my_sentinel_master...\",\n            sentinelNodes: [{\n                host: \"...my_host...\",\n                port: 41845,\n            }],\n            sentinelPassword: \"...my_sentinel_password...\",\n            sentinelRole: \"slave\",\n            sentinelUsername: \"...my_sentinel_username...\",\n            serverName: \"...my_server_name...\",\n            ssl: true,\n            sslVerify: false,\n            username: \"...my_username...\",\n        },\n        strategy: \"memory\",\n        varyHeaders: [\"...\"],\n    },\n    consumer: {\n        id: \"...my_id...\",\n    },\n    controlPlaneId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    createdAt: 6,\n    enabled: false,\n    gatewayPluginGraphqlProxyCacheAdvancedId: \"...my_id...\",\n    instanceName: \"...my_instance_name...\",\n    ordering: {\n        after: {\n            accesses: [\"...\"],\n        },\n        before: {\n            accesses: [\"...\"],\n        },\n    },\n    partials: [{\n        id: \"...my_id...\",\n        name: \"...my_name...\",\n        path: \"...my_path...\",\n    }],\n    protocols: [\"grpc\"],\n    route: {\n        id: \"...my_id...\",\n    },\n    service: {\n        id: \"...my_id...\",\n    },\n    tags: [\"...\"],\n    updatedAt: 5,\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_gatewayplugingraphqlproxycacheadvanced = konnect.GatewayPluginGraphqlProxyCacheAdvanced(\"my_gatewayplugingraphqlproxycacheadvanced\",\n    config={\n        \"bypass_on_err\": True,\n        \"cache_ttl\": 7,\n        \"memory\": {\n            \"dictionary_name\": \"...my_dictionary_name...\",\n        },\n        \"redis\": {\n            \"cloud_authentication\": {\n                \"auth_provider\": \"azure\",\n                \"aws_access_key_id\": \"...my_aws_access_key_id...\",\n                \"aws_assume_role_arn\": \"...my_aws_assume_role_arn...\",\n                \"aws_cache_name\": \"...my_aws_cache_name...\",\n                \"aws_is_serverless\": True,\n                \"aws_region\": \"...my_aws_region...\",\n                \"aws_role_session_name\": \"...my_aws_role_session_name...\",\n                \"aws_secret_access_key\": \"...my_aws_secret_access_key...\",\n                \"azure_client_id\": \"...my_azure_client_id...\",\n                \"azure_client_secret\": \"...my_azure_client_secret...\",\n                \"azure_tenant_id\": \"...my_azure_tenant_id...\",\n                \"gcp_service_account_json\": \"...my_gcp_service_account_json...\",\n            },\n            \"cluster_max_redirections\": 8,\n            \"cluster_nodes\": [{\n                \"ip\": \"...my_ip...\",\n                \"port\": 438,\n            }],\n            \"connect_timeout\": 974295670,\n            \"connection_is_proxied\": True,\n            \"database\": 0,\n            \"host\": \"...my_host...\",\n            \"keepalive_backlog\": 329763938,\n            \"keepalive_pool_size\": 353109135,\n            \"password\": \"...my_password...\",\n            \"port\": 47126,\n            \"read_timeout\": 1749476727,\n            \"send_timeout\": 2078135811,\n            \"sentinel_master\": \"...my_sentinel_master...\",\n            \"sentinel_nodes\": [{\n                \"host\": \"...my_host...\",\n                \"port\": 41845,\n            }],\n            \"sentinel_password\": \"...my_sentinel_password...\",\n            \"sentinel_role\": \"slave\",\n            \"sentinel_username\": \"...my_sentinel_username...\",\n            \"server_name\": \"...my_server_name...\",\n            \"ssl\": True,\n            \"ssl_verify\": False,\n            \"username\": \"...my_username...\",\n        },\n        \"strategy\": \"memory\",\n        \"vary_headers\": [\"...\"],\n    },\n    consumer={\n        \"id\": \"...my_id...\",\n    },\n    control_plane_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    created_at=6,\n    enabled=False,\n    gateway_plugin_graphql_proxy_cache_advanced_id=\"...my_id...\",\n    instance_name=\"...my_instance_name...\",\n    ordering={\n        \"after\": {\n            \"accesses\": [\"...\"],\n        },\n        \"before\": {\n            \"accesses\": [\"...\"],\n        },\n    },\n    partials=[{\n        \"id\": \"...my_id...\",\n        \"name\": \"...my_name...\",\n        \"path\": \"...my_path...\",\n    }],\n    protocols=[\"grpc\"],\n    route={\n        \"id\": \"...my_id...\",\n    },\n    service={\n        \"id\": \"...my_id...\",\n    },\n    tags=[\"...\"],\n    updated_at=5)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myGatewayplugingraphqlproxycacheadvanced = new Konnect.GatewayPluginGraphqlProxyCacheAdvanced(\"my_gatewayplugingraphqlproxycacheadvanced\", new()\n    {\n        Config = new Konnect.Inputs.GatewayPluginGraphqlProxyCacheAdvancedConfigArgs\n        {\n            BypassOnErr = true,\n            CacheTtl = 7,\n            Memory = new Konnect.Inputs.GatewayPluginGraphqlProxyCacheAdvancedConfigMemoryArgs\n            {\n                DictionaryName = \"...my_dictionary_name...\",\n            },\n            Redis = new Konnect.Inputs.GatewayPluginGraphqlProxyCacheAdvancedConfigRedisArgs\n            {\n                CloudAuthentication = new Konnect.Inputs.GatewayPluginGraphqlProxyCacheAdvancedConfigRedisCloudAuthenticationArgs\n                {\n                    AuthProvider = \"azure\",\n                    AwsAccessKeyId = \"...my_aws_access_key_id...\",\n                    AwsAssumeRoleArn = \"...my_aws_assume_role_arn...\",\n                    AwsCacheName = \"...my_aws_cache_name...\",\n                    AwsIsServerless = true,\n                    AwsRegion = \"...my_aws_region...\",\n                    AwsRoleSessionName = \"...my_aws_role_session_name...\",\n                    AwsSecretAccessKey = \"...my_aws_secret_access_key...\",\n                    AzureClientId = \"...my_azure_client_id...\",\n                    AzureClientSecret = \"...my_azure_client_secret...\",\n                    AzureTenantId = \"...my_azure_tenant_id...\",\n                    GcpServiceAccountJson = \"...my_gcp_service_account_json...\",\n                },\n                ClusterMaxRedirections = 8,\n                ClusterNodes = new[]\n                {\n                    new Konnect.Inputs.GatewayPluginGraphqlProxyCacheAdvancedConfigRedisClusterNodeArgs\n                    {\n                        Ip = \"...my_ip...\",\n                        Port = 438,\n                    },\n                },\n                ConnectTimeout = 974295670,\n                ConnectionIsProxied = true,\n                Database = 0,\n                Host = \"...my_host...\",\n                KeepaliveBacklog = 329763938,\n                KeepalivePoolSize = 353109135,\n                Password = \"...my_password...\",\n                Port = 47126,\n                ReadTimeout = 1749476727,\n                SendTimeout = 2078135811,\n                SentinelMaster = \"...my_sentinel_master...\",\n                SentinelNodes = new[]\n                {\n                    new Konnect.Inputs.GatewayPluginGraphqlProxyCacheAdvancedConfigRedisSentinelNodeArgs\n                    {\n                        Host = \"...my_host...\",\n                        Port = 41845,\n                    },\n                },\n                SentinelPassword = \"...my_sentinel_password...\",\n                SentinelRole = \"slave\",\n                SentinelUsername = \"...my_sentinel_username...\",\n                ServerName = \"...my_server_name...\",\n                Ssl = true,\n                SslVerify = false,\n                Username = \"...my_username...\",\n            },\n            Strategy = \"memory\",\n            VaryHeaders = new[]\n            {\n                \"...\",\n            },\n        },\n        Consumer = new Konnect.Inputs.GatewayPluginGraphqlProxyCacheAdvancedConsumerArgs\n        {\n            Id = \"...my_id...\",\n        },\n        ControlPlaneId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        CreatedAt = 6,\n        Enabled = false,\n        GatewayPluginGraphqlProxyCacheAdvancedId = \"...my_id...\",\n        InstanceName = \"...my_instance_name...\",\n        Ordering = new Konnect.Inputs.GatewayPluginGraphqlProxyCacheAdvancedOrderingArgs\n        {\n            After = new Konnect.Inputs.GatewayPluginGraphqlProxyCacheAdvancedOrderingAfterArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n            Before = new Konnect.Inputs.GatewayPluginGraphqlProxyCacheAdvancedOrderingBeforeArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n        },\n        Partials = new[]\n        {\n            new Konnect.Inputs.GatewayPluginGraphqlProxyCacheAdvancedPartialArgs\n            {\n                Id = \"...my_id...\",\n                Name = \"...my_name...\",\n                Path = \"...my_path...\",\n            },\n        },\n        Protocols = new[]\n        {\n            \"grpc\",\n        },\n        Route = new Konnect.Inputs.GatewayPluginGraphqlProxyCacheAdvancedRouteArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Service = new Konnect.Inputs.GatewayPluginGraphqlProxyCacheAdvancedServiceArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Tags = new[]\n        {\n            \"...\",\n        },\n        UpdatedAt = 5,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewGatewayPluginGraphqlProxyCacheAdvanced(ctx, \"my_gatewayplugingraphqlproxycacheadvanced\", \u0026konnect.GatewayPluginGraphqlProxyCacheAdvancedArgs{\n\t\t\tConfig: \u0026konnect.GatewayPluginGraphqlProxyCacheAdvancedConfigArgs{\n\t\t\t\tBypassOnErr: pulumi.Bool(true),\n\t\t\t\tCacheTtl:    pulumi.Float64(7),\n\t\t\t\tMemory: \u0026konnect.GatewayPluginGraphqlProxyCacheAdvancedConfigMemoryArgs{\n\t\t\t\t\tDictionaryName: pulumi.String(\"...my_dictionary_name...\"),\n\t\t\t\t},\n\t\t\t\tRedis: \u0026konnect.GatewayPluginGraphqlProxyCacheAdvancedConfigRedisArgs{\n\t\t\t\t\tCloudAuthentication: \u0026konnect.GatewayPluginGraphqlProxyCacheAdvancedConfigRedisCloudAuthenticationArgs{\n\t\t\t\t\t\tAuthProvider:          pulumi.String(\"azure\"),\n\t\t\t\t\t\tAwsAccessKeyId:        pulumi.String(\"...my_aws_access_key_id...\"),\n\t\t\t\t\t\tAwsAssumeRoleArn:      pulumi.String(\"...my_aws_assume_role_arn...\"),\n\t\t\t\t\t\tAwsCacheName:          pulumi.String(\"...my_aws_cache_name...\"),\n\t\t\t\t\t\tAwsIsServerless:       pulumi.Bool(true),\n\t\t\t\t\t\tAwsRegion:             pulumi.String(\"...my_aws_region...\"),\n\t\t\t\t\t\tAwsRoleSessionName:    pulumi.String(\"...my_aws_role_session_name...\"),\n\t\t\t\t\t\tAwsSecretAccessKey:    pulumi.String(\"...my_aws_secret_access_key...\"),\n\t\t\t\t\t\tAzureClientId:         pulumi.String(\"...my_azure_client_id...\"),\n\t\t\t\t\t\tAzureClientSecret:     pulumi.String(\"...my_azure_client_secret...\"),\n\t\t\t\t\t\tAzureTenantId:         pulumi.String(\"...my_azure_tenant_id...\"),\n\t\t\t\t\t\tGcpServiceAccountJson: pulumi.String(\"...my_gcp_service_account_json...\"),\n\t\t\t\t\t},\n\t\t\t\t\tClusterMaxRedirections: pulumi.Float64(8),\n\t\t\t\t\tClusterNodes: konnect.GatewayPluginGraphqlProxyCacheAdvancedConfigRedisClusterNodeArray{\n\t\t\t\t\t\t\u0026konnect.GatewayPluginGraphqlProxyCacheAdvancedConfigRedisClusterNodeArgs{\n\t\t\t\t\t\t\tIp:   pulumi.String(\"...my_ip...\"),\n\t\t\t\t\t\t\tPort: pulumi.Float64(438),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tConnectTimeout:      pulumi.Float64(974295670),\n\t\t\t\t\tConnectionIsProxied: pulumi.Bool(true),\n\t\t\t\t\tDatabase:            pulumi.Float64(0),\n\t\t\t\t\tHost:                pulumi.String(\"...my_host...\"),\n\t\t\t\t\tKeepaliveBacklog:    pulumi.Float64(329763938),\n\t\t\t\t\tKeepalivePoolSize:   pulumi.Float64(353109135),\n\t\t\t\t\tPassword:            pulumi.String(\"...my_password...\"),\n\t\t\t\t\tPort:                pulumi.Float64(47126),\n\t\t\t\t\tReadTimeout:         pulumi.Float64(1749476727),\n\t\t\t\t\tSendTimeout:         pulumi.Float64(2078135811),\n\t\t\t\t\tSentinelMaster:      pulumi.String(\"...my_sentinel_master...\"),\n\t\t\t\t\tSentinelNodes: konnect.GatewayPluginGraphqlProxyCacheAdvancedConfigRedisSentinelNodeArray{\n\t\t\t\t\t\t\u0026konnect.GatewayPluginGraphqlProxyCacheAdvancedConfigRedisSentinelNodeArgs{\n\t\t\t\t\t\t\tHost: pulumi.String(\"...my_host...\"),\n\t\t\t\t\t\t\tPort: pulumi.Float64(41845),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tSentinelPassword: pulumi.String(\"...my_sentinel_password...\"),\n\t\t\t\t\tSentinelRole:     pulumi.String(\"slave\"),\n\t\t\t\t\tSentinelUsername: pulumi.String(\"...my_sentinel_username...\"),\n\t\t\t\t\tServerName:       pulumi.String(\"...my_server_name...\"),\n\t\t\t\t\tSsl:              pulumi.Bool(true),\n\t\t\t\t\tSslVerify:        pulumi.Bool(false),\n\t\t\t\t\tUsername:         pulumi.String(\"...my_username...\"),\n\t\t\t\t},\n\t\t\t\tStrategy: pulumi.String(\"memory\"),\n\t\t\t\tVaryHeaders: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tConsumer: \u0026konnect.GatewayPluginGraphqlProxyCacheAdvancedConsumerArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tControlPlaneId:                           pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tCreatedAt:                                pulumi.Float64(6),\n\t\t\tEnabled:                                  pulumi.Bool(false),\n\t\t\tGatewayPluginGraphqlProxyCacheAdvancedId: pulumi.String(\"...my_id...\"),\n\t\t\tInstanceName:                             pulumi.String(\"...my_instance_name...\"),\n\t\t\tOrdering: \u0026konnect.GatewayPluginGraphqlProxyCacheAdvancedOrderingArgs{\n\t\t\t\tAfter: \u0026konnect.GatewayPluginGraphqlProxyCacheAdvancedOrderingAfterArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tBefore: \u0026konnect.GatewayPluginGraphqlProxyCacheAdvancedOrderingBeforeArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tPartials: konnect.GatewayPluginGraphqlProxyCacheAdvancedPartialArray{\n\t\t\t\t\u0026konnect.GatewayPluginGraphqlProxyCacheAdvancedPartialArgs{\n\t\t\t\t\tId:   pulumi.String(\"...my_id...\"),\n\t\t\t\t\tName: pulumi.String(\"...my_name...\"),\n\t\t\t\t\tPath: pulumi.String(\"...my_path...\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tProtocols: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"grpc\"),\n\t\t\t},\n\t\t\tRoute: \u0026konnect.GatewayPluginGraphqlProxyCacheAdvancedRouteArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tService: \u0026konnect.GatewayPluginGraphqlProxyCacheAdvancedServiceArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"...\"),\n\t\t\t},\n\t\t\tUpdatedAt: pulumi.Float64(5),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.GatewayPluginGraphqlProxyCacheAdvanced;\nimport com.pulumi.konnect.GatewayPluginGraphqlProxyCacheAdvancedArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginGraphqlProxyCacheAdvancedConfigArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginGraphqlProxyCacheAdvancedConfigMemoryArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginGraphqlProxyCacheAdvancedConfigRedisArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginGraphqlProxyCacheAdvancedConfigRedisCloudAuthenticationArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginGraphqlProxyCacheAdvancedConsumerArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginGraphqlProxyCacheAdvancedOrderingArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginGraphqlProxyCacheAdvancedOrderingAfterArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginGraphqlProxyCacheAdvancedOrderingBeforeArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginGraphqlProxyCacheAdvancedPartialArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginGraphqlProxyCacheAdvancedRouteArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginGraphqlProxyCacheAdvancedServiceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myGatewayplugingraphqlproxycacheadvanced = new GatewayPluginGraphqlProxyCacheAdvanced(\"myGatewayplugingraphqlproxycacheadvanced\", GatewayPluginGraphqlProxyCacheAdvancedArgs.builder()\n            .config(GatewayPluginGraphqlProxyCacheAdvancedConfigArgs.builder()\n                .bypassOnErr(true)\n                .cacheTtl(7.0)\n                .memory(GatewayPluginGraphqlProxyCacheAdvancedConfigMemoryArgs.builder()\n                    .dictionaryName(\"...my_dictionary_name...\")\n                    .build())\n                .redis(GatewayPluginGraphqlProxyCacheAdvancedConfigRedisArgs.builder()\n                    .cloudAuthentication(GatewayPluginGraphqlProxyCacheAdvancedConfigRedisCloudAuthenticationArgs.builder()\n                        .authProvider(\"azure\")\n                        .awsAccessKeyId(\"...my_aws_access_key_id...\")\n                        .awsAssumeRoleArn(\"...my_aws_assume_role_arn...\")\n                        .awsCacheName(\"...my_aws_cache_name...\")\n                        .awsIsServerless(true)\n                        .awsRegion(\"...my_aws_region...\")\n                        .awsRoleSessionName(\"...my_aws_role_session_name...\")\n                        .awsSecretAccessKey(\"...my_aws_secret_access_key...\")\n                        .azureClientId(\"...my_azure_client_id...\")\n                        .azureClientSecret(\"...my_azure_client_secret...\")\n                        .azureTenantId(\"...my_azure_tenant_id...\")\n                        .gcpServiceAccountJson(\"...my_gcp_service_account_json...\")\n                        .build())\n                    .clusterMaxRedirections(8.0)\n                    .clusterNodes(GatewayPluginGraphqlProxyCacheAdvancedConfigRedisClusterNodeArgs.builder()\n                        .ip(\"...my_ip...\")\n                        .port(438.0)\n                        .build())\n                    .connectTimeout(974295670.0)\n                    .connectionIsProxied(true)\n                    .database(0.0)\n                    .host(\"...my_host...\")\n                    .keepaliveBacklog(329763938.0)\n                    .keepalivePoolSize(353109135.0)\n                    .password(\"...my_password...\")\n                    .port(47126.0)\n                    .readTimeout(1749476727.0)\n                    .sendTimeout(2078135811.0)\n                    .sentinelMaster(\"...my_sentinel_master...\")\n                    .sentinelNodes(GatewayPluginGraphqlProxyCacheAdvancedConfigRedisSentinelNodeArgs.builder()\n                        .host(\"...my_host...\")\n                        .port(41845.0)\n                        .build())\n                    .sentinelPassword(\"...my_sentinel_password...\")\n                    .sentinelRole(\"slave\")\n                    .sentinelUsername(\"...my_sentinel_username...\")\n                    .serverName(\"...my_server_name...\")\n                    .ssl(true)\n                    .sslVerify(false)\n                    .username(\"...my_username...\")\n                    .build())\n                .strategy(\"memory\")\n                .varyHeaders(\"...\")\n                .build())\n            .consumer(GatewayPluginGraphqlProxyCacheAdvancedConsumerArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .controlPlaneId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .createdAt(6.0)\n            .enabled(false)\n            .gatewayPluginGraphqlProxyCacheAdvancedId(\"...my_id...\")\n            .instanceName(\"...my_instance_name...\")\n            .ordering(GatewayPluginGraphqlProxyCacheAdvancedOrderingArgs.builder()\n                .after(GatewayPluginGraphqlProxyCacheAdvancedOrderingAfterArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .before(GatewayPluginGraphqlProxyCacheAdvancedOrderingBeforeArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .build())\n            .partials(GatewayPluginGraphqlProxyCacheAdvancedPartialArgs.builder()\n                .id(\"...my_id...\")\n                .name(\"...my_name...\")\n                .path(\"...my_path...\")\n                .build())\n            .protocols(\"grpc\")\n            .route(GatewayPluginGraphqlProxyCacheAdvancedRouteArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .service(GatewayPluginGraphqlProxyCacheAdvancedServiceArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .tags(\"...\")\n            .updatedAt(5.0)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myGatewayplugingraphqlproxycacheadvanced:\n    type: konnect:GatewayPluginGraphqlProxyCacheAdvanced\n    name: my_gatewayplugingraphqlproxycacheadvanced\n    properties:\n      config:\n        bypassOnErr: true\n        cacheTtl: 7\n        memory:\n          dictionaryName: '...my_dictionary_name...'\n        redis:\n          cloudAuthentication:\n            authProvider: azure\n            awsAccessKeyId: '...my_aws_access_key_id...'\n            awsAssumeRoleArn: '...my_aws_assume_role_arn...'\n            awsCacheName: '...my_aws_cache_name...'\n            awsIsServerless: true\n            awsRegion: '...my_aws_region...'\n            awsRoleSessionName: '...my_aws_role_session_name...'\n            awsSecretAccessKey: '...my_aws_secret_access_key...'\n            azureClientId: '...my_azure_client_id...'\n            azureClientSecret: '...my_azure_client_secret...'\n            azureTenantId: '...my_azure_tenant_id...'\n            gcpServiceAccountJson: '...my_gcp_service_account_json...'\n          clusterMaxRedirections: 8\n          clusterNodes:\n            - ip: '...my_ip...'\n              port: 438\n          connectTimeout: 9.7429567e+08\n          connectionIsProxied: true\n          database: 0\n          host: '...my_host...'\n          keepaliveBacklog: 3.29763938e+08\n          keepalivePoolSize: 3.53109135e+08\n          password: '...my_password...'\n          port: 47126\n          readTimeout: 1.749476727e+09\n          sendTimeout: 2.078135811e+09\n          sentinelMaster: '...my_sentinel_master...'\n          sentinelNodes:\n            - host: '...my_host...'\n              port: 41845\n          sentinelPassword: '...my_sentinel_password...'\n          sentinelRole: slave\n          sentinelUsername: '...my_sentinel_username...'\n          serverName: '...my_server_name...'\n          ssl: true\n          sslVerify: false\n          username: '...my_username...'\n        strategy: memory\n        varyHeaders:\n          - '...'\n      consumer:\n        id: '...my_id...'\n      controlPlaneId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      createdAt: 6\n      enabled: false\n      gatewayPluginGraphqlProxyCacheAdvancedId: '...my_id...'\n      instanceName: '...my_instance_name...'\n      ordering:\n        after:\n          accesses:\n            - '...'\n        before:\n          accesses:\n            - '...'\n      partials:\n        - id: '...my_id...'\n          name: '...my_name...'\n          path: '...my_path...'\n      protocols:\n        - grpc\n      route:\n        id: '...my_id...'\n      service:\n        id: '...my_id...'\n      tags:\n        - '...'\n      updatedAt: 5\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_gateway_plugin_graphql_proxy_cache_advanced.my_konnect_gateway_plugin_graphql_proxy_cache_advanced\n\n  id = jsonencode({\n\n    control_plane_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/gatewayPluginGraphqlProxyCacheAdvanced:GatewayPluginGraphqlProxyCacheAdvanced my_konnect_gateway_plugin_graphql_proxy_cache_advanced '{\"control_plane_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"}'\n```\n\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginGraphqlProxyCacheAdvancedConfig:GatewayPluginGraphqlProxyCacheAdvancedConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginGraphqlProxyCacheAdvancedConsumer:GatewayPluginGraphqlProxyCacheAdvancedConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginGraphqlProxyCacheAdvancedId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginGraphqlProxyCacheAdvancedOrdering:GatewayPluginGraphqlProxyCacheAdvancedOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginGraphqlProxyCacheAdvancedPartial:GatewayPluginGraphqlProxyCacheAdvancedPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginGraphqlProxyCacheAdvancedRoute:GatewayPluginGraphqlProxyCacheAdvancedRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginGraphqlProxyCacheAdvancedService:GatewayPluginGraphqlProxyCacheAdvancedService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object","required":["config","consumer","controlPlaneId","createdAt","enabled","gatewayPluginGraphqlProxyCacheAdvancedId","ordering","protocols","route","service","updatedAt"],"inputProperties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginGraphqlProxyCacheAdvancedConfig:GatewayPluginGraphqlProxyCacheAdvancedConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginGraphqlProxyCacheAdvancedConsumer:GatewayPluginGraphqlProxyCacheAdvancedConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginGraphqlProxyCacheAdvancedId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginGraphqlProxyCacheAdvancedOrdering:GatewayPluginGraphqlProxyCacheAdvancedOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginGraphqlProxyCacheAdvancedPartial:GatewayPluginGraphqlProxyCacheAdvancedPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginGraphqlProxyCacheAdvancedRoute:GatewayPluginGraphqlProxyCacheAdvancedRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginGraphqlProxyCacheAdvancedService:GatewayPluginGraphqlProxyCacheAdvancedService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"requiredInputs":["controlPlaneId"],"stateInputs":{"description":"Input properties used for looking up and filtering GatewayPluginGraphqlProxyCacheAdvanced resources.\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginGraphqlProxyCacheAdvancedConfig:GatewayPluginGraphqlProxyCacheAdvancedConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginGraphqlProxyCacheAdvancedConsumer:GatewayPluginGraphqlProxyCacheAdvancedConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginGraphqlProxyCacheAdvancedId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginGraphqlProxyCacheAdvancedOrdering:GatewayPluginGraphqlProxyCacheAdvancedOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginGraphqlProxyCacheAdvancedPartial:GatewayPluginGraphqlProxyCacheAdvancedPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginGraphqlProxyCacheAdvancedRoute:GatewayPluginGraphqlProxyCacheAdvancedRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginGraphqlProxyCacheAdvancedService:GatewayPluginGraphqlProxyCacheAdvancedService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object"}},"konnect:index/gatewayPluginGraphqlRateLimitingAdvanced:GatewayPluginGraphqlRateLimitingAdvanced":{"description":"GatewayPluginGraphqlRateLimitingAdvanced Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myGatewayplugingraphqlratelimitingadvanced = new konnect.GatewayPluginGraphqlRateLimitingAdvanced(\"my_gatewayplugingraphqlratelimitingadvanced\", {\n    config: {\n        costStrategy: \"default\",\n        dictionaryName: \"...my_dictionary_name...\",\n        hideClientHeaders: true,\n        identifier: \"credential\",\n        limits: [1.18],\n        maxCost: 5.02,\n        namespace: \"...my_namespace...\",\n        passAllDownstreamHeaders: true,\n        redis: {\n            cloudAuthentication: {\n                authProvider: \"aws\",\n                awsAccessKeyId: \"...my_aws_access_key_id...\",\n                awsAssumeRoleArn: \"...my_aws_assume_role_arn...\",\n                awsCacheName: \"...my_aws_cache_name...\",\n                awsIsServerless: true,\n                awsRegion: \"...my_aws_region...\",\n                awsRoleSessionName: \"...my_aws_role_session_name...\",\n                awsSecretAccessKey: \"...my_aws_secret_access_key...\",\n                azureClientId: \"...my_azure_client_id...\",\n                azureClientSecret: \"...my_azure_client_secret...\",\n                azureTenantId: \"...my_azure_tenant_id...\",\n                gcpServiceAccountJson: \"...my_gcp_service_account_json...\",\n            },\n            clusterMaxRedirections: 0,\n            clusterNodes: [{\n                ip: \"...my_ip...\",\n                port: 11194,\n            }],\n            connectTimeout: 374060135,\n            connectionIsProxied: false,\n            database: 0,\n            host: \"...my_host...\",\n            keepaliveBacklog: 171042224,\n            keepalivePoolSize: 2132834450,\n            password: \"...my_password...\",\n            port: 18586,\n            readTimeout: 329378340,\n            sendTimeout: 778888138,\n            sentinelMaster: \"...my_sentinel_master...\",\n            sentinelNodes: [{\n                host: \"...my_host...\",\n                port: 63567,\n            }],\n            sentinelPassword: \"...my_sentinel_password...\",\n            sentinelRole: \"any\",\n            sentinelUsername: \"...my_sentinel_username...\",\n            serverName: \"...my_server_name...\",\n            ssl: true,\n            sslVerify: false,\n            username: \"...my_username...\",\n        },\n        scoreFactor: 5.13,\n        strategy: \"redis\",\n        syncRate: 5.2,\n        windowSizes: [1.07],\n        windowType: \"fixed\",\n    },\n    consumer: {\n        id: \"...my_id...\",\n    },\n    controlPlaneId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    createdAt: 5,\n    enabled: true,\n    gatewayPluginGraphqlRateLimitingAdvancedId: \"...my_id...\",\n    instanceName: \"...my_instance_name...\",\n    ordering: {\n        after: {\n            accesses: [\"...\"],\n        },\n        before: {\n            accesses: [\"...\"],\n        },\n    },\n    partials: [{\n        id: \"...my_id...\",\n        name: \"...my_name...\",\n        path: \"...my_path...\",\n    }],\n    protocols: [\"http\"],\n    route: {\n        id: \"...my_id...\",\n    },\n    service: {\n        id: \"...my_id...\",\n    },\n    tags: [\"...\"],\n    updatedAt: 8,\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_gatewayplugingraphqlratelimitingadvanced = konnect.GatewayPluginGraphqlRateLimitingAdvanced(\"my_gatewayplugingraphqlratelimitingadvanced\",\n    config={\n        \"cost_strategy\": \"default\",\n        \"dictionary_name\": \"...my_dictionary_name...\",\n        \"hide_client_headers\": True,\n        \"identifier\": \"credential\",\n        \"limits\": [1.18],\n        \"max_cost\": 5.02,\n        \"namespace\": \"...my_namespace...\",\n        \"pass_all_downstream_headers\": True,\n        \"redis\": {\n            \"cloud_authentication\": {\n                \"auth_provider\": \"aws\",\n                \"aws_access_key_id\": \"...my_aws_access_key_id...\",\n                \"aws_assume_role_arn\": \"...my_aws_assume_role_arn...\",\n                \"aws_cache_name\": \"...my_aws_cache_name...\",\n                \"aws_is_serverless\": True,\n                \"aws_region\": \"...my_aws_region...\",\n                \"aws_role_session_name\": \"...my_aws_role_session_name...\",\n                \"aws_secret_access_key\": \"...my_aws_secret_access_key...\",\n                \"azure_client_id\": \"...my_azure_client_id...\",\n                \"azure_client_secret\": \"...my_azure_client_secret...\",\n                \"azure_tenant_id\": \"...my_azure_tenant_id...\",\n                \"gcp_service_account_json\": \"...my_gcp_service_account_json...\",\n            },\n            \"cluster_max_redirections\": 0,\n            \"cluster_nodes\": [{\n                \"ip\": \"...my_ip...\",\n                \"port\": 11194,\n            }],\n            \"connect_timeout\": 374060135,\n            \"connection_is_proxied\": False,\n            \"database\": 0,\n            \"host\": \"...my_host...\",\n            \"keepalive_backlog\": 171042224,\n            \"keepalive_pool_size\": 2132834450,\n            \"password\": \"...my_password...\",\n            \"port\": 18586,\n            \"read_timeout\": 329378340,\n            \"send_timeout\": 778888138,\n            \"sentinel_master\": \"...my_sentinel_master...\",\n            \"sentinel_nodes\": [{\n                \"host\": \"...my_host...\",\n                \"port\": 63567,\n            }],\n            \"sentinel_password\": \"...my_sentinel_password...\",\n            \"sentinel_role\": \"any\",\n            \"sentinel_username\": \"...my_sentinel_username...\",\n            \"server_name\": \"...my_server_name...\",\n            \"ssl\": True,\n            \"ssl_verify\": False,\n            \"username\": \"...my_username...\",\n        },\n        \"score_factor\": 5.13,\n        \"strategy\": \"redis\",\n        \"sync_rate\": 5.2,\n        \"window_sizes\": [1.07],\n        \"window_type\": \"fixed\",\n    },\n    consumer={\n        \"id\": \"...my_id...\",\n    },\n    control_plane_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    created_at=5,\n    enabled=True,\n    gateway_plugin_graphql_rate_limiting_advanced_id=\"...my_id...\",\n    instance_name=\"...my_instance_name...\",\n    ordering={\n        \"after\": {\n            \"accesses\": [\"...\"],\n        },\n        \"before\": {\n            \"accesses\": [\"...\"],\n        },\n    },\n    partials=[{\n        \"id\": \"...my_id...\",\n        \"name\": \"...my_name...\",\n        \"path\": \"...my_path...\",\n    }],\n    protocols=[\"http\"],\n    route={\n        \"id\": \"...my_id...\",\n    },\n    service={\n        \"id\": \"...my_id...\",\n    },\n    tags=[\"...\"],\n    updated_at=8)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myGatewayplugingraphqlratelimitingadvanced = new Konnect.GatewayPluginGraphqlRateLimitingAdvanced(\"my_gatewayplugingraphqlratelimitingadvanced\", new()\n    {\n        Config = new Konnect.Inputs.GatewayPluginGraphqlRateLimitingAdvancedConfigArgs\n        {\n            CostStrategy = \"default\",\n            DictionaryName = \"...my_dictionary_name...\",\n            HideClientHeaders = true,\n            Identifier = \"credential\",\n            Limits = new[]\n            {\n                1.18,\n            },\n            MaxCost = 5.02,\n            Namespace = \"...my_namespace...\",\n            PassAllDownstreamHeaders = true,\n            Redis = new Konnect.Inputs.GatewayPluginGraphqlRateLimitingAdvancedConfigRedisArgs\n            {\n                CloudAuthentication = new Konnect.Inputs.GatewayPluginGraphqlRateLimitingAdvancedConfigRedisCloudAuthenticationArgs\n                {\n                    AuthProvider = \"aws\",\n                    AwsAccessKeyId = \"...my_aws_access_key_id...\",\n                    AwsAssumeRoleArn = \"...my_aws_assume_role_arn...\",\n                    AwsCacheName = \"...my_aws_cache_name...\",\n                    AwsIsServerless = true,\n                    AwsRegion = \"...my_aws_region...\",\n                    AwsRoleSessionName = \"...my_aws_role_session_name...\",\n                    AwsSecretAccessKey = \"...my_aws_secret_access_key...\",\n                    AzureClientId = \"...my_azure_client_id...\",\n                    AzureClientSecret = \"...my_azure_client_secret...\",\n                    AzureTenantId = \"...my_azure_tenant_id...\",\n                    GcpServiceAccountJson = \"...my_gcp_service_account_json...\",\n                },\n                ClusterMaxRedirections = 0,\n                ClusterNodes = new[]\n                {\n                    new Konnect.Inputs.GatewayPluginGraphqlRateLimitingAdvancedConfigRedisClusterNodeArgs\n                    {\n                        Ip = \"...my_ip...\",\n                        Port = 11194,\n                    },\n                },\n                ConnectTimeout = 374060135,\n                ConnectionIsProxied = false,\n                Database = 0,\n                Host = \"...my_host...\",\n                KeepaliveBacklog = 171042224,\n                KeepalivePoolSize = 2132834450,\n                Password = \"...my_password...\",\n                Port = 18586,\n                ReadTimeout = 329378340,\n                SendTimeout = 778888138,\n                SentinelMaster = \"...my_sentinel_master...\",\n                SentinelNodes = new[]\n                {\n                    new Konnect.Inputs.GatewayPluginGraphqlRateLimitingAdvancedConfigRedisSentinelNodeArgs\n                    {\n                        Host = \"...my_host...\",\n                        Port = 63567,\n                    },\n                },\n                SentinelPassword = \"...my_sentinel_password...\",\n                SentinelRole = \"any\",\n                SentinelUsername = \"...my_sentinel_username...\",\n                ServerName = \"...my_server_name...\",\n                Ssl = true,\n                SslVerify = false,\n                Username = \"...my_username...\",\n            },\n            ScoreFactor = 5.13,\n            Strategy = \"redis\",\n            SyncRate = 5.2,\n            WindowSizes = new[]\n            {\n                1.07,\n            },\n            WindowType = \"fixed\",\n        },\n        Consumer = new Konnect.Inputs.GatewayPluginGraphqlRateLimitingAdvancedConsumerArgs\n        {\n            Id = \"...my_id...\",\n        },\n        ControlPlaneId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        CreatedAt = 5,\n        Enabled = true,\n        GatewayPluginGraphqlRateLimitingAdvancedId = \"...my_id...\",\n        InstanceName = \"...my_instance_name...\",\n        Ordering = new Konnect.Inputs.GatewayPluginGraphqlRateLimitingAdvancedOrderingArgs\n        {\n            After = new Konnect.Inputs.GatewayPluginGraphqlRateLimitingAdvancedOrderingAfterArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n            Before = new Konnect.Inputs.GatewayPluginGraphqlRateLimitingAdvancedOrderingBeforeArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n        },\n        Partials = new[]\n        {\n            new Konnect.Inputs.GatewayPluginGraphqlRateLimitingAdvancedPartialArgs\n            {\n                Id = \"...my_id...\",\n                Name = \"...my_name...\",\n                Path = \"...my_path...\",\n            },\n        },\n        Protocols = new[]\n        {\n            \"http\",\n        },\n        Route = new Konnect.Inputs.GatewayPluginGraphqlRateLimitingAdvancedRouteArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Service = new Konnect.Inputs.GatewayPluginGraphqlRateLimitingAdvancedServiceArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Tags = new[]\n        {\n            \"...\",\n        },\n        UpdatedAt = 8,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewGatewayPluginGraphqlRateLimitingAdvanced(ctx, \"my_gatewayplugingraphqlratelimitingadvanced\", \u0026konnect.GatewayPluginGraphqlRateLimitingAdvancedArgs{\n\t\t\tConfig: \u0026konnect.GatewayPluginGraphqlRateLimitingAdvancedConfigArgs{\n\t\t\t\tCostStrategy:      pulumi.String(\"default\"),\n\t\t\t\tDictionaryName:    pulumi.String(\"...my_dictionary_name...\"),\n\t\t\t\tHideClientHeaders: pulumi.Bool(true),\n\t\t\t\tIdentifier:        pulumi.String(\"credential\"),\n\t\t\t\tLimits: pulumi.Float64Array{\n\t\t\t\t\tpulumi.Float64(1.18),\n\t\t\t\t},\n\t\t\t\tMaxCost:                  pulumi.Float64(5.02),\n\t\t\t\tNamespace:                pulumi.String(\"...my_namespace...\"),\n\t\t\t\tPassAllDownstreamHeaders: pulumi.Bool(true),\n\t\t\t\tRedis: \u0026konnect.GatewayPluginGraphqlRateLimitingAdvancedConfigRedisArgs{\n\t\t\t\t\tCloudAuthentication: \u0026konnect.GatewayPluginGraphqlRateLimitingAdvancedConfigRedisCloudAuthenticationArgs{\n\t\t\t\t\t\tAuthProvider:          pulumi.String(\"aws\"),\n\t\t\t\t\t\tAwsAccessKeyId:        pulumi.String(\"...my_aws_access_key_id...\"),\n\t\t\t\t\t\tAwsAssumeRoleArn:      pulumi.String(\"...my_aws_assume_role_arn...\"),\n\t\t\t\t\t\tAwsCacheName:          pulumi.String(\"...my_aws_cache_name...\"),\n\t\t\t\t\t\tAwsIsServerless:       pulumi.Bool(true),\n\t\t\t\t\t\tAwsRegion:             pulumi.String(\"...my_aws_region...\"),\n\t\t\t\t\t\tAwsRoleSessionName:    pulumi.String(\"...my_aws_role_session_name...\"),\n\t\t\t\t\t\tAwsSecretAccessKey:    pulumi.String(\"...my_aws_secret_access_key...\"),\n\t\t\t\t\t\tAzureClientId:         pulumi.String(\"...my_azure_client_id...\"),\n\t\t\t\t\t\tAzureClientSecret:     pulumi.String(\"...my_azure_client_secret...\"),\n\t\t\t\t\t\tAzureTenantId:         pulumi.String(\"...my_azure_tenant_id...\"),\n\t\t\t\t\t\tGcpServiceAccountJson: pulumi.String(\"...my_gcp_service_account_json...\"),\n\t\t\t\t\t},\n\t\t\t\t\tClusterMaxRedirections: pulumi.Float64(0),\n\t\t\t\t\tClusterNodes: konnect.GatewayPluginGraphqlRateLimitingAdvancedConfigRedisClusterNodeArray{\n\t\t\t\t\t\t\u0026konnect.GatewayPluginGraphqlRateLimitingAdvancedConfigRedisClusterNodeArgs{\n\t\t\t\t\t\t\tIp:   pulumi.String(\"...my_ip...\"),\n\t\t\t\t\t\t\tPort: pulumi.Float64(11194),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tConnectTimeout:      pulumi.Float64(374060135),\n\t\t\t\t\tConnectionIsProxied: pulumi.Bool(false),\n\t\t\t\t\tDatabase:            pulumi.Float64(0),\n\t\t\t\t\tHost:                pulumi.String(\"...my_host...\"),\n\t\t\t\t\tKeepaliveBacklog:    pulumi.Float64(171042224),\n\t\t\t\t\tKeepalivePoolSize:   pulumi.Float64(2132834450),\n\t\t\t\t\tPassword:            pulumi.String(\"...my_password...\"),\n\t\t\t\t\tPort:                pulumi.Float64(18586),\n\t\t\t\t\tReadTimeout:         pulumi.Float64(329378340),\n\t\t\t\t\tSendTimeout:         pulumi.Float64(778888138),\n\t\t\t\t\tSentinelMaster:      pulumi.String(\"...my_sentinel_master...\"),\n\t\t\t\t\tSentinelNodes: konnect.GatewayPluginGraphqlRateLimitingAdvancedConfigRedisSentinelNodeArray{\n\t\t\t\t\t\t\u0026konnect.GatewayPluginGraphqlRateLimitingAdvancedConfigRedisSentinelNodeArgs{\n\t\t\t\t\t\t\tHost: pulumi.String(\"...my_host...\"),\n\t\t\t\t\t\t\tPort: pulumi.Float64(63567),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tSentinelPassword: pulumi.String(\"...my_sentinel_password...\"),\n\t\t\t\t\tSentinelRole:     pulumi.String(\"any\"),\n\t\t\t\t\tSentinelUsername: pulumi.String(\"...my_sentinel_username...\"),\n\t\t\t\t\tServerName:       pulumi.String(\"...my_server_name...\"),\n\t\t\t\t\tSsl:              pulumi.Bool(true),\n\t\t\t\t\tSslVerify:        pulumi.Bool(false),\n\t\t\t\t\tUsername:         pulumi.String(\"...my_username...\"),\n\t\t\t\t},\n\t\t\t\tScoreFactor: pulumi.Float64(5.13),\n\t\t\t\tStrategy:    pulumi.String(\"redis\"),\n\t\t\t\tSyncRate:    pulumi.Float64(5.2),\n\t\t\t\tWindowSizes: pulumi.Float64Array{\n\t\t\t\t\tpulumi.Float64(1.07),\n\t\t\t\t},\n\t\t\t\tWindowType: pulumi.String(\"fixed\"),\n\t\t\t},\n\t\t\tConsumer: \u0026konnect.GatewayPluginGraphqlRateLimitingAdvancedConsumerArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tControlPlaneId: pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tCreatedAt:      pulumi.Float64(5),\n\t\t\tEnabled:        pulumi.Bool(true),\n\t\t\tGatewayPluginGraphqlRateLimitingAdvancedId: pulumi.String(\"...my_id...\"),\n\t\t\tInstanceName: pulumi.String(\"...my_instance_name...\"),\n\t\t\tOrdering: \u0026konnect.GatewayPluginGraphqlRateLimitingAdvancedOrderingArgs{\n\t\t\t\tAfter: \u0026konnect.GatewayPluginGraphqlRateLimitingAdvancedOrderingAfterArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tBefore: \u0026konnect.GatewayPluginGraphqlRateLimitingAdvancedOrderingBeforeArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tPartials: konnect.GatewayPluginGraphqlRateLimitingAdvancedPartialArray{\n\t\t\t\t\u0026konnect.GatewayPluginGraphqlRateLimitingAdvancedPartialArgs{\n\t\t\t\t\tId:   pulumi.String(\"...my_id...\"),\n\t\t\t\t\tName: pulumi.String(\"...my_name...\"),\n\t\t\t\t\tPath: pulumi.String(\"...my_path...\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tProtocols: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"http\"),\n\t\t\t},\n\t\t\tRoute: \u0026konnect.GatewayPluginGraphqlRateLimitingAdvancedRouteArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tService: \u0026konnect.GatewayPluginGraphqlRateLimitingAdvancedServiceArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"...\"),\n\t\t\t},\n\t\t\tUpdatedAt: pulumi.Float64(8),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.GatewayPluginGraphqlRateLimitingAdvanced;\nimport com.pulumi.konnect.GatewayPluginGraphqlRateLimitingAdvancedArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginGraphqlRateLimitingAdvancedConfigArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginGraphqlRateLimitingAdvancedConfigRedisArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginGraphqlRateLimitingAdvancedConfigRedisCloudAuthenticationArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginGraphqlRateLimitingAdvancedConsumerArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginGraphqlRateLimitingAdvancedOrderingArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginGraphqlRateLimitingAdvancedOrderingAfterArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginGraphqlRateLimitingAdvancedOrderingBeforeArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginGraphqlRateLimitingAdvancedPartialArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginGraphqlRateLimitingAdvancedRouteArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginGraphqlRateLimitingAdvancedServiceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myGatewayplugingraphqlratelimitingadvanced = new GatewayPluginGraphqlRateLimitingAdvanced(\"myGatewayplugingraphqlratelimitingadvanced\", GatewayPluginGraphqlRateLimitingAdvancedArgs.builder()\n            .config(GatewayPluginGraphqlRateLimitingAdvancedConfigArgs.builder()\n                .costStrategy(\"default\")\n                .dictionaryName(\"...my_dictionary_name...\")\n                .hideClientHeaders(true)\n                .identifier(\"credential\")\n                .limits(1.18)\n                .maxCost(5.02)\n                .namespace(\"...my_namespace...\")\n                .passAllDownstreamHeaders(true)\n                .redis(GatewayPluginGraphqlRateLimitingAdvancedConfigRedisArgs.builder()\n                    .cloudAuthentication(GatewayPluginGraphqlRateLimitingAdvancedConfigRedisCloudAuthenticationArgs.builder()\n                        .authProvider(\"aws\")\n                        .awsAccessKeyId(\"...my_aws_access_key_id...\")\n                        .awsAssumeRoleArn(\"...my_aws_assume_role_arn...\")\n                        .awsCacheName(\"...my_aws_cache_name...\")\n                        .awsIsServerless(true)\n                        .awsRegion(\"...my_aws_region...\")\n                        .awsRoleSessionName(\"...my_aws_role_session_name...\")\n                        .awsSecretAccessKey(\"...my_aws_secret_access_key...\")\n                        .azureClientId(\"...my_azure_client_id...\")\n                        .azureClientSecret(\"...my_azure_client_secret...\")\n                        .azureTenantId(\"...my_azure_tenant_id...\")\n                        .gcpServiceAccountJson(\"...my_gcp_service_account_json...\")\n                        .build())\n                    .clusterMaxRedirections(0.0)\n                    .clusterNodes(GatewayPluginGraphqlRateLimitingAdvancedConfigRedisClusterNodeArgs.builder()\n                        .ip(\"...my_ip...\")\n                        .port(11194.0)\n                        .build())\n                    .connectTimeout(374060135.0)\n                    .connectionIsProxied(false)\n                    .database(0.0)\n                    .host(\"...my_host...\")\n                    .keepaliveBacklog(171042224.0)\n                    .keepalivePoolSize(2132834450.0)\n                    .password(\"...my_password...\")\n                    .port(18586.0)\n                    .readTimeout(329378340.0)\n                    .sendTimeout(778888138.0)\n                    .sentinelMaster(\"...my_sentinel_master...\")\n                    .sentinelNodes(GatewayPluginGraphqlRateLimitingAdvancedConfigRedisSentinelNodeArgs.builder()\n                        .host(\"...my_host...\")\n                        .port(63567.0)\n                        .build())\n                    .sentinelPassword(\"...my_sentinel_password...\")\n                    .sentinelRole(\"any\")\n                    .sentinelUsername(\"...my_sentinel_username...\")\n                    .serverName(\"...my_server_name...\")\n                    .ssl(true)\n                    .sslVerify(false)\n                    .username(\"...my_username...\")\n                    .build())\n                .scoreFactor(5.13)\n                .strategy(\"redis\")\n                .syncRate(5.2)\n                .windowSizes(1.07)\n                .windowType(\"fixed\")\n                .build())\n            .consumer(GatewayPluginGraphqlRateLimitingAdvancedConsumerArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .controlPlaneId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .createdAt(5.0)\n            .enabled(true)\n            .gatewayPluginGraphqlRateLimitingAdvancedId(\"...my_id...\")\n            .instanceName(\"...my_instance_name...\")\n            .ordering(GatewayPluginGraphqlRateLimitingAdvancedOrderingArgs.builder()\n                .after(GatewayPluginGraphqlRateLimitingAdvancedOrderingAfterArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .before(GatewayPluginGraphqlRateLimitingAdvancedOrderingBeforeArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .build())\n            .partials(GatewayPluginGraphqlRateLimitingAdvancedPartialArgs.builder()\n                .id(\"...my_id...\")\n                .name(\"...my_name...\")\n                .path(\"...my_path...\")\n                .build())\n            .protocols(\"http\")\n            .route(GatewayPluginGraphqlRateLimitingAdvancedRouteArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .service(GatewayPluginGraphqlRateLimitingAdvancedServiceArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .tags(\"...\")\n            .updatedAt(8.0)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myGatewayplugingraphqlratelimitingadvanced:\n    type: konnect:GatewayPluginGraphqlRateLimitingAdvanced\n    name: my_gatewayplugingraphqlratelimitingadvanced\n    properties:\n      config:\n        costStrategy: default\n        dictionaryName: '...my_dictionary_name...'\n        hideClientHeaders: true\n        identifier: credential\n        limits:\n          - 1.18\n        maxCost: 5.02\n        namespace: '...my_namespace...'\n        passAllDownstreamHeaders: true\n        redis:\n          cloudAuthentication:\n            authProvider: aws\n            awsAccessKeyId: '...my_aws_access_key_id...'\n            awsAssumeRoleArn: '...my_aws_assume_role_arn...'\n            awsCacheName: '...my_aws_cache_name...'\n            awsIsServerless: true\n            awsRegion: '...my_aws_region...'\n            awsRoleSessionName: '...my_aws_role_session_name...'\n            awsSecretAccessKey: '...my_aws_secret_access_key...'\n            azureClientId: '...my_azure_client_id...'\n            azureClientSecret: '...my_azure_client_secret...'\n            azureTenantId: '...my_azure_tenant_id...'\n            gcpServiceAccountJson: '...my_gcp_service_account_json...'\n          clusterMaxRedirections: 0\n          clusterNodes:\n            - ip: '...my_ip...'\n              port: 11194\n          connectTimeout: 3.74060135e+08\n          connectionIsProxied: false\n          database: 0\n          host: '...my_host...'\n          keepaliveBacklog: 1.71042224e+08\n          keepalivePoolSize: 2.13283445e+09\n          password: '...my_password...'\n          port: 18586\n          readTimeout: 3.2937834e+08\n          sendTimeout: 7.78888138e+08\n          sentinelMaster: '...my_sentinel_master...'\n          sentinelNodes:\n            - host: '...my_host...'\n              port: 63567\n          sentinelPassword: '...my_sentinel_password...'\n          sentinelRole: any\n          sentinelUsername: '...my_sentinel_username...'\n          serverName: '...my_server_name...'\n          ssl: true\n          sslVerify: false\n          username: '...my_username...'\n        scoreFactor: 5.13\n        strategy: redis\n        syncRate: 5.2\n        windowSizes:\n          - 1.07\n        windowType: fixed\n      consumer:\n        id: '...my_id...'\n      controlPlaneId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      createdAt: 5\n      enabled: true\n      gatewayPluginGraphqlRateLimitingAdvancedId: '...my_id...'\n      instanceName: '...my_instance_name...'\n      ordering:\n        after:\n          accesses:\n            - '...'\n        before:\n          accesses:\n            - '...'\n      partials:\n        - id: '...my_id...'\n          name: '...my_name...'\n          path: '...my_path...'\n      protocols:\n        - http\n      route:\n        id: '...my_id...'\n      service:\n        id: '...my_id...'\n      tags:\n        - '...'\n      updatedAt: 8\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_gateway_plugin_graphql_rate_limiting_advanced.my_konnect_gateway_plugin_graphql_rate_limiting_advanced\n\n  id = jsonencode({\n\n    control_plane_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/gatewayPluginGraphqlRateLimitingAdvanced:GatewayPluginGraphqlRateLimitingAdvanced my_konnect_gateway_plugin_graphql_rate_limiting_advanced '{\"control_plane_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"}'\n```\n\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginGraphqlRateLimitingAdvancedConfig:GatewayPluginGraphqlRateLimitingAdvancedConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginGraphqlRateLimitingAdvancedConsumer:GatewayPluginGraphqlRateLimitingAdvancedConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginGraphqlRateLimitingAdvancedId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginGraphqlRateLimitingAdvancedOrdering:GatewayPluginGraphqlRateLimitingAdvancedOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginGraphqlRateLimitingAdvancedPartial:GatewayPluginGraphqlRateLimitingAdvancedPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginGraphqlRateLimitingAdvancedRoute:GatewayPluginGraphqlRateLimitingAdvancedRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginGraphqlRateLimitingAdvancedService:GatewayPluginGraphqlRateLimitingAdvancedService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object","required":["config","consumer","controlPlaneId","createdAt","enabled","gatewayPluginGraphqlRateLimitingAdvancedId","ordering","protocols","route","service","updatedAt"],"inputProperties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginGraphqlRateLimitingAdvancedConfig:GatewayPluginGraphqlRateLimitingAdvancedConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginGraphqlRateLimitingAdvancedConsumer:GatewayPluginGraphqlRateLimitingAdvancedConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginGraphqlRateLimitingAdvancedId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginGraphqlRateLimitingAdvancedOrdering:GatewayPluginGraphqlRateLimitingAdvancedOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginGraphqlRateLimitingAdvancedPartial:GatewayPluginGraphqlRateLimitingAdvancedPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginGraphqlRateLimitingAdvancedRoute:GatewayPluginGraphqlRateLimitingAdvancedRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginGraphqlRateLimitingAdvancedService:GatewayPluginGraphqlRateLimitingAdvancedService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"requiredInputs":["config","controlPlaneId"],"stateInputs":{"description":"Input properties used for looking up and filtering GatewayPluginGraphqlRateLimitingAdvanced resources.\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginGraphqlRateLimitingAdvancedConfig:GatewayPluginGraphqlRateLimitingAdvancedConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginGraphqlRateLimitingAdvancedConsumer:GatewayPluginGraphqlRateLimitingAdvancedConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginGraphqlRateLimitingAdvancedId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginGraphqlRateLimitingAdvancedOrdering:GatewayPluginGraphqlRateLimitingAdvancedOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginGraphqlRateLimitingAdvancedPartial:GatewayPluginGraphqlRateLimitingAdvancedPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginGraphqlRateLimitingAdvancedRoute:GatewayPluginGraphqlRateLimitingAdvancedRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginGraphqlRateLimitingAdvancedService:GatewayPluginGraphqlRateLimitingAdvancedService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object"}},"konnect:index/gatewayPluginGrpcGateway:GatewayPluginGrpcGateway":{"description":"GatewayPluginGrpcGateway Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myGatewayplugingrpcgateway = new konnect.GatewayPluginGrpcGateway(\"my_gatewayplugingrpcgateway\", {\n    config: {\n        proto: \"...my_proto...\",\n    },\n    consumer: {\n        id: \"...my_id...\",\n    },\n    controlPlaneId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    createdAt: 6,\n    enabled: true,\n    gatewayPluginGrpcGatewayId: \"...my_id...\",\n    instanceName: \"...my_instance_name...\",\n    ordering: {\n        after: {\n            accesses: [\"...\"],\n        },\n        before: {\n            accesses: [\"...\"],\n        },\n    },\n    partials: [{\n        id: \"...my_id...\",\n        name: \"...my_name...\",\n        path: \"...my_path...\",\n    }],\n    protocols: [\"grpcs\"],\n    route: {\n        id: \"...my_id...\",\n    },\n    service: {\n        id: \"...my_id...\",\n    },\n    tags: [\"...\"],\n    updatedAt: 6,\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_gatewayplugingrpcgateway = konnect.GatewayPluginGrpcGateway(\"my_gatewayplugingrpcgateway\",\n    config={\n        \"proto\": \"...my_proto...\",\n    },\n    consumer={\n        \"id\": \"...my_id...\",\n    },\n    control_plane_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    created_at=6,\n    enabled=True,\n    gateway_plugin_grpc_gateway_id=\"...my_id...\",\n    instance_name=\"...my_instance_name...\",\n    ordering={\n        \"after\": {\n            \"accesses\": [\"...\"],\n        },\n        \"before\": {\n            \"accesses\": [\"...\"],\n        },\n    },\n    partials=[{\n        \"id\": \"...my_id...\",\n        \"name\": \"...my_name...\",\n        \"path\": \"...my_path...\",\n    }],\n    protocols=[\"grpcs\"],\n    route={\n        \"id\": \"...my_id...\",\n    },\n    service={\n        \"id\": \"...my_id...\",\n    },\n    tags=[\"...\"],\n    updated_at=6)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myGatewayplugingrpcgateway = new Konnect.GatewayPluginGrpcGateway(\"my_gatewayplugingrpcgateway\", new()\n    {\n        Config = new Konnect.Inputs.GatewayPluginGrpcGatewayConfigArgs\n        {\n            Proto = \"...my_proto...\",\n        },\n        Consumer = new Konnect.Inputs.GatewayPluginGrpcGatewayConsumerArgs\n        {\n            Id = \"...my_id...\",\n        },\n        ControlPlaneId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        CreatedAt = 6,\n        Enabled = true,\n        GatewayPluginGrpcGatewayId = \"...my_id...\",\n        InstanceName = \"...my_instance_name...\",\n        Ordering = new Konnect.Inputs.GatewayPluginGrpcGatewayOrderingArgs\n        {\n            After = new Konnect.Inputs.GatewayPluginGrpcGatewayOrderingAfterArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n            Before = new Konnect.Inputs.GatewayPluginGrpcGatewayOrderingBeforeArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n        },\n        Partials = new[]\n        {\n            new Konnect.Inputs.GatewayPluginGrpcGatewayPartialArgs\n            {\n                Id = \"...my_id...\",\n                Name = \"...my_name...\",\n                Path = \"...my_path...\",\n            },\n        },\n        Protocols = new[]\n        {\n            \"grpcs\",\n        },\n        Route = new Konnect.Inputs.GatewayPluginGrpcGatewayRouteArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Service = new Konnect.Inputs.GatewayPluginGrpcGatewayServiceArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Tags = new[]\n        {\n            \"...\",\n        },\n        UpdatedAt = 6,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewGatewayPluginGrpcGateway(ctx, \"my_gatewayplugingrpcgateway\", \u0026konnect.GatewayPluginGrpcGatewayArgs{\n\t\t\tConfig: \u0026konnect.GatewayPluginGrpcGatewayConfigArgs{\n\t\t\t\tProto: pulumi.String(\"...my_proto...\"),\n\t\t\t},\n\t\t\tConsumer: \u0026konnect.GatewayPluginGrpcGatewayConsumerArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tControlPlaneId:             pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tCreatedAt:                  pulumi.Float64(6),\n\t\t\tEnabled:                    pulumi.Bool(true),\n\t\t\tGatewayPluginGrpcGatewayId: pulumi.String(\"...my_id...\"),\n\t\t\tInstanceName:               pulumi.String(\"...my_instance_name...\"),\n\t\t\tOrdering: \u0026konnect.GatewayPluginGrpcGatewayOrderingArgs{\n\t\t\t\tAfter: \u0026konnect.GatewayPluginGrpcGatewayOrderingAfterArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tBefore: \u0026konnect.GatewayPluginGrpcGatewayOrderingBeforeArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tPartials: konnect.GatewayPluginGrpcGatewayPartialArray{\n\t\t\t\t\u0026konnect.GatewayPluginGrpcGatewayPartialArgs{\n\t\t\t\t\tId:   pulumi.String(\"...my_id...\"),\n\t\t\t\t\tName: pulumi.String(\"...my_name...\"),\n\t\t\t\t\tPath: pulumi.String(\"...my_path...\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tProtocols: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"grpcs\"),\n\t\t\t},\n\t\t\tRoute: \u0026konnect.GatewayPluginGrpcGatewayRouteArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tService: \u0026konnect.GatewayPluginGrpcGatewayServiceArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"...\"),\n\t\t\t},\n\t\t\tUpdatedAt: pulumi.Float64(6),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.GatewayPluginGrpcGateway;\nimport com.pulumi.konnect.GatewayPluginGrpcGatewayArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginGrpcGatewayConfigArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginGrpcGatewayConsumerArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginGrpcGatewayOrderingArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginGrpcGatewayOrderingAfterArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginGrpcGatewayOrderingBeforeArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginGrpcGatewayPartialArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginGrpcGatewayRouteArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginGrpcGatewayServiceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myGatewayplugingrpcgateway = new GatewayPluginGrpcGateway(\"myGatewayplugingrpcgateway\", GatewayPluginGrpcGatewayArgs.builder()\n            .config(GatewayPluginGrpcGatewayConfigArgs.builder()\n                .proto(\"...my_proto...\")\n                .build())\n            .consumer(GatewayPluginGrpcGatewayConsumerArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .controlPlaneId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .createdAt(6.0)\n            .enabled(true)\n            .gatewayPluginGrpcGatewayId(\"...my_id...\")\n            .instanceName(\"...my_instance_name...\")\n            .ordering(GatewayPluginGrpcGatewayOrderingArgs.builder()\n                .after(GatewayPluginGrpcGatewayOrderingAfterArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .before(GatewayPluginGrpcGatewayOrderingBeforeArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .build())\n            .partials(GatewayPluginGrpcGatewayPartialArgs.builder()\n                .id(\"...my_id...\")\n                .name(\"...my_name...\")\n                .path(\"...my_path...\")\n                .build())\n            .protocols(\"grpcs\")\n            .route(GatewayPluginGrpcGatewayRouteArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .service(GatewayPluginGrpcGatewayServiceArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .tags(\"...\")\n            .updatedAt(6.0)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myGatewayplugingrpcgateway:\n    type: konnect:GatewayPluginGrpcGateway\n    name: my_gatewayplugingrpcgateway\n    properties:\n      config:\n        proto: '...my_proto...'\n      consumer:\n        id: '...my_id...'\n      controlPlaneId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      createdAt: 6\n      enabled: true\n      gatewayPluginGrpcGatewayId: '...my_id...'\n      instanceName: '...my_instance_name...'\n      ordering:\n        after:\n          accesses:\n            - '...'\n        before:\n          accesses:\n            - '...'\n      partials:\n        - id: '...my_id...'\n          name: '...my_name...'\n          path: '...my_path...'\n      protocols:\n        - grpcs\n      route:\n        id: '...my_id...'\n      service:\n        id: '...my_id...'\n      tags:\n        - '...'\n      updatedAt: 6\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_gateway_plugin_grpc_gateway.my_konnect_gateway_plugin_grpc_gateway\n\n  id = jsonencode({\n\n    control_plane_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/gatewayPluginGrpcGateway:GatewayPluginGrpcGateway my_konnect_gateway_plugin_grpc_gateway '{\"control_plane_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"}'\n```\n\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginGrpcGatewayConfig:GatewayPluginGrpcGatewayConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginGrpcGatewayConsumer:GatewayPluginGrpcGatewayConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginGrpcGatewayId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginGrpcGatewayOrdering:GatewayPluginGrpcGatewayOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginGrpcGatewayPartial:GatewayPluginGrpcGatewayPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginGrpcGatewayRoute:GatewayPluginGrpcGatewayRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginGrpcGatewayService:GatewayPluginGrpcGatewayService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object","required":["config","consumer","controlPlaneId","createdAt","enabled","gatewayPluginGrpcGatewayId","ordering","protocols","route","service","updatedAt"],"inputProperties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginGrpcGatewayConfig:GatewayPluginGrpcGatewayConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginGrpcGatewayConsumer:GatewayPluginGrpcGatewayConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginGrpcGatewayId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginGrpcGatewayOrdering:GatewayPluginGrpcGatewayOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginGrpcGatewayPartial:GatewayPluginGrpcGatewayPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginGrpcGatewayRoute:GatewayPluginGrpcGatewayRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginGrpcGatewayService:GatewayPluginGrpcGatewayService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"requiredInputs":["controlPlaneId"],"stateInputs":{"description":"Input properties used for looking up and filtering GatewayPluginGrpcGateway resources.\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginGrpcGatewayConfig:GatewayPluginGrpcGatewayConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginGrpcGatewayConsumer:GatewayPluginGrpcGatewayConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginGrpcGatewayId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginGrpcGatewayOrdering:GatewayPluginGrpcGatewayOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginGrpcGatewayPartial:GatewayPluginGrpcGatewayPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginGrpcGatewayRoute:GatewayPluginGrpcGatewayRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginGrpcGatewayService:GatewayPluginGrpcGatewayService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object"}},"konnect:index/gatewayPluginGrpcWeb:GatewayPluginGrpcWeb":{"description":"GatewayPluginGrpcWeb Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myGatewayplugingrpcweb = new konnect.GatewayPluginGrpcWeb(\"my_gatewayplugingrpcweb\", {\n    config: {\n        allowOriginHeader: \"...my_allow_origin_header...\",\n        passStrippedPath: true,\n        proto: \"...my_proto...\",\n    },\n    consumer: {\n        id: \"...my_id...\",\n    },\n    controlPlaneId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    createdAt: 1,\n    enabled: false,\n    gatewayPluginGrpcWebId: \"...my_id...\",\n    instanceName: \"...my_instance_name...\",\n    ordering: {\n        after: {\n            accesses: [\"...\"],\n        },\n        before: {\n            accesses: [\"...\"],\n        },\n    },\n    partials: [{\n        id: \"...my_id...\",\n        name: \"...my_name...\",\n        path: \"...my_path...\",\n    }],\n    protocols: [\"udp\"],\n    route: {\n        id: \"...my_id...\",\n    },\n    service: {\n        id: \"...my_id...\",\n    },\n    tags: [\"...\"],\n    updatedAt: 3,\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_gatewayplugingrpcweb = konnect.GatewayPluginGrpcWeb(\"my_gatewayplugingrpcweb\",\n    config={\n        \"allow_origin_header\": \"...my_allow_origin_header...\",\n        \"pass_stripped_path\": True,\n        \"proto\": \"...my_proto...\",\n    },\n    consumer={\n        \"id\": \"...my_id...\",\n    },\n    control_plane_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    created_at=1,\n    enabled=False,\n    gateway_plugin_grpc_web_id=\"...my_id...\",\n    instance_name=\"...my_instance_name...\",\n    ordering={\n        \"after\": {\n            \"accesses\": [\"...\"],\n        },\n        \"before\": {\n            \"accesses\": [\"...\"],\n        },\n    },\n    partials=[{\n        \"id\": \"...my_id...\",\n        \"name\": \"...my_name...\",\n        \"path\": \"...my_path...\",\n    }],\n    protocols=[\"udp\"],\n    route={\n        \"id\": \"...my_id...\",\n    },\n    service={\n        \"id\": \"...my_id...\",\n    },\n    tags=[\"...\"],\n    updated_at=3)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myGatewayplugingrpcweb = new Konnect.GatewayPluginGrpcWeb(\"my_gatewayplugingrpcweb\", new()\n    {\n        Config = new Konnect.Inputs.GatewayPluginGrpcWebConfigArgs\n        {\n            AllowOriginHeader = \"...my_allow_origin_header...\",\n            PassStrippedPath = true,\n            Proto = \"...my_proto...\",\n        },\n        Consumer = new Konnect.Inputs.GatewayPluginGrpcWebConsumerArgs\n        {\n            Id = \"...my_id...\",\n        },\n        ControlPlaneId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        CreatedAt = 1,\n        Enabled = false,\n        GatewayPluginGrpcWebId = \"...my_id...\",\n        InstanceName = \"...my_instance_name...\",\n        Ordering = new Konnect.Inputs.GatewayPluginGrpcWebOrderingArgs\n        {\n            After = new Konnect.Inputs.GatewayPluginGrpcWebOrderingAfterArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n            Before = new Konnect.Inputs.GatewayPluginGrpcWebOrderingBeforeArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n        },\n        Partials = new[]\n        {\n            new Konnect.Inputs.GatewayPluginGrpcWebPartialArgs\n            {\n                Id = \"...my_id...\",\n                Name = \"...my_name...\",\n                Path = \"...my_path...\",\n            },\n        },\n        Protocols = new[]\n        {\n            \"udp\",\n        },\n        Route = new Konnect.Inputs.GatewayPluginGrpcWebRouteArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Service = new Konnect.Inputs.GatewayPluginGrpcWebServiceArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Tags = new[]\n        {\n            \"...\",\n        },\n        UpdatedAt = 3,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewGatewayPluginGrpcWeb(ctx, \"my_gatewayplugingrpcweb\", \u0026konnect.GatewayPluginGrpcWebArgs{\n\t\t\tConfig: \u0026konnect.GatewayPluginGrpcWebConfigArgs{\n\t\t\t\tAllowOriginHeader: pulumi.String(\"...my_allow_origin_header...\"),\n\t\t\t\tPassStrippedPath:  pulumi.Bool(true),\n\t\t\t\tProto:             pulumi.String(\"...my_proto...\"),\n\t\t\t},\n\t\t\tConsumer: \u0026konnect.GatewayPluginGrpcWebConsumerArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tControlPlaneId:         pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tCreatedAt:              pulumi.Float64(1),\n\t\t\tEnabled:                pulumi.Bool(false),\n\t\t\tGatewayPluginGrpcWebId: pulumi.String(\"...my_id...\"),\n\t\t\tInstanceName:           pulumi.String(\"...my_instance_name...\"),\n\t\t\tOrdering: \u0026konnect.GatewayPluginGrpcWebOrderingArgs{\n\t\t\t\tAfter: \u0026konnect.GatewayPluginGrpcWebOrderingAfterArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tBefore: \u0026konnect.GatewayPluginGrpcWebOrderingBeforeArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tPartials: konnect.GatewayPluginGrpcWebPartialArray{\n\t\t\t\t\u0026konnect.GatewayPluginGrpcWebPartialArgs{\n\t\t\t\t\tId:   pulumi.String(\"...my_id...\"),\n\t\t\t\t\tName: pulumi.String(\"...my_name...\"),\n\t\t\t\t\tPath: pulumi.String(\"...my_path...\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tProtocols: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"udp\"),\n\t\t\t},\n\t\t\tRoute: \u0026konnect.GatewayPluginGrpcWebRouteArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tService: \u0026konnect.GatewayPluginGrpcWebServiceArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"...\"),\n\t\t\t},\n\t\t\tUpdatedAt: pulumi.Float64(3),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.GatewayPluginGrpcWeb;\nimport com.pulumi.konnect.GatewayPluginGrpcWebArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginGrpcWebConfigArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginGrpcWebConsumerArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginGrpcWebOrderingArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginGrpcWebOrderingAfterArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginGrpcWebOrderingBeforeArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginGrpcWebPartialArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginGrpcWebRouteArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginGrpcWebServiceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myGatewayplugingrpcweb = new GatewayPluginGrpcWeb(\"myGatewayplugingrpcweb\", GatewayPluginGrpcWebArgs.builder()\n            .config(GatewayPluginGrpcWebConfigArgs.builder()\n                .allowOriginHeader(\"...my_allow_origin_header...\")\n                .passStrippedPath(true)\n                .proto(\"...my_proto...\")\n                .build())\n            .consumer(GatewayPluginGrpcWebConsumerArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .controlPlaneId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .createdAt(1.0)\n            .enabled(false)\n            .gatewayPluginGrpcWebId(\"...my_id...\")\n            .instanceName(\"...my_instance_name...\")\n            .ordering(GatewayPluginGrpcWebOrderingArgs.builder()\n                .after(GatewayPluginGrpcWebOrderingAfterArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .before(GatewayPluginGrpcWebOrderingBeforeArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .build())\n            .partials(GatewayPluginGrpcWebPartialArgs.builder()\n                .id(\"...my_id...\")\n                .name(\"...my_name...\")\n                .path(\"...my_path...\")\n                .build())\n            .protocols(\"udp\")\n            .route(GatewayPluginGrpcWebRouteArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .service(GatewayPluginGrpcWebServiceArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .tags(\"...\")\n            .updatedAt(3.0)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myGatewayplugingrpcweb:\n    type: konnect:GatewayPluginGrpcWeb\n    name: my_gatewayplugingrpcweb\n    properties:\n      config:\n        allowOriginHeader: '...my_allow_origin_header...'\n        passStrippedPath: true\n        proto: '...my_proto...'\n      consumer:\n        id: '...my_id...'\n      controlPlaneId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      createdAt: 1\n      enabled: false\n      gatewayPluginGrpcWebId: '...my_id...'\n      instanceName: '...my_instance_name...'\n      ordering:\n        after:\n          accesses:\n            - '...'\n        before:\n          accesses:\n            - '...'\n      partials:\n        - id: '...my_id...'\n          name: '...my_name...'\n          path: '...my_path...'\n      protocols:\n        - udp\n      route:\n        id: '...my_id...'\n      service:\n        id: '...my_id...'\n      tags:\n        - '...'\n      updatedAt: 3\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_gateway_plugin_grpc_web.my_konnect_gateway_plugin_grpc_web\n\n  id = jsonencode({\n\n    control_plane_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/gatewayPluginGrpcWeb:GatewayPluginGrpcWeb my_konnect_gateway_plugin_grpc_web '{\"control_plane_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"}'\n```\n\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginGrpcWebConfig:GatewayPluginGrpcWebConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginGrpcWebConsumer:GatewayPluginGrpcWebConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginGrpcWebId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginGrpcWebOrdering:GatewayPluginGrpcWebOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginGrpcWebPartial:GatewayPluginGrpcWebPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginGrpcWebRoute:GatewayPluginGrpcWebRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginGrpcWebService:GatewayPluginGrpcWebService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object","required":["config","consumer","controlPlaneId","createdAt","enabled","gatewayPluginGrpcWebId","ordering","protocols","route","service","updatedAt"],"inputProperties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginGrpcWebConfig:GatewayPluginGrpcWebConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginGrpcWebConsumer:GatewayPluginGrpcWebConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginGrpcWebId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginGrpcWebOrdering:GatewayPluginGrpcWebOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginGrpcWebPartial:GatewayPluginGrpcWebPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginGrpcWebRoute:GatewayPluginGrpcWebRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginGrpcWebService:GatewayPluginGrpcWebService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"requiredInputs":["controlPlaneId"],"stateInputs":{"description":"Input properties used for looking up and filtering GatewayPluginGrpcWeb resources.\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginGrpcWebConfig:GatewayPluginGrpcWebConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginGrpcWebConsumer:GatewayPluginGrpcWebConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginGrpcWebId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginGrpcWebOrdering:GatewayPluginGrpcWebOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginGrpcWebPartial:GatewayPluginGrpcWebPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginGrpcWebRoute:GatewayPluginGrpcWebRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginGrpcWebService:GatewayPluginGrpcWebService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object"}},"konnect:index/gatewayPluginHeaderCertAuth:GatewayPluginHeaderCertAuth":{"description":"GatewayPluginHeaderCertAuth Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myGatewaypluginheadercertauth = new konnect.GatewayPluginHeaderCertAuth(\"my_gatewaypluginheadercertauth\", {\n    config: {\n        allowPartialChain: false,\n        anonymous: \"...my_anonymous...\",\n        authenticatedGroupBy: \"DN\",\n        caCertificates: [\"...\"],\n        cacheTtl: 5.31,\n        certCacheTtl: 6.32,\n        certificateHeaderFormat: \"url_encoded\",\n        certificateHeaderName: \"...my_certificate_header_name...\",\n        consumerBies: [\"username\"],\n        defaultConsumer: \"...my_default_consumer...\",\n        httpProxyHost: \"...my_http_proxy_host...\",\n        httpProxyPort: 1064,\n        httpTimeout: 5.78,\n        httpsProxyHost: \"...my_https_proxy_host...\",\n        httpsProxyPort: 10840,\n        revocationCheckMode: \"SKIP\",\n        secureSource: true,\n        skipConsumerLookup: true,\n        sslVerify: true,\n    },\n    controlPlaneId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    createdAt: 5,\n    enabled: false,\n    gatewayPluginHeaderCertAuthId: \"...my_id...\",\n    instanceName: \"...my_instance_name...\",\n    ordering: {\n        after: {\n            accesses: [\"...\"],\n        },\n        before: {\n            accesses: [\"...\"],\n        },\n    },\n    partials: [{\n        id: \"...my_id...\",\n        name: \"...my_name...\",\n        path: \"...my_path...\",\n    }],\n    protocols: [\"https\"],\n    route: {\n        id: \"...my_id...\",\n    },\n    service: {\n        id: \"...my_id...\",\n    },\n    tags: [\"...\"],\n    updatedAt: 4,\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_gatewaypluginheadercertauth = konnect.GatewayPluginHeaderCertAuth(\"my_gatewaypluginheadercertauth\",\n    config={\n        \"allow_partial_chain\": False,\n        \"anonymous\": \"...my_anonymous...\",\n        \"authenticated_group_by\": \"DN\",\n        \"ca_certificates\": [\"...\"],\n        \"cache_ttl\": 5.31,\n        \"cert_cache_ttl\": 6.32,\n        \"certificate_header_format\": \"url_encoded\",\n        \"certificate_header_name\": \"...my_certificate_header_name...\",\n        \"consumer_bies\": [\"username\"],\n        \"default_consumer\": \"...my_default_consumer...\",\n        \"http_proxy_host\": \"...my_http_proxy_host...\",\n        \"http_proxy_port\": 1064,\n        \"http_timeout\": 5.78,\n        \"https_proxy_host\": \"...my_https_proxy_host...\",\n        \"https_proxy_port\": 10840,\n        \"revocation_check_mode\": \"SKIP\",\n        \"secure_source\": True,\n        \"skip_consumer_lookup\": True,\n        \"ssl_verify\": True,\n    },\n    control_plane_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    created_at=5,\n    enabled=False,\n    gateway_plugin_header_cert_auth_id=\"...my_id...\",\n    instance_name=\"...my_instance_name...\",\n    ordering={\n        \"after\": {\n            \"accesses\": [\"...\"],\n        },\n        \"before\": {\n            \"accesses\": [\"...\"],\n        },\n    },\n    partials=[{\n        \"id\": \"...my_id...\",\n        \"name\": \"...my_name...\",\n        \"path\": \"...my_path...\",\n    }],\n    protocols=[\"https\"],\n    route={\n        \"id\": \"...my_id...\",\n    },\n    service={\n        \"id\": \"...my_id...\",\n    },\n    tags=[\"...\"],\n    updated_at=4)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myGatewaypluginheadercertauth = new Konnect.GatewayPluginHeaderCertAuth(\"my_gatewaypluginheadercertauth\", new()\n    {\n        Config = new Konnect.Inputs.GatewayPluginHeaderCertAuthConfigArgs\n        {\n            AllowPartialChain = false,\n            Anonymous = \"...my_anonymous...\",\n            AuthenticatedGroupBy = \"DN\",\n            CaCertificates = new[]\n            {\n                \"...\",\n            },\n            CacheTtl = 5.31,\n            CertCacheTtl = 6.32,\n            CertificateHeaderFormat = \"url_encoded\",\n            CertificateHeaderName = \"...my_certificate_header_name...\",\n            ConsumerBies = new[]\n            {\n                \"username\",\n            },\n            DefaultConsumer = \"...my_default_consumer...\",\n            HttpProxyHost = \"...my_http_proxy_host...\",\n            HttpProxyPort = 1064,\n            HttpTimeout = 5.78,\n            HttpsProxyHost = \"...my_https_proxy_host...\",\n            HttpsProxyPort = 10840,\n            RevocationCheckMode = \"SKIP\",\n            SecureSource = true,\n            SkipConsumerLookup = true,\n            SslVerify = true,\n        },\n        ControlPlaneId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        CreatedAt = 5,\n        Enabled = false,\n        GatewayPluginHeaderCertAuthId = \"...my_id...\",\n        InstanceName = \"...my_instance_name...\",\n        Ordering = new Konnect.Inputs.GatewayPluginHeaderCertAuthOrderingArgs\n        {\n            After = new Konnect.Inputs.GatewayPluginHeaderCertAuthOrderingAfterArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n            Before = new Konnect.Inputs.GatewayPluginHeaderCertAuthOrderingBeforeArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n        },\n        Partials = new[]\n        {\n            new Konnect.Inputs.GatewayPluginHeaderCertAuthPartialArgs\n            {\n                Id = \"...my_id...\",\n                Name = \"...my_name...\",\n                Path = \"...my_path...\",\n            },\n        },\n        Protocols = new[]\n        {\n            \"https\",\n        },\n        Route = new Konnect.Inputs.GatewayPluginHeaderCertAuthRouteArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Service = new Konnect.Inputs.GatewayPluginHeaderCertAuthServiceArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Tags = new[]\n        {\n            \"...\",\n        },\n        UpdatedAt = 4,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewGatewayPluginHeaderCertAuth(ctx, \"my_gatewaypluginheadercertauth\", \u0026konnect.GatewayPluginHeaderCertAuthArgs{\n\t\t\tConfig: \u0026konnect.GatewayPluginHeaderCertAuthConfigArgs{\n\t\t\t\tAllowPartialChain:    pulumi.Bool(false),\n\t\t\t\tAnonymous:            pulumi.String(\"...my_anonymous...\"),\n\t\t\t\tAuthenticatedGroupBy: pulumi.String(\"DN\"),\n\t\t\t\tCaCertificates: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tCacheTtl:                pulumi.Float64(5.31),\n\t\t\t\tCertCacheTtl:            pulumi.Float64(6.32),\n\t\t\t\tCertificateHeaderFormat: pulumi.String(\"url_encoded\"),\n\t\t\t\tCertificateHeaderName:   pulumi.String(\"...my_certificate_header_name...\"),\n\t\t\t\tConsumerBies: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"username\"),\n\t\t\t\t},\n\t\t\t\tDefaultConsumer:     pulumi.String(\"...my_default_consumer...\"),\n\t\t\t\tHttpProxyHost:       pulumi.String(\"...my_http_proxy_host...\"),\n\t\t\t\tHttpProxyPort:       pulumi.Float64(1064),\n\t\t\t\tHttpTimeout:         pulumi.Float64(5.78),\n\t\t\t\tHttpsProxyHost:      pulumi.String(\"...my_https_proxy_host...\"),\n\t\t\t\tHttpsProxyPort:      pulumi.Float64(10840),\n\t\t\t\tRevocationCheckMode: pulumi.String(\"SKIP\"),\n\t\t\t\tSecureSource:        pulumi.Bool(true),\n\t\t\t\tSkipConsumerLookup:  pulumi.Bool(true),\n\t\t\t\tSslVerify:           pulumi.Bool(true),\n\t\t\t},\n\t\t\tControlPlaneId:                pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tCreatedAt:                     pulumi.Float64(5),\n\t\t\tEnabled:                       pulumi.Bool(false),\n\t\t\tGatewayPluginHeaderCertAuthId: pulumi.String(\"...my_id...\"),\n\t\t\tInstanceName:                  pulumi.String(\"...my_instance_name...\"),\n\t\t\tOrdering: \u0026konnect.GatewayPluginHeaderCertAuthOrderingArgs{\n\t\t\t\tAfter: \u0026konnect.GatewayPluginHeaderCertAuthOrderingAfterArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tBefore: \u0026konnect.GatewayPluginHeaderCertAuthOrderingBeforeArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tPartials: konnect.GatewayPluginHeaderCertAuthPartialArray{\n\t\t\t\t\u0026konnect.GatewayPluginHeaderCertAuthPartialArgs{\n\t\t\t\t\tId:   pulumi.String(\"...my_id...\"),\n\t\t\t\t\tName: pulumi.String(\"...my_name...\"),\n\t\t\t\t\tPath: pulumi.String(\"...my_path...\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tProtocols: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"https\"),\n\t\t\t},\n\t\t\tRoute: \u0026konnect.GatewayPluginHeaderCertAuthRouteArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tService: \u0026konnect.GatewayPluginHeaderCertAuthServiceArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"...\"),\n\t\t\t},\n\t\t\tUpdatedAt: pulumi.Float64(4),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.GatewayPluginHeaderCertAuth;\nimport com.pulumi.konnect.GatewayPluginHeaderCertAuthArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginHeaderCertAuthConfigArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginHeaderCertAuthOrderingArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginHeaderCertAuthOrderingAfterArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginHeaderCertAuthOrderingBeforeArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginHeaderCertAuthPartialArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginHeaderCertAuthRouteArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginHeaderCertAuthServiceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myGatewaypluginheadercertauth = new GatewayPluginHeaderCertAuth(\"myGatewaypluginheadercertauth\", GatewayPluginHeaderCertAuthArgs.builder()\n            .config(GatewayPluginHeaderCertAuthConfigArgs.builder()\n                .allowPartialChain(false)\n                .anonymous(\"...my_anonymous...\")\n                .authenticatedGroupBy(\"DN\")\n                .caCertificates(\"...\")\n                .cacheTtl(5.31)\n                .certCacheTtl(6.32)\n                .certificateHeaderFormat(\"url_encoded\")\n                .certificateHeaderName(\"...my_certificate_header_name...\")\n                .consumerBies(\"username\")\n                .defaultConsumer(\"...my_default_consumer...\")\n                .httpProxyHost(\"...my_http_proxy_host...\")\n                .httpProxyPort(1064.0)\n                .httpTimeout(5.78)\n                .httpsProxyHost(\"...my_https_proxy_host...\")\n                .httpsProxyPort(10840.0)\n                .revocationCheckMode(\"SKIP\")\n                .secureSource(true)\n                .skipConsumerLookup(true)\n                .sslVerify(true)\n                .build())\n            .controlPlaneId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .createdAt(5.0)\n            .enabled(false)\n            .gatewayPluginHeaderCertAuthId(\"...my_id...\")\n            .instanceName(\"...my_instance_name...\")\n            .ordering(GatewayPluginHeaderCertAuthOrderingArgs.builder()\n                .after(GatewayPluginHeaderCertAuthOrderingAfterArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .before(GatewayPluginHeaderCertAuthOrderingBeforeArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .build())\n            .partials(GatewayPluginHeaderCertAuthPartialArgs.builder()\n                .id(\"...my_id...\")\n                .name(\"...my_name...\")\n                .path(\"...my_path...\")\n                .build())\n            .protocols(\"https\")\n            .route(GatewayPluginHeaderCertAuthRouteArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .service(GatewayPluginHeaderCertAuthServiceArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .tags(\"...\")\n            .updatedAt(4.0)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myGatewaypluginheadercertauth:\n    type: konnect:GatewayPluginHeaderCertAuth\n    name: my_gatewaypluginheadercertauth\n    properties:\n      config:\n        allowPartialChain: false\n        anonymous: '...my_anonymous...'\n        authenticatedGroupBy: DN\n        caCertificates:\n          - '...'\n        cacheTtl: 5.31\n        certCacheTtl: 6.32\n        certificateHeaderFormat: url_encoded\n        certificateHeaderName: '...my_certificate_header_name...'\n        consumerBies:\n          - username\n        defaultConsumer: '...my_default_consumer...'\n        httpProxyHost: '...my_http_proxy_host...'\n        httpProxyPort: 1064\n        httpTimeout: 5.78\n        httpsProxyHost: '...my_https_proxy_host...'\n        httpsProxyPort: 10840\n        revocationCheckMode: SKIP\n        secureSource: true\n        skipConsumerLookup: true\n        sslVerify: true\n      controlPlaneId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      createdAt: 5\n      enabled: false\n      gatewayPluginHeaderCertAuthId: '...my_id...'\n      instanceName: '...my_instance_name...'\n      ordering:\n        after:\n          accesses:\n            - '...'\n        before:\n          accesses:\n            - '...'\n      partials:\n        - id: '...my_id...'\n          name: '...my_name...'\n          path: '...my_path...'\n      protocols:\n        - https\n      route:\n        id: '...my_id...'\n      service:\n        id: '...my_id...'\n      tags:\n        - '...'\n      updatedAt: 4\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_gateway_plugin_header_cert_auth.my_konnect_gateway_plugin_header_cert_auth\n\n  id = jsonencode({\n\n    control_plane_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/gatewayPluginHeaderCertAuth:GatewayPluginHeaderCertAuth my_konnect_gateway_plugin_header_cert_auth '{\"control_plane_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"}'\n```\n\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginHeaderCertAuthConfig:GatewayPluginHeaderCertAuthConfig"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginHeaderCertAuthId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginHeaderCertAuthOrdering:GatewayPluginHeaderCertAuthOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginHeaderCertAuthPartial:GatewayPluginHeaderCertAuthPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginHeaderCertAuthRoute:GatewayPluginHeaderCertAuthRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginHeaderCertAuthService:GatewayPluginHeaderCertAuthService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object","required":["config","controlPlaneId","createdAt","enabled","gatewayPluginHeaderCertAuthId","ordering","protocols","route","service","updatedAt"],"inputProperties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginHeaderCertAuthConfig:GatewayPluginHeaderCertAuthConfig"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginHeaderCertAuthId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginHeaderCertAuthOrdering:GatewayPluginHeaderCertAuthOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginHeaderCertAuthPartial:GatewayPluginHeaderCertAuthPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginHeaderCertAuthRoute:GatewayPluginHeaderCertAuthRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginHeaderCertAuthService:GatewayPluginHeaderCertAuthService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"requiredInputs":["config","controlPlaneId"],"stateInputs":{"description":"Input properties used for looking up and filtering GatewayPluginHeaderCertAuth resources.\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginHeaderCertAuthConfig:GatewayPluginHeaderCertAuthConfig"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginHeaderCertAuthId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginHeaderCertAuthOrdering:GatewayPluginHeaderCertAuthOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginHeaderCertAuthPartial:GatewayPluginHeaderCertAuthPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginHeaderCertAuthRoute:GatewayPluginHeaderCertAuthRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginHeaderCertAuthService:GatewayPluginHeaderCertAuthService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object"}},"konnect:index/gatewayPluginHmacAuth:GatewayPluginHmacAuth":{"description":"GatewayPluginHmacAuth Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myGatewaypluginhmacauth = new konnect.GatewayPluginHmacAuth(\"my_gatewaypluginhmacauth\", {\n    config: {\n        algorithms: [\"hmac-sha256\"],\n        anonymous: \"...my_anonymous...\",\n        clockSkew: 5.59,\n        enforceHeaders: [\"...\"],\n        hideCredentials: true,\n        realm: \"...my_realm...\",\n        validateRequestBody: true,\n    },\n    controlPlaneId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    createdAt: 4,\n    enabled: true,\n    gatewayPluginHmacAuthId: \"...my_id...\",\n    instanceName: \"...my_instance_name...\",\n    ordering: {\n        after: {\n            accesses: [\"...\"],\n        },\n        before: {\n            accesses: [\"...\"],\n        },\n    },\n    partials: [{\n        id: \"...my_id...\",\n        name: \"...my_name...\",\n        path: \"...my_path...\",\n    }],\n    protocols: [\"https\"],\n    route: {\n        id: \"...my_id...\",\n    },\n    service: {\n        id: \"...my_id...\",\n    },\n    tags: [\"...\"],\n    updatedAt: 8,\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_gatewaypluginhmacauth = konnect.GatewayPluginHmacAuth(\"my_gatewaypluginhmacauth\",\n    config={\n        \"algorithms\": [\"hmac-sha256\"],\n        \"anonymous\": \"...my_anonymous...\",\n        \"clock_skew\": 5.59,\n        \"enforce_headers\": [\"...\"],\n        \"hide_credentials\": True,\n        \"realm\": \"...my_realm...\",\n        \"validate_request_body\": True,\n    },\n    control_plane_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    created_at=4,\n    enabled=True,\n    gateway_plugin_hmac_auth_id=\"...my_id...\",\n    instance_name=\"...my_instance_name...\",\n    ordering={\n        \"after\": {\n            \"accesses\": [\"...\"],\n        },\n        \"before\": {\n            \"accesses\": [\"...\"],\n        },\n    },\n    partials=[{\n        \"id\": \"...my_id...\",\n        \"name\": \"...my_name...\",\n        \"path\": \"...my_path...\",\n    }],\n    protocols=[\"https\"],\n    route={\n        \"id\": \"...my_id...\",\n    },\n    service={\n        \"id\": \"...my_id...\",\n    },\n    tags=[\"...\"],\n    updated_at=8)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myGatewaypluginhmacauth = new Konnect.GatewayPluginHmacAuth(\"my_gatewaypluginhmacauth\", new()\n    {\n        Config = new Konnect.Inputs.GatewayPluginHmacAuthConfigArgs\n        {\n            Algorithms = new[]\n            {\n                \"hmac-sha256\",\n            },\n            Anonymous = \"...my_anonymous...\",\n            ClockSkew = 5.59,\n            EnforceHeaders = new[]\n            {\n                \"...\",\n            },\n            HideCredentials = true,\n            Realm = \"...my_realm...\",\n            ValidateRequestBody = true,\n        },\n        ControlPlaneId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        CreatedAt = 4,\n        Enabled = true,\n        GatewayPluginHmacAuthId = \"...my_id...\",\n        InstanceName = \"...my_instance_name...\",\n        Ordering = new Konnect.Inputs.GatewayPluginHmacAuthOrderingArgs\n        {\n            After = new Konnect.Inputs.GatewayPluginHmacAuthOrderingAfterArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n            Before = new Konnect.Inputs.GatewayPluginHmacAuthOrderingBeforeArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n        },\n        Partials = new[]\n        {\n            new Konnect.Inputs.GatewayPluginHmacAuthPartialArgs\n            {\n                Id = \"...my_id...\",\n                Name = \"...my_name...\",\n                Path = \"...my_path...\",\n            },\n        },\n        Protocols = new[]\n        {\n            \"https\",\n        },\n        Route = new Konnect.Inputs.GatewayPluginHmacAuthRouteArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Service = new Konnect.Inputs.GatewayPluginHmacAuthServiceArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Tags = new[]\n        {\n            \"...\",\n        },\n        UpdatedAt = 8,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewGatewayPluginHmacAuth(ctx, \"my_gatewaypluginhmacauth\", \u0026konnect.GatewayPluginHmacAuthArgs{\n\t\t\tConfig: \u0026konnect.GatewayPluginHmacAuthConfigArgs{\n\t\t\t\tAlgorithms: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"hmac-sha256\"),\n\t\t\t\t},\n\t\t\t\tAnonymous: pulumi.String(\"...my_anonymous...\"),\n\t\t\t\tClockSkew: pulumi.Float64(5.59),\n\t\t\t\tEnforceHeaders: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tHideCredentials:     pulumi.Bool(true),\n\t\t\t\tRealm:               pulumi.String(\"...my_realm...\"),\n\t\t\t\tValidateRequestBody: pulumi.Bool(true),\n\t\t\t},\n\t\t\tControlPlaneId:          pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tCreatedAt:               pulumi.Float64(4),\n\t\t\tEnabled:                 pulumi.Bool(true),\n\t\t\tGatewayPluginHmacAuthId: pulumi.String(\"...my_id...\"),\n\t\t\tInstanceName:            pulumi.String(\"...my_instance_name...\"),\n\t\t\tOrdering: \u0026konnect.GatewayPluginHmacAuthOrderingArgs{\n\t\t\t\tAfter: \u0026konnect.GatewayPluginHmacAuthOrderingAfterArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tBefore: \u0026konnect.GatewayPluginHmacAuthOrderingBeforeArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tPartials: konnect.GatewayPluginHmacAuthPartialArray{\n\t\t\t\t\u0026konnect.GatewayPluginHmacAuthPartialArgs{\n\t\t\t\t\tId:   pulumi.String(\"...my_id...\"),\n\t\t\t\t\tName: pulumi.String(\"...my_name...\"),\n\t\t\t\t\tPath: pulumi.String(\"...my_path...\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tProtocols: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"https\"),\n\t\t\t},\n\t\t\tRoute: \u0026konnect.GatewayPluginHmacAuthRouteArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tService: \u0026konnect.GatewayPluginHmacAuthServiceArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"...\"),\n\t\t\t},\n\t\t\tUpdatedAt: pulumi.Float64(8),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.GatewayPluginHmacAuth;\nimport com.pulumi.konnect.GatewayPluginHmacAuthArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginHmacAuthConfigArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginHmacAuthOrderingArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginHmacAuthOrderingAfterArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginHmacAuthOrderingBeforeArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginHmacAuthPartialArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginHmacAuthRouteArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginHmacAuthServiceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myGatewaypluginhmacauth = new GatewayPluginHmacAuth(\"myGatewaypluginhmacauth\", GatewayPluginHmacAuthArgs.builder()\n            .config(GatewayPluginHmacAuthConfigArgs.builder()\n                .algorithms(\"hmac-sha256\")\n                .anonymous(\"...my_anonymous...\")\n                .clockSkew(5.59)\n                .enforceHeaders(\"...\")\n                .hideCredentials(true)\n                .realm(\"...my_realm...\")\n                .validateRequestBody(true)\n                .build())\n            .controlPlaneId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .createdAt(4.0)\n            .enabled(true)\n            .gatewayPluginHmacAuthId(\"...my_id...\")\n            .instanceName(\"...my_instance_name...\")\n            .ordering(GatewayPluginHmacAuthOrderingArgs.builder()\n                .after(GatewayPluginHmacAuthOrderingAfterArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .before(GatewayPluginHmacAuthOrderingBeforeArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .build())\n            .partials(GatewayPluginHmacAuthPartialArgs.builder()\n                .id(\"...my_id...\")\n                .name(\"...my_name...\")\n                .path(\"...my_path...\")\n                .build())\n            .protocols(\"https\")\n            .route(GatewayPluginHmacAuthRouteArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .service(GatewayPluginHmacAuthServiceArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .tags(\"...\")\n            .updatedAt(8.0)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myGatewaypluginhmacauth:\n    type: konnect:GatewayPluginHmacAuth\n    name: my_gatewaypluginhmacauth\n    properties:\n      config:\n        algorithms:\n          - hmac-sha256\n        anonymous: '...my_anonymous...'\n        clockSkew: 5.59\n        enforceHeaders:\n          - '...'\n        hideCredentials: true\n        realm: '...my_realm...'\n        validateRequestBody: true\n      controlPlaneId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      createdAt: 4\n      enabled: true\n      gatewayPluginHmacAuthId: '...my_id...'\n      instanceName: '...my_instance_name...'\n      ordering:\n        after:\n          accesses:\n            - '...'\n        before:\n          accesses:\n            - '...'\n      partials:\n        - id: '...my_id...'\n          name: '...my_name...'\n          path: '...my_path...'\n      protocols:\n        - https\n      route:\n        id: '...my_id...'\n      service:\n        id: '...my_id...'\n      tags:\n        - '...'\n      updatedAt: 8\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_gateway_plugin_hmac_auth.my_konnect_gateway_plugin_hmac_auth\n\n  id = jsonencode({\n\n    control_plane_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/gatewayPluginHmacAuth:GatewayPluginHmacAuth my_konnect_gateway_plugin_hmac_auth '{\"control_plane_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"}'\n```\n\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginHmacAuthConfig:GatewayPluginHmacAuthConfig"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginHmacAuthId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginHmacAuthOrdering:GatewayPluginHmacAuthOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginHmacAuthPartial:GatewayPluginHmacAuthPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A list of the request protocols that will trigger this plugin. The default value, as well as the possible values allowed on this field, may change depending on the plugin type. For example, plugins that only work in stream mode will only support tcp and tls. Default: [\"grpc\",\"grpcs\",\"http\",\"https\",\"ws\",\"wss\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginHmacAuthRoute:GatewayPluginHmacAuthRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginHmacAuthService:GatewayPluginHmacAuthService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object","required":["config","controlPlaneId","createdAt","enabled","gatewayPluginHmacAuthId","ordering","protocols","route","service","updatedAt"],"inputProperties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginHmacAuthConfig:GatewayPluginHmacAuthConfig"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginHmacAuthId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginHmacAuthOrdering:GatewayPluginHmacAuthOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginHmacAuthPartial:GatewayPluginHmacAuthPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A list of the request protocols that will trigger this plugin. The default value, as well as the possible values allowed on this field, may change depending on the plugin type. For example, plugins that only work in stream mode will only support tcp and tls. Default: [\"grpc\",\"grpcs\",\"http\",\"https\",\"ws\",\"wss\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginHmacAuthRoute:GatewayPluginHmacAuthRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginHmacAuthService:GatewayPluginHmacAuthService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"requiredInputs":["controlPlaneId"],"stateInputs":{"description":"Input properties used for looking up and filtering GatewayPluginHmacAuth resources.\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginHmacAuthConfig:GatewayPluginHmacAuthConfig"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginHmacAuthId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginHmacAuthOrdering:GatewayPluginHmacAuthOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginHmacAuthPartial:GatewayPluginHmacAuthPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A list of the request protocols that will trigger this plugin. The default value, as well as the possible values allowed on this field, may change depending on the plugin type. For example, plugins that only work in stream mode will only support tcp and tls. Default: [\"grpc\",\"grpcs\",\"http\",\"https\",\"ws\",\"wss\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginHmacAuthRoute:GatewayPluginHmacAuthRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginHmacAuthService:GatewayPluginHmacAuthService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object"}},"konnect:index/gatewayPluginHttpLog:GatewayPluginHttpLog":{"description":"GatewayPluginHTTPLog Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myGatewaypluginhttplog = new konnect.GatewayPluginHttpLog(\"my_gatewaypluginhttplog\", {\n    config: {\n        contentType: \"application/json; charset=utf-8\",\n        customFieldsByLua: {\n            key: \"value\",\n        },\n        flushTimeout: 8.97,\n        headers: {\n            key: \"value\",\n        },\n        httpEndpoint: \"...my_http_endpoint...\",\n        keepalive: 2.25,\n        method: \"POST\",\n        queue: {\n            concurrencyLimit: 0,\n            initialRetryDelay: 154435.3,\n            maxBatchSize: 297113,\n            maxBytes: 7,\n            maxCoalescingDelay: 198.88,\n            maxEntries: 603921,\n            maxRetryDelay: 290740.88,\n            maxRetryTime: 4.99,\n        },\n        queueSize: 3,\n        retryCount: 10,\n        sslVerify: false,\n        timeout: 6.49,\n    },\n    consumer: {\n        id: \"...my_id...\",\n    },\n    controlPlaneId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    createdAt: 1,\n    enabled: false,\n    gatewayPluginHttpLogId: \"...my_id...\",\n    instanceName: \"...my_instance_name...\",\n    ordering: {\n        after: {\n            accesses: [\"...\"],\n        },\n        before: {\n            accesses: [\"...\"],\n        },\n    },\n    partials: [{\n        id: \"...my_id...\",\n        name: \"...my_name...\",\n        path: \"...my_path...\",\n    }],\n    protocols: [\"grpcs\"],\n    route: {\n        id: \"...my_id...\",\n    },\n    service: {\n        id: \"...my_id...\",\n    },\n    tags: [\"...\"],\n    updatedAt: 10,\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_gatewaypluginhttplog = konnect.GatewayPluginHttpLog(\"my_gatewaypluginhttplog\",\n    config={\n        \"content_type\": \"application/json; charset=utf-8\",\n        \"custom_fields_by_lua\": {\n            \"key\": \"value\",\n        },\n        \"flush_timeout\": 8.97,\n        \"headers\": {\n            \"key\": \"value\",\n        },\n        \"http_endpoint\": \"...my_http_endpoint...\",\n        \"keepalive\": 2.25,\n        \"method\": \"POST\",\n        \"queue\": {\n            \"concurrency_limit\": 0,\n            \"initial_retry_delay\": 154435.3,\n            \"max_batch_size\": 297113,\n            \"max_bytes\": 7,\n            \"max_coalescing_delay\": 198.88,\n            \"max_entries\": 603921,\n            \"max_retry_delay\": 290740.88,\n            \"max_retry_time\": 4.99,\n        },\n        \"queue_size\": 3,\n        \"retry_count\": 10,\n        \"ssl_verify\": False,\n        \"timeout\": 6.49,\n    },\n    consumer={\n        \"id\": \"...my_id...\",\n    },\n    control_plane_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    created_at=1,\n    enabled=False,\n    gateway_plugin_http_log_id=\"...my_id...\",\n    instance_name=\"...my_instance_name...\",\n    ordering={\n        \"after\": {\n            \"accesses\": [\"...\"],\n        },\n        \"before\": {\n            \"accesses\": [\"...\"],\n        },\n    },\n    partials=[{\n        \"id\": \"...my_id...\",\n        \"name\": \"...my_name...\",\n        \"path\": \"...my_path...\",\n    }],\n    protocols=[\"grpcs\"],\n    route={\n        \"id\": \"...my_id...\",\n    },\n    service={\n        \"id\": \"...my_id...\",\n    },\n    tags=[\"...\"],\n    updated_at=10)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myGatewaypluginhttplog = new Konnect.GatewayPluginHttpLog(\"my_gatewaypluginhttplog\", new()\n    {\n        Config = new Konnect.Inputs.GatewayPluginHttpLogConfigArgs\n        {\n            ContentType = \"application/json; charset=utf-8\",\n            CustomFieldsByLua = \n            {\n                { \"key\", \"value\" },\n            },\n            FlushTimeout = 8.97,\n            Headers = \n            {\n                { \"key\", \"value\" },\n            },\n            HttpEndpoint = \"...my_http_endpoint...\",\n            Keepalive = 2.25,\n            Method = \"POST\",\n            Queue = new Konnect.Inputs.GatewayPluginHttpLogConfigQueueArgs\n            {\n                ConcurrencyLimit = 0,\n                InitialRetryDelay = 154435.3,\n                MaxBatchSize = 297113,\n                MaxBytes = 7,\n                MaxCoalescingDelay = 198.88,\n                MaxEntries = 603921,\n                MaxRetryDelay = 290740.88,\n                MaxRetryTime = 4.99,\n            },\n            QueueSize = 3,\n            RetryCount = 10,\n            SslVerify = false,\n            Timeout = 6.49,\n        },\n        Consumer = new Konnect.Inputs.GatewayPluginHttpLogConsumerArgs\n        {\n            Id = \"...my_id...\",\n        },\n        ControlPlaneId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        CreatedAt = 1,\n        Enabled = false,\n        GatewayPluginHttpLogId = \"...my_id...\",\n        InstanceName = \"...my_instance_name...\",\n        Ordering = new Konnect.Inputs.GatewayPluginHttpLogOrderingArgs\n        {\n            After = new Konnect.Inputs.GatewayPluginHttpLogOrderingAfterArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n            Before = new Konnect.Inputs.GatewayPluginHttpLogOrderingBeforeArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n        },\n        Partials = new[]\n        {\n            new Konnect.Inputs.GatewayPluginHttpLogPartialArgs\n            {\n                Id = \"...my_id...\",\n                Name = \"...my_name...\",\n                Path = \"...my_path...\",\n            },\n        },\n        Protocols = new[]\n        {\n            \"grpcs\",\n        },\n        Route = new Konnect.Inputs.GatewayPluginHttpLogRouteArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Service = new Konnect.Inputs.GatewayPluginHttpLogServiceArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Tags = new[]\n        {\n            \"...\",\n        },\n        UpdatedAt = 10,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewGatewayPluginHttpLog(ctx, \"my_gatewaypluginhttplog\", \u0026konnect.GatewayPluginHttpLogArgs{\n\t\t\tConfig: \u0026konnect.GatewayPluginHttpLogConfigArgs{\n\t\t\t\tContentType: pulumi.String(\"application/json; charset=utf-8\"),\n\t\t\t\tCustomFieldsByLua: pulumi.StringMap{\n\t\t\t\t\t\"key\": pulumi.String(\"value\"),\n\t\t\t\t},\n\t\t\t\tFlushTimeout: pulumi.Float64(8.97),\n\t\t\t\tHeaders: pulumi.StringMap{\n\t\t\t\t\t\"key\": pulumi.String(\"value\"),\n\t\t\t\t},\n\t\t\t\tHttpEndpoint: pulumi.String(\"...my_http_endpoint...\"),\n\t\t\t\tKeepalive:    pulumi.Float64(2.25),\n\t\t\t\tMethod:       pulumi.String(\"POST\"),\n\t\t\t\tQueue: \u0026konnect.GatewayPluginHttpLogConfigQueueArgs{\n\t\t\t\t\tConcurrencyLimit:   pulumi.Float64(0),\n\t\t\t\t\tInitialRetryDelay:  pulumi.Float64(154435.3),\n\t\t\t\t\tMaxBatchSize:       pulumi.Float64(297113),\n\t\t\t\t\tMaxBytes:           pulumi.Float64(7),\n\t\t\t\t\tMaxCoalescingDelay: pulumi.Float64(198.88),\n\t\t\t\t\tMaxEntries:         pulumi.Float64(603921),\n\t\t\t\t\tMaxRetryDelay:      pulumi.Float64(290740.88),\n\t\t\t\t\tMaxRetryTime:       pulumi.Float64(4.99),\n\t\t\t\t},\n\t\t\t\tQueueSize:  pulumi.Float64(3),\n\t\t\t\tRetryCount: pulumi.Float64(10),\n\t\t\t\tSslVerify:  pulumi.Bool(false),\n\t\t\t\tTimeout:    pulumi.Float64(6.49),\n\t\t\t},\n\t\t\tConsumer: \u0026konnect.GatewayPluginHttpLogConsumerArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tControlPlaneId:         pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tCreatedAt:              pulumi.Float64(1),\n\t\t\tEnabled:                pulumi.Bool(false),\n\t\t\tGatewayPluginHttpLogId: pulumi.String(\"...my_id...\"),\n\t\t\tInstanceName:           pulumi.String(\"...my_instance_name...\"),\n\t\t\tOrdering: \u0026konnect.GatewayPluginHttpLogOrderingArgs{\n\t\t\t\tAfter: \u0026konnect.GatewayPluginHttpLogOrderingAfterArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tBefore: \u0026konnect.GatewayPluginHttpLogOrderingBeforeArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tPartials: konnect.GatewayPluginHttpLogPartialArray{\n\t\t\t\t\u0026konnect.GatewayPluginHttpLogPartialArgs{\n\t\t\t\t\tId:   pulumi.String(\"...my_id...\"),\n\t\t\t\t\tName: pulumi.String(\"...my_name...\"),\n\t\t\t\t\tPath: pulumi.String(\"...my_path...\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tProtocols: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"grpcs\"),\n\t\t\t},\n\t\t\tRoute: \u0026konnect.GatewayPluginHttpLogRouteArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tService: \u0026konnect.GatewayPluginHttpLogServiceArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"...\"),\n\t\t\t},\n\t\t\tUpdatedAt: pulumi.Float64(10),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.GatewayPluginHttpLog;\nimport com.pulumi.konnect.GatewayPluginHttpLogArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginHttpLogConfigArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginHttpLogConfigQueueArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginHttpLogConsumerArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginHttpLogOrderingArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginHttpLogOrderingAfterArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginHttpLogOrderingBeforeArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginHttpLogPartialArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginHttpLogRouteArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginHttpLogServiceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myGatewaypluginhttplog = new GatewayPluginHttpLog(\"myGatewaypluginhttplog\", GatewayPluginHttpLogArgs.builder()\n            .config(GatewayPluginHttpLogConfigArgs.builder()\n                .contentType(\"application/json; charset=utf-8\")\n                .customFieldsByLua(Map.of(\"key\", \"value\"))\n                .flushTimeout(8.97)\n                .headers(Map.of(\"key\", \"value\"))\n                .httpEndpoint(\"...my_http_endpoint...\")\n                .keepalive(2.25)\n                .method(\"POST\")\n                .queue(GatewayPluginHttpLogConfigQueueArgs.builder()\n                    .concurrencyLimit(0.0)\n                    .initialRetryDelay(154435.3)\n                    .maxBatchSize(297113.0)\n                    .maxBytes(7.0)\n                    .maxCoalescingDelay(198.88)\n                    .maxEntries(603921.0)\n                    .maxRetryDelay(290740.88)\n                    .maxRetryTime(4.99)\n                    .build())\n                .queueSize(3.0)\n                .retryCount(10.0)\n                .sslVerify(false)\n                .timeout(6.49)\n                .build())\n            .consumer(GatewayPluginHttpLogConsumerArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .controlPlaneId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .createdAt(1.0)\n            .enabled(false)\n            .gatewayPluginHttpLogId(\"...my_id...\")\n            .instanceName(\"...my_instance_name...\")\n            .ordering(GatewayPluginHttpLogOrderingArgs.builder()\n                .after(GatewayPluginHttpLogOrderingAfterArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .before(GatewayPluginHttpLogOrderingBeforeArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .build())\n            .partials(GatewayPluginHttpLogPartialArgs.builder()\n                .id(\"...my_id...\")\n                .name(\"...my_name...\")\n                .path(\"...my_path...\")\n                .build())\n            .protocols(\"grpcs\")\n            .route(GatewayPluginHttpLogRouteArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .service(GatewayPluginHttpLogServiceArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .tags(\"...\")\n            .updatedAt(10.0)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myGatewaypluginhttplog:\n    type: konnect:GatewayPluginHttpLog\n    name: my_gatewaypluginhttplog\n    properties:\n      config:\n        contentType: application/json; charset=utf-8\n        customFieldsByLua:\n          key: value\n        flushTimeout: 8.97\n        headers:\n          key: value\n        httpEndpoint: '...my_http_endpoint...'\n        keepalive: 2.25\n        method: POST\n        queue:\n          concurrencyLimit: 0\n          initialRetryDelay: 154435.3\n          maxBatchSize: 297113\n          maxBytes: 7\n          maxCoalescingDelay: 198.88\n          maxEntries: 603921\n          maxRetryDelay: 290740.88\n          maxRetryTime: 4.99\n        queueSize: 3\n        retryCount: 10\n        sslVerify: false\n        timeout: 6.49\n      consumer:\n        id: '...my_id...'\n      controlPlaneId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      createdAt: 1\n      enabled: false\n      gatewayPluginHttpLogId: '...my_id...'\n      instanceName: '...my_instance_name...'\n      ordering:\n        after:\n          accesses:\n            - '...'\n        before:\n          accesses:\n            - '...'\n      partials:\n        - id: '...my_id...'\n          name: '...my_name...'\n          path: '...my_path...'\n      protocols:\n        - grpcs\n      route:\n        id: '...my_id...'\n      service:\n        id: '...my_id...'\n      tags:\n        - '...'\n      updatedAt: 10\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_gateway_plugin_http_log.my_konnect_gateway_plugin_http_log\n\n  id = jsonencode({\n\n    control_plane_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/gatewayPluginHttpLog:GatewayPluginHttpLog my_konnect_gateway_plugin_http_log '{\"control_plane_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"}'\n```\n\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginHttpLogConfig:GatewayPluginHttpLogConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginHttpLogConsumer:GatewayPluginHttpLogConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginHttpLogId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginHttpLogOrdering:GatewayPluginHttpLogOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginHttpLogPartial:GatewayPluginHttpLogPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginHttpLogRoute:GatewayPluginHttpLogRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginHttpLogService:GatewayPluginHttpLogService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object","required":["config","consumer","controlPlaneId","createdAt","enabled","gatewayPluginHttpLogId","ordering","protocols","route","service","updatedAt"],"inputProperties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginHttpLogConfig:GatewayPluginHttpLogConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginHttpLogConsumer:GatewayPluginHttpLogConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginHttpLogId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginHttpLogOrdering:GatewayPluginHttpLogOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginHttpLogPartial:GatewayPluginHttpLogPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginHttpLogRoute:GatewayPluginHttpLogRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginHttpLogService:GatewayPluginHttpLogService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"requiredInputs":["config","controlPlaneId"],"stateInputs":{"description":"Input properties used for looking up and filtering GatewayPluginHttpLog resources.\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginHttpLogConfig:GatewayPluginHttpLogConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginHttpLogConsumer:GatewayPluginHttpLogConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginHttpLogId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginHttpLogOrdering:GatewayPluginHttpLogOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginHttpLogPartial:GatewayPluginHttpLogPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginHttpLogRoute:GatewayPluginHttpLogRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginHttpLogService:GatewayPluginHttpLogService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object"}},"konnect:index/gatewayPluginInjectionProtection:GatewayPluginInjectionProtection":{"description":"GatewayPluginInjectionProtection Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myGatewayplugininjectionprotection = new konnect.GatewayPluginInjectionProtection(\"my_gatewayplugininjectionprotection\", {\n    config: {\n        customInjections: [{\n            name: \"...my_name...\",\n            regex: \"...my_regex...\",\n        }],\n        enforcementMode: \"block\",\n        errorMessage: \"...my_error_message...\",\n        errorStatusCode: 416,\n        injectionTypes: [\"sql\"],\n        locations: [\"query\"],\n    },\n    controlPlaneId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    createdAt: 9,\n    enabled: false,\n    gatewayPluginInjectionProtectionId: \"...my_id...\",\n    instanceName: \"...my_instance_name...\",\n    ordering: {\n        after: {\n            accesses: [\"...\"],\n        },\n        before: {\n            accesses: [\"...\"],\n        },\n    },\n    partials: [{\n        id: \"...my_id...\",\n        name: \"...my_name...\",\n        path: \"...my_path...\",\n    }],\n    protocols: [\"grpc\"],\n    route: {\n        id: \"...my_id...\",\n    },\n    service: {\n        id: \"...my_id...\",\n    },\n    tags: [\"...\"],\n    updatedAt: 0,\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_gatewayplugininjectionprotection = konnect.GatewayPluginInjectionProtection(\"my_gatewayplugininjectionprotection\",\n    config={\n        \"custom_injections\": [{\n            \"name\": \"...my_name...\",\n            \"regex\": \"...my_regex...\",\n        }],\n        \"enforcement_mode\": \"block\",\n        \"error_message\": \"...my_error_message...\",\n        \"error_status_code\": 416,\n        \"injection_types\": [\"sql\"],\n        \"locations\": [\"query\"],\n    },\n    control_plane_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    created_at=9,\n    enabled=False,\n    gateway_plugin_injection_protection_id=\"...my_id...\",\n    instance_name=\"...my_instance_name...\",\n    ordering={\n        \"after\": {\n            \"accesses\": [\"...\"],\n        },\n        \"before\": {\n            \"accesses\": [\"...\"],\n        },\n    },\n    partials=[{\n        \"id\": \"...my_id...\",\n        \"name\": \"...my_name...\",\n        \"path\": \"...my_path...\",\n    }],\n    protocols=[\"grpc\"],\n    route={\n        \"id\": \"...my_id...\",\n    },\n    service={\n        \"id\": \"...my_id...\",\n    },\n    tags=[\"...\"],\n    updated_at=0)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myGatewayplugininjectionprotection = new Konnect.GatewayPluginInjectionProtection(\"my_gatewayplugininjectionprotection\", new()\n    {\n        Config = new Konnect.Inputs.GatewayPluginInjectionProtectionConfigArgs\n        {\n            CustomInjections = new[]\n            {\n                new Konnect.Inputs.GatewayPluginInjectionProtectionConfigCustomInjectionArgs\n                {\n                    Name = \"...my_name...\",\n                    Regex = \"...my_regex...\",\n                },\n            },\n            EnforcementMode = \"block\",\n            ErrorMessage = \"...my_error_message...\",\n            ErrorStatusCode = 416,\n            InjectionTypes = new[]\n            {\n                \"sql\",\n            },\n            Locations = new[]\n            {\n                \"query\",\n            },\n        },\n        ControlPlaneId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        CreatedAt = 9,\n        Enabled = false,\n        GatewayPluginInjectionProtectionId = \"...my_id...\",\n        InstanceName = \"...my_instance_name...\",\n        Ordering = new Konnect.Inputs.GatewayPluginInjectionProtectionOrderingArgs\n        {\n            After = new Konnect.Inputs.GatewayPluginInjectionProtectionOrderingAfterArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n            Before = new Konnect.Inputs.GatewayPluginInjectionProtectionOrderingBeforeArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n        },\n        Partials = new[]\n        {\n            new Konnect.Inputs.GatewayPluginInjectionProtectionPartialArgs\n            {\n                Id = \"...my_id...\",\n                Name = \"...my_name...\",\n                Path = \"...my_path...\",\n            },\n        },\n        Protocols = new[]\n        {\n            \"grpc\",\n        },\n        Route = new Konnect.Inputs.GatewayPluginInjectionProtectionRouteArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Service = new Konnect.Inputs.GatewayPluginInjectionProtectionServiceArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Tags = new[]\n        {\n            \"...\",\n        },\n        UpdatedAt = 0,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewGatewayPluginInjectionProtection(ctx, \"my_gatewayplugininjectionprotection\", \u0026konnect.GatewayPluginInjectionProtectionArgs{\n\t\t\tConfig: \u0026konnect.GatewayPluginInjectionProtectionConfigArgs{\n\t\t\t\tCustomInjections: konnect.GatewayPluginInjectionProtectionConfigCustomInjectionArray{\n\t\t\t\t\t\u0026konnect.GatewayPluginInjectionProtectionConfigCustomInjectionArgs{\n\t\t\t\t\t\tName:  pulumi.String(\"...my_name...\"),\n\t\t\t\t\t\tRegex: pulumi.String(\"...my_regex...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tEnforcementMode: pulumi.String(\"block\"),\n\t\t\t\tErrorMessage:    pulumi.String(\"...my_error_message...\"),\n\t\t\t\tErrorStatusCode: pulumi.Float64(416),\n\t\t\t\tInjectionTypes: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"sql\"),\n\t\t\t\t},\n\t\t\t\tLocations: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"query\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tControlPlaneId:                     pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tCreatedAt:                          pulumi.Float64(9),\n\t\t\tEnabled:                            pulumi.Bool(false),\n\t\t\tGatewayPluginInjectionProtectionId: pulumi.String(\"...my_id...\"),\n\t\t\tInstanceName:                       pulumi.String(\"...my_instance_name...\"),\n\t\t\tOrdering: \u0026konnect.GatewayPluginInjectionProtectionOrderingArgs{\n\t\t\t\tAfter: \u0026konnect.GatewayPluginInjectionProtectionOrderingAfterArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tBefore: \u0026konnect.GatewayPluginInjectionProtectionOrderingBeforeArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tPartials: konnect.GatewayPluginInjectionProtectionPartialArray{\n\t\t\t\t\u0026konnect.GatewayPluginInjectionProtectionPartialArgs{\n\t\t\t\t\tId:   pulumi.String(\"...my_id...\"),\n\t\t\t\t\tName: pulumi.String(\"...my_name...\"),\n\t\t\t\t\tPath: pulumi.String(\"...my_path...\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tProtocols: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"grpc\"),\n\t\t\t},\n\t\t\tRoute: \u0026konnect.GatewayPluginInjectionProtectionRouteArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tService: \u0026konnect.GatewayPluginInjectionProtectionServiceArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"...\"),\n\t\t\t},\n\t\t\tUpdatedAt: pulumi.Float64(0),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.GatewayPluginInjectionProtection;\nimport com.pulumi.konnect.GatewayPluginInjectionProtectionArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginInjectionProtectionConfigArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginInjectionProtectionOrderingArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginInjectionProtectionOrderingAfterArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginInjectionProtectionOrderingBeforeArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginInjectionProtectionPartialArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginInjectionProtectionRouteArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginInjectionProtectionServiceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myGatewayplugininjectionprotection = new GatewayPluginInjectionProtection(\"myGatewayplugininjectionprotection\", GatewayPluginInjectionProtectionArgs.builder()\n            .config(GatewayPluginInjectionProtectionConfigArgs.builder()\n                .customInjections(GatewayPluginInjectionProtectionConfigCustomInjectionArgs.builder()\n                    .name(\"...my_name...\")\n                    .regex(\"...my_regex...\")\n                    .build())\n                .enforcementMode(\"block\")\n                .errorMessage(\"...my_error_message...\")\n                .errorStatusCode(416.0)\n                .injectionTypes(\"sql\")\n                .locations(\"query\")\n                .build())\n            .controlPlaneId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .createdAt(9.0)\n            .enabled(false)\n            .gatewayPluginInjectionProtectionId(\"...my_id...\")\n            .instanceName(\"...my_instance_name...\")\n            .ordering(GatewayPluginInjectionProtectionOrderingArgs.builder()\n                .after(GatewayPluginInjectionProtectionOrderingAfterArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .before(GatewayPluginInjectionProtectionOrderingBeforeArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .build())\n            .partials(GatewayPluginInjectionProtectionPartialArgs.builder()\n                .id(\"...my_id...\")\n                .name(\"...my_name...\")\n                .path(\"...my_path...\")\n                .build())\n            .protocols(\"grpc\")\n            .route(GatewayPluginInjectionProtectionRouteArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .service(GatewayPluginInjectionProtectionServiceArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .tags(\"...\")\n            .updatedAt(0.0)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myGatewayplugininjectionprotection:\n    type: konnect:GatewayPluginInjectionProtection\n    name: my_gatewayplugininjectionprotection\n    properties:\n      config:\n        customInjections:\n          - name: '...my_name...'\n            regex: '...my_regex...'\n        enforcementMode: block\n        errorMessage: '...my_error_message...'\n        errorStatusCode: 416\n        injectionTypes:\n          - sql\n        locations:\n          - query\n      controlPlaneId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      createdAt: 9\n      enabled: false\n      gatewayPluginInjectionProtectionId: '...my_id...'\n      instanceName: '...my_instance_name...'\n      ordering:\n        after:\n          accesses:\n            - '...'\n        before:\n          accesses:\n            - '...'\n      partials:\n        - id: '...my_id...'\n          name: '...my_name...'\n          path: '...my_path...'\n      protocols:\n        - grpc\n      route:\n        id: '...my_id...'\n      service:\n        id: '...my_id...'\n      tags:\n        - '...'\n      updatedAt: 0\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_gateway_plugin_injection_protection.my_konnect_gateway_plugin_injection_protection\n\n  id = jsonencode({\n\n    control_plane_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/gatewayPluginInjectionProtection:GatewayPluginInjectionProtection my_konnect_gateway_plugin_injection_protection '{\"control_plane_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"}'\n```\n\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginInjectionProtectionConfig:GatewayPluginInjectionProtectionConfig"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginInjectionProtectionId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginInjectionProtectionOrdering:GatewayPluginInjectionProtectionOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginInjectionProtectionPartial:GatewayPluginInjectionProtectionPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginInjectionProtectionRoute:GatewayPluginInjectionProtectionRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginInjectionProtectionService:GatewayPluginInjectionProtectionService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object","required":["config","controlPlaneId","createdAt","enabled","gatewayPluginInjectionProtectionId","ordering","protocols","route","service","updatedAt"],"inputProperties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginInjectionProtectionConfig:GatewayPluginInjectionProtectionConfig"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginInjectionProtectionId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginInjectionProtectionOrdering:GatewayPluginInjectionProtectionOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginInjectionProtectionPartial:GatewayPluginInjectionProtectionPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginInjectionProtectionRoute:GatewayPluginInjectionProtectionRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginInjectionProtectionService:GatewayPluginInjectionProtectionService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"requiredInputs":["controlPlaneId"],"stateInputs":{"description":"Input properties used for looking up and filtering GatewayPluginInjectionProtection resources.\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginInjectionProtectionConfig:GatewayPluginInjectionProtectionConfig"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginInjectionProtectionId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginInjectionProtectionOrdering:GatewayPluginInjectionProtectionOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginInjectionProtectionPartial:GatewayPluginInjectionProtectionPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginInjectionProtectionRoute:GatewayPluginInjectionProtectionRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginInjectionProtectionService:GatewayPluginInjectionProtectionService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object"}},"konnect:index/gatewayPluginIpRestriction:GatewayPluginIpRestriction":{"description":"GatewayPluginIPRestriction Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myGatewaypluginiprestriction = new konnect.GatewayPluginIpRestriction(\"my_gatewaypluginiprestriction\", {\n    config: {\n        allows: [\"...\"],\n        denies: [\"...\"],\n        message: \"...my_message...\",\n        status: 3.69,\n    },\n    consumer: {\n        id: \"...my_id...\",\n    },\n    consumerGroup: {\n        id: \"...my_id...\",\n    },\n    controlPlaneId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    createdAt: 0,\n    enabled: false,\n    gatewayPluginIpRestrictionId: \"...my_id...\",\n    instanceName: \"...my_instance_name...\",\n    ordering: {\n        after: {\n            accesses: [\"...\"],\n        },\n        before: {\n            accesses: [\"...\"],\n        },\n    },\n    partials: [{\n        id: \"...my_id...\",\n        name: \"...my_name...\",\n        path: \"...my_path...\",\n    }],\n    protocols: [\"tls\"],\n    route: {\n        id: \"...my_id...\",\n    },\n    service: {\n        id: \"...my_id...\",\n    },\n    tags: [\"...\"],\n    updatedAt: 9,\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_gatewaypluginiprestriction = konnect.GatewayPluginIpRestriction(\"my_gatewaypluginiprestriction\",\n    config={\n        \"allows\": [\"...\"],\n        \"denies\": [\"...\"],\n        \"message\": \"...my_message...\",\n        \"status\": 3.69,\n    },\n    consumer={\n        \"id\": \"...my_id...\",\n    },\n    consumer_group={\n        \"id\": \"...my_id...\",\n    },\n    control_plane_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    created_at=0,\n    enabled=False,\n    gateway_plugin_ip_restriction_id=\"...my_id...\",\n    instance_name=\"...my_instance_name...\",\n    ordering={\n        \"after\": {\n            \"accesses\": [\"...\"],\n        },\n        \"before\": {\n            \"accesses\": [\"...\"],\n        },\n    },\n    partials=[{\n        \"id\": \"...my_id...\",\n        \"name\": \"...my_name...\",\n        \"path\": \"...my_path...\",\n    }],\n    protocols=[\"tls\"],\n    route={\n        \"id\": \"...my_id...\",\n    },\n    service={\n        \"id\": \"...my_id...\",\n    },\n    tags=[\"...\"],\n    updated_at=9)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myGatewaypluginiprestriction = new Konnect.GatewayPluginIpRestriction(\"my_gatewaypluginiprestriction\", new()\n    {\n        Config = new Konnect.Inputs.GatewayPluginIpRestrictionConfigArgs\n        {\n            Allows = new[]\n            {\n                \"...\",\n            },\n            Denies = new[]\n            {\n                \"...\",\n            },\n            Message = \"...my_message...\",\n            Status = 3.69,\n        },\n        Consumer = new Konnect.Inputs.GatewayPluginIpRestrictionConsumerArgs\n        {\n            Id = \"...my_id...\",\n        },\n        ConsumerGroup = new Konnect.Inputs.GatewayPluginIpRestrictionConsumerGroupArgs\n        {\n            Id = \"...my_id...\",\n        },\n        ControlPlaneId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        CreatedAt = 0,\n        Enabled = false,\n        GatewayPluginIpRestrictionId = \"...my_id...\",\n        InstanceName = \"...my_instance_name...\",\n        Ordering = new Konnect.Inputs.GatewayPluginIpRestrictionOrderingArgs\n        {\n            After = new Konnect.Inputs.GatewayPluginIpRestrictionOrderingAfterArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n            Before = new Konnect.Inputs.GatewayPluginIpRestrictionOrderingBeforeArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n        },\n        Partials = new[]\n        {\n            new Konnect.Inputs.GatewayPluginIpRestrictionPartialArgs\n            {\n                Id = \"...my_id...\",\n                Name = \"...my_name...\",\n                Path = \"...my_path...\",\n            },\n        },\n        Protocols = new[]\n        {\n            \"tls\",\n        },\n        Route = new Konnect.Inputs.GatewayPluginIpRestrictionRouteArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Service = new Konnect.Inputs.GatewayPluginIpRestrictionServiceArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Tags = new[]\n        {\n            \"...\",\n        },\n        UpdatedAt = 9,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewGatewayPluginIpRestriction(ctx, \"my_gatewaypluginiprestriction\", \u0026konnect.GatewayPluginIpRestrictionArgs{\n\t\t\tConfig: \u0026konnect.GatewayPluginIpRestrictionConfigArgs{\n\t\t\t\tAllows: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tDenies: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tMessage: pulumi.String(\"...my_message...\"),\n\t\t\t\tStatus:  pulumi.Float64(3.69),\n\t\t\t},\n\t\t\tConsumer: \u0026konnect.GatewayPluginIpRestrictionConsumerArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tConsumerGroup: \u0026konnect.GatewayPluginIpRestrictionConsumerGroupArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tControlPlaneId:               pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tCreatedAt:                    pulumi.Float64(0),\n\t\t\tEnabled:                      pulumi.Bool(false),\n\t\t\tGatewayPluginIpRestrictionId: pulumi.String(\"...my_id...\"),\n\t\t\tInstanceName:                 pulumi.String(\"...my_instance_name...\"),\n\t\t\tOrdering: \u0026konnect.GatewayPluginIpRestrictionOrderingArgs{\n\t\t\t\tAfter: \u0026konnect.GatewayPluginIpRestrictionOrderingAfterArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tBefore: \u0026konnect.GatewayPluginIpRestrictionOrderingBeforeArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tPartials: konnect.GatewayPluginIpRestrictionPartialArray{\n\t\t\t\t\u0026konnect.GatewayPluginIpRestrictionPartialArgs{\n\t\t\t\t\tId:   pulumi.String(\"...my_id...\"),\n\t\t\t\t\tName: pulumi.String(\"...my_name...\"),\n\t\t\t\t\tPath: pulumi.String(\"...my_path...\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tProtocols: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"tls\"),\n\t\t\t},\n\t\t\tRoute: \u0026konnect.GatewayPluginIpRestrictionRouteArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tService: \u0026konnect.GatewayPluginIpRestrictionServiceArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"...\"),\n\t\t\t},\n\t\t\tUpdatedAt: pulumi.Float64(9),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.GatewayPluginIpRestriction;\nimport com.pulumi.konnect.GatewayPluginIpRestrictionArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginIpRestrictionConfigArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginIpRestrictionConsumerArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginIpRestrictionConsumerGroupArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginIpRestrictionOrderingArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginIpRestrictionOrderingAfterArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginIpRestrictionOrderingBeforeArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginIpRestrictionPartialArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginIpRestrictionRouteArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginIpRestrictionServiceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myGatewaypluginiprestriction = new GatewayPluginIpRestriction(\"myGatewaypluginiprestriction\", GatewayPluginIpRestrictionArgs.builder()\n            .config(GatewayPluginIpRestrictionConfigArgs.builder()\n                .allows(\"...\")\n                .denies(\"...\")\n                .message(\"...my_message...\")\n                .status(3.69)\n                .build())\n            .consumer(GatewayPluginIpRestrictionConsumerArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .consumerGroup(GatewayPluginIpRestrictionConsumerGroupArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .controlPlaneId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .createdAt(0.0)\n            .enabled(false)\n            .gatewayPluginIpRestrictionId(\"...my_id...\")\n            .instanceName(\"...my_instance_name...\")\n            .ordering(GatewayPluginIpRestrictionOrderingArgs.builder()\n                .after(GatewayPluginIpRestrictionOrderingAfterArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .before(GatewayPluginIpRestrictionOrderingBeforeArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .build())\n            .partials(GatewayPluginIpRestrictionPartialArgs.builder()\n                .id(\"...my_id...\")\n                .name(\"...my_name...\")\n                .path(\"...my_path...\")\n                .build())\n            .protocols(\"tls\")\n            .route(GatewayPluginIpRestrictionRouteArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .service(GatewayPluginIpRestrictionServiceArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .tags(\"...\")\n            .updatedAt(9.0)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myGatewaypluginiprestriction:\n    type: konnect:GatewayPluginIpRestriction\n    name: my_gatewaypluginiprestriction\n    properties:\n      config:\n        allows:\n          - '...'\n        denies:\n          - '...'\n        message: '...my_message...'\n        status: 3.69\n      consumer:\n        id: '...my_id...'\n      consumerGroup:\n        id: '...my_id...'\n      controlPlaneId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      createdAt: 0\n      enabled: false\n      gatewayPluginIpRestrictionId: '...my_id...'\n      instanceName: '...my_instance_name...'\n      ordering:\n        after:\n          accesses:\n            - '...'\n        before:\n          accesses:\n            - '...'\n      partials:\n        - id: '...my_id...'\n          name: '...my_name...'\n          path: '...my_path...'\n      protocols:\n        - tls\n      route:\n        id: '...my_id...'\n      service:\n        id: '...my_id...'\n      tags:\n        - '...'\n      updatedAt: 9\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_gateway_plugin_ip_restriction.my_konnect_gateway_plugin_ip_restriction\n\n  id = jsonencode({\n\n    control_plane_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/gatewayPluginIpRestriction:GatewayPluginIpRestriction my_konnect_gateway_plugin_ip_restriction '{\"control_plane_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"}'\n```\n\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginIpRestrictionConfig:GatewayPluginIpRestrictionConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginIpRestrictionConsumer:GatewayPluginIpRestrictionConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"consumerGroup":{"$ref":"#/types/konnect:index%2FGatewayPluginIpRestrictionConsumerGroup:GatewayPluginIpRestrictionConsumerGroup","description":"If set, the plugin will activate only for requests where the specified consumer group has been authenticated. (Note that some plugins can not be restricted to consumers groups this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer Groups\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginIpRestrictionId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginIpRestrictionOrdering:GatewayPluginIpRestrictionOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginIpRestrictionPartial:GatewayPluginIpRestrictionPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\",\"tcp\",\"tls\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginIpRestrictionRoute:GatewayPluginIpRestrictionRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginIpRestrictionService:GatewayPluginIpRestrictionService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object","required":["config","consumer","consumerGroup","controlPlaneId","createdAt","enabled","gatewayPluginIpRestrictionId","ordering","protocols","route","service","updatedAt"],"inputProperties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginIpRestrictionConfig:GatewayPluginIpRestrictionConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginIpRestrictionConsumer:GatewayPluginIpRestrictionConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"consumerGroup":{"$ref":"#/types/konnect:index%2FGatewayPluginIpRestrictionConsumerGroup:GatewayPluginIpRestrictionConsumerGroup","description":"If set, the plugin will activate only for requests where the specified consumer group has been authenticated. (Note that some plugins can not be restricted to consumers groups this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer Groups\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginIpRestrictionId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginIpRestrictionOrdering:GatewayPluginIpRestrictionOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginIpRestrictionPartial:GatewayPluginIpRestrictionPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\",\"tcp\",\"tls\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginIpRestrictionRoute:GatewayPluginIpRestrictionRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginIpRestrictionService:GatewayPluginIpRestrictionService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"requiredInputs":["controlPlaneId"],"stateInputs":{"description":"Input properties used for looking up and filtering GatewayPluginIpRestriction resources.\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginIpRestrictionConfig:GatewayPluginIpRestrictionConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginIpRestrictionConsumer:GatewayPluginIpRestrictionConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"consumerGroup":{"$ref":"#/types/konnect:index%2FGatewayPluginIpRestrictionConsumerGroup:GatewayPluginIpRestrictionConsumerGroup","description":"If set, the plugin will activate only for requests where the specified consumer group has been authenticated. (Note that some plugins can not be restricted to consumers groups this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer Groups\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginIpRestrictionId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginIpRestrictionOrdering:GatewayPluginIpRestrictionOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginIpRestrictionPartial:GatewayPluginIpRestrictionPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\",\"tcp\",\"tls\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginIpRestrictionRoute:GatewayPluginIpRestrictionRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginIpRestrictionService:GatewayPluginIpRestrictionService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object"}},"konnect:index/gatewayPluginJq:GatewayPluginJq":{"description":"GatewayPluginJq Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myGatewaypluginjq = new konnect.GatewayPluginJq(\"my_gatewaypluginjq\", {\n    config: {\n        requestIfMediaTypes: [\"...\"],\n        requestJqProgram: \"...my_request_jq_program...\",\n        requestJqProgramOptions: {\n            asciiOutput: false,\n            compactOutput: false,\n            joinOutput: true,\n            rawOutput: true,\n            sortKeys: false,\n        },\n        responseIfMediaTypes: [\"...\"],\n        responseIfStatusCodes: [188],\n        responseJqProgram: \"...my_response_jq_program...\",\n        responseJqProgramOptions: {\n            asciiOutput: false,\n            compactOutput: true,\n            joinOutput: true,\n            rawOutput: false,\n            sortKeys: false,\n        },\n    },\n    consumer: {\n        id: \"...my_id...\",\n    },\n    controlPlaneId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    createdAt: 5,\n    enabled: false,\n    gatewayPluginJqId: \"...my_id...\",\n    instanceName: \"...my_instance_name...\",\n    ordering: {\n        after: {\n            accesses: [\"...\"],\n        },\n        before: {\n            accesses: [\"...\"],\n        },\n    },\n    partials: [{\n        id: \"...my_id...\",\n        name: \"...my_name...\",\n        path: \"...my_path...\",\n    }],\n    protocols: [\"grpcs\"],\n    route: {\n        id: \"...my_id...\",\n    },\n    service: {\n        id: \"...my_id...\",\n    },\n    tags: [\"...\"],\n    updatedAt: 1,\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_gatewaypluginjq = konnect.GatewayPluginJq(\"my_gatewaypluginjq\",\n    config={\n        \"request_if_media_types\": [\"...\"],\n        \"request_jq_program\": \"...my_request_jq_program...\",\n        \"request_jq_program_options\": {\n            \"ascii_output\": False,\n            \"compact_output\": False,\n            \"join_output\": True,\n            \"raw_output\": True,\n            \"sort_keys\": False,\n        },\n        \"response_if_media_types\": [\"...\"],\n        \"response_if_status_codes\": [188],\n        \"response_jq_program\": \"...my_response_jq_program...\",\n        \"response_jq_program_options\": {\n            \"ascii_output\": False,\n            \"compact_output\": True,\n            \"join_output\": True,\n            \"raw_output\": False,\n            \"sort_keys\": False,\n        },\n    },\n    consumer={\n        \"id\": \"...my_id...\",\n    },\n    control_plane_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    created_at=5,\n    enabled=False,\n    gateway_plugin_jq_id=\"...my_id...\",\n    instance_name=\"...my_instance_name...\",\n    ordering={\n        \"after\": {\n            \"accesses\": [\"...\"],\n        },\n        \"before\": {\n            \"accesses\": [\"...\"],\n        },\n    },\n    partials=[{\n        \"id\": \"...my_id...\",\n        \"name\": \"...my_name...\",\n        \"path\": \"...my_path...\",\n    }],\n    protocols=[\"grpcs\"],\n    route={\n        \"id\": \"...my_id...\",\n    },\n    service={\n        \"id\": \"...my_id...\",\n    },\n    tags=[\"...\"],\n    updated_at=1)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myGatewaypluginjq = new Konnect.GatewayPluginJq(\"my_gatewaypluginjq\", new()\n    {\n        Config = new Konnect.Inputs.GatewayPluginJqConfigArgs\n        {\n            RequestIfMediaTypes = new[]\n            {\n                \"...\",\n            },\n            RequestJqProgram = \"...my_request_jq_program...\",\n            RequestJqProgramOptions = new Konnect.Inputs.GatewayPluginJqConfigRequestJqProgramOptionsArgs\n            {\n                AsciiOutput = false,\n                CompactOutput = false,\n                JoinOutput = true,\n                RawOutput = true,\n                SortKeys = false,\n            },\n            ResponseIfMediaTypes = new[]\n            {\n                \"...\",\n            },\n            ResponseIfStatusCodes = new[]\n            {\n                188,\n            },\n            ResponseJqProgram = \"...my_response_jq_program...\",\n            ResponseJqProgramOptions = new Konnect.Inputs.GatewayPluginJqConfigResponseJqProgramOptionsArgs\n            {\n                AsciiOutput = false,\n                CompactOutput = true,\n                JoinOutput = true,\n                RawOutput = false,\n                SortKeys = false,\n            },\n        },\n        Consumer = new Konnect.Inputs.GatewayPluginJqConsumerArgs\n        {\n            Id = \"...my_id...\",\n        },\n        ControlPlaneId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        CreatedAt = 5,\n        Enabled = false,\n        GatewayPluginJqId = \"...my_id...\",\n        InstanceName = \"...my_instance_name...\",\n        Ordering = new Konnect.Inputs.GatewayPluginJqOrderingArgs\n        {\n            After = new Konnect.Inputs.GatewayPluginJqOrderingAfterArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n            Before = new Konnect.Inputs.GatewayPluginJqOrderingBeforeArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n        },\n        Partials = new[]\n        {\n            new Konnect.Inputs.GatewayPluginJqPartialArgs\n            {\n                Id = \"...my_id...\",\n                Name = \"...my_name...\",\n                Path = \"...my_path...\",\n            },\n        },\n        Protocols = new[]\n        {\n            \"grpcs\",\n        },\n        Route = new Konnect.Inputs.GatewayPluginJqRouteArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Service = new Konnect.Inputs.GatewayPluginJqServiceArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Tags = new[]\n        {\n            \"...\",\n        },\n        UpdatedAt = 1,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewGatewayPluginJq(ctx, \"my_gatewaypluginjq\", \u0026konnect.GatewayPluginJqArgs{\n\t\t\tConfig: \u0026konnect.GatewayPluginJqConfigArgs{\n\t\t\t\tRequestIfMediaTypes: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tRequestJqProgram: pulumi.String(\"...my_request_jq_program...\"),\n\t\t\t\tRequestJqProgramOptions: \u0026konnect.GatewayPluginJqConfigRequestJqProgramOptionsArgs{\n\t\t\t\t\tAsciiOutput:   pulumi.Bool(false),\n\t\t\t\t\tCompactOutput: pulumi.Bool(false),\n\t\t\t\t\tJoinOutput:    pulumi.Bool(true),\n\t\t\t\t\tRawOutput:     pulumi.Bool(true),\n\t\t\t\t\tSortKeys:      pulumi.Bool(false),\n\t\t\t\t},\n\t\t\t\tResponseIfMediaTypes: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tResponseIfStatusCodes: pulumi.Float64Array{\n\t\t\t\t\tpulumi.Float64(188),\n\t\t\t\t},\n\t\t\t\tResponseJqProgram: pulumi.String(\"...my_response_jq_program...\"),\n\t\t\t\tResponseJqProgramOptions: \u0026konnect.GatewayPluginJqConfigResponseJqProgramOptionsArgs{\n\t\t\t\t\tAsciiOutput:   pulumi.Bool(false),\n\t\t\t\t\tCompactOutput: pulumi.Bool(true),\n\t\t\t\t\tJoinOutput:    pulumi.Bool(true),\n\t\t\t\t\tRawOutput:     pulumi.Bool(false),\n\t\t\t\t\tSortKeys:      pulumi.Bool(false),\n\t\t\t\t},\n\t\t\t},\n\t\t\tConsumer: \u0026konnect.GatewayPluginJqConsumerArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tControlPlaneId:    pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tCreatedAt:         pulumi.Float64(5),\n\t\t\tEnabled:           pulumi.Bool(false),\n\t\t\tGatewayPluginJqId: pulumi.String(\"...my_id...\"),\n\t\t\tInstanceName:      pulumi.String(\"...my_instance_name...\"),\n\t\t\tOrdering: \u0026konnect.GatewayPluginJqOrderingArgs{\n\t\t\t\tAfter: \u0026konnect.GatewayPluginJqOrderingAfterArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tBefore: \u0026konnect.GatewayPluginJqOrderingBeforeArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tPartials: konnect.GatewayPluginJqPartialArray{\n\t\t\t\t\u0026konnect.GatewayPluginJqPartialArgs{\n\t\t\t\t\tId:   pulumi.String(\"...my_id...\"),\n\t\t\t\t\tName: pulumi.String(\"...my_name...\"),\n\t\t\t\t\tPath: pulumi.String(\"...my_path...\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tProtocols: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"grpcs\"),\n\t\t\t},\n\t\t\tRoute: \u0026konnect.GatewayPluginJqRouteArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tService: \u0026konnect.GatewayPluginJqServiceArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"...\"),\n\t\t\t},\n\t\t\tUpdatedAt: pulumi.Float64(1),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.GatewayPluginJq;\nimport com.pulumi.konnect.GatewayPluginJqArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginJqConfigArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginJqConfigRequestJqProgramOptionsArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginJqConfigResponseJqProgramOptionsArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginJqConsumerArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginJqOrderingArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginJqOrderingAfterArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginJqOrderingBeforeArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginJqPartialArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginJqRouteArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginJqServiceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myGatewaypluginjq = new GatewayPluginJq(\"myGatewaypluginjq\", GatewayPluginJqArgs.builder()\n            .config(GatewayPluginJqConfigArgs.builder()\n                .requestIfMediaTypes(\"...\")\n                .requestJqProgram(\"...my_request_jq_program...\")\n                .requestJqProgramOptions(GatewayPluginJqConfigRequestJqProgramOptionsArgs.builder()\n                    .asciiOutput(false)\n                    .compactOutput(false)\n                    .joinOutput(true)\n                    .rawOutput(true)\n                    .sortKeys(false)\n                    .build())\n                .responseIfMediaTypes(\"...\")\n                .responseIfStatusCodes(188.0)\n                .responseJqProgram(\"...my_response_jq_program...\")\n                .responseJqProgramOptions(GatewayPluginJqConfigResponseJqProgramOptionsArgs.builder()\n                    .asciiOutput(false)\n                    .compactOutput(true)\n                    .joinOutput(true)\n                    .rawOutput(false)\n                    .sortKeys(false)\n                    .build())\n                .build())\n            .consumer(GatewayPluginJqConsumerArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .controlPlaneId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .createdAt(5.0)\n            .enabled(false)\n            .gatewayPluginJqId(\"...my_id...\")\n            .instanceName(\"...my_instance_name...\")\n            .ordering(GatewayPluginJqOrderingArgs.builder()\n                .after(GatewayPluginJqOrderingAfterArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .before(GatewayPluginJqOrderingBeforeArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .build())\n            .partials(GatewayPluginJqPartialArgs.builder()\n                .id(\"...my_id...\")\n                .name(\"...my_name...\")\n                .path(\"...my_path...\")\n                .build())\n            .protocols(\"grpcs\")\n            .route(GatewayPluginJqRouteArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .service(GatewayPluginJqServiceArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .tags(\"...\")\n            .updatedAt(1.0)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myGatewaypluginjq:\n    type: konnect:GatewayPluginJq\n    name: my_gatewaypluginjq\n    properties:\n      config:\n        requestIfMediaTypes:\n          - '...'\n        requestJqProgram: '...my_request_jq_program...'\n        requestJqProgramOptions:\n          asciiOutput: false\n          compactOutput: false\n          joinOutput: true\n          rawOutput: true\n          sortKeys: false\n        responseIfMediaTypes:\n          - '...'\n        responseIfStatusCodes:\n          - 188\n        responseJqProgram: '...my_response_jq_program...'\n        responseJqProgramOptions:\n          asciiOutput: false\n          compactOutput: true\n          joinOutput: true\n          rawOutput: false\n          sortKeys: false\n      consumer:\n        id: '...my_id...'\n      controlPlaneId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      createdAt: 5\n      enabled: false\n      gatewayPluginJqId: '...my_id...'\n      instanceName: '...my_instance_name...'\n      ordering:\n        after:\n          accesses:\n            - '...'\n        before:\n          accesses:\n            - '...'\n      partials:\n        - id: '...my_id...'\n          name: '...my_name...'\n          path: '...my_path...'\n      protocols:\n        - grpcs\n      route:\n        id: '...my_id...'\n      service:\n        id: '...my_id...'\n      tags:\n        - '...'\n      updatedAt: 1\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_gateway_plugin_jq.my_konnect_gateway_plugin_jq\n\n  id = jsonencode({\n\n    control_plane_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/gatewayPluginJq:GatewayPluginJq my_konnect_gateway_plugin_jq '{\"control_plane_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"}'\n```\n\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginJqConfig:GatewayPluginJqConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginJqConsumer:GatewayPluginJqConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginJqId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginJqOrdering:GatewayPluginJqOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginJqPartial:GatewayPluginJqPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginJqRoute:GatewayPluginJqRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginJqService:GatewayPluginJqService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object","required":["config","consumer","controlPlaneId","createdAt","enabled","gatewayPluginJqId","ordering","protocols","route","service","updatedAt"],"inputProperties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginJqConfig:GatewayPluginJqConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginJqConsumer:GatewayPluginJqConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginJqId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginJqOrdering:GatewayPluginJqOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginJqPartial:GatewayPluginJqPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginJqRoute:GatewayPluginJqRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginJqService:GatewayPluginJqService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"requiredInputs":["controlPlaneId"],"stateInputs":{"description":"Input properties used for looking up and filtering GatewayPluginJq resources.\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginJqConfig:GatewayPluginJqConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginJqConsumer:GatewayPluginJqConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginJqId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginJqOrdering:GatewayPluginJqOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginJqPartial:GatewayPluginJqPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginJqRoute:GatewayPluginJqRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginJqService:GatewayPluginJqService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object"}},"konnect:index/gatewayPluginJsonThreatProtection:GatewayPluginJsonThreatProtection":{"description":"GatewayPluginJSONThreatProtection Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myGatewaypluginjsonthreatprotection = new konnect.GatewayPluginJsonThreatProtection(\"my_gatewaypluginjsonthreatprotection\", {\n    config: {\n        allowDuplicateObjectEntryName: false,\n        enforcementMode: \"log_only\",\n        errorMessage: \"...my_error_message...\",\n        errorStatusCode: 434,\n        maxArrayElementCount: 96675195,\n        maxBodySize: 99378519,\n        maxContainerDepth: 2031079601,\n        maxObjectEntryCount: 916870322,\n        maxObjectEntryNameLength: 1383216872,\n        maxStringValueLength: 1149380350,\n    },\n    controlPlaneId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    createdAt: 6,\n    enabled: false,\n    gatewayPluginJsonThreatProtectionId: \"...my_id...\",\n    instanceName: \"...my_instance_name...\",\n    ordering: {\n        after: {\n            accesses: [\"...\"],\n        },\n        before: {\n            accesses: [\"...\"],\n        },\n    },\n    partials: [{\n        id: \"...my_id...\",\n        name: \"...my_name...\",\n        path: \"...my_path...\",\n    }],\n    protocols: [\"grpc\"],\n    route: {\n        id: \"...my_id...\",\n    },\n    service: {\n        id: \"...my_id...\",\n    },\n    tags: [\"...\"],\n    updatedAt: 9,\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_gatewaypluginjsonthreatprotection = konnect.GatewayPluginJsonThreatProtection(\"my_gatewaypluginjsonthreatprotection\",\n    config={\n        \"allow_duplicate_object_entry_name\": False,\n        \"enforcement_mode\": \"log_only\",\n        \"error_message\": \"...my_error_message...\",\n        \"error_status_code\": 434,\n        \"max_array_element_count\": 96675195,\n        \"max_body_size\": 99378519,\n        \"max_container_depth\": 2031079601,\n        \"max_object_entry_count\": 916870322,\n        \"max_object_entry_name_length\": 1383216872,\n        \"max_string_value_length\": 1149380350,\n    },\n    control_plane_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    created_at=6,\n    enabled=False,\n    gateway_plugin_json_threat_protection_id=\"...my_id...\",\n    instance_name=\"...my_instance_name...\",\n    ordering={\n        \"after\": {\n            \"accesses\": [\"...\"],\n        },\n        \"before\": {\n            \"accesses\": [\"...\"],\n        },\n    },\n    partials=[{\n        \"id\": \"...my_id...\",\n        \"name\": \"...my_name...\",\n        \"path\": \"...my_path...\",\n    }],\n    protocols=[\"grpc\"],\n    route={\n        \"id\": \"...my_id...\",\n    },\n    service={\n        \"id\": \"...my_id...\",\n    },\n    tags=[\"...\"],\n    updated_at=9)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myGatewaypluginjsonthreatprotection = new Konnect.GatewayPluginJsonThreatProtection(\"my_gatewaypluginjsonthreatprotection\", new()\n    {\n        Config = new Konnect.Inputs.GatewayPluginJsonThreatProtectionConfigArgs\n        {\n            AllowDuplicateObjectEntryName = false,\n            EnforcementMode = \"log_only\",\n            ErrorMessage = \"...my_error_message...\",\n            ErrorStatusCode = 434,\n            MaxArrayElementCount = 96675195,\n            MaxBodySize = 99378519,\n            MaxContainerDepth = 2031079601,\n            MaxObjectEntryCount = 916870322,\n            MaxObjectEntryNameLength = 1383216872,\n            MaxStringValueLength = 1149380350,\n        },\n        ControlPlaneId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        CreatedAt = 6,\n        Enabled = false,\n        GatewayPluginJsonThreatProtectionId = \"...my_id...\",\n        InstanceName = \"...my_instance_name...\",\n        Ordering = new Konnect.Inputs.GatewayPluginJsonThreatProtectionOrderingArgs\n        {\n            After = new Konnect.Inputs.GatewayPluginJsonThreatProtectionOrderingAfterArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n            Before = new Konnect.Inputs.GatewayPluginJsonThreatProtectionOrderingBeforeArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n        },\n        Partials = new[]\n        {\n            new Konnect.Inputs.GatewayPluginJsonThreatProtectionPartialArgs\n            {\n                Id = \"...my_id...\",\n                Name = \"...my_name...\",\n                Path = \"...my_path...\",\n            },\n        },\n        Protocols = new[]\n        {\n            \"grpc\",\n        },\n        Route = new Konnect.Inputs.GatewayPluginJsonThreatProtectionRouteArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Service = new Konnect.Inputs.GatewayPluginJsonThreatProtectionServiceArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Tags = new[]\n        {\n            \"...\",\n        },\n        UpdatedAt = 9,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewGatewayPluginJsonThreatProtection(ctx, \"my_gatewaypluginjsonthreatprotection\", \u0026konnect.GatewayPluginJsonThreatProtectionArgs{\n\t\t\tConfig: \u0026konnect.GatewayPluginJsonThreatProtectionConfigArgs{\n\t\t\t\tAllowDuplicateObjectEntryName: pulumi.Bool(false),\n\t\t\t\tEnforcementMode:               pulumi.String(\"log_only\"),\n\t\t\t\tErrorMessage:                  pulumi.String(\"...my_error_message...\"),\n\t\t\t\tErrorStatusCode:               pulumi.Float64(434),\n\t\t\t\tMaxArrayElementCount:          pulumi.Float64(96675195),\n\t\t\t\tMaxBodySize:                   pulumi.Float64(99378519),\n\t\t\t\tMaxContainerDepth:             pulumi.Float64(2031079601),\n\t\t\t\tMaxObjectEntryCount:           pulumi.Float64(916870322),\n\t\t\t\tMaxObjectEntryNameLength:      pulumi.Float64(1383216872),\n\t\t\t\tMaxStringValueLength:          pulumi.Float64(1149380350),\n\t\t\t},\n\t\t\tControlPlaneId:                      pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tCreatedAt:                           pulumi.Float64(6),\n\t\t\tEnabled:                             pulumi.Bool(false),\n\t\t\tGatewayPluginJsonThreatProtectionId: pulumi.String(\"...my_id...\"),\n\t\t\tInstanceName:                        pulumi.String(\"...my_instance_name...\"),\n\t\t\tOrdering: \u0026konnect.GatewayPluginJsonThreatProtectionOrderingArgs{\n\t\t\t\tAfter: \u0026konnect.GatewayPluginJsonThreatProtectionOrderingAfterArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tBefore: \u0026konnect.GatewayPluginJsonThreatProtectionOrderingBeforeArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tPartials: konnect.GatewayPluginJsonThreatProtectionPartialArray{\n\t\t\t\t\u0026konnect.GatewayPluginJsonThreatProtectionPartialArgs{\n\t\t\t\t\tId:   pulumi.String(\"...my_id...\"),\n\t\t\t\t\tName: pulumi.String(\"...my_name...\"),\n\t\t\t\t\tPath: pulumi.String(\"...my_path...\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tProtocols: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"grpc\"),\n\t\t\t},\n\t\t\tRoute: \u0026konnect.GatewayPluginJsonThreatProtectionRouteArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tService: \u0026konnect.GatewayPluginJsonThreatProtectionServiceArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"...\"),\n\t\t\t},\n\t\t\tUpdatedAt: pulumi.Float64(9),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.GatewayPluginJsonThreatProtection;\nimport com.pulumi.konnect.GatewayPluginJsonThreatProtectionArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginJsonThreatProtectionConfigArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginJsonThreatProtectionOrderingArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginJsonThreatProtectionOrderingAfterArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginJsonThreatProtectionOrderingBeforeArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginJsonThreatProtectionPartialArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginJsonThreatProtectionRouteArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginJsonThreatProtectionServiceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myGatewaypluginjsonthreatprotection = new GatewayPluginJsonThreatProtection(\"myGatewaypluginjsonthreatprotection\", GatewayPluginJsonThreatProtectionArgs.builder()\n            .config(GatewayPluginJsonThreatProtectionConfigArgs.builder()\n                .allowDuplicateObjectEntryName(false)\n                .enforcementMode(\"log_only\")\n                .errorMessage(\"...my_error_message...\")\n                .errorStatusCode(434.0)\n                .maxArrayElementCount(96675195.0)\n                .maxBodySize(99378519.0)\n                .maxContainerDepth(2031079601.0)\n                .maxObjectEntryCount(916870322.0)\n                .maxObjectEntryNameLength(1383216872.0)\n                .maxStringValueLength(1149380350.0)\n                .build())\n            .controlPlaneId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .createdAt(6.0)\n            .enabled(false)\n            .gatewayPluginJsonThreatProtectionId(\"...my_id...\")\n            .instanceName(\"...my_instance_name...\")\n            .ordering(GatewayPluginJsonThreatProtectionOrderingArgs.builder()\n                .after(GatewayPluginJsonThreatProtectionOrderingAfterArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .before(GatewayPluginJsonThreatProtectionOrderingBeforeArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .build())\n            .partials(GatewayPluginJsonThreatProtectionPartialArgs.builder()\n                .id(\"...my_id...\")\n                .name(\"...my_name...\")\n                .path(\"...my_path...\")\n                .build())\n            .protocols(\"grpc\")\n            .route(GatewayPluginJsonThreatProtectionRouteArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .service(GatewayPluginJsonThreatProtectionServiceArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .tags(\"...\")\n            .updatedAt(9.0)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myGatewaypluginjsonthreatprotection:\n    type: konnect:GatewayPluginJsonThreatProtection\n    name: my_gatewaypluginjsonthreatprotection\n    properties:\n      config:\n        allowDuplicateObjectEntryName: false\n        enforcementMode: log_only\n        errorMessage: '...my_error_message...'\n        errorStatusCode: 434\n        maxArrayElementCount: 9.6675195e+07\n        maxBodySize: 9.9378519e+07\n        maxContainerDepth: 2.031079601e+09\n        maxObjectEntryCount: 9.16870322e+08\n        maxObjectEntryNameLength: 1.383216872e+09\n        maxStringValueLength: 1.14938035e+09\n      controlPlaneId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      createdAt: 6\n      enabled: false\n      gatewayPluginJsonThreatProtectionId: '...my_id...'\n      instanceName: '...my_instance_name...'\n      ordering:\n        after:\n          accesses:\n            - '...'\n        before:\n          accesses:\n            - '...'\n      partials:\n        - id: '...my_id...'\n          name: '...my_name...'\n          path: '...my_path...'\n      protocols:\n        - grpc\n      route:\n        id: '...my_id...'\n      service:\n        id: '...my_id...'\n      tags:\n        - '...'\n      updatedAt: 9\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_gateway_plugin_json_threat_protection.my_konnect_gateway_plugin_json_threat_protection\n\n  id = jsonencode({\n\n    control_plane_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/gatewayPluginJsonThreatProtection:GatewayPluginJsonThreatProtection my_konnect_gateway_plugin_json_threat_protection '{\"control_plane_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"}'\n```\n\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginJsonThreatProtectionConfig:GatewayPluginJsonThreatProtectionConfig"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginJsonThreatProtectionId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginJsonThreatProtectionOrdering:GatewayPluginJsonThreatProtectionOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginJsonThreatProtectionPartial:GatewayPluginJsonThreatProtectionPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginJsonThreatProtectionRoute:GatewayPluginJsonThreatProtectionRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginJsonThreatProtectionService:GatewayPluginJsonThreatProtectionService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object","required":["config","controlPlaneId","createdAt","enabled","gatewayPluginJsonThreatProtectionId","ordering","protocols","route","service","updatedAt"],"inputProperties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginJsonThreatProtectionConfig:GatewayPluginJsonThreatProtectionConfig"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginJsonThreatProtectionId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginJsonThreatProtectionOrdering:GatewayPluginJsonThreatProtectionOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginJsonThreatProtectionPartial:GatewayPluginJsonThreatProtectionPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginJsonThreatProtectionRoute:GatewayPluginJsonThreatProtectionRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginJsonThreatProtectionService:GatewayPluginJsonThreatProtectionService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"requiredInputs":["controlPlaneId"],"stateInputs":{"description":"Input properties used for looking up and filtering GatewayPluginJsonThreatProtection resources.\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginJsonThreatProtectionConfig:GatewayPluginJsonThreatProtectionConfig"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginJsonThreatProtectionId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginJsonThreatProtectionOrdering:GatewayPluginJsonThreatProtectionOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginJsonThreatProtectionPartial:GatewayPluginJsonThreatProtectionPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginJsonThreatProtectionRoute:GatewayPluginJsonThreatProtectionRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginJsonThreatProtectionService:GatewayPluginJsonThreatProtectionService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object"}},"konnect:index/gatewayPluginJweDecrypt:GatewayPluginJweDecrypt":{"description":"GatewayPluginJweDecrypt Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myGatewaypluginjwedecrypt = new konnect.GatewayPluginJweDecrypt(\"my_gatewaypluginjwedecrypt\", {\n    config: {\n        forwardHeaderName: \"...my_forward_header_name...\",\n        keySets: [\"...\"],\n        lookupHeaderName: \"...my_lookup_header_name...\",\n        strict: true,\n    },\n    controlPlaneId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    createdAt: 8,\n    enabled: true,\n    gatewayPluginJweDecryptId: \"...my_id...\",\n    instanceName: \"...my_instance_name...\",\n    ordering: {\n        after: {\n            accesses: [\"...\"],\n        },\n        before: {\n            accesses: [\"...\"],\n        },\n    },\n    partials: [{\n        id: \"...my_id...\",\n        name: \"...my_name...\",\n        path: \"...my_path...\",\n    }],\n    protocols: [\"https\"],\n    route: {\n        id: \"...my_id...\",\n    },\n    service: {\n        id: \"...my_id...\",\n    },\n    tags: [\"...\"],\n    updatedAt: 2,\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_gatewaypluginjwedecrypt = konnect.GatewayPluginJweDecrypt(\"my_gatewaypluginjwedecrypt\",\n    config={\n        \"forward_header_name\": \"...my_forward_header_name...\",\n        \"key_sets\": [\"...\"],\n        \"lookup_header_name\": \"...my_lookup_header_name...\",\n        \"strict\": True,\n    },\n    control_plane_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    created_at=8,\n    enabled=True,\n    gateway_plugin_jwe_decrypt_id=\"...my_id...\",\n    instance_name=\"...my_instance_name...\",\n    ordering={\n        \"after\": {\n            \"accesses\": [\"...\"],\n        },\n        \"before\": {\n            \"accesses\": [\"...\"],\n        },\n    },\n    partials=[{\n        \"id\": \"...my_id...\",\n        \"name\": \"...my_name...\",\n        \"path\": \"...my_path...\",\n    }],\n    protocols=[\"https\"],\n    route={\n        \"id\": \"...my_id...\",\n    },\n    service={\n        \"id\": \"...my_id...\",\n    },\n    tags=[\"...\"],\n    updated_at=2)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myGatewaypluginjwedecrypt = new Konnect.GatewayPluginJweDecrypt(\"my_gatewaypluginjwedecrypt\", new()\n    {\n        Config = new Konnect.Inputs.GatewayPluginJweDecryptConfigArgs\n        {\n            ForwardHeaderName = \"...my_forward_header_name...\",\n            KeySets = new[]\n            {\n                \"...\",\n            },\n            LookupHeaderName = \"...my_lookup_header_name...\",\n            Strict = true,\n        },\n        ControlPlaneId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        CreatedAt = 8,\n        Enabled = true,\n        GatewayPluginJweDecryptId = \"...my_id...\",\n        InstanceName = \"...my_instance_name...\",\n        Ordering = new Konnect.Inputs.GatewayPluginJweDecryptOrderingArgs\n        {\n            After = new Konnect.Inputs.GatewayPluginJweDecryptOrderingAfterArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n            Before = new Konnect.Inputs.GatewayPluginJweDecryptOrderingBeforeArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n        },\n        Partials = new[]\n        {\n            new Konnect.Inputs.GatewayPluginJweDecryptPartialArgs\n            {\n                Id = \"...my_id...\",\n                Name = \"...my_name...\",\n                Path = \"...my_path...\",\n            },\n        },\n        Protocols = new[]\n        {\n            \"https\",\n        },\n        Route = new Konnect.Inputs.GatewayPluginJweDecryptRouteArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Service = new Konnect.Inputs.GatewayPluginJweDecryptServiceArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Tags = new[]\n        {\n            \"...\",\n        },\n        UpdatedAt = 2,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewGatewayPluginJweDecrypt(ctx, \"my_gatewaypluginjwedecrypt\", \u0026konnect.GatewayPluginJweDecryptArgs{\n\t\t\tConfig: \u0026konnect.GatewayPluginJweDecryptConfigArgs{\n\t\t\t\tForwardHeaderName: pulumi.String(\"...my_forward_header_name...\"),\n\t\t\t\tKeySets: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tLookupHeaderName: pulumi.String(\"...my_lookup_header_name...\"),\n\t\t\t\tStrict:           pulumi.Bool(true),\n\t\t\t},\n\t\t\tControlPlaneId:            pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tCreatedAt:                 pulumi.Float64(8),\n\t\t\tEnabled:                   pulumi.Bool(true),\n\t\t\tGatewayPluginJweDecryptId: pulumi.String(\"...my_id...\"),\n\t\t\tInstanceName:              pulumi.String(\"...my_instance_name...\"),\n\t\t\tOrdering: \u0026konnect.GatewayPluginJweDecryptOrderingArgs{\n\t\t\t\tAfter: \u0026konnect.GatewayPluginJweDecryptOrderingAfterArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tBefore: \u0026konnect.GatewayPluginJweDecryptOrderingBeforeArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tPartials: konnect.GatewayPluginJweDecryptPartialArray{\n\t\t\t\t\u0026konnect.GatewayPluginJweDecryptPartialArgs{\n\t\t\t\t\tId:   pulumi.String(\"...my_id...\"),\n\t\t\t\t\tName: pulumi.String(\"...my_name...\"),\n\t\t\t\t\tPath: pulumi.String(\"...my_path...\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tProtocols: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"https\"),\n\t\t\t},\n\t\t\tRoute: \u0026konnect.GatewayPluginJweDecryptRouteArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tService: \u0026konnect.GatewayPluginJweDecryptServiceArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"...\"),\n\t\t\t},\n\t\t\tUpdatedAt: pulumi.Float64(2),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.GatewayPluginJweDecrypt;\nimport com.pulumi.konnect.GatewayPluginJweDecryptArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginJweDecryptConfigArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginJweDecryptOrderingArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginJweDecryptOrderingAfterArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginJweDecryptOrderingBeforeArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginJweDecryptPartialArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginJweDecryptRouteArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginJweDecryptServiceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myGatewaypluginjwedecrypt = new GatewayPluginJweDecrypt(\"myGatewaypluginjwedecrypt\", GatewayPluginJweDecryptArgs.builder()\n            .config(GatewayPluginJweDecryptConfigArgs.builder()\n                .forwardHeaderName(\"...my_forward_header_name...\")\n                .keySets(\"...\")\n                .lookupHeaderName(\"...my_lookup_header_name...\")\n                .strict(true)\n                .build())\n            .controlPlaneId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .createdAt(8.0)\n            .enabled(true)\n            .gatewayPluginJweDecryptId(\"...my_id...\")\n            .instanceName(\"...my_instance_name...\")\n            .ordering(GatewayPluginJweDecryptOrderingArgs.builder()\n                .after(GatewayPluginJweDecryptOrderingAfterArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .before(GatewayPluginJweDecryptOrderingBeforeArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .build())\n            .partials(GatewayPluginJweDecryptPartialArgs.builder()\n                .id(\"...my_id...\")\n                .name(\"...my_name...\")\n                .path(\"...my_path...\")\n                .build())\n            .protocols(\"https\")\n            .route(GatewayPluginJweDecryptRouteArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .service(GatewayPluginJweDecryptServiceArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .tags(\"...\")\n            .updatedAt(2.0)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myGatewaypluginjwedecrypt:\n    type: konnect:GatewayPluginJweDecrypt\n    name: my_gatewaypluginjwedecrypt\n    properties:\n      config:\n        forwardHeaderName: '...my_forward_header_name...'\n        keySets:\n          - '...'\n        lookupHeaderName: '...my_lookup_header_name...'\n        strict: true\n      controlPlaneId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      createdAt: 8\n      enabled: true\n      gatewayPluginJweDecryptId: '...my_id...'\n      instanceName: '...my_instance_name...'\n      ordering:\n        after:\n          accesses:\n            - '...'\n        before:\n          accesses:\n            - '...'\n      partials:\n        - id: '...my_id...'\n          name: '...my_name...'\n          path: '...my_path...'\n      protocols:\n        - https\n      route:\n        id: '...my_id...'\n      service:\n        id: '...my_id...'\n      tags:\n        - '...'\n      updatedAt: 2\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_gateway_plugin_jwe_decrypt.my_konnect_gateway_plugin_jwe_decrypt\n\n  id = jsonencode({\n\n    control_plane_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/gatewayPluginJweDecrypt:GatewayPluginJweDecrypt my_konnect_gateway_plugin_jwe_decrypt '{\"control_plane_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"}'\n```\n\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginJweDecryptConfig:GatewayPluginJweDecryptConfig"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginJweDecryptId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginJweDecryptOrdering:GatewayPluginJweDecryptOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginJweDecryptPartial:GatewayPluginJweDecryptPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginJweDecryptRoute:GatewayPluginJweDecryptRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginJweDecryptService:GatewayPluginJweDecryptService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object","required":["config","controlPlaneId","createdAt","enabled","gatewayPluginJweDecryptId","ordering","protocols","route","service","updatedAt"],"inputProperties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginJweDecryptConfig:GatewayPluginJweDecryptConfig"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginJweDecryptId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginJweDecryptOrdering:GatewayPluginJweDecryptOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginJweDecryptPartial:GatewayPluginJweDecryptPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginJweDecryptRoute:GatewayPluginJweDecryptRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginJweDecryptService:GatewayPluginJweDecryptService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"requiredInputs":["config","controlPlaneId"],"stateInputs":{"description":"Input properties used for looking up and filtering GatewayPluginJweDecrypt resources.\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginJweDecryptConfig:GatewayPluginJweDecryptConfig"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginJweDecryptId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginJweDecryptOrdering:GatewayPluginJweDecryptOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginJweDecryptPartial:GatewayPluginJweDecryptPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginJweDecryptRoute:GatewayPluginJweDecryptRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginJweDecryptService:GatewayPluginJweDecryptService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object"}},"konnect:index/gatewayPluginJwt:GatewayPluginJwt":{"description":"GatewayPluginJwt Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myGatewaypluginjwt = new konnect.GatewayPluginJwt(\"my_gatewaypluginjwt\", {\n    config: {\n        anonymous: \"...my_anonymous...\",\n        claimsToVerifies: [\"exp\"],\n        cookieNames: [\"...\"],\n        headerNames: [\"...\"],\n        keyClaimName: \"...my_key_claim_name...\",\n        maximumExpiration: 2.49057258e+07,\n        realm: \"...my_realm...\",\n        runOnPreflight: true,\n        secretIsBase64: false,\n        uriParamNames: [\"...\"],\n    },\n    controlPlaneId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    createdAt: 3,\n    enabled: true,\n    gatewayPluginJwtId: \"...my_id...\",\n    instanceName: \"...my_instance_name...\",\n    ordering: {\n        after: {\n            accesses: [\"...\"],\n        },\n        before: {\n            accesses: [\"...\"],\n        },\n    },\n    partials: [{\n        id: \"...my_id...\",\n        name: \"...my_name...\",\n        path: \"...my_path...\",\n    }],\n    protocols: [\"https\"],\n    route: {\n        id: \"...my_id...\",\n    },\n    service: {\n        id: \"...my_id...\",\n    },\n    tags: [\"...\"],\n    updatedAt: 9,\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_gatewaypluginjwt = konnect.GatewayPluginJwt(\"my_gatewaypluginjwt\",\n    config={\n        \"anonymous\": \"...my_anonymous...\",\n        \"claims_to_verifies\": [\"exp\"],\n        \"cookie_names\": [\"...\"],\n        \"header_names\": [\"...\"],\n        \"key_claim_name\": \"...my_key_claim_name...\",\n        \"maximum_expiration\": 2.49057258e+07,\n        \"realm\": \"...my_realm...\",\n        \"run_on_preflight\": True,\n        \"secret_is_base64\": False,\n        \"uri_param_names\": [\"...\"],\n    },\n    control_plane_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    created_at=3,\n    enabled=True,\n    gateway_plugin_jwt_id=\"...my_id...\",\n    instance_name=\"...my_instance_name...\",\n    ordering={\n        \"after\": {\n            \"accesses\": [\"...\"],\n        },\n        \"before\": {\n            \"accesses\": [\"...\"],\n        },\n    },\n    partials=[{\n        \"id\": \"...my_id...\",\n        \"name\": \"...my_name...\",\n        \"path\": \"...my_path...\",\n    }],\n    protocols=[\"https\"],\n    route={\n        \"id\": \"...my_id...\",\n    },\n    service={\n        \"id\": \"...my_id...\",\n    },\n    tags=[\"...\"],\n    updated_at=9)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myGatewaypluginjwt = new Konnect.GatewayPluginJwt(\"my_gatewaypluginjwt\", new()\n    {\n        Config = new Konnect.Inputs.GatewayPluginJwtConfigArgs\n        {\n            Anonymous = \"...my_anonymous...\",\n            ClaimsToVerifies = new[]\n            {\n                \"exp\",\n            },\n            CookieNames = new[]\n            {\n                \"...\",\n            },\n            HeaderNames = new[]\n            {\n                \"...\",\n            },\n            KeyClaimName = \"...my_key_claim_name...\",\n            MaximumExpiration = 2.49057258e+07,\n            Realm = \"...my_realm...\",\n            RunOnPreflight = true,\n            SecretIsBase64 = false,\n            UriParamNames = new[]\n            {\n                \"...\",\n            },\n        },\n        ControlPlaneId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        CreatedAt = 3,\n        Enabled = true,\n        GatewayPluginJwtId = \"...my_id...\",\n        InstanceName = \"...my_instance_name...\",\n        Ordering = new Konnect.Inputs.GatewayPluginJwtOrderingArgs\n        {\n            After = new Konnect.Inputs.GatewayPluginJwtOrderingAfterArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n            Before = new Konnect.Inputs.GatewayPluginJwtOrderingBeforeArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n        },\n        Partials = new[]\n        {\n            new Konnect.Inputs.GatewayPluginJwtPartialArgs\n            {\n                Id = \"...my_id...\",\n                Name = \"...my_name...\",\n                Path = \"...my_path...\",\n            },\n        },\n        Protocols = new[]\n        {\n            \"https\",\n        },\n        Route = new Konnect.Inputs.GatewayPluginJwtRouteArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Service = new Konnect.Inputs.GatewayPluginJwtServiceArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Tags = new[]\n        {\n            \"...\",\n        },\n        UpdatedAt = 9,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewGatewayPluginJwt(ctx, \"my_gatewaypluginjwt\", \u0026konnect.GatewayPluginJwtArgs{\n\t\t\tConfig: \u0026konnect.GatewayPluginJwtConfigArgs{\n\t\t\t\tAnonymous: pulumi.String(\"...my_anonymous...\"),\n\t\t\t\tClaimsToVerifies: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"exp\"),\n\t\t\t\t},\n\t\t\t\tCookieNames: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tHeaderNames: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tKeyClaimName:      pulumi.String(\"...my_key_claim_name...\"),\n\t\t\t\tMaximumExpiration: pulumi.Float64(2.49057258e+07),\n\t\t\t\tRealm:             pulumi.String(\"...my_realm...\"),\n\t\t\t\tRunOnPreflight:    pulumi.Bool(true),\n\t\t\t\tSecretIsBase64:    pulumi.Bool(false),\n\t\t\t\tUriParamNames: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tControlPlaneId:     pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tCreatedAt:          pulumi.Float64(3),\n\t\t\tEnabled:            pulumi.Bool(true),\n\t\t\tGatewayPluginJwtId: pulumi.String(\"...my_id...\"),\n\t\t\tInstanceName:       pulumi.String(\"...my_instance_name...\"),\n\t\t\tOrdering: \u0026konnect.GatewayPluginJwtOrderingArgs{\n\t\t\t\tAfter: \u0026konnect.GatewayPluginJwtOrderingAfterArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tBefore: \u0026konnect.GatewayPluginJwtOrderingBeforeArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tPartials: konnect.GatewayPluginJwtPartialArray{\n\t\t\t\t\u0026konnect.GatewayPluginJwtPartialArgs{\n\t\t\t\t\tId:   pulumi.String(\"...my_id...\"),\n\t\t\t\t\tName: pulumi.String(\"...my_name...\"),\n\t\t\t\t\tPath: pulumi.String(\"...my_path...\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tProtocols: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"https\"),\n\t\t\t},\n\t\t\tRoute: \u0026konnect.GatewayPluginJwtRouteArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tService: \u0026konnect.GatewayPluginJwtServiceArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"...\"),\n\t\t\t},\n\t\t\tUpdatedAt: pulumi.Float64(9),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.GatewayPluginJwt;\nimport com.pulumi.konnect.GatewayPluginJwtArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginJwtConfigArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginJwtOrderingArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginJwtOrderingAfterArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginJwtOrderingBeforeArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginJwtPartialArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginJwtRouteArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginJwtServiceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myGatewaypluginjwt = new GatewayPluginJwt(\"myGatewaypluginjwt\", GatewayPluginJwtArgs.builder()\n            .config(GatewayPluginJwtConfigArgs.builder()\n                .anonymous(\"...my_anonymous...\")\n                .claimsToVerifies(\"exp\")\n                .cookieNames(\"...\")\n                .headerNames(\"...\")\n                .keyClaimName(\"...my_key_claim_name...\")\n                .maximumExpiration(2.49057258e+07)\n                .realm(\"...my_realm...\")\n                .runOnPreflight(true)\n                .secretIsBase64(false)\n                .uriParamNames(\"...\")\n                .build())\n            .controlPlaneId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .createdAt(3.0)\n            .enabled(true)\n            .gatewayPluginJwtId(\"...my_id...\")\n            .instanceName(\"...my_instance_name...\")\n            .ordering(GatewayPluginJwtOrderingArgs.builder()\n                .after(GatewayPluginJwtOrderingAfterArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .before(GatewayPluginJwtOrderingBeforeArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .build())\n            .partials(GatewayPluginJwtPartialArgs.builder()\n                .id(\"...my_id...\")\n                .name(\"...my_name...\")\n                .path(\"...my_path...\")\n                .build())\n            .protocols(\"https\")\n            .route(GatewayPluginJwtRouteArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .service(GatewayPluginJwtServiceArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .tags(\"...\")\n            .updatedAt(9.0)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myGatewaypluginjwt:\n    type: konnect:GatewayPluginJwt\n    name: my_gatewaypluginjwt\n    properties:\n      config:\n        anonymous: '...my_anonymous...'\n        claimsToVerifies:\n          - exp\n        cookieNames:\n          - '...'\n        headerNames:\n          - '...'\n        keyClaimName: '...my_key_claim_name...'\n        maximumExpiration: 2.49057258e+07\n        realm: '...my_realm...'\n        runOnPreflight: true\n        secretIsBase64: false\n        uriParamNames:\n          - '...'\n      controlPlaneId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      createdAt: 3\n      enabled: true\n      gatewayPluginJwtId: '...my_id...'\n      instanceName: '...my_instance_name...'\n      ordering:\n        after:\n          accesses:\n            - '...'\n        before:\n          accesses:\n            - '...'\n      partials:\n        - id: '...my_id...'\n          name: '...my_name...'\n          path: '...my_path...'\n      protocols:\n        - https\n      route:\n        id: '...my_id...'\n      service:\n        id: '...my_id...'\n      tags:\n        - '...'\n      updatedAt: 9\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_gateway_plugin_jwt.my_konnect_gateway_plugin_jwt\n\n  id = jsonencode({\n\n    control_plane_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/gatewayPluginJwt:GatewayPluginJwt my_konnect_gateway_plugin_jwt '{\"control_plane_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"}'\n```\n\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginJwtConfig:GatewayPluginJwtConfig"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginJwtId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginJwtOrdering:GatewayPluginJwtOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginJwtPartial:GatewayPluginJwtPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginJwtRoute:GatewayPluginJwtRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginJwtService:GatewayPluginJwtService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object","required":["config","controlPlaneId","createdAt","enabled","gatewayPluginJwtId","ordering","protocols","route","service","updatedAt"],"inputProperties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginJwtConfig:GatewayPluginJwtConfig"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginJwtId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginJwtOrdering:GatewayPluginJwtOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginJwtPartial:GatewayPluginJwtPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginJwtRoute:GatewayPluginJwtRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginJwtService:GatewayPluginJwtService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"requiredInputs":["controlPlaneId"],"stateInputs":{"description":"Input properties used for looking up and filtering GatewayPluginJwt resources.\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginJwtConfig:GatewayPluginJwtConfig"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginJwtId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginJwtOrdering:GatewayPluginJwtOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginJwtPartial:GatewayPluginJwtPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginJwtRoute:GatewayPluginJwtRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginJwtService:GatewayPluginJwtService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object"}},"konnect:index/gatewayPluginJwtSigner:GatewayPluginJwtSigner":{"description":"GatewayPluginJwtSigner Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myGatewaypluginjwtsigner = new konnect.GatewayPluginJwtSigner(\"my_gatewaypluginjwtsigner\", {\n    config: {\n        accessTokenAudienceClaims: [\"...\"],\n        accessTokenAudiencesAlloweds: [\"...\"],\n        accessTokenConsumerBies: [\"custom_id\"],\n        accessTokenConsumerClaims: [\"...\"],\n        accessTokenEndpointsSslVerify: true,\n        accessTokenExpiryClaims: [\"...\"],\n        accessTokenIntrospectionAudienceClaims: [\"...\"],\n        accessTokenIntrospectionAudiencesAlloweds: [\"...\"],\n        accessTokenIntrospectionAuthorization: \"...my_access_token_introspection_authorization...\",\n        accessTokenIntrospectionBodyArgs: \"...my_access_token_introspection_body_args...\",\n        accessTokenIntrospectionConsumerBies: [\"custom_id\"],\n        accessTokenIntrospectionConsumerClaims: [\"...\"],\n        accessTokenIntrospectionEndpoint: \"...my_access_token_introspection_endpoint...\",\n        accessTokenIntrospectionExpiryClaims: [\"...\"],\n        accessTokenIntrospectionHint: \"...my_access_token_introspection_hint...\",\n        accessTokenIntrospectionIssuerClaims: [\"...\"],\n        accessTokenIntrospectionIssuersAlloweds: [\"...\"],\n        accessTokenIntrospectionJwtClaims: [\"...\"],\n        accessTokenIntrospectionLeeway: 6.18,\n        accessTokenIntrospectionNotbeforeClaims: [\"...\"],\n        accessTokenIntrospectionOptionalClaims: [[]],\n        accessTokenIntrospectionRequiredClaims: [[]],\n        accessTokenIntrospectionScopesClaims: [\"...\"],\n        accessTokenIntrospectionScopesRequireds: [\"...\"],\n        accessTokenIntrospectionSubjectClaims: [\"...\"],\n        accessTokenIntrospectionSubjectsAlloweds: [\"...\"],\n        accessTokenIntrospectionTimeout: 4.24,\n        accessTokenIssuer: \"...my_access_token_issuer...\",\n        accessTokenIssuerClaims: [\"...\"],\n        accessTokenIssuersAlloweds: [\"...\"],\n        accessTokenJwksUri: \"...my_access_token_jwks_uri...\",\n        accessTokenJwksUriClientCertificate: {\n            id: \"...my_id...\",\n        },\n        accessTokenJwksUriClientPassword: \"...my_access_token_jwks_uri_client_password...\",\n        accessTokenJwksUriClientUsername: \"...my_access_token_jwks_uri_client_username...\",\n        accessTokenJwksUriRotatePeriod: 0.18,\n        accessTokenKeyset: \"...my_access_token_keyset...\",\n        accessTokenKeysetClientCertificate: {\n            id: \"...my_id...\",\n        },\n        accessTokenKeysetClientPassword: \"...my_access_token_keyset_client_password...\",\n        accessTokenKeysetClientUsername: \"...my_access_token_keyset_client_username...\",\n        accessTokenKeysetRotatePeriod: 4.53,\n        accessTokenLeeway: 0.51,\n        accessTokenNotbeforeClaims: [\"...\"],\n        accessTokenOptional: false,\n        accessTokenOptionalClaims: [[]],\n        accessTokenRequestHeader: \"...my_access_token_request_header...\",\n        accessTokenRequiredClaims: [[]],\n        accessTokenScopesClaims: [\"...\"],\n        accessTokenScopesRequireds: [\"...\"],\n        accessTokenSigning: true,\n        accessTokenSigningAlgorithm: \"PS384\",\n        accessTokenSubjectClaims: [\"...\"],\n        accessTokenSubjectsAlloweds: [\"...\"],\n        accessTokenUpstreamHeader: \"...my_access_token_upstream_header...\",\n        accessTokenUpstreamLeeway: 1.88,\n        addAccessTokenClaims: {\n            key: \"value\",\n        },\n        addChannelTokenClaims: {\n            key: \"value\",\n        },\n        addClaims: {\n            key: \"value\",\n        },\n        cacheAccessTokenIntrospection: false,\n        cacheChannelTokenIntrospection: true,\n        channelTokenAudienceClaims: [\"...\"],\n        channelTokenAudiencesAlloweds: [\"...\"],\n        channelTokenConsumerBies: [\"id\"],\n        channelTokenConsumerClaims: [\"...\"],\n        channelTokenEndpointsSslVerify: true,\n        channelTokenExpiryClaims: [\"...\"],\n        channelTokenIntrospectionAudienceClaims: [\"...\"],\n        channelTokenIntrospectionAudiencesAlloweds: [\"...\"],\n        channelTokenIntrospectionAuthorization: \"...my_channel_token_introspection_authorization...\",\n        channelTokenIntrospectionBodyArgs: \"...my_channel_token_introspection_body_args...\",\n        channelTokenIntrospectionConsumerBies: [\"custom_id\"],\n        channelTokenIntrospectionConsumerClaims: [\"...\"],\n        channelTokenIntrospectionEndpoint: \"...my_channel_token_introspection_endpoint...\",\n        channelTokenIntrospectionExpiryClaims: [\"...\"],\n        channelTokenIntrospectionHint: \"...my_channel_token_introspection_hint...\",\n        channelTokenIntrospectionIssuerClaims: [\"...\"],\n        channelTokenIntrospectionIssuersAlloweds: [\"...\"],\n        channelTokenIntrospectionJwtClaims: [\"...\"],\n        channelTokenIntrospectionLeeway: 4.31,\n        channelTokenIntrospectionNotbeforeClaims: [\"...\"],\n        channelTokenIntrospectionOptionalClaims: [[]],\n        channelTokenIntrospectionRequiredClaims: [[]],\n        channelTokenIntrospectionScopesClaims: [\"...\"],\n        channelTokenIntrospectionScopesRequireds: [\"...\"],\n        channelTokenIntrospectionSubjectClaims: [\"...\"],\n        channelTokenIntrospectionSubjectsAlloweds: [\"...\"],\n        channelTokenIntrospectionTimeout: 6.9,\n        channelTokenIssuer: \"...my_channel_token_issuer...\",\n        channelTokenIssuerClaims: [\"...\"],\n        channelTokenIssuersAlloweds: [\"...\"],\n        channelTokenJwksUri: \"...my_channel_token_jwks_uri...\",\n        channelTokenJwksUriClientCertificate: {\n            id: \"...my_id...\",\n        },\n        channelTokenJwksUriClientPassword: \"...my_channel_token_jwks_uri_client_password...\",\n        channelTokenJwksUriClientUsername: \"...my_channel_token_jwks_uri_client_username...\",\n        channelTokenJwksUriRotatePeriod: 9.27,\n        channelTokenKeyset: \"...my_channel_token_keyset...\",\n        channelTokenKeysetClientCertificate: {\n            id: \"...my_id...\",\n        },\n        channelTokenKeysetClientPassword: \"...my_channel_token_keyset_client_password...\",\n        channelTokenKeysetClientUsername: \"...my_channel_token_keyset_client_username...\",\n        channelTokenKeysetRotatePeriod: 0.98,\n        channelTokenLeeway: 4.86,\n        channelTokenNotbeforeClaims: [\"...\"],\n        channelTokenOptional: false,\n        channelTokenOptionalClaims: [[]],\n        channelTokenRequestHeader: \"...my_channel_token_request_header...\",\n        channelTokenRequiredClaims: [[]],\n        channelTokenScopesClaims: [\"...\"],\n        channelTokenScopesRequireds: [\"...\"],\n        channelTokenSigning: false,\n        channelTokenSigningAlgorithm: \"PS512\",\n        channelTokenSubjectClaims: [\"...\"],\n        channelTokenSubjectsAlloweds: [\"...\"],\n        channelTokenUpstreamHeader: \"...my_channel_token_upstream_header...\",\n        channelTokenUpstreamLeeway: 5.01,\n        enableAccessTokenIntrospection: false,\n        enableChannelTokenIntrospection: true,\n        enableHsSignatures: false,\n        enableInstrumentation: true,\n        originalAccessTokenUpstreamHeader: \"...my_original_access_token_upstream_header...\",\n        originalChannelTokenUpstreamHeader: \"...my_original_channel_token_upstream_header...\",\n        realm: \"...my_realm...\",\n        removeAccessTokenClaims: [\"...\"],\n        removeChannelTokenClaims: [\"...\"],\n        setAccessTokenClaims: {\n            key: \"value\",\n        },\n        setChannelTokenClaims: {\n            key: \"value\",\n        },\n        setClaims: {\n            key: \"value\",\n        },\n        trustAccessTokenIntrospection: true,\n        trustChannelTokenIntrospection: false,\n        verifyAccessTokenAudience: true,\n        verifyAccessTokenExpiry: true,\n        verifyAccessTokenIntrospectionAudience: true,\n        verifyAccessTokenIntrospectionExpiry: false,\n        verifyAccessTokenIntrospectionIssuer: true,\n        verifyAccessTokenIntrospectionNotbefore: true,\n        verifyAccessTokenIntrospectionScopes: false,\n        verifyAccessTokenIntrospectionSubject: false,\n        verifyAccessTokenIssuer: true,\n        verifyAccessTokenNotbefore: true,\n        verifyAccessTokenScopes: false,\n        verifyAccessTokenSignature: true,\n        verifyAccessTokenSubject: false,\n        verifyChannelTokenAudience: true,\n        verifyChannelTokenExpiry: false,\n        verifyChannelTokenIntrospectionAudience: false,\n        verifyChannelTokenIntrospectionExpiry: false,\n        verifyChannelTokenIntrospectionIssuer: true,\n        verifyChannelTokenIntrospectionNotbefore: false,\n        verifyChannelTokenIntrospectionScopes: true,\n        verifyChannelTokenIntrospectionSubject: false,\n        verifyChannelTokenIssuer: true,\n        verifyChannelTokenNotbefore: true,\n        verifyChannelTokenScopes: false,\n        verifyChannelTokenSignature: false,\n        verifyChannelTokenSubject: true,\n    },\n    controlPlaneId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    createdAt: 8,\n    enabled: false,\n    gatewayPluginJwtSignerId: \"...my_id...\",\n    instanceName: \"...my_instance_name...\",\n    ordering: {\n        after: {\n            accesses: [\"...\"],\n        },\n        before: {\n            accesses: [\"...\"],\n        },\n    },\n    partials: [{\n        id: \"...my_id...\",\n        name: \"...my_name...\",\n        path: \"...my_path...\",\n    }],\n    protocols: [\"https\"],\n    route: {\n        id: \"...my_id...\",\n    },\n    service: {\n        id: \"...my_id...\",\n    },\n    tags: [\"...\"],\n    updatedAt: 5,\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_gatewaypluginjwtsigner = konnect.GatewayPluginJwtSigner(\"my_gatewaypluginjwtsigner\",\n    config={\n        \"access_token_audience_claims\": [\"...\"],\n        \"access_token_audiences_alloweds\": [\"...\"],\n        \"access_token_consumer_bies\": [\"custom_id\"],\n        \"access_token_consumer_claims\": [\"...\"],\n        \"access_token_endpoints_ssl_verify\": True,\n        \"access_token_expiry_claims\": [\"...\"],\n        \"access_token_introspection_audience_claims\": [\"...\"],\n        \"access_token_introspection_audiences_alloweds\": [\"...\"],\n        \"access_token_introspection_authorization\": \"...my_access_token_introspection_authorization...\",\n        \"access_token_introspection_body_args\": \"...my_access_token_introspection_body_args...\",\n        \"access_token_introspection_consumer_bies\": [\"custom_id\"],\n        \"access_token_introspection_consumer_claims\": [\"...\"],\n        \"access_token_introspection_endpoint\": \"...my_access_token_introspection_endpoint...\",\n        \"access_token_introspection_expiry_claims\": [\"...\"],\n        \"access_token_introspection_hint\": \"...my_access_token_introspection_hint...\",\n        \"access_token_introspection_issuer_claims\": [\"...\"],\n        \"access_token_introspection_issuers_alloweds\": [\"...\"],\n        \"access_token_introspection_jwt_claims\": [\"...\"],\n        \"access_token_introspection_leeway\": 6.18,\n        \"access_token_introspection_notbefore_claims\": [\"...\"],\n        \"access_token_introspection_optional_claims\": [[]],\n        \"access_token_introspection_required_claims\": [[]],\n        \"access_token_introspection_scopes_claims\": [\"...\"],\n        \"access_token_introspection_scopes_requireds\": [\"...\"],\n        \"access_token_introspection_subject_claims\": [\"...\"],\n        \"access_token_introspection_subjects_alloweds\": [\"...\"],\n        \"access_token_introspection_timeout\": 4.24,\n        \"access_token_issuer\": \"...my_access_token_issuer...\",\n        \"access_token_issuer_claims\": [\"...\"],\n        \"access_token_issuers_alloweds\": [\"...\"],\n        \"access_token_jwks_uri\": \"...my_access_token_jwks_uri...\",\n        \"access_token_jwks_uri_client_certificate\": {\n            \"id\": \"...my_id...\",\n        },\n        \"access_token_jwks_uri_client_password\": \"...my_access_token_jwks_uri_client_password...\",\n        \"access_token_jwks_uri_client_username\": \"...my_access_token_jwks_uri_client_username...\",\n        \"access_token_jwks_uri_rotate_period\": 0.18,\n        \"access_token_keyset\": \"...my_access_token_keyset...\",\n        \"access_token_keyset_client_certificate\": {\n            \"id\": \"...my_id...\",\n        },\n        \"access_token_keyset_client_password\": \"...my_access_token_keyset_client_password...\",\n        \"access_token_keyset_client_username\": \"...my_access_token_keyset_client_username...\",\n        \"access_token_keyset_rotate_period\": 4.53,\n        \"access_token_leeway\": 0.51,\n        \"access_token_notbefore_claims\": [\"...\"],\n        \"access_token_optional\": False,\n        \"access_token_optional_claims\": [[]],\n        \"access_token_request_header\": \"...my_access_token_request_header...\",\n        \"access_token_required_claims\": [[]],\n        \"access_token_scopes_claims\": [\"...\"],\n        \"access_token_scopes_requireds\": [\"...\"],\n        \"access_token_signing\": True,\n        \"access_token_signing_algorithm\": \"PS384\",\n        \"access_token_subject_claims\": [\"...\"],\n        \"access_token_subjects_alloweds\": [\"...\"],\n        \"access_token_upstream_header\": \"...my_access_token_upstream_header...\",\n        \"access_token_upstream_leeway\": 1.88,\n        \"add_access_token_claims\": {\n            \"key\": \"value\",\n        },\n        \"add_channel_token_claims\": {\n            \"key\": \"value\",\n        },\n        \"add_claims\": {\n            \"key\": \"value\",\n        },\n        \"cache_access_token_introspection\": False,\n        \"cache_channel_token_introspection\": True,\n        \"channel_token_audience_claims\": [\"...\"],\n        \"channel_token_audiences_alloweds\": [\"...\"],\n        \"channel_token_consumer_bies\": [\"id\"],\n        \"channel_token_consumer_claims\": [\"...\"],\n        \"channel_token_endpoints_ssl_verify\": True,\n        \"channel_token_expiry_claims\": [\"...\"],\n        \"channel_token_introspection_audience_claims\": [\"...\"],\n        \"channel_token_introspection_audiences_alloweds\": [\"...\"],\n        \"channel_token_introspection_authorization\": \"...my_channel_token_introspection_authorization...\",\n        \"channel_token_introspection_body_args\": \"...my_channel_token_introspection_body_args...\",\n        \"channel_token_introspection_consumer_bies\": [\"custom_id\"],\n        \"channel_token_introspection_consumer_claims\": [\"...\"],\n        \"channel_token_introspection_endpoint\": \"...my_channel_token_introspection_endpoint...\",\n        \"channel_token_introspection_expiry_claims\": [\"...\"],\n        \"channel_token_introspection_hint\": \"...my_channel_token_introspection_hint...\",\n        \"channel_token_introspection_issuer_claims\": [\"...\"],\n        \"channel_token_introspection_issuers_alloweds\": [\"...\"],\n        \"channel_token_introspection_jwt_claims\": [\"...\"],\n        \"channel_token_introspection_leeway\": 4.31,\n        \"channel_token_introspection_notbefore_claims\": [\"...\"],\n        \"channel_token_introspection_optional_claims\": [[]],\n        \"channel_token_introspection_required_claims\": [[]],\n        \"channel_token_introspection_scopes_claims\": [\"...\"],\n        \"channel_token_introspection_scopes_requireds\": [\"...\"],\n        \"channel_token_introspection_subject_claims\": [\"...\"],\n        \"channel_token_introspection_subjects_alloweds\": [\"...\"],\n        \"channel_token_introspection_timeout\": 6.9,\n        \"channel_token_issuer\": \"...my_channel_token_issuer...\",\n        \"channel_token_issuer_claims\": [\"...\"],\n        \"channel_token_issuers_alloweds\": [\"...\"],\n        \"channel_token_jwks_uri\": \"...my_channel_token_jwks_uri...\",\n        \"channel_token_jwks_uri_client_certificate\": {\n            \"id\": \"...my_id...\",\n        },\n        \"channel_token_jwks_uri_client_password\": \"...my_channel_token_jwks_uri_client_password...\",\n        \"channel_token_jwks_uri_client_username\": \"...my_channel_token_jwks_uri_client_username...\",\n        \"channel_token_jwks_uri_rotate_period\": 9.27,\n        \"channel_token_keyset\": \"...my_channel_token_keyset...\",\n        \"channel_token_keyset_client_certificate\": {\n            \"id\": \"...my_id...\",\n        },\n        \"channel_token_keyset_client_password\": \"...my_channel_token_keyset_client_password...\",\n        \"channel_token_keyset_client_username\": \"...my_channel_token_keyset_client_username...\",\n        \"channel_token_keyset_rotate_period\": 0.98,\n        \"channel_token_leeway\": 4.86,\n        \"channel_token_notbefore_claims\": [\"...\"],\n        \"channel_token_optional\": False,\n        \"channel_token_optional_claims\": [[]],\n        \"channel_token_request_header\": \"...my_channel_token_request_header...\",\n        \"channel_token_required_claims\": [[]],\n        \"channel_token_scopes_claims\": [\"...\"],\n        \"channel_token_scopes_requireds\": [\"...\"],\n        \"channel_token_signing\": False,\n        \"channel_token_signing_algorithm\": \"PS512\",\n        \"channel_token_subject_claims\": [\"...\"],\n        \"channel_token_subjects_alloweds\": [\"...\"],\n        \"channel_token_upstream_header\": \"...my_channel_token_upstream_header...\",\n        \"channel_token_upstream_leeway\": 5.01,\n        \"enable_access_token_introspection\": False,\n        \"enable_channel_token_introspection\": True,\n        \"enable_hs_signatures\": False,\n        \"enable_instrumentation\": True,\n        \"original_access_token_upstream_header\": \"...my_original_access_token_upstream_header...\",\n        \"original_channel_token_upstream_header\": \"...my_original_channel_token_upstream_header...\",\n        \"realm\": \"...my_realm...\",\n        \"remove_access_token_claims\": [\"...\"],\n        \"remove_channel_token_claims\": [\"...\"],\n        \"set_access_token_claims\": {\n            \"key\": \"value\",\n        },\n        \"set_channel_token_claims\": {\n            \"key\": \"value\",\n        },\n        \"set_claims\": {\n            \"key\": \"value\",\n        },\n        \"trust_access_token_introspection\": True,\n        \"trust_channel_token_introspection\": False,\n        \"verify_access_token_audience\": True,\n        \"verify_access_token_expiry\": True,\n        \"verify_access_token_introspection_audience\": True,\n        \"verify_access_token_introspection_expiry\": False,\n        \"verify_access_token_introspection_issuer\": True,\n        \"verify_access_token_introspection_notbefore\": True,\n        \"verify_access_token_introspection_scopes\": False,\n        \"verify_access_token_introspection_subject\": False,\n        \"verify_access_token_issuer\": True,\n        \"verify_access_token_notbefore\": True,\n        \"verify_access_token_scopes\": False,\n        \"verify_access_token_signature\": True,\n        \"verify_access_token_subject\": False,\n        \"verify_channel_token_audience\": True,\n        \"verify_channel_token_expiry\": False,\n        \"verify_channel_token_introspection_audience\": False,\n        \"verify_channel_token_introspection_expiry\": False,\n        \"verify_channel_token_introspection_issuer\": True,\n        \"verify_channel_token_introspection_notbefore\": False,\n        \"verify_channel_token_introspection_scopes\": True,\n        \"verify_channel_token_introspection_subject\": False,\n        \"verify_channel_token_issuer\": True,\n        \"verify_channel_token_notbefore\": True,\n        \"verify_channel_token_scopes\": False,\n        \"verify_channel_token_signature\": False,\n        \"verify_channel_token_subject\": True,\n    },\n    control_plane_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    created_at=8,\n    enabled=False,\n    gateway_plugin_jwt_signer_id=\"...my_id...\",\n    instance_name=\"...my_instance_name...\",\n    ordering={\n        \"after\": {\n            \"accesses\": [\"...\"],\n        },\n        \"before\": {\n            \"accesses\": [\"...\"],\n        },\n    },\n    partials=[{\n        \"id\": \"...my_id...\",\n        \"name\": \"...my_name...\",\n        \"path\": \"...my_path...\",\n    }],\n    protocols=[\"https\"],\n    route={\n        \"id\": \"...my_id...\",\n    },\n    service={\n        \"id\": \"...my_id...\",\n    },\n    tags=[\"...\"],\n    updated_at=5)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myGatewaypluginjwtsigner = new Konnect.GatewayPluginJwtSigner(\"my_gatewaypluginjwtsigner\", new()\n    {\n        Config = new Konnect.Inputs.GatewayPluginJwtSignerConfigArgs\n        {\n            AccessTokenAudienceClaims = new[]\n            {\n                \"...\",\n            },\n            AccessTokenAudiencesAlloweds = new[]\n            {\n                \"...\",\n            },\n            AccessTokenConsumerBies = new[]\n            {\n                \"custom_id\",\n            },\n            AccessTokenConsumerClaims = new[]\n            {\n                \"...\",\n            },\n            AccessTokenEndpointsSslVerify = true,\n            AccessTokenExpiryClaims = new[]\n            {\n                \"...\",\n            },\n            AccessTokenIntrospectionAudienceClaims = new[]\n            {\n                \"...\",\n            },\n            AccessTokenIntrospectionAudiencesAlloweds = new[]\n            {\n                \"...\",\n            },\n            AccessTokenIntrospectionAuthorization = \"...my_access_token_introspection_authorization...\",\n            AccessTokenIntrospectionBodyArgs = \"...my_access_token_introspection_body_args...\",\n            AccessTokenIntrospectionConsumerBies = new[]\n            {\n                \"custom_id\",\n            },\n            AccessTokenIntrospectionConsumerClaims = new[]\n            {\n                \"...\",\n            },\n            AccessTokenIntrospectionEndpoint = \"...my_access_token_introspection_endpoint...\",\n            AccessTokenIntrospectionExpiryClaims = new[]\n            {\n                \"...\",\n            },\n            AccessTokenIntrospectionHint = \"...my_access_token_introspection_hint...\",\n            AccessTokenIntrospectionIssuerClaims = new[]\n            {\n                \"...\",\n            },\n            AccessTokenIntrospectionIssuersAlloweds = new[]\n            {\n                \"...\",\n            },\n            AccessTokenIntrospectionJwtClaims = new[]\n            {\n                \"...\",\n            },\n            AccessTokenIntrospectionLeeway = 6.18,\n            AccessTokenIntrospectionNotbeforeClaims = new[]\n            {\n                \"...\",\n            },\n            AccessTokenIntrospectionOptionalClaims = new[]\n            {\n                new[] {},\n            },\n            AccessTokenIntrospectionRequiredClaims = new[]\n            {\n                new[] {},\n            },\n            AccessTokenIntrospectionScopesClaims = new[]\n            {\n                \"...\",\n            },\n            AccessTokenIntrospectionScopesRequireds = new[]\n            {\n                \"...\",\n            },\n            AccessTokenIntrospectionSubjectClaims = new[]\n            {\n                \"...\",\n            },\n            AccessTokenIntrospectionSubjectsAlloweds = new[]\n            {\n                \"...\",\n            },\n            AccessTokenIntrospectionTimeout = 4.24,\n            AccessTokenIssuer = \"...my_access_token_issuer...\",\n            AccessTokenIssuerClaims = new[]\n            {\n                \"...\",\n            },\n            AccessTokenIssuersAlloweds = new[]\n            {\n                \"...\",\n            },\n            AccessTokenJwksUri = \"...my_access_token_jwks_uri...\",\n            AccessTokenJwksUriClientCertificate = new Konnect.Inputs.GatewayPluginJwtSignerConfigAccessTokenJwksUriClientCertificateArgs\n            {\n                Id = \"...my_id...\",\n            },\n            AccessTokenJwksUriClientPassword = \"...my_access_token_jwks_uri_client_password...\",\n            AccessTokenJwksUriClientUsername = \"...my_access_token_jwks_uri_client_username...\",\n            AccessTokenJwksUriRotatePeriod = 0.18,\n            AccessTokenKeyset = \"...my_access_token_keyset...\",\n            AccessTokenKeysetClientCertificate = new Konnect.Inputs.GatewayPluginJwtSignerConfigAccessTokenKeysetClientCertificateArgs\n            {\n                Id = \"...my_id...\",\n            },\n            AccessTokenKeysetClientPassword = \"...my_access_token_keyset_client_password...\",\n            AccessTokenKeysetClientUsername = \"...my_access_token_keyset_client_username...\",\n            AccessTokenKeysetRotatePeriod = 4.53,\n            AccessTokenLeeway = 0.51,\n            AccessTokenNotbeforeClaims = new[]\n            {\n                \"...\",\n            },\n            AccessTokenOptional = false,\n            AccessTokenOptionalClaims = new[]\n            {\n                new[] {},\n            },\n            AccessTokenRequestHeader = \"...my_access_token_request_header...\",\n            AccessTokenRequiredClaims = new[]\n            {\n                new[] {},\n            },\n            AccessTokenScopesClaims = new[]\n            {\n                \"...\",\n            },\n            AccessTokenScopesRequireds = new[]\n            {\n                \"...\",\n            },\n            AccessTokenSigning = true,\n            AccessTokenSigningAlgorithm = \"PS384\",\n            AccessTokenSubjectClaims = new[]\n            {\n                \"...\",\n            },\n            AccessTokenSubjectsAlloweds = new[]\n            {\n                \"...\",\n            },\n            AccessTokenUpstreamHeader = \"...my_access_token_upstream_header...\",\n            AccessTokenUpstreamLeeway = 1.88,\n            AddAccessTokenClaims = \n            {\n                { \"key\", \"value\" },\n            },\n            AddChannelTokenClaims = \n            {\n                { \"key\", \"value\" },\n            },\n            AddClaims = \n            {\n                { \"key\", \"value\" },\n            },\n            CacheAccessTokenIntrospection = false,\n            CacheChannelTokenIntrospection = true,\n            ChannelTokenAudienceClaims = new[]\n            {\n                \"...\",\n            },\n            ChannelTokenAudiencesAlloweds = new[]\n            {\n                \"...\",\n            },\n            ChannelTokenConsumerBies = new[]\n            {\n                \"id\",\n            },\n            ChannelTokenConsumerClaims = new[]\n            {\n                \"...\",\n            },\n            ChannelTokenEndpointsSslVerify = true,\n            ChannelTokenExpiryClaims = new[]\n            {\n                \"...\",\n            },\n            ChannelTokenIntrospectionAudienceClaims = new[]\n            {\n                \"...\",\n            },\n            ChannelTokenIntrospectionAudiencesAlloweds = new[]\n            {\n                \"...\",\n            },\n            ChannelTokenIntrospectionAuthorization = \"...my_channel_token_introspection_authorization...\",\n            ChannelTokenIntrospectionBodyArgs = \"...my_channel_token_introspection_body_args...\",\n            ChannelTokenIntrospectionConsumerBies = new[]\n            {\n                \"custom_id\",\n            },\n            ChannelTokenIntrospectionConsumerClaims = new[]\n            {\n                \"...\",\n            },\n            ChannelTokenIntrospectionEndpoint = \"...my_channel_token_introspection_endpoint...\",\n            ChannelTokenIntrospectionExpiryClaims = new[]\n            {\n                \"...\",\n            },\n            ChannelTokenIntrospectionHint = \"...my_channel_token_introspection_hint...\",\n            ChannelTokenIntrospectionIssuerClaims = new[]\n            {\n                \"...\",\n            },\n            ChannelTokenIntrospectionIssuersAlloweds = new[]\n            {\n                \"...\",\n            },\n            ChannelTokenIntrospectionJwtClaims = new[]\n            {\n                \"...\",\n            },\n            ChannelTokenIntrospectionLeeway = 4.31,\n            ChannelTokenIntrospectionNotbeforeClaims = new[]\n            {\n                \"...\",\n            },\n            ChannelTokenIntrospectionOptionalClaims = new[]\n            {\n                new[] {},\n            },\n            ChannelTokenIntrospectionRequiredClaims = new[]\n            {\n                new[] {},\n            },\n            ChannelTokenIntrospectionScopesClaims = new[]\n            {\n                \"...\",\n            },\n            ChannelTokenIntrospectionScopesRequireds = new[]\n            {\n                \"...\",\n            },\n            ChannelTokenIntrospectionSubjectClaims = new[]\n            {\n                \"...\",\n            },\n            ChannelTokenIntrospectionSubjectsAlloweds = new[]\n            {\n                \"...\",\n            },\n            ChannelTokenIntrospectionTimeout = 6.9,\n            ChannelTokenIssuer = \"...my_channel_token_issuer...\",\n            ChannelTokenIssuerClaims = new[]\n            {\n                \"...\",\n            },\n            ChannelTokenIssuersAlloweds = new[]\n            {\n                \"...\",\n            },\n            ChannelTokenJwksUri = \"...my_channel_token_jwks_uri...\",\n            ChannelTokenJwksUriClientCertificate = new Konnect.Inputs.GatewayPluginJwtSignerConfigChannelTokenJwksUriClientCertificateArgs\n            {\n                Id = \"...my_id...\",\n            },\n            ChannelTokenJwksUriClientPassword = \"...my_channel_token_jwks_uri_client_password...\",\n            ChannelTokenJwksUriClientUsername = \"...my_channel_token_jwks_uri_client_username...\",\n            ChannelTokenJwksUriRotatePeriod = 9.27,\n            ChannelTokenKeyset = \"...my_channel_token_keyset...\",\n            ChannelTokenKeysetClientCertificate = new Konnect.Inputs.GatewayPluginJwtSignerConfigChannelTokenKeysetClientCertificateArgs\n            {\n                Id = \"...my_id...\",\n            },\n            ChannelTokenKeysetClientPassword = \"...my_channel_token_keyset_client_password...\",\n            ChannelTokenKeysetClientUsername = \"...my_channel_token_keyset_client_username...\",\n            ChannelTokenKeysetRotatePeriod = 0.98,\n            ChannelTokenLeeway = 4.86,\n            ChannelTokenNotbeforeClaims = new[]\n            {\n                \"...\",\n            },\n            ChannelTokenOptional = false,\n            ChannelTokenOptionalClaims = new[]\n            {\n                new[] {},\n            },\n            ChannelTokenRequestHeader = \"...my_channel_token_request_header...\",\n            ChannelTokenRequiredClaims = new[]\n            {\n                new[] {},\n            },\n            ChannelTokenScopesClaims = new[]\n            {\n                \"...\",\n            },\n            ChannelTokenScopesRequireds = new[]\n            {\n                \"...\",\n            },\n            ChannelTokenSigning = false,\n            ChannelTokenSigningAlgorithm = \"PS512\",\n            ChannelTokenSubjectClaims = new[]\n            {\n                \"...\",\n            },\n            ChannelTokenSubjectsAlloweds = new[]\n            {\n                \"...\",\n            },\n            ChannelTokenUpstreamHeader = \"...my_channel_token_upstream_header...\",\n            ChannelTokenUpstreamLeeway = 5.01,\n            EnableAccessTokenIntrospection = false,\n            EnableChannelTokenIntrospection = true,\n            EnableHsSignatures = false,\n            EnableInstrumentation = true,\n            OriginalAccessTokenUpstreamHeader = \"...my_original_access_token_upstream_header...\",\n            OriginalChannelTokenUpstreamHeader = \"...my_original_channel_token_upstream_header...\",\n            Realm = \"...my_realm...\",\n            RemoveAccessTokenClaims = new[]\n            {\n                \"...\",\n            },\n            RemoveChannelTokenClaims = new[]\n            {\n                \"...\",\n            },\n            SetAccessTokenClaims = \n            {\n                { \"key\", \"value\" },\n            },\n            SetChannelTokenClaims = \n            {\n                { \"key\", \"value\" },\n            },\n            SetClaims = \n            {\n                { \"key\", \"value\" },\n            },\n            TrustAccessTokenIntrospection = true,\n            TrustChannelTokenIntrospection = false,\n            VerifyAccessTokenAudience = true,\n            VerifyAccessTokenExpiry = true,\n            VerifyAccessTokenIntrospectionAudience = true,\n            VerifyAccessTokenIntrospectionExpiry = false,\n            VerifyAccessTokenIntrospectionIssuer = true,\n            VerifyAccessTokenIntrospectionNotbefore = true,\n            VerifyAccessTokenIntrospectionScopes = false,\n            VerifyAccessTokenIntrospectionSubject = false,\n            VerifyAccessTokenIssuer = true,\n            VerifyAccessTokenNotbefore = true,\n            VerifyAccessTokenScopes = false,\n            VerifyAccessTokenSignature = true,\n            VerifyAccessTokenSubject = false,\n            VerifyChannelTokenAudience = true,\n            VerifyChannelTokenExpiry = false,\n            VerifyChannelTokenIntrospectionAudience = false,\n            VerifyChannelTokenIntrospectionExpiry = false,\n            VerifyChannelTokenIntrospectionIssuer = true,\n            VerifyChannelTokenIntrospectionNotbefore = false,\n            VerifyChannelTokenIntrospectionScopes = true,\n            VerifyChannelTokenIntrospectionSubject = false,\n            VerifyChannelTokenIssuer = true,\n            VerifyChannelTokenNotbefore = true,\n            VerifyChannelTokenScopes = false,\n            VerifyChannelTokenSignature = false,\n            VerifyChannelTokenSubject = true,\n        },\n        ControlPlaneId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        CreatedAt = 8,\n        Enabled = false,\n        GatewayPluginJwtSignerId = \"...my_id...\",\n        InstanceName = \"...my_instance_name...\",\n        Ordering = new Konnect.Inputs.GatewayPluginJwtSignerOrderingArgs\n        {\n            After = new Konnect.Inputs.GatewayPluginJwtSignerOrderingAfterArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n            Before = new Konnect.Inputs.GatewayPluginJwtSignerOrderingBeforeArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n        },\n        Partials = new[]\n        {\n            new Konnect.Inputs.GatewayPluginJwtSignerPartialArgs\n            {\n                Id = \"...my_id...\",\n                Name = \"...my_name...\",\n                Path = \"...my_path...\",\n            },\n        },\n        Protocols = new[]\n        {\n            \"https\",\n        },\n        Route = new Konnect.Inputs.GatewayPluginJwtSignerRouteArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Service = new Konnect.Inputs.GatewayPluginJwtSignerServiceArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Tags = new[]\n        {\n            \"...\",\n        },\n        UpdatedAt = 5,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewGatewayPluginJwtSigner(ctx, \"my_gatewaypluginjwtsigner\", \u0026konnect.GatewayPluginJwtSignerArgs{\n\t\t\tConfig: \u0026konnect.GatewayPluginJwtSignerConfigArgs{\n\t\t\t\tAccessTokenAudienceClaims: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tAccessTokenAudiencesAlloweds: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tAccessTokenConsumerBies: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"custom_id\"),\n\t\t\t\t},\n\t\t\t\tAccessTokenConsumerClaims: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tAccessTokenEndpointsSslVerify: pulumi.Bool(true),\n\t\t\t\tAccessTokenExpiryClaims: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tAccessTokenIntrospectionAudienceClaims: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tAccessTokenIntrospectionAudiencesAlloweds: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tAccessTokenIntrospectionAuthorization: pulumi.String(\"...my_access_token_introspection_authorization...\"),\n\t\t\t\tAccessTokenIntrospectionBodyArgs:      pulumi.String(\"...my_access_token_introspection_body_args...\"),\n\t\t\t\tAccessTokenIntrospectionConsumerBies: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"custom_id\"),\n\t\t\t\t},\n\t\t\t\tAccessTokenIntrospectionConsumerClaims: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tAccessTokenIntrospectionEndpoint: pulumi.String(\"...my_access_token_introspection_endpoint...\"),\n\t\t\t\tAccessTokenIntrospectionExpiryClaims: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tAccessTokenIntrospectionHint: pulumi.String(\"...my_access_token_introspection_hint...\"),\n\t\t\t\tAccessTokenIntrospectionIssuerClaims: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tAccessTokenIntrospectionIssuersAlloweds: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tAccessTokenIntrospectionJwtClaims: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tAccessTokenIntrospectionLeeway: pulumi.Float64(6.18),\n\t\t\t\tAccessTokenIntrospectionNotbeforeClaims: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tAccessTokenIntrospectionOptionalClaims: pulumi.StringArrayArray{\n\t\t\t\t\tpulumi.StringArray{},\n\t\t\t\t},\n\t\t\t\tAccessTokenIntrospectionRequiredClaims: pulumi.StringArrayArray{\n\t\t\t\t\tpulumi.StringArray{},\n\t\t\t\t},\n\t\t\t\tAccessTokenIntrospectionScopesClaims: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tAccessTokenIntrospectionScopesRequireds: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tAccessTokenIntrospectionSubjectClaims: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tAccessTokenIntrospectionSubjectsAlloweds: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tAccessTokenIntrospectionTimeout: pulumi.Float64(4.24),\n\t\t\t\tAccessTokenIssuer:               pulumi.String(\"...my_access_token_issuer...\"),\n\t\t\t\tAccessTokenIssuerClaims: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tAccessTokenIssuersAlloweds: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tAccessTokenJwksUri: pulumi.String(\"...my_access_token_jwks_uri...\"),\n\t\t\t\tAccessTokenJwksUriClientCertificate: \u0026konnect.GatewayPluginJwtSignerConfigAccessTokenJwksUriClientCertificateArgs{\n\t\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t\t},\n\t\t\t\tAccessTokenJwksUriClientPassword: pulumi.String(\"...my_access_token_jwks_uri_client_password...\"),\n\t\t\t\tAccessTokenJwksUriClientUsername: pulumi.String(\"...my_access_token_jwks_uri_client_username...\"),\n\t\t\t\tAccessTokenJwksUriRotatePeriod:   pulumi.Float64(0.18),\n\t\t\t\tAccessTokenKeyset:                pulumi.String(\"...my_access_token_keyset...\"),\n\t\t\t\tAccessTokenKeysetClientCertificate: \u0026konnect.GatewayPluginJwtSignerConfigAccessTokenKeysetClientCertificateArgs{\n\t\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t\t},\n\t\t\t\tAccessTokenKeysetClientPassword: pulumi.String(\"...my_access_token_keyset_client_password...\"),\n\t\t\t\tAccessTokenKeysetClientUsername: pulumi.String(\"...my_access_token_keyset_client_username...\"),\n\t\t\t\tAccessTokenKeysetRotatePeriod:   pulumi.Float64(4.53),\n\t\t\t\tAccessTokenLeeway:               pulumi.Float64(0.51),\n\t\t\t\tAccessTokenNotbeforeClaims: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tAccessTokenOptional: pulumi.Bool(false),\n\t\t\t\tAccessTokenOptionalClaims: pulumi.StringArrayArray{\n\t\t\t\t\tpulumi.StringArray{},\n\t\t\t\t},\n\t\t\t\tAccessTokenRequestHeader: pulumi.String(\"...my_access_token_request_header...\"),\n\t\t\t\tAccessTokenRequiredClaims: pulumi.StringArrayArray{\n\t\t\t\t\tpulumi.StringArray{},\n\t\t\t\t},\n\t\t\t\tAccessTokenScopesClaims: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tAccessTokenScopesRequireds: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tAccessTokenSigning:          pulumi.Bool(true),\n\t\t\t\tAccessTokenSigningAlgorithm: pulumi.String(\"PS384\"),\n\t\t\t\tAccessTokenSubjectClaims: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tAccessTokenSubjectsAlloweds: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tAccessTokenUpstreamHeader: pulumi.String(\"...my_access_token_upstream_header...\"),\n\t\t\t\tAccessTokenUpstreamLeeway: pulumi.Float64(1.88),\n\t\t\t\tAddAccessTokenClaims: pulumi.StringMap{\n\t\t\t\t\t\"key\": pulumi.String(\"value\"),\n\t\t\t\t},\n\t\t\t\tAddChannelTokenClaims: pulumi.StringMap{\n\t\t\t\t\t\"key\": pulumi.String(\"value\"),\n\t\t\t\t},\n\t\t\t\tAddClaims: pulumi.StringMap{\n\t\t\t\t\t\"key\": pulumi.String(\"value\"),\n\t\t\t\t},\n\t\t\t\tCacheAccessTokenIntrospection:  pulumi.Bool(false),\n\t\t\t\tCacheChannelTokenIntrospection: pulumi.Bool(true),\n\t\t\t\tChannelTokenAudienceClaims: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tChannelTokenAudiencesAlloweds: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tChannelTokenConsumerBies: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"id\"),\n\t\t\t\t},\n\t\t\t\tChannelTokenConsumerClaims: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tChannelTokenEndpointsSslVerify: pulumi.Bool(true),\n\t\t\t\tChannelTokenExpiryClaims: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tChannelTokenIntrospectionAudienceClaims: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tChannelTokenIntrospectionAudiencesAlloweds: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tChannelTokenIntrospectionAuthorization: pulumi.String(\"...my_channel_token_introspection_authorization...\"),\n\t\t\t\tChannelTokenIntrospectionBodyArgs:      pulumi.String(\"...my_channel_token_introspection_body_args...\"),\n\t\t\t\tChannelTokenIntrospectionConsumerBies: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"custom_id\"),\n\t\t\t\t},\n\t\t\t\tChannelTokenIntrospectionConsumerClaims: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tChannelTokenIntrospectionEndpoint: pulumi.String(\"...my_channel_token_introspection_endpoint...\"),\n\t\t\t\tChannelTokenIntrospectionExpiryClaims: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tChannelTokenIntrospectionHint: pulumi.String(\"...my_channel_token_introspection_hint...\"),\n\t\t\t\tChannelTokenIntrospectionIssuerClaims: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tChannelTokenIntrospectionIssuersAlloweds: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tChannelTokenIntrospectionJwtClaims: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tChannelTokenIntrospectionLeeway: pulumi.Float64(4.31),\n\t\t\t\tChannelTokenIntrospectionNotbeforeClaims: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tChannelTokenIntrospectionOptionalClaims: pulumi.StringArrayArray{\n\t\t\t\t\tpulumi.StringArray{},\n\t\t\t\t},\n\t\t\t\tChannelTokenIntrospectionRequiredClaims: pulumi.StringArrayArray{\n\t\t\t\t\tpulumi.StringArray{},\n\t\t\t\t},\n\t\t\t\tChannelTokenIntrospectionScopesClaims: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tChannelTokenIntrospectionScopesRequireds: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tChannelTokenIntrospectionSubjectClaims: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tChannelTokenIntrospectionSubjectsAlloweds: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tChannelTokenIntrospectionTimeout: pulumi.Float64(6.9),\n\t\t\t\tChannelTokenIssuer:               pulumi.String(\"...my_channel_token_issuer...\"),\n\t\t\t\tChannelTokenIssuerClaims: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tChannelTokenIssuersAlloweds: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tChannelTokenJwksUri: pulumi.String(\"...my_channel_token_jwks_uri...\"),\n\t\t\t\tChannelTokenJwksUriClientCertificate: \u0026konnect.GatewayPluginJwtSignerConfigChannelTokenJwksUriClientCertificateArgs{\n\t\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t\t},\n\t\t\t\tChannelTokenJwksUriClientPassword: pulumi.String(\"...my_channel_token_jwks_uri_client_password...\"),\n\t\t\t\tChannelTokenJwksUriClientUsername: pulumi.String(\"...my_channel_token_jwks_uri_client_username...\"),\n\t\t\t\tChannelTokenJwksUriRotatePeriod:   pulumi.Float64(9.27),\n\t\t\t\tChannelTokenKeyset:                pulumi.String(\"...my_channel_token_keyset...\"),\n\t\t\t\tChannelTokenKeysetClientCertificate: \u0026konnect.GatewayPluginJwtSignerConfigChannelTokenKeysetClientCertificateArgs{\n\t\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t\t},\n\t\t\t\tChannelTokenKeysetClientPassword: pulumi.String(\"...my_channel_token_keyset_client_password...\"),\n\t\t\t\tChannelTokenKeysetClientUsername: pulumi.String(\"...my_channel_token_keyset_client_username...\"),\n\t\t\t\tChannelTokenKeysetRotatePeriod:   pulumi.Float64(0.98),\n\t\t\t\tChannelTokenLeeway:               pulumi.Float64(4.86),\n\t\t\t\tChannelTokenNotbeforeClaims: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tChannelTokenOptional: pulumi.Bool(false),\n\t\t\t\tChannelTokenOptionalClaims: pulumi.StringArrayArray{\n\t\t\t\t\tpulumi.StringArray{},\n\t\t\t\t},\n\t\t\t\tChannelTokenRequestHeader: pulumi.String(\"...my_channel_token_request_header...\"),\n\t\t\t\tChannelTokenRequiredClaims: pulumi.StringArrayArray{\n\t\t\t\t\tpulumi.StringArray{},\n\t\t\t\t},\n\t\t\t\tChannelTokenScopesClaims: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tChannelTokenScopesRequireds: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tChannelTokenSigning:          pulumi.Bool(false),\n\t\t\t\tChannelTokenSigningAlgorithm: pulumi.String(\"PS512\"),\n\t\t\t\tChannelTokenSubjectClaims: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tChannelTokenSubjectsAlloweds: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tChannelTokenUpstreamHeader:         pulumi.String(\"...my_channel_token_upstream_header...\"),\n\t\t\t\tChannelTokenUpstreamLeeway:         pulumi.Float64(5.01),\n\t\t\t\tEnableAccessTokenIntrospection:     pulumi.Bool(false),\n\t\t\t\tEnableChannelTokenIntrospection:    pulumi.Bool(true),\n\t\t\t\tEnableHsSignatures:                 pulumi.Bool(false),\n\t\t\t\tEnableInstrumentation:              pulumi.Bool(true),\n\t\t\t\tOriginalAccessTokenUpstreamHeader:  pulumi.String(\"...my_original_access_token_upstream_header...\"),\n\t\t\t\tOriginalChannelTokenUpstreamHeader: pulumi.String(\"...my_original_channel_token_upstream_header...\"),\n\t\t\t\tRealm:                              pulumi.String(\"...my_realm...\"),\n\t\t\t\tRemoveAccessTokenClaims: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tRemoveChannelTokenClaims: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tSetAccessTokenClaims: pulumi.StringMap{\n\t\t\t\t\t\"key\": pulumi.String(\"value\"),\n\t\t\t\t},\n\t\t\t\tSetChannelTokenClaims: pulumi.StringMap{\n\t\t\t\t\t\"key\": pulumi.String(\"value\"),\n\t\t\t\t},\n\t\t\t\tSetClaims: pulumi.StringMap{\n\t\t\t\t\t\"key\": pulumi.String(\"value\"),\n\t\t\t\t},\n\t\t\t\tTrustAccessTokenIntrospection:            pulumi.Bool(true),\n\t\t\t\tTrustChannelTokenIntrospection:           pulumi.Bool(false),\n\t\t\t\tVerifyAccessTokenAudience:                pulumi.Bool(true),\n\t\t\t\tVerifyAccessTokenExpiry:                  pulumi.Bool(true),\n\t\t\t\tVerifyAccessTokenIntrospectionAudience:   pulumi.Bool(true),\n\t\t\t\tVerifyAccessTokenIntrospectionExpiry:     pulumi.Bool(false),\n\t\t\t\tVerifyAccessTokenIntrospectionIssuer:     pulumi.Bool(true),\n\t\t\t\tVerifyAccessTokenIntrospectionNotbefore:  pulumi.Bool(true),\n\t\t\t\tVerifyAccessTokenIntrospectionScopes:     pulumi.Bool(false),\n\t\t\t\tVerifyAccessTokenIntrospectionSubject:    pulumi.Bool(false),\n\t\t\t\tVerifyAccessTokenIssuer:                  pulumi.Bool(true),\n\t\t\t\tVerifyAccessTokenNotbefore:               pulumi.Bool(true),\n\t\t\t\tVerifyAccessTokenScopes:                  pulumi.Bool(false),\n\t\t\t\tVerifyAccessTokenSignature:               pulumi.Bool(true),\n\t\t\t\tVerifyAccessTokenSubject:                 pulumi.Bool(false),\n\t\t\t\tVerifyChannelTokenAudience:               pulumi.Bool(true),\n\t\t\t\tVerifyChannelTokenExpiry:                 pulumi.Bool(false),\n\t\t\t\tVerifyChannelTokenIntrospectionAudience:  pulumi.Bool(false),\n\t\t\t\tVerifyChannelTokenIntrospectionExpiry:    pulumi.Bool(false),\n\t\t\t\tVerifyChannelTokenIntrospectionIssuer:    pulumi.Bool(true),\n\t\t\t\tVerifyChannelTokenIntrospectionNotbefore: pulumi.Bool(false),\n\t\t\t\tVerifyChannelTokenIntrospectionScopes:    pulumi.Bool(true),\n\t\t\t\tVerifyChannelTokenIntrospectionSubject:   pulumi.Bool(false),\n\t\t\t\tVerifyChannelTokenIssuer:                 pulumi.Bool(true),\n\t\t\t\tVerifyChannelTokenNotbefore:              pulumi.Bool(true),\n\t\t\t\tVerifyChannelTokenScopes:                 pulumi.Bool(false),\n\t\t\t\tVerifyChannelTokenSignature:              pulumi.Bool(false),\n\t\t\t\tVerifyChannelTokenSubject:                pulumi.Bool(true),\n\t\t\t},\n\t\t\tControlPlaneId:           pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tCreatedAt:                pulumi.Float64(8),\n\t\t\tEnabled:                  pulumi.Bool(false),\n\t\t\tGatewayPluginJwtSignerId: pulumi.String(\"...my_id...\"),\n\t\t\tInstanceName:             pulumi.String(\"...my_instance_name...\"),\n\t\t\tOrdering: \u0026konnect.GatewayPluginJwtSignerOrderingArgs{\n\t\t\t\tAfter: \u0026konnect.GatewayPluginJwtSignerOrderingAfterArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tBefore: \u0026konnect.GatewayPluginJwtSignerOrderingBeforeArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tPartials: konnect.GatewayPluginJwtSignerPartialArray{\n\t\t\t\t\u0026konnect.GatewayPluginJwtSignerPartialArgs{\n\t\t\t\t\tId:   pulumi.String(\"...my_id...\"),\n\t\t\t\t\tName: pulumi.String(\"...my_name...\"),\n\t\t\t\t\tPath: pulumi.String(\"...my_path...\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tProtocols: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"https\"),\n\t\t\t},\n\t\t\tRoute: \u0026konnect.GatewayPluginJwtSignerRouteArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tService: \u0026konnect.GatewayPluginJwtSignerServiceArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"...\"),\n\t\t\t},\n\t\t\tUpdatedAt: pulumi.Float64(5),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.GatewayPluginJwtSigner;\nimport com.pulumi.konnect.GatewayPluginJwtSignerArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginJwtSignerConfigArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginJwtSignerConfigAccessTokenJwksUriClientCertificateArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginJwtSignerConfigAccessTokenKeysetClientCertificateArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginJwtSignerConfigChannelTokenJwksUriClientCertificateArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginJwtSignerConfigChannelTokenKeysetClientCertificateArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginJwtSignerOrderingArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginJwtSignerOrderingAfterArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginJwtSignerOrderingBeforeArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginJwtSignerPartialArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginJwtSignerRouteArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginJwtSignerServiceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myGatewaypluginjwtsigner = new GatewayPluginJwtSigner(\"myGatewaypluginjwtsigner\", GatewayPluginJwtSignerArgs.builder()\n            .config(GatewayPluginJwtSignerConfigArgs.builder()\n                .accessTokenAudienceClaims(\"...\")\n                .accessTokenAudiencesAlloweds(\"...\")\n                .accessTokenConsumerBies(\"custom_id\")\n                .accessTokenConsumerClaims(\"...\")\n                .accessTokenEndpointsSslVerify(true)\n                .accessTokenExpiryClaims(\"...\")\n                .accessTokenIntrospectionAudienceClaims(\"...\")\n                .accessTokenIntrospectionAudiencesAlloweds(\"...\")\n                .accessTokenIntrospectionAuthorization(\"...my_access_token_introspection_authorization...\")\n                .accessTokenIntrospectionBodyArgs(\"...my_access_token_introspection_body_args...\")\n                .accessTokenIntrospectionConsumerBies(\"custom_id\")\n                .accessTokenIntrospectionConsumerClaims(\"...\")\n                .accessTokenIntrospectionEndpoint(\"...my_access_token_introspection_endpoint...\")\n                .accessTokenIntrospectionExpiryClaims(\"...\")\n                .accessTokenIntrospectionHint(\"...my_access_token_introspection_hint...\")\n                .accessTokenIntrospectionIssuerClaims(\"...\")\n                .accessTokenIntrospectionIssuersAlloweds(\"...\")\n                .accessTokenIntrospectionJwtClaims(\"...\")\n                .accessTokenIntrospectionLeeway(6.18)\n                .accessTokenIntrospectionNotbeforeClaims(\"...\")\n                .accessTokenIntrospectionOptionalClaims()\n                .accessTokenIntrospectionRequiredClaims()\n                .accessTokenIntrospectionScopesClaims(\"...\")\n                .accessTokenIntrospectionScopesRequireds(\"...\")\n                .accessTokenIntrospectionSubjectClaims(\"...\")\n                .accessTokenIntrospectionSubjectsAlloweds(\"...\")\n                .accessTokenIntrospectionTimeout(4.24)\n                .accessTokenIssuer(\"...my_access_token_issuer...\")\n                .accessTokenIssuerClaims(\"...\")\n                .accessTokenIssuersAlloweds(\"...\")\n                .accessTokenJwksUri(\"...my_access_token_jwks_uri...\")\n                .accessTokenJwksUriClientCertificate(GatewayPluginJwtSignerConfigAccessTokenJwksUriClientCertificateArgs.builder()\n                    .id(\"...my_id...\")\n                    .build())\n                .accessTokenJwksUriClientPassword(\"...my_access_token_jwks_uri_client_password...\")\n                .accessTokenJwksUriClientUsername(\"...my_access_token_jwks_uri_client_username...\")\n                .accessTokenJwksUriRotatePeriod(0.18)\n                .accessTokenKeyset(\"...my_access_token_keyset...\")\n                .accessTokenKeysetClientCertificate(GatewayPluginJwtSignerConfigAccessTokenKeysetClientCertificateArgs.builder()\n                    .id(\"...my_id...\")\n                    .build())\n                .accessTokenKeysetClientPassword(\"...my_access_token_keyset_client_password...\")\n                .accessTokenKeysetClientUsername(\"...my_access_token_keyset_client_username...\")\n                .accessTokenKeysetRotatePeriod(4.53)\n                .accessTokenLeeway(0.51)\n                .accessTokenNotbeforeClaims(\"...\")\n                .accessTokenOptional(false)\n                .accessTokenOptionalClaims()\n                .accessTokenRequestHeader(\"...my_access_token_request_header...\")\n                .accessTokenRequiredClaims()\n                .accessTokenScopesClaims(\"...\")\n                .accessTokenScopesRequireds(\"...\")\n                .accessTokenSigning(true)\n                .accessTokenSigningAlgorithm(\"PS384\")\n                .accessTokenSubjectClaims(\"...\")\n                .accessTokenSubjectsAlloweds(\"...\")\n                .accessTokenUpstreamHeader(\"...my_access_token_upstream_header...\")\n                .accessTokenUpstreamLeeway(1.88)\n                .addAccessTokenClaims(Map.of(\"key\", \"value\"))\n                .addChannelTokenClaims(Map.of(\"key\", \"value\"))\n                .addClaims(Map.of(\"key\", \"value\"))\n                .cacheAccessTokenIntrospection(false)\n                .cacheChannelTokenIntrospection(true)\n                .channelTokenAudienceClaims(\"...\")\n                .channelTokenAudiencesAlloweds(\"...\")\n                .channelTokenConsumerBies(\"id\")\n                .channelTokenConsumerClaims(\"...\")\n                .channelTokenEndpointsSslVerify(true)\n                .channelTokenExpiryClaims(\"...\")\n                .channelTokenIntrospectionAudienceClaims(\"...\")\n                .channelTokenIntrospectionAudiencesAlloweds(\"...\")\n                .channelTokenIntrospectionAuthorization(\"...my_channel_token_introspection_authorization...\")\n                .channelTokenIntrospectionBodyArgs(\"...my_channel_token_introspection_body_args...\")\n                .channelTokenIntrospectionConsumerBies(\"custom_id\")\n                .channelTokenIntrospectionConsumerClaims(\"...\")\n                .channelTokenIntrospectionEndpoint(\"...my_channel_token_introspection_endpoint...\")\n                .channelTokenIntrospectionExpiryClaims(\"...\")\n                .channelTokenIntrospectionHint(\"...my_channel_token_introspection_hint...\")\n                .channelTokenIntrospectionIssuerClaims(\"...\")\n                .channelTokenIntrospectionIssuersAlloweds(\"...\")\n                .channelTokenIntrospectionJwtClaims(\"...\")\n                .channelTokenIntrospectionLeeway(4.31)\n                .channelTokenIntrospectionNotbeforeClaims(\"...\")\n                .channelTokenIntrospectionOptionalClaims()\n                .channelTokenIntrospectionRequiredClaims()\n                .channelTokenIntrospectionScopesClaims(\"...\")\n                .channelTokenIntrospectionScopesRequireds(\"...\")\n                .channelTokenIntrospectionSubjectClaims(\"...\")\n                .channelTokenIntrospectionSubjectsAlloweds(\"...\")\n                .channelTokenIntrospectionTimeout(6.9)\n                .channelTokenIssuer(\"...my_channel_token_issuer...\")\n                .channelTokenIssuerClaims(\"...\")\n                .channelTokenIssuersAlloweds(\"...\")\n                .channelTokenJwksUri(\"...my_channel_token_jwks_uri...\")\n                .channelTokenJwksUriClientCertificate(GatewayPluginJwtSignerConfigChannelTokenJwksUriClientCertificateArgs.builder()\n                    .id(\"...my_id...\")\n                    .build())\n                .channelTokenJwksUriClientPassword(\"...my_channel_token_jwks_uri_client_password...\")\n                .channelTokenJwksUriClientUsername(\"...my_channel_token_jwks_uri_client_username...\")\n                .channelTokenJwksUriRotatePeriod(9.27)\n                .channelTokenKeyset(\"...my_channel_token_keyset...\")\n                .channelTokenKeysetClientCertificate(GatewayPluginJwtSignerConfigChannelTokenKeysetClientCertificateArgs.builder()\n                    .id(\"...my_id...\")\n                    .build())\n                .channelTokenKeysetClientPassword(\"...my_channel_token_keyset_client_password...\")\n                .channelTokenKeysetClientUsername(\"...my_channel_token_keyset_client_username...\")\n                .channelTokenKeysetRotatePeriod(0.98)\n                .channelTokenLeeway(4.86)\n                .channelTokenNotbeforeClaims(\"...\")\n                .channelTokenOptional(false)\n                .channelTokenOptionalClaims()\n                .channelTokenRequestHeader(\"...my_channel_token_request_header...\")\n                .channelTokenRequiredClaims()\n                .channelTokenScopesClaims(\"...\")\n                .channelTokenScopesRequireds(\"...\")\n                .channelTokenSigning(false)\n                .channelTokenSigningAlgorithm(\"PS512\")\n                .channelTokenSubjectClaims(\"...\")\n                .channelTokenSubjectsAlloweds(\"...\")\n                .channelTokenUpstreamHeader(\"...my_channel_token_upstream_header...\")\n                .channelTokenUpstreamLeeway(5.01)\n                .enableAccessTokenIntrospection(false)\n                .enableChannelTokenIntrospection(true)\n                .enableHsSignatures(false)\n                .enableInstrumentation(true)\n                .originalAccessTokenUpstreamHeader(\"...my_original_access_token_upstream_header...\")\n                .originalChannelTokenUpstreamHeader(\"...my_original_channel_token_upstream_header...\")\n                .realm(\"...my_realm...\")\n                .removeAccessTokenClaims(\"...\")\n                .removeChannelTokenClaims(\"...\")\n                .setAccessTokenClaims(Map.of(\"key\", \"value\"))\n                .setChannelTokenClaims(Map.of(\"key\", \"value\"))\n                .setClaims(Map.of(\"key\", \"value\"))\n                .trustAccessTokenIntrospection(true)\n                .trustChannelTokenIntrospection(false)\n                .verifyAccessTokenAudience(true)\n                .verifyAccessTokenExpiry(true)\n                .verifyAccessTokenIntrospectionAudience(true)\n                .verifyAccessTokenIntrospectionExpiry(false)\n                .verifyAccessTokenIntrospectionIssuer(true)\n                .verifyAccessTokenIntrospectionNotbefore(true)\n                .verifyAccessTokenIntrospectionScopes(false)\n                .verifyAccessTokenIntrospectionSubject(false)\n                .verifyAccessTokenIssuer(true)\n                .verifyAccessTokenNotbefore(true)\n                .verifyAccessTokenScopes(false)\n                .verifyAccessTokenSignature(true)\n                .verifyAccessTokenSubject(false)\n                .verifyChannelTokenAudience(true)\n                .verifyChannelTokenExpiry(false)\n                .verifyChannelTokenIntrospectionAudience(false)\n                .verifyChannelTokenIntrospectionExpiry(false)\n                .verifyChannelTokenIntrospectionIssuer(true)\n                .verifyChannelTokenIntrospectionNotbefore(false)\n                .verifyChannelTokenIntrospectionScopes(true)\n                .verifyChannelTokenIntrospectionSubject(false)\n                .verifyChannelTokenIssuer(true)\n                .verifyChannelTokenNotbefore(true)\n                .verifyChannelTokenScopes(false)\n                .verifyChannelTokenSignature(false)\n                .verifyChannelTokenSubject(true)\n                .build())\n            .controlPlaneId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .createdAt(8.0)\n            .enabled(false)\n            .gatewayPluginJwtSignerId(\"...my_id...\")\n            .instanceName(\"...my_instance_name...\")\n            .ordering(GatewayPluginJwtSignerOrderingArgs.builder()\n                .after(GatewayPluginJwtSignerOrderingAfterArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .before(GatewayPluginJwtSignerOrderingBeforeArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .build())\n            .partials(GatewayPluginJwtSignerPartialArgs.builder()\n                .id(\"...my_id...\")\n                .name(\"...my_name...\")\n                .path(\"...my_path...\")\n                .build())\n            .protocols(\"https\")\n            .route(GatewayPluginJwtSignerRouteArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .service(GatewayPluginJwtSignerServiceArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .tags(\"...\")\n            .updatedAt(5.0)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myGatewaypluginjwtsigner:\n    type: konnect:GatewayPluginJwtSigner\n    name: my_gatewaypluginjwtsigner\n    properties:\n      config:\n        accessTokenAudienceClaims:\n          - '...'\n        accessTokenAudiencesAlloweds:\n          - '...'\n        accessTokenConsumerBies:\n          - custom_id\n        accessTokenConsumerClaims:\n          - '...'\n        accessTokenEndpointsSslVerify: true\n        accessTokenExpiryClaims:\n          - '...'\n        accessTokenIntrospectionAudienceClaims:\n          - '...'\n        accessTokenIntrospectionAudiencesAlloweds:\n          - '...'\n        accessTokenIntrospectionAuthorization: '...my_access_token_introspection_authorization...'\n        accessTokenIntrospectionBodyArgs: '...my_access_token_introspection_body_args...'\n        accessTokenIntrospectionConsumerBies:\n          - custom_id\n        accessTokenIntrospectionConsumerClaims:\n          - '...'\n        accessTokenIntrospectionEndpoint: '...my_access_token_introspection_endpoint...'\n        accessTokenIntrospectionExpiryClaims:\n          - '...'\n        accessTokenIntrospectionHint: '...my_access_token_introspection_hint...'\n        accessTokenIntrospectionIssuerClaims:\n          - '...'\n        accessTokenIntrospectionIssuersAlloweds:\n          - '...'\n        accessTokenIntrospectionJwtClaims:\n          - '...'\n        accessTokenIntrospectionLeeway: 6.18\n        accessTokenIntrospectionNotbeforeClaims:\n          - '...'\n        accessTokenIntrospectionOptionalClaims:\n          - []\n        accessTokenIntrospectionRequiredClaims:\n          - []\n        accessTokenIntrospectionScopesClaims:\n          - '...'\n        accessTokenIntrospectionScopesRequireds:\n          - '...'\n        accessTokenIntrospectionSubjectClaims:\n          - '...'\n        accessTokenIntrospectionSubjectsAlloweds:\n          - '...'\n        accessTokenIntrospectionTimeout: 4.24\n        accessTokenIssuer: '...my_access_token_issuer...'\n        accessTokenIssuerClaims:\n          - '...'\n        accessTokenIssuersAlloweds:\n          - '...'\n        accessTokenJwksUri: '...my_access_token_jwks_uri...'\n        accessTokenJwksUriClientCertificate:\n          id: '...my_id...'\n        accessTokenJwksUriClientPassword: '...my_access_token_jwks_uri_client_password...'\n        accessTokenJwksUriClientUsername: '...my_access_token_jwks_uri_client_username...'\n        accessTokenJwksUriRotatePeriod: 0.18\n        accessTokenKeyset: '...my_access_token_keyset...'\n        accessTokenKeysetClientCertificate:\n          id: '...my_id...'\n        accessTokenKeysetClientPassword: '...my_access_token_keyset_client_password...'\n        accessTokenKeysetClientUsername: '...my_access_token_keyset_client_username...'\n        accessTokenKeysetRotatePeriod: 4.53\n        accessTokenLeeway: 0.51\n        accessTokenNotbeforeClaims:\n          - '...'\n        accessTokenOptional: false\n        accessTokenOptionalClaims:\n          - []\n        accessTokenRequestHeader: '...my_access_token_request_header...'\n        accessTokenRequiredClaims:\n          - []\n        accessTokenScopesClaims:\n          - '...'\n        accessTokenScopesRequireds:\n          - '...'\n        accessTokenSigning: true\n        accessTokenSigningAlgorithm: PS384\n        accessTokenSubjectClaims:\n          - '...'\n        accessTokenSubjectsAlloweds:\n          - '...'\n        accessTokenUpstreamHeader: '...my_access_token_upstream_header...'\n        accessTokenUpstreamLeeway: 1.88\n        addAccessTokenClaims:\n          key: value\n        addChannelTokenClaims:\n          key: value\n        addClaims:\n          key: value\n        cacheAccessTokenIntrospection: false\n        cacheChannelTokenIntrospection: true\n        channelTokenAudienceClaims:\n          - '...'\n        channelTokenAudiencesAlloweds:\n          - '...'\n        channelTokenConsumerBies:\n          - id\n        channelTokenConsumerClaims:\n          - '...'\n        channelTokenEndpointsSslVerify: true\n        channelTokenExpiryClaims:\n          - '...'\n        channelTokenIntrospectionAudienceClaims:\n          - '...'\n        channelTokenIntrospectionAudiencesAlloweds:\n          - '...'\n        channelTokenIntrospectionAuthorization: '...my_channel_token_introspection_authorization...'\n        channelTokenIntrospectionBodyArgs: '...my_channel_token_introspection_body_args...'\n        channelTokenIntrospectionConsumerBies:\n          - custom_id\n        channelTokenIntrospectionConsumerClaims:\n          - '...'\n        channelTokenIntrospectionEndpoint: '...my_channel_token_introspection_endpoint...'\n        channelTokenIntrospectionExpiryClaims:\n          - '...'\n        channelTokenIntrospectionHint: '...my_channel_token_introspection_hint...'\n        channelTokenIntrospectionIssuerClaims:\n          - '...'\n        channelTokenIntrospectionIssuersAlloweds:\n          - '...'\n        channelTokenIntrospectionJwtClaims:\n          - '...'\n        channelTokenIntrospectionLeeway: 4.31\n        channelTokenIntrospectionNotbeforeClaims:\n          - '...'\n        channelTokenIntrospectionOptionalClaims:\n          - []\n        channelTokenIntrospectionRequiredClaims:\n          - []\n        channelTokenIntrospectionScopesClaims:\n          - '...'\n        channelTokenIntrospectionScopesRequireds:\n          - '...'\n        channelTokenIntrospectionSubjectClaims:\n          - '...'\n        channelTokenIntrospectionSubjectsAlloweds:\n          - '...'\n        channelTokenIntrospectionTimeout: 6.9\n        channelTokenIssuer: '...my_channel_token_issuer...'\n        channelTokenIssuerClaims:\n          - '...'\n        channelTokenIssuersAlloweds:\n          - '...'\n        channelTokenJwksUri: '...my_channel_token_jwks_uri...'\n        channelTokenJwksUriClientCertificate:\n          id: '...my_id...'\n        channelTokenJwksUriClientPassword: '...my_channel_token_jwks_uri_client_password...'\n        channelTokenJwksUriClientUsername: '...my_channel_token_jwks_uri_client_username...'\n        channelTokenJwksUriRotatePeriod: 9.27\n        channelTokenKeyset: '...my_channel_token_keyset...'\n        channelTokenKeysetClientCertificate:\n          id: '...my_id...'\n        channelTokenKeysetClientPassword: '...my_channel_token_keyset_client_password...'\n        channelTokenKeysetClientUsername: '...my_channel_token_keyset_client_username...'\n        channelTokenKeysetRotatePeriod: 0.98\n        channelTokenLeeway: 4.86\n        channelTokenNotbeforeClaims:\n          - '...'\n        channelTokenOptional: false\n        channelTokenOptionalClaims:\n          - []\n        channelTokenRequestHeader: '...my_channel_token_request_header...'\n        channelTokenRequiredClaims:\n          - []\n        channelTokenScopesClaims:\n          - '...'\n        channelTokenScopesRequireds:\n          - '...'\n        channelTokenSigning: false\n        channelTokenSigningAlgorithm: PS512\n        channelTokenSubjectClaims:\n          - '...'\n        channelTokenSubjectsAlloweds:\n          - '...'\n        channelTokenUpstreamHeader: '...my_channel_token_upstream_header...'\n        channelTokenUpstreamLeeway: 5.01\n        enableAccessTokenIntrospection: false\n        enableChannelTokenIntrospection: true\n        enableHsSignatures: false\n        enableInstrumentation: true\n        originalAccessTokenUpstreamHeader: '...my_original_access_token_upstream_header...'\n        originalChannelTokenUpstreamHeader: '...my_original_channel_token_upstream_header...'\n        realm: '...my_realm...'\n        removeAccessTokenClaims:\n          - '...'\n        removeChannelTokenClaims:\n          - '...'\n        setAccessTokenClaims:\n          key: value\n        setChannelTokenClaims:\n          key: value\n        setClaims:\n          key: value\n        trustAccessTokenIntrospection: true\n        trustChannelTokenIntrospection: false\n        verifyAccessTokenAudience: true\n        verifyAccessTokenExpiry: true\n        verifyAccessTokenIntrospectionAudience: true\n        verifyAccessTokenIntrospectionExpiry: false\n        verifyAccessTokenIntrospectionIssuer: true\n        verifyAccessTokenIntrospectionNotbefore: true\n        verifyAccessTokenIntrospectionScopes: false\n        verifyAccessTokenIntrospectionSubject: false\n        verifyAccessTokenIssuer: true\n        verifyAccessTokenNotbefore: true\n        verifyAccessTokenScopes: false\n        verifyAccessTokenSignature: true\n        verifyAccessTokenSubject: false\n        verifyChannelTokenAudience: true\n        verifyChannelTokenExpiry: false\n        verifyChannelTokenIntrospectionAudience: false\n        verifyChannelTokenIntrospectionExpiry: false\n        verifyChannelTokenIntrospectionIssuer: true\n        verifyChannelTokenIntrospectionNotbefore: false\n        verifyChannelTokenIntrospectionScopes: true\n        verifyChannelTokenIntrospectionSubject: false\n        verifyChannelTokenIssuer: true\n        verifyChannelTokenNotbefore: true\n        verifyChannelTokenScopes: false\n        verifyChannelTokenSignature: false\n        verifyChannelTokenSubject: true\n      controlPlaneId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      createdAt: 8\n      enabled: false\n      gatewayPluginJwtSignerId: '...my_id...'\n      instanceName: '...my_instance_name...'\n      ordering:\n        after:\n          accesses:\n            - '...'\n        before:\n          accesses:\n            - '...'\n      partials:\n        - id: '...my_id...'\n          name: '...my_name...'\n          path: '...my_path...'\n      protocols:\n        - https\n      route:\n        id: '...my_id...'\n      service:\n        id: '...my_id...'\n      tags:\n        - '...'\n      updatedAt: 5\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_gateway_plugin_jwt_signer.my_konnect_gateway_plugin_jwt_signer\n\n  id = jsonencode({\n\n    control_plane_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/gatewayPluginJwtSigner:GatewayPluginJwtSigner my_konnect_gateway_plugin_jwt_signer '{\"control_plane_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"}'\n```\n\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginJwtSignerConfig:GatewayPluginJwtSignerConfig"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginJwtSignerId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginJwtSignerOrdering:GatewayPluginJwtSignerOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginJwtSignerPartial:GatewayPluginJwtSignerPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginJwtSignerRoute:GatewayPluginJwtSignerRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginJwtSignerService:GatewayPluginJwtSignerService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object","required":["config","controlPlaneId","createdAt","enabled","gatewayPluginJwtSignerId","ordering","protocols","route","service","updatedAt"],"inputProperties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginJwtSignerConfig:GatewayPluginJwtSignerConfig"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginJwtSignerId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginJwtSignerOrdering:GatewayPluginJwtSignerOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginJwtSignerPartial:GatewayPluginJwtSignerPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginJwtSignerRoute:GatewayPluginJwtSignerRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginJwtSignerService:GatewayPluginJwtSignerService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"requiredInputs":["controlPlaneId"],"stateInputs":{"description":"Input properties used for looking up and filtering GatewayPluginJwtSigner resources.\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginJwtSignerConfig:GatewayPluginJwtSignerConfig"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginJwtSignerId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginJwtSignerOrdering:GatewayPluginJwtSignerOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginJwtSignerPartial:GatewayPluginJwtSignerPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginJwtSignerRoute:GatewayPluginJwtSignerRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginJwtSignerService:GatewayPluginJwtSignerService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object"}},"konnect:index/gatewayPluginKafkaConsume:GatewayPluginKafkaConsume":{"description":"GatewayPluginKafkaConsume Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myGatewaypluginkafkaconsume = new konnect.GatewayPluginKafkaConsume(\"my_gatewaypluginkafkaconsume\", {\n    config: {\n        authentication: {\n            mechanism: \"SCRAM-SHA-512\",\n            password: \"...my_password...\",\n            strategy: \"sasl\",\n            tokenauth: true,\n            user: \"...my_user...\",\n        },\n        autoOffsetReset: \"earliest\",\n        bootstrapServers: [{\n            host: \"...my_host...\",\n            port: 27325,\n        }],\n        clusterName: \"...my_cluster_name...\",\n        commitStrategy: \"off\",\n        dlqTopic: \"...my_dlq_topic...\",\n        enableDlq: false,\n        enforceLatestOffsetReset: false,\n        messageByLuaFunctions: [\"...\"],\n        messageDeserializer: \"noop\",\n        mode: \"websocket\",\n        schemaRegistry: {\n            confluent: {\n                authentication: {\n                    basic: {\n                        password: \"...my_password...\",\n                        username: \"...my_username...\",\n                    },\n                    mode: \"oauth2\",\n                    oauth2: {\n                        audiences: [\"...\"],\n                        clientId: \"...my_client_id...\",\n                        clientSecret: \"...my_client_secret...\",\n                        grantType: \"client_credentials\",\n                        password: \"...my_password...\",\n                        scopes: [\"...\"],\n                        tokenEndpoint: \"...my_token_endpoint...\",\n                        tokenHeaders: {\n                            key: \"value\",\n                        },\n                        tokenPostArgs: {\n                            key: \"value\",\n                        },\n                        username: \"...my_username...\",\n                    },\n                    oauth2Client: {\n                        authMethod: \"client_secret_basic\",\n                        clientSecretJwtAlg: \"HS256\",\n                        httpProxy: \"...my_http_proxy...\",\n                        httpProxyAuthorization: \"...my_http_proxy_authorization...\",\n                        httpVersion: 6.33,\n                        httpsProxy: \"...my_https_proxy...\",\n                        httpsProxyAuthorization: \"...my_https_proxy_authorization...\",\n                        keepAlive: false,\n                        noProxy: \"...my_no_proxy...\",\n                        sslVerify: true,\n                        timeout: 2132166923,\n                    },\n                },\n                sslVerify: false,\n                ttl: 1981.8,\n                url: \"...my_url...\",\n            },\n        },\n        security: {\n            certificateId: \"...my_certificate_id...\",\n            ssl: true,\n            sslVerify: false,\n        },\n        topics: [{\n            name: \"...my_name...\",\n            schemaRegistry: {\n                confluent: {\n                    authentication: {\n                        basic: {\n                            password: \"...my_password...\",\n                            username: \"...my_username...\",\n                        },\n                        mode: \"none\",\n                        oauth2: {\n                            audiences: [\"...\"],\n                            clientId: \"...my_client_id...\",\n                            clientSecret: \"...my_client_secret...\",\n                            grantType: \"password\",\n                            password: \"...my_password...\",\n                            scopes: [\"...\"],\n                            tokenEndpoint: \"...my_token_endpoint...\",\n                            tokenHeaders: {\n                                key: \"value\",\n                            },\n                            tokenPostArgs: {\n                                key: \"value\",\n                            },\n                            username: \"...my_username...\",\n                        },\n                        oauth2Client: {\n                            authMethod: \"client_secret_basic\",\n                            clientSecretJwtAlg: \"HS256\",\n                            httpProxy: \"...my_http_proxy...\",\n                            httpProxyAuthorization: \"...my_http_proxy_authorization...\",\n                            httpVersion: 3.98,\n                            httpsProxy: \"...my_https_proxy...\",\n                            httpsProxyAuthorization: \"...my_https_proxy_authorization...\",\n                            keepAlive: true,\n                            noProxy: \"...my_no_proxy...\",\n                            sslVerify: false,\n                            timeout: 217890936,\n                        },\n                    },\n                    sslVerify: true,\n                    ttl: 2977.64,\n                    url: \"...my_url...\",\n                },\n            },\n        }],\n    },\n    consumer: {\n        id: \"...my_id...\",\n    },\n    controlPlaneId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    createdAt: 0,\n    enabled: false,\n    gatewayPluginKafkaConsumeId: \"...my_id...\",\n    instanceName: \"...my_instance_name...\",\n    ordering: {\n        after: {\n            accesses: [\"...\"],\n        },\n        before: {\n            accesses: [\"...\"],\n        },\n    },\n    partials: [{\n        id: \"...my_id...\",\n        name: \"...my_name...\",\n        path: \"...my_path...\",\n    }],\n    protocols: [\"wss\"],\n    route: {\n        id: \"...my_id...\",\n    },\n    tags: [\"...\"],\n    updatedAt: 0,\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_gatewaypluginkafkaconsume = konnect.GatewayPluginKafkaConsume(\"my_gatewaypluginkafkaconsume\",\n    config={\n        \"authentication\": {\n            \"mechanism\": \"SCRAM-SHA-512\",\n            \"password\": \"...my_password...\",\n            \"strategy\": \"sasl\",\n            \"tokenauth\": True,\n            \"user\": \"...my_user...\",\n        },\n        \"auto_offset_reset\": \"earliest\",\n        \"bootstrap_servers\": [{\n            \"host\": \"...my_host...\",\n            \"port\": 27325,\n        }],\n        \"cluster_name\": \"...my_cluster_name...\",\n        \"commit_strategy\": \"off\",\n        \"dlq_topic\": \"...my_dlq_topic...\",\n        \"enable_dlq\": False,\n        \"enforce_latest_offset_reset\": False,\n        \"message_by_lua_functions\": [\"...\"],\n        \"message_deserializer\": \"noop\",\n        \"mode\": \"websocket\",\n        \"schema_registry\": {\n            \"confluent\": {\n                \"authentication\": {\n                    \"basic\": {\n                        \"password\": \"...my_password...\",\n                        \"username\": \"...my_username...\",\n                    },\n                    \"mode\": \"oauth2\",\n                    \"oauth2\": {\n                        \"audiences\": [\"...\"],\n                        \"client_id\": \"...my_client_id...\",\n                        \"client_secret\": \"...my_client_secret...\",\n                        \"grant_type\": \"client_credentials\",\n                        \"password\": \"...my_password...\",\n                        \"scopes\": [\"...\"],\n                        \"token_endpoint\": \"...my_token_endpoint...\",\n                        \"token_headers\": {\n                            \"key\": \"value\",\n                        },\n                        \"token_post_args\": {\n                            \"key\": \"value\",\n                        },\n                        \"username\": \"...my_username...\",\n                    },\n                    \"oauth2_client\": {\n                        \"auth_method\": \"client_secret_basic\",\n                        \"client_secret_jwt_alg\": \"HS256\",\n                        \"http_proxy\": \"...my_http_proxy...\",\n                        \"http_proxy_authorization\": \"...my_http_proxy_authorization...\",\n                        \"http_version\": 6.33,\n                        \"https_proxy\": \"...my_https_proxy...\",\n                        \"https_proxy_authorization\": \"...my_https_proxy_authorization...\",\n                        \"keep_alive\": False,\n                        \"no_proxy\": \"...my_no_proxy...\",\n                        \"ssl_verify\": True,\n                        \"timeout\": 2132166923,\n                    },\n                },\n                \"ssl_verify\": False,\n                \"ttl\": 1981.8,\n                \"url\": \"...my_url...\",\n            },\n        },\n        \"security\": {\n            \"certificate_id\": \"...my_certificate_id...\",\n            \"ssl\": True,\n            \"ssl_verify\": False,\n        },\n        \"topics\": [{\n            \"name\": \"...my_name...\",\n            \"schema_registry\": {\n                \"confluent\": {\n                    \"authentication\": {\n                        \"basic\": {\n                            \"password\": \"...my_password...\",\n                            \"username\": \"...my_username...\",\n                        },\n                        \"mode\": \"none\",\n                        \"oauth2\": {\n                            \"audiences\": [\"...\"],\n                            \"client_id\": \"...my_client_id...\",\n                            \"client_secret\": \"...my_client_secret...\",\n                            \"grant_type\": \"password\",\n                            \"password\": \"...my_password...\",\n                            \"scopes\": [\"...\"],\n                            \"token_endpoint\": \"...my_token_endpoint...\",\n                            \"token_headers\": {\n                                \"key\": \"value\",\n                            },\n                            \"token_post_args\": {\n                                \"key\": \"value\",\n                            },\n                            \"username\": \"...my_username...\",\n                        },\n                        \"oauth2_client\": {\n                            \"auth_method\": \"client_secret_basic\",\n                            \"client_secret_jwt_alg\": \"HS256\",\n                            \"http_proxy\": \"...my_http_proxy...\",\n                            \"http_proxy_authorization\": \"...my_http_proxy_authorization...\",\n                            \"http_version\": 3.98,\n                            \"https_proxy\": \"...my_https_proxy...\",\n                            \"https_proxy_authorization\": \"...my_https_proxy_authorization...\",\n                            \"keep_alive\": True,\n                            \"no_proxy\": \"...my_no_proxy...\",\n                            \"ssl_verify\": False,\n                            \"timeout\": 217890936,\n                        },\n                    },\n                    \"ssl_verify\": True,\n                    \"ttl\": 2977.64,\n                    \"url\": \"...my_url...\",\n                },\n            },\n        }],\n    },\n    consumer={\n        \"id\": \"...my_id...\",\n    },\n    control_plane_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    created_at=0,\n    enabled=False,\n    gateway_plugin_kafka_consume_id=\"...my_id...\",\n    instance_name=\"...my_instance_name...\",\n    ordering={\n        \"after\": {\n            \"accesses\": [\"...\"],\n        },\n        \"before\": {\n            \"accesses\": [\"...\"],\n        },\n    },\n    partials=[{\n        \"id\": \"...my_id...\",\n        \"name\": \"...my_name...\",\n        \"path\": \"...my_path...\",\n    }],\n    protocols=[\"wss\"],\n    route={\n        \"id\": \"...my_id...\",\n    },\n    tags=[\"...\"],\n    updated_at=0)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myGatewaypluginkafkaconsume = new Konnect.GatewayPluginKafkaConsume(\"my_gatewaypluginkafkaconsume\", new()\n    {\n        Config = new Konnect.Inputs.GatewayPluginKafkaConsumeConfigArgs\n        {\n            Authentication = new Konnect.Inputs.GatewayPluginKafkaConsumeConfigAuthenticationArgs\n            {\n                Mechanism = \"SCRAM-SHA-512\",\n                Password = \"...my_password...\",\n                Strategy = \"sasl\",\n                Tokenauth = true,\n                User = \"...my_user...\",\n            },\n            AutoOffsetReset = \"earliest\",\n            BootstrapServers = new[]\n            {\n                new Konnect.Inputs.GatewayPluginKafkaConsumeConfigBootstrapServerArgs\n                {\n                    Host = \"...my_host...\",\n                    Port = 27325,\n                },\n            },\n            ClusterName = \"...my_cluster_name...\",\n            CommitStrategy = \"off\",\n            DlqTopic = \"...my_dlq_topic...\",\n            EnableDlq = false,\n            EnforceLatestOffsetReset = false,\n            MessageByLuaFunctions = new[]\n            {\n                \"...\",\n            },\n            MessageDeserializer = \"noop\",\n            Mode = \"websocket\",\n            SchemaRegistry = new Konnect.Inputs.GatewayPluginKafkaConsumeConfigSchemaRegistryArgs\n            {\n                Confluent = new Konnect.Inputs.GatewayPluginKafkaConsumeConfigSchemaRegistryConfluentArgs\n                {\n                    Authentication = new Konnect.Inputs.GatewayPluginKafkaConsumeConfigSchemaRegistryConfluentAuthenticationArgs\n                    {\n                        Basic = new Konnect.Inputs.GatewayPluginKafkaConsumeConfigSchemaRegistryConfluentAuthenticationBasicArgs\n                        {\n                            Password = \"...my_password...\",\n                            Username = \"...my_username...\",\n                        },\n                        Mode = \"oauth2\",\n                        Oauth2 = new Konnect.Inputs.GatewayPluginKafkaConsumeConfigSchemaRegistryConfluentAuthenticationOauth2Args\n                        {\n                            Audiences = new[]\n                            {\n                                \"...\",\n                            },\n                            ClientId = \"...my_client_id...\",\n                            ClientSecret = \"...my_client_secret...\",\n                            GrantType = \"client_credentials\",\n                            Password = \"...my_password...\",\n                            Scopes = new[]\n                            {\n                                \"...\",\n                            },\n                            TokenEndpoint = \"...my_token_endpoint...\",\n                            TokenHeaders = \n                            {\n                                { \"key\", \"value\" },\n                            },\n                            TokenPostArgs = \n                            {\n                                { \"key\", \"value\" },\n                            },\n                            Username = \"...my_username...\",\n                        },\n                        Oauth2Client = new Konnect.Inputs.GatewayPluginKafkaConsumeConfigSchemaRegistryConfluentAuthenticationOauth2ClientArgs\n                        {\n                            AuthMethod = \"client_secret_basic\",\n                            ClientSecretJwtAlg = \"HS256\",\n                            HttpProxy = \"...my_http_proxy...\",\n                            HttpProxyAuthorization = \"...my_http_proxy_authorization...\",\n                            HttpVersion = 6.33,\n                            HttpsProxy = \"...my_https_proxy...\",\n                            HttpsProxyAuthorization = \"...my_https_proxy_authorization...\",\n                            KeepAlive = false,\n                            NoProxy = \"...my_no_proxy...\",\n                            SslVerify = true,\n                            Timeout = 2132166923,\n                        },\n                    },\n                    SslVerify = false,\n                    Ttl = 1981.8,\n                    Url = \"...my_url...\",\n                },\n            },\n            Security = new Konnect.Inputs.GatewayPluginKafkaConsumeConfigSecurityArgs\n            {\n                CertificateId = \"...my_certificate_id...\",\n                Ssl = true,\n                SslVerify = false,\n            },\n            Topics = new[]\n            {\n                new Konnect.Inputs.GatewayPluginKafkaConsumeConfigTopicArgs\n                {\n                    Name = \"...my_name...\",\n                    SchemaRegistry = new Konnect.Inputs.GatewayPluginKafkaConsumeConfigTopicSchemaRegistryArgs\n                    {\n                        Confluent = new Konnect.Inputs.GatewayPluginKafkaConsumeConfigTopicSchemaRegistryConfluentArgs\n                        {\n                            Authentication = new Konnect.Inputs.GatewayPluginKafkaConsumeConfigTopicSchemaRegistryConfluentAuthenticationArgs\n                            {\n                                Basic = new Konnect.Inputs.GatewayPluginKafkaConsumeConfigTopicSchemaRegistryConfluentAuthenticationBasicArgs\n                                {\n                                    Password = \"...my_password...\",\n                                    Username = \"...my_username...\",\n                                },\n                                Mode = \"none\",\n                                Oauth2 = new Konnect.Inputs.GatewayPluginKafkaConsumeConfigTopicSchemaRegistryConfluentAuthenticationOauth2Args\n                                {\n                                    Audiences = new[]\n                                    {\n                                        \"...\",\n                                    },\n                                    ClientId = \"...my_client_id...\",\n                                    ClientSecret = \"...my_client_secret...\",\n                                    GrantType = \"password\",\n                                    Password = \"...my_password...\",\n                                    Scopes = new[]\n                                    {\n                                        \"...\",\n                                    },\n                                    TokenEndpoint = \"...my_token_endpoint...\",\n                                    TokenHeaders = \n                                    {\n                                        { \"key\", \"value\" },\n                                    },\n                                    TokenPostArgs = \n                                    {\n                                        { \"key\", \"value\" },\n                                    },\n                                    Username = \"...my_username...\",\n                                },\n                                Oauth2Client = new Konnect.Inputs.GatewayPluginKafkaConsumeConfigTopicSchemaRegistryConfluentAuthenticationOauth2ClientArgs\n                                {\n                                    AuthMethod = \"client_secret_basic\",\n                                    ClientSecretJwtAlg = \"HS256\",\n                                    HttpProxy = \"...my_http_proxy...\",\n                                    HttpProxyAuthorization = \"...my_http_proxy_authorization...\",\n                                    HttpVersion = 3.98,\n                                    HttpsProxy = \"...my_https_proxy...\",\n                                    HttpsProxyAuthorization = \"...my_https_proxy_authorization...\",\n                                    KeepAlive = true,\n                                    NoProxy = \"...my_no_proxy...\",\n                                    SslVerify = false,\n                                    Timeout = 217890936,\n                                },\n                            },\n                            SslVerify = true,\n                            Ttl = 2977.64,\n                            Url = \"...my_url...\",\n                        },\n                    },\n                },\n            },\n        },\n        Consumer = new Konnect.Inputs.GatewayPluginKafkaConsumeConsumerArgs\n        {\n            Id = \"...my_id...\",\n        },\n        ControlPlaneId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        CreatedAt = 0,\n        Enabled = false,\n        GatewayPluginKafkaConsumeId = \"...my_id...\",\n        InstanceName = \"...my_instance_name...\",\n        Ordering = new Konnect.Inputs.GatewayPluginKafkaConsumeOrderingArgs\n        {\n            After = new Konnect.Inputs.GatewayPluginKafkaConsumeOrderingAfterArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n            Before = new Konnect.Inputs.GatewayPluginKafkaConsumeOrderingBeforeArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n        },\n        Partials = new[]\n        {\n            new Konnect.Inputs.GatewayPluginKafkaConsumePartialArgs\n            {\n                Id = \"...my_id...\",\n                Name = \"...my_name...\",\n                Path = \"...my_path...\",\n            },\n        },\n        Protocols = new[]\n        {\n            \"wss\",\n        },\n        Route = new Konnect.Inputs.GatewayPluginKafkaConsumeRouteArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Tags = new[]\n        {\n            \"...\",\n        },\n        UpdatedAt = 0,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewGatewayPluginKafkaConsume(ctx, \"my_gatewaypluginkafkaconsume\", \u0026konnect.GatewayPluginKafkaConsumeArgs{\n\t\t\tConfig: \u0026konnect.GatewayPluginKafkaConsumeConfigArgs{\n\t\t\t\tAuthentication: \u0026konnect.GatewayPluginKafkaConsumeConfigAuthenticationArgs{\n\t\t\t\t\tMechanism: pulumi.String(\"SCRAM-SHA-512\"),\n\t\t\t\t\tPassword:  pulumi.String(\"...my_password...\"),\n\t\t\t\t\tStrategy:  pulumi.String(\"sasl\"),\n\t\t\t\t\tTokenauth: pulumi.Bool(true),\n\t\t\t\t\tUser:      pulumi.String(\"...my_user...\"),\n\t\t\t\t},\n\t\t\t\tAutoOffsetReset: pulumi.String(\"earliest\"),\n\t\t\t\tBootstrapServers: konnect.GatewayPluginKafkaConsumeConfigBootstrapServerArray{\n\t\t\t\t\t\u0026konnect.GatewayPluginKafkaConsumeConfigBootstrapServerArgs{\n\t\t\t\t\t\tHost: pulumi.String(\"...my_host...\"),\n\t\t\t\t\t\tPort: pulumi.Float64(27325),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tClusterName:              pulumi.String(\"...my_cluster_name...\"),\n\t\t\t\tCommitStrategy:           pulumi.String(\"off\"),\n\t\t\t\tDlqTopic:                 pulumi.String(\"...my_dlq_topic...\"),\n\t\t\t\tEnableDlq:                pulumi.Bool(false),\n\t\t\t\tEnforceLatestOffsetReset: pulumi.Bool(false),\n\t\t\t\tMessageByLuaFunctions: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tMessageDeserializer: pulumi.String(\"noop\"),\n\t\t\t\tMode:                pulumi.String(\"websocket\"),\n\t\t\t\tSchemaRegistry: \u0026konnect.GatewayPluginKafkaConsumeConfigSchemaRegistryArgs{\n\t\t\t\t\tConfluent: \u0026konnect.GatewayPluginKafkaConsumeConfigSchemaRegistryConfluentArgs{\n\t\t\t\t\t\tAuthentication: \u0026konnect.GatewayPluginKafkaConsumeConfigSchemaRegistryConfluentAuthenticationArgs{\n\t\t\t\t\t\t\tBasic: \u0026konnect.GatewayPluginKafkaConsumeConfigSchemaRegistryConfluentAuthenticationBasicArgs{\n\t\t\t\t\t\t\t\tPassword: pulumi.String(\"...my_password...\"),\n\t\t\t\t\t\t\t\tUsername: pulumi.String(\"...my_username...\"),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tMode: pulumi.String(\"oauth2\"),\n\t\t\t\t\t\t\tOauth2: \u0026konnect.GatewayPluginKafkaConsumeConfigSchemaRegistryConfluentAuthenticationOauth2Args{\n\t\t\t\t\t\t\t\tAudiences: pulumi.StringArray{\n\t\t\t\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\tClientId:     pulumi.String(\"...my_client_id...\"),\n\t\t\t\t\t\t\t\tClientSecret: pulumi.String(\"...my_client_secret...\"),\n\t\t\t\t\t\t\t\tGrantType:    pulumi.String(\"client_credentials\"),\n\t\t\t\t\t\t\t\tPassword:     pulumi.String(\"...my_password...\"),\n\t\t\t\t\t\t\t\tScopes: pulumi.StringArray{\n\t\t\t\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\tTokenEndpoint: pulumi.String(\"...my_token_endpoint...\"),\n\t\t\t\t\t\t\t\tTokenHeaders: pulumi.StringMap{\n\t\t\t\t\t\t\t\t\t\"key\": pulumi.String(\"value\"),\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\tTokenPostArgs: pulumi.StringMap{\n\t\t\t\t\t\t\t\t\t\"key\": pulumi.String(\"value\"),\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\tUsername: pulumi.String(\"...my_username...\"),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tOauth2Client: \u0026konnect.GatewayPluginKafkaConsumeConfigSchemaRegistryConfluentAuthenticationOauth2ClientArgs{\n\t\t\t\t\t\t\t\tAuthMethod:              pulumi.String(\"client_secret_basic\"),\n\t\t\t\t\t\t\t\tClientSecretJwtAlg:      pulumi.String(\"HS256\"),\n\t\t\t\t\t\t\t\tHttpProxy:               pulumi.String(\"...my_http_proxy...\"),\n\t\t\t\t\t\t\t\tHttpProxyAuthorization:  pulumi.String(\"...my_http_proxy_authorization...\"),\n\t\t\t\t\t\t\t\tHttpVersion:             pulumi.Float64(6.33),\n\t\t\t\t\t\t\t\tHttpsProxy:              pulumi.String(\"...my_https_proxy...\"),\n\t\t\t\t\t\t\t\tHttpsProxyAuthorization: pulumi.String(\"...my_https_proxy_authorization...\"),\n\t\t\t\t\t\t\t\tKeepAlive:               pulumi.Bool(false),\n\t\t\t\t\t\t\t\tNoProxy:                 pulumi.String(\"...my_no_proxy...\"),\n\t\t\t\t\t\t\t\tSslVerify:               pulumi.Bool(true),\n\t\t\t\t\t\t\t\tTimeout:                 pulumi.Float64(2132166923),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t\tSslVerify: pulumi.Bool(false),\n\t\t\t\t\t\tTtl:       pulumi.Float64(1981.8),\n\t\t\t\t\t\tUrl:       pulumi.String(\"...my_url...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tSecurity: \u0026konnect.GatewayPluginKafkaConsumeConfigSecurityArgs{\n\t\t\t\t\tCertificateId: pulumi.String(\"...my_certificate_id...\"),\n\t\t\t\t\tSsl:           pulumi.Bool(true),\n\t\t\t\t\tSslVerify:     pulumi.Bool(false),\n\t\t\t\t},\n\t\t\t\tTopics: konnect.GatewayPluginKafkaConsumeConfigTopicArray{\n\t\t\t\t\t\u0026konnect.GatewayPluginKafkaConsumeConfigTopicArgs{\n\t\t\t\t\t\tName: pulumi.String(\"...my_name...\"),\n\t\t\t\t\t\tSchemaRegistry: \u0026konnect.GatewayPluginKafkaConsumeConfigTopicSchemaRegistryArgs{\n\t\t\t\t\t\t\tConfluent: \u0026konnect.GatewayPluginKafkaConsumeConfigTopicSchemaRegistryConfluentArgs{\n\t\t\t\t\t\t\t\tAuthentication: \u0026konnect.GatewayPluginKafkaConsumeConfigTopicSchemaRegistryConfluentAuthenticationArgs{\n\t\t\t\t\t\t\t\t\tBasic: \u0026konnect.GatewayPluginKafkaConsumeConfigTopicSchemaRegistryConfluentAuthenticationBasicArgs{\n\t\t\t\t\t\t\t\t\t\tPassword: pulumi.String(\"...my_password...\"),\n\t\t\t\t\t\t\t\t\t\tUsername: pulumi.String(\"...my_username...\"),\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\tMode: pulumi.String(\"none\"),\n\t\t\t\t\t\t\t\t\tOauth2: \u0026konnect.GatewayPluginKafkaConsumeConfigTopicSchemaRegistryConfluentAuthenticationOauth2Args{\n\t\t\t\t\t\t\t\t\t\tAudiences: pulumi.StringArray{\n\t\t\t\t\t\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\tClientId:     pulumi.String(\"...my_client_id...\"),\n\t\t\t\t\t\t\t\t\t\tClientSecret: pulumi.String(\"...my_client_secret...\"),\n\t\t\t\t\t\t\t\t\t\tGrantType:    pulumi.String(\"password\"),\n\t\t\t\t\t\t\t\t\t\tPassword:     pulumi.String(\"...my_password...\"),\n\t\t\t\t\t\t\t\t\t\tScopes: pulumi.StringArray{\n\t\t\t\t\t\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\tTokenEndpoint: pulumi.String(\"...my_token_endpoint...\"),\n\t\t\t\t\t\t\t\t\t\tTokenHeaders: pulumi.StringMap{\n\t\t\t\t\t\t\t\t\t\t\t\"key\": pulumi.String(\"value\"),\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\tTokenPostArgs: pulumi.StringMap{\n\t\t\t\t\t\t\t\t\t\t\t\"key\": pulumi.String(\"value\"),\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\tUsername: pulumi.String(\"...my_username...\"),\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\tOauth2Client: \u0026konnect.GatewayPluginKafkaConsumeConfigTopicSchemaRegistryConfluentAuthenticationOauth2ClientArgs{\n\t\t\t\t\t\t\t\t\t\tAuthMethod:              pulumi.String(\"client_secret_basic\"),\n\t\t\t\t\t\t\t\t\t\tClientSecretJwtAlg:      pulumi.String(\"HS256\"),\n\t\t\t\t\t\t\t\t\t\tHttpProxy:               pulumi.String(\"...my_http_proxy...\"),\n\t\t\t\t\t\t\t\t\t\tHttpProxyAuthorization:  pulumi.String(\"...my_http_proxy_authorization...\"),\n\t\t\t\t\t\t\t\t\t\tHttpVersion:             pulumi.Float64(3.98),\n\t\t\t\t\t\t\t\t\t\tHttpsProxy:              pulumi.String(\"...my_https_proxy...\"),\n\t\t\t\t\t\t\t\t\t\tHttpsProxyAuthorization: pulumi.String(\"...my_https_proxy_authorization...\"),\n\t\t\t\t\t\t\t\t\t\tKeepAlive:               pulumi.Bool(true),\n\t\t\t\t\t\t\t\t\t\tNoProxy:                 pulumi.String(\"...my_no_proxy...\"),\n\t\t\t\t\t\t\t\t\t\tSslVerify:               pulumi.Bool(false),\n\t\t\t\t\t\t\t\t\t\tTimeout:                 pulumi.Float64(217890936),\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\tSslVerify: pulumi.Bool(true),\n\t\t\t\t\t\t\t\tTtl:       pulumi.Float64(2977.64),\n\t\t\t\t\t\t\t\tUrl:       pulumi.String(\"...my_url...\"),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tConsumer: \u0026konnect.GatewayPluginKafkaConsumeConsumerArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tControlPlaneId:              pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tCreatedAt:                   pulumi.Float64(0),\n\t\t\tEnabled:                     pulumi.Bool(false),\n\t\t\tGatewayPluginKafkaConsumeId: pulumi.String(\"...my_id...\"),\n\t\t\tInstanceName:                pulumi.String(\"...my_instance_name...\"),\n\t\t\tOrdering: \u0026konnect.GatewayPluginKafkaConsumeOrderingArgs{\n\t\t\t\tAfter: \u0026konnect.GatewayPluginKafkaConsumeOrderingAfterArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tBefore: \u0026konnect.GatewayPluginKafkaConsumeOrderingBeforeArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tPartials: konnect.GatewayPluginKafkaConsumePartialArray{\n\t\t\t\t\u0026konnect.GatewayPluginKafkaConsumePartialArgs{\n\t\t\t\t\tId:   pulumi.String(\"...my_id...\"),\n\t\t\t\t\tName: pulumi.String(\"...my_name...\"),\n\t\t\t\t\tPath: pulumi.String(\"...my_path...\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tProtocols: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"wss\"),\n\t\t\t},\n\t\t\tRoute: \u0026konnect.GatewayPluginKafkaConsumeRouteArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"...\"),\n\t\t\t},\n\t\t\tUpdatedAt: pulumi.Float64(0),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.GatewayPluginKafkaConsume;\nimport com.pulumi.konnect.GatewayPluginKafkaConsumeArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginKafkaConsumeConfigArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginKafkaConsumeConfigAuthenticationArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginKafkaConsumeConfigSchemaRegistryArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginKafkaConsumeConfigSchemaRegistryConfluentArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginKafkaConsumeConfigSchemaRegistryConfluentAuthenticationArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginKafkaConsumeConfigSchemaRegistryConfluentAuthenticationBasicArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginKafkaConsumeConfigSchemaRegistryConfluentAuthenticationOauth2Args;\nimport com.pulumi.konnect.inputs.GatewayPluginKafkaConsumeConfigSchemaRegistryConfluentAuthenticationOauth2ClientArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginKafkaConsumeConfigSecurityArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginKafkaConsumeConsumerArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginKafkaConsumeOrderingArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginKafkaConsumeOrderingAfterArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginKafkaConsumeOrderingBeforeArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginKafkaConsumePartialArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginKafkaConsumeRouteArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myGatewaypluginkafkaconsume = new GatewayPluginKafkaConsume(\"myGatewaypluginkafkaconsume\", GatewayPluginKafkaConsumeArgs.builder()\n            .config(GatewayPluginKafkaConsumeConfigArgs.builder()\n                .authentication(GatewayPluginKafkaConsumeConfigAuthenticationArgs.builder()\n                    .mechanism(\"SCRAM-SHA-512\")\n                    .password(\"...my_password...\")\n                    .strategy(\"sasl\")\n                    .tokenauth(true)\n                    .user(\"...my_user...\")\n                    .build())\n                .autoOffsetReset(\"earliest\")\n                .bootstrapServers(GatewayPluginKafkaConsumeConfigBootstrapServerArgs.builder()\n                    .host(\"...my_host...\")\n                    .port(27325.0)\n                    .build())\n                .clusterName(\"...my_cluster_name...\")\n                .commitStrategy(\"off\")\n                .dlqTopic(\"...my_dlq_topic...\")\n                .enableDlq(false)\n                .enforceLatestOffsetReset(false)\n                .messageByLuaFunctions(\"...\")\n                .messageDeserializer(\"noop\")\n                .mode(\"websocket\")\n                .schemaRegistry(GatewayPluginKafkaConsumeConfigSchemaRegistryArgs.builder()\n                    .confluent(GatewayPluginKafkaConsumeConfigSchemaRegistryConfluentArgs.builder()\n                        .authentication(GatewayPluginKafkaConsumeConfigSchemaRegistryConfluentAuthenticationArgs.builder()\n                            .basic(GatewayPluginKafkaConsumeConfigSchemaRegistryConfluentAuthenticationBasicArgs.builder()\n                                .password(\"...my_password...\")\n                                .username(\"...my_username...\")\n                                .build())\n                            .mode(\"oauth2\")\n                            .oauth2(GatewayPluginKafkaConsumeConfigSchemaRegistryConfluentAuthenticationOauth2Args.builder()\n                                .audiences(\"...\")\n                                .clientId(\"...my_client_id...\")\n                                .clientSecret(\"...my_client_secret...\")\n                                .grantType(\"client_credentials\")\n                                .password(\"...my_password...\")\n                                .scopes(\"...\")\n                                .tokenEndpoint(\"...my_token_endpoint...\")\n                                .tokenHeaders(Map.of(\"key\", \"value\"))\n                                .tokenPostArgs(Map.of(\"key\", \"value\"))\n                                .username(\"...my_username...\")\n                                .build())\n                            .oauth2Client(GatewayPluginKafkaConsumeConfigSchemaRegistryConfluentAuthenticationOauth2ClientArgs.builder()\n                                .authMethod(\"client_secret_basic\")\n                                .clientSecretJwtAlg(\"HS256\")\n                                .httpProxy(\"...my_http_proxy...\")\n                                .httpProxyAuthorization(\"...my_http_proxy_authorization...\")\n                                .httpVersion(6.33)\n                                .httpsProxy(\"...my_https_proxy...\")\n                                .httpsProxyAuthorization(\"...my_https_proxy_authorization...\")\n                                .keepAlive(false)\n                                .noProxy(\"...my_no_proxy...\")\n                                .sslVerify(true)\n                                .timeout(2132166923.0)\n                                .build())\n                            .build())\n                        .sslVerify(false)\n                        .ttl(1981.8)\n                        .url(\"...my_url...\")\n                        .build())\n                    .build())\n                .security(GatewayPluginKafkaConsumeConfigSecurityArgs.builder()\n                    .certificateId(\"...my_certificate_id...\")\n                    .ssl(true)\n                    .sslVerify(false)\n                    .build())\n                .topics(GatewayPluginKafkaConsumeConfigTopicArgs.builder()\n                    .name(\"...my_name...\")\n                    .schemaRegistry(GatewayPluginKafkaConsumeConfigTopicSchemaRegistryArgs.builder()\n                        .confluent(GatewayPluginKafkaConsumeConfigTopicSchemaRegistryConfluentArgs.builder()\n                            .authentication(GatewayPluginKafkaConsumeConfigTopicSchemaRegistryConfluentAuthenticationArgs.builder()\n                                .basic(GatewayPluginKafkaConsumeConfigTopicSchemaRegistryConfluentAuthenticationBasicArgs.builder()\n                                    .password(\"...my_password...\")\n                                    .username(\"...my_username...\")\n                                    .build())\n                                .mode(\"none\")\n                                .oauth2(GatewayPluginKafkaConsumeConfigTopicSchemaRegistryConfluentAuthenticationOauth2Args.builder()\n                                    .audiences(\"...\")\n                                    .clientId(\"...my_client_id...\")\n                                    .clientSecret(\"...my_client_secret...\")\n                                    .grantType(\"password\")\n                                    .password(\"...my_password...\")\n                                    .scopes(\"...\")\n                                    .tokenEndpoint(\"...my_token_endpoint...\")\n                                    .tokenHeaders(Map.of(\"key\", \"value\"))\n                                    .tokenPostArgs(Map.of(\"key\", \"value\"))\n                                    .username(\"...my_username...\")\n                                    .build())\n                                .oauth2Client(GatewayPluginKafkaConsumeConfigTopicSchemaRegistryConfluentAuthenticationOauth2ClientArgs.builder()\n                                    .authMethod(\"client_secret_basic\")\n                                    .clientSecretJwtAlg(\"HS256\")\n                                    .httpProxy(\"...my_http_proxy...\")\n                                    .httpProxyAuthorization(\"...my_http_proxy_authorization...\")\n                                    .httpVersion(3.98)\n                                    .httpsProxy(\"...my_https_proxy...\")\n                                    .httpsProxyAuthorization(\"...my_https_proxy_authorization...\")\n                                    .keepAlive(true)\n                                    .noProxy(\"...my_no_proxy...\")\n                                    .sslVerify(false)\n                                    .timeout(217890936.0)\n                                    .build())\n                                .build())\n                            .sslVerify(true)\n                            .ttl(2977.64)\n                            .url(\"...my_url...\")\n                            .build())\n                        .build())\n                    .build())\n                .build())\n            .consumer(GatewayPluginKafkaConsumeConsumerArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .controlPlaneId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .createdAt(0.0)\n            .enabled(false)\n            .gatewayPluginKafkaConsumeId(\"...my_id...\")\n            .instanceName(\"...my_instance_name...\")\n            .ordering(GatewayPluginKafkaConsumeOrderingArgs.builder()\n                .after(GatewayPluginKafkaConsumeOrderingAfterArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .before(GatewayPluginKafkaConsumeOrderingBeforeArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .build())\n            .partials(GatewayPluginKafkaConsumePartialArgs.builder()\n                .id(\"...my_id...\")\n                .name(\"...my_name...\")\n                .path(\"...my_path...\")\n                .build())\n            .protocols(\"wss\")\n            .route(GatewayPluginKafkaConsumeRouteArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .tags(\"...\")\n            .updatedAt(0.0)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myGatewaypluginkafkaconsume:\n    type: konnect:GatewayPluginKafkaConsume\n    name: my_gatewaypluginkafkaconsume\n    properties:\n      config:\n        authentication:\n          mechanism: SCRAM-SHA-512\n          password: '...my_password...'\n          strategy: sasl\n          tokenauth: true\n          user: '...my_user...'\n        autoOffsetReset: earliest\n        bootstrapServers:\n          - host: '...my_host...'\n            port: 27325\n        clusterName: '...my_cluster_name...'\n        commitStrategy: off\n        dlqTopic: '...my_dlq_topic...'\n        enableDlq: false\n        enforceLatestOffsetReset: false\n        messageByLuaFunctions:\n          - '...'\n        messageDeserializer: noop\n        mode: websocket\n        schemaRegistry:\n          confluent:\n            authentication:\n              basic:\n                password: '...my_password...'\n                username: '...my_username...'\n              mode: oauth2\n              oauth2:\n                audiences:\n                  - '...'\n                clientId: '...my_client_id...'\n                clientSecret: '...my_client_secret...'\n                grantType: client_credentials\n                password: '...my_password...'\n                scopes:\n                  - '...'\n                tokenEndpoint: '...my_token_endpoint...'\n                tokenHeaders:\n                  key: value\n                tokenPostArgs:\n                  key: value\n                username: '...my_username...'\n              oauth2Client:\n                authMethod: client_secret_basic\n                clientSecretJwtAlg: HS256\n                httpProxy: '...my_http_proxy...'\n                httpProxyAuthorization: '...my_http_proxy_authorization...'\n                httpVersion: 6.33\n                httpsProxy: '...my_https_proxy...'\n                httpsProxyAuthorization: '...my_https_proxy_authorization...'\n                keepAlive: false\n                noProxy: '...my_no_proxy...'\n                sslVerify: true\n                timeout: 2.132166923e+09\n            sslVerify: false\n            ttl: 1981.8\n            url: '...my_url...'\n        security:\n          certificateId: '...my_certificate_id...'\n          ssl: true\n          sslVerify: false\n        topics:\n          - name: '...my_name...'\n            schemaRegistry:\n              confluent:\n                authentication:\n                  basic:\n                    password: '...my_password...'\n                    username: '...my_username...'\n                  mode: none\n                  oauth2:\n                    audiences:\n                      - '...'\n                    clientId: '...my_client_id...'\n                    clientSecret: '...my_client_secret...'\n                    grantType: password\n                    password: '...my_password...'\n                    scopes:\n                      - '...'\n                    tokenEndpoint: '...my_token_endpoint...'\n                    tokenHeaders:\n                      key: value\n                    tokenPostArgs:\n                      key: value\n                    username: '...my_username...'\n                  oauth2Client:\n                    authMethod: client_secret_basic\n                    clientSecretJwtAlg: HS256\n                    httpProxy: '...my_http_proxy...'\n                    httpProxyAuthorization: '...my_http_proxy_authorization...'\n                    httpVersion: 3.98\n                    httpsProxy: '...my_https_proxy...'\n                    httpsProxyAuthorization: '...my_https_proxy_authorization...'\n                    keepAlive: true\n                    noProxy: '...my_no_proxy...'\n                    sslVerify: false\n                    timeout: 2.17890936e+08\n                sslVerify: true\n                ttl: 2977.64\n                url: '...my_url...'\n      consumer:\n        id: '...my_id...'\n      controlPlaneId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      createdAt: 0\n      enabled: false\n      gatewayPluginKafkaConsumeId: '...my_id...'\n      instanceName: '...my_instance_name...'\n      ordering:\n        after:\n          accesses:\n            - '...'\n        before:\n          accesses:\n            - '...'\n      partials:\n        - id: '...my_id...'\n          name: '...my_name...'\n          path: '...my_path...'\n      protocols:\n        - wss\n      route:\n        id: '...my_id...'\n      tags:\n        - '...'\n      updatedAt: 0\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_gateway_plugin_kafka_consume.my_konnect_gateway_plugin_kafka_consume\n\n  id = jsonencode({\n\n    control_plane_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/gatewayPluginKafkaConsume:GatewayPluginKafkaConsume my_konnect_gateway_plugin_kafka_consume '{\"control_plane_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"}'\n```\n\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginKafkaConsumeConfig:GatewayPluginKafkaConsumeConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginKafkaConsumeConsumer:GatewayPluginKafkaConsumeConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginKafkaConsumeId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginKafkaConsumeOrdering:GatewayPluginKafkaConsumeOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginKafkaConsumePartial:GatewayPluginKafkaConsumePartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A list of the request protocols that will trigger this plugin. The default value, as well as the possible values allowed on this field, may change depending on the plugin type. For example, plugins that only work in stream mode will only support tcp and tls. Default: [\"grpc\",\"grpcs\",\"http\",\"https\",\"ws\",\"wss\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginKafkaConsumeRoute:GatewayPluginKafkaConsumeRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object","required":["config","consumer","controlPlaneId","createdAt","enabled","gatewayPluginKafkaConsumeId","ordering","protocols","route","updatedAt"],"inputProperties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginKafkaConsumeConfig:GatewayPluginKafkaConsumeConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginKafkaConsumeConsumer:GatewayPluginKafkaConsumeConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginKafkaConsumeId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginKafkaConsumeOrdering:GatewayPluginKafkaConsumeOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginKafkaConsumePartial:GatewayPluginKafkaConsumePartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A list of the request protocols that will trigger this plugin. The default value, as well as the possible values allowed on this field, may change depending on the plugin type. For example, plugins that only work in stream mode will only support tcp and tls. Default: [\"grpc\",\"grpcs\",\"http\",\"https\",\"ws\",\"wss\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginKafkaConsumeRoute:GatewayPluginKafkaConsumeRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"requiredInputs":["config","controlPlaneId"],"stateInputs":{"description":"Input properties used for looking up and filtering GatewayPluginKafkaConsume resources.\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginKafkaConsumeConfig:GatewayPluginKafkaConsumeConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginKafkaConsumeConsumer:GatewayPluginKafkaConsumeConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginKafkaConsumeId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginKafkaConsumeOrdering:GatewayPluginKafkaConsumeOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginKafkaConsumePartial:GatewayPluginKafkaConsumePartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A list of the request protocols that will trigger this plugin. The default value, as well as the possible values allowed on this field, may change depending on the plugin type. For example, plugins that only work in stream mode will only support tcp and tls. Default: [\"grpc\",\"grpcs\",\"http\",\"https\",\"ws\",\"wss\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginKafkaConsumeRoute:GatewayPluginKafkaConsumeRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object"}},"konnect:index/gatewayPluginKafkaLog:GatewayPluginKafkaLog":{"description":"GatewayPluginKafkaLog Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myGatewaypluginkafkalog = new konnect.GatewayPluginKafkaLog(\"my_gatewaypluginkafkalog\", {\n    config: {\n        authentication: {\n            mechanism: \"SCRAM-SHA-256\",\n            password: \"...my_password...\",\n            strategy: \"sasl\",\n            tokenauth: false,\n            user: \"...my_user...\",\n        },\n        bootstrapServers: [{\n            host: \"...my_host...\",\n            port: 7302,\n        }],\n        clusterName: \"...my_cluster_name...\",\n        customFieldsByLua: {\n            key: \"value\",\n        },\n        keepalive: 2,\n        keepaliveEnabled: true,\n        keyQueryArg: \"...my_key_query_arg...\",\n        producerAsync: false,\n        producerAsyncBufferingLimitsMessagesInMemory: 2,\n        producerAsyncFlushTimeout: 6,\n        producerRequestAcks: 0,\n        producerRequestLimitsBytesPerRequest: 5,\n        producerRequestLimitsMessagesPerRequest: 10,\n        producerRequestRetriesBackoffTimeout: 1,\n        producerRequestRetriesMaxAttempts: 4,\n        producerRequestTimeout: 3,\n        schemaRegistry: {\n            confluent: {\n                authentication: {\n                    basic: {\n                        password: \"...my_password...\",\n                        username: \"...my_username...\",\n                    },\n                    mode: \"oauth2\",\n                    oauth2: {\n                        audiences: [\"...\"],\n                        clientId: \"...my_client_id...\",\n                        clientSecret: \"...my_client_secret...\",\n                        grantType: \"password\",\n                        password: \"...my_password...\",\n                        scopes: [\"...\"],\n                        tokenEndpoint: \"...my_token_endpoint...\",\n                        tokenHeaders: {\n                            key: \"value\",\n                        },\n                        tokenPostArgs: {\n                            key: \"value\",\n                        },\n                        username: \"...my_username...\",\n                    },\n                    oauth2Client: {\n                        authMethod: \"client_secret_jwt\",\n                        clientSecretJwtAlg: \"HS512\",\n                        httpProxy: \"...my_http_proxy...\",\n                        httpProxyAuthorization: \"...my_http_proxy_authorization...\",\n                        httpVersion: 9.06,\n                        httpsProxy: \"...my_https_proxy...\",\n                        httpsProxyAuthorization: \"...my_https_proxy_authorization...\",\n                        keepAlive: true,\n                        noProxy: \"...my_no_proxy...\",\n                        sslVerify: true,\n                        timeout: 893347002,\n                    },\n                },\n                keySchema: {\n                    schemaVersion: \"...my_schema_version...\",\n                    subjectName: \"...my_subject_name...\",\n                },\n                sslVerify: true,\n                ttl: 94.95,\n                url: \"...my_url...\",\n                valueSchema: {\n                    schemaVersion: \"...my_schema_version...\",\n                    subjectName: \"...my_subject_name...\",\n                },\n            },\n        },\n        security: {\n            certificateId: \"...my_certificate_id...\",\n            ssl: false,\n            sslVerify: false,\n        },\n        timeout: 2,\n        topic: \"...my_topic...\",\n    },\n    consumer: {\n        id: \"...my_id...\",\n    },\n    controlPlaneId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    createdAt: 10,\n    enabled: true,\n    gatewayPluginKafkaLogId: \"...my_id...\",\n    instanceName: \"...my_instance_name...\",\n    ordering: {\n        after: {\n            accesses: [\"...\"],\n        },\n        before: {\n            accesses: [\"...\"],\n        },\n    },\n    partials: [{\n        id: \"...my_id...\",\n        name: \"...my_name...\",\n        path: \"...my_path...\",\n    }],\n    protocols: [\"grpcs\"],\n    route: {\n        id: \"...my_id...\",\n    },\n    service: {\n        id: \"...my_id...\",\n    },\n    tags: [\"...\"],\n    updatedAt: 5,\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_gatewaypluginkafkalog = konnect.GatewayPluginKafkaLog(\"my_gatewaypluginkafkalog\",\n    config={\n        \"authentication\": {\n            \"mechanism\": \"SCRAM-SHA-256\",\n            \"password\": \"...my_password...\",\n            \"strategy\": \"sasl\",\n            \"tokenauth\": False,\n            \"user\": \"...my_user...\",\n        },\n        \"bootstrap_servers\": [{\n            \"host\": \"...my_host...\",\n            \"port\": 7302,\n        }],\n        \"cluster_name\": \"...my_cluster_name...\",\n        \"custom_fields_by_lua\": {\n            \"key\": \"value\",\n        },\n        \"keepalive\": 2,\n        \"keepalive_enabled\": True,\n        \"key_query_arg\": \"...my_key_query_arg...\",\n        \"producer_async\": False,\n        \"producer_async_buffering_limits_messages_in_memory\": 2,\n        \"producer_async_flush_timeout\": 6,\n        \"producer_request_acks\": 0,\n        \"producer_request_limits_bytes_per_request\": 5,\n        \"producer_request_limits_messages_per_request\": 10,\n        \"producer_request_retries_backoff_timeout\": 1,\n        \"producer_request_retries_max_attempts\": 4,\n        \"producer_request_timeout\": 3,\n        \"schema_registry\": {\n            \"confluent\": {\n                \"authentication\": {\n                    \"basic\": {\n                        \"password\": \"...my_password...\",\n                        \"username\": \"...my_username...\",\n                    },\n                    \"mode\": \"oauth2\",\n                    \"oauth2\": {\n                        \"audiences\": [\"...\"],\n                        \"client_id\": \"...my_client_id...\",\n                        \"client_secret\": \"...my_client_secret...\",\n                        \"grant_type\": \"password\",\n                        \"password\": \"...my_password...\",\n                        \"scopes\": [\"...\"],\n                        \"token_endpoint\": \"...my_token_endpoint...\",\n                        \"token_headers\": {\n                            \"key\": \"value\",\n                        },\n                        \"token_post_args\": {\n                            \"key\": \"value\",\n                        },\n                        \"username\": \"...my_username...\",\n                    },\n                    \"oauth2_client\": {\n                        \"auth_method\": \"client_secret_jwt\",\n                        \"client_secret_jwt_alg\": \"HS512\",\n                        \"http_proxy\": \"...my_http_proxy...\",\n                        \"http_proxy_authorization\": \"...my_http_proxy_authorization...\",\n                        \"http_version\": 9.06,\n                        \"https_proxy\": \"...my_https_proxy...\",\n                        \"https_proxy_authorization\": \"...my_https_proxy_authorization...\",\n                        \"keep_alive\": True,\n                        \"no_proxy\": \"...my_no_proxy...\",\n                        \"ssl_verify\": True,\n                        \"timeout\": 893347002,\n                    },\n                },\n                \"key_schema\": {\n                    \"schema_version\": \"...my_schema_version...\",\n                    \"subject_name\": \"...my_subject_name...\",\n                },\n                \"ssl_verify\": True,\n                \"ttl\": 94.95,\n                \"url\": \"...my_url...\",\n                \"value_schema\": {\n                    \"schema_version\": \"...my_schema_version...\",\n                    \"subject_name\": \"...my_subject_name...\",\n                },\n            },\n        },\n        \"security\": {\n            \"certificate_id\": \"...my_certificate_id...\",\n            \"ssl\": False,\n            \"ssl_verify\": False,\n        },\n        \"timeout\": 2,\n        \"topic\": \"...my_topic...\",\n    },\n    consumer={\n        \"id\": \"...my_id...\",\n    },\n    control_plane_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    created_at=10,\n    enabled=True,\n    gateway_plugin_kafka_log_id=\"...my_id...\",\n    instance_name=\"...my_instance_name...\",\n    ordering={\n        \"after\": {\n            \"accesses\": [\"...\"],\n        },\n        \"before\": {\n            \"accesses\": [\"...\"],\n        },\n    },\n    partials=[{\n        \"id\": \"...my_id...\",\n        \"name\": \"...my_name...\",\n        \"path\": \"...my_path...\",\n    }],\n    protocols=[\"grpcs\"],\n    route={\n        \"id\": \"...my_id...\",\n    },\n    service={\n        \"id\": \"...my_id...\",\n    },\n    tags=[\"...\"],\n    updated_at=5)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myGatewaypluginkafkalog = new Konnect.GatewayPluginKafkaLog(\"my_gatewaypluginkafkalog\", new()\n    {\n        Config = new Konnect.Inputs.GatewayPluginKafkaLogConfigArgs\n        {\n            Authentication = new Konnect.Inputs.GatewayPluginKafkaLogConfigAuthenticationArgs\n            {\n                Mechanism = \"SCRAM-SHA-256\",\n                Password = \"...my_password...\",\n                Strategy = \"sasl\",\n                Tokenauth = false,\n                User = \"...my_user...\",\n            },\n            BootstrapServers = new[]\n            {\n                new Konnect.Inputs.GatewayPluginKafkaLogConfigBootstrapServerArgs\n                {\n                    Host = \"...my_host...\",\n                    Port = 7302,\n                },\n            },\n            ClusterName = \"...my_cluster_name...\",\n            CustomFieldsByLua = \n            {\n                { \"key\", \"value\" },\n            },\n            Keepalive = 2,\n            KeepaliveEnabled = true,\n            KeyQueryArg = \"...my_key_query_arg...\",\n            ProducerAsync = false,\n            ProducerAsyncBufferingLimitsMessagesInMemory = 2,\n            ProducerAsyncFlushTimeout = 6,\n            ProducerRequestAcks = 0,\n            ProducerRequestLimitsBytesPerRequest = 5,\n            ProducerRequestLimitsMessagesPerRequest = 10,\n            ProducerRequestRetriesBackoffTimeout = 1,\n            ProducerRequestRetriesMaxAttempts = 4,\n            ProducerRequestTimeout = 3,\n            SchemaRegistry = new Konnect.Inputs.GatewayPluginKafkaLogConfigSchemaRegistryArgs\n            {\n                Confluent = new Konnect.Inputs.GatewayPluginKafkaLogConfigSchemaRegistryConfluentArgs\n                {\n                    Authentication = new Konnect.Inputs.GatewayPluginKafkaLogConfigSchemaRegistryConfluentAuthenticationArgs\n                    {\n                        Basic = new Konnect.Inputs.GatewayPluginKafkaLogConfigSchemaRegistryConfluentAuthenticationBasicArgs\n                        {\n                            Password = \"...my_password...\",\n                            Username = \"...my_username...\",\n                        },\n                        Mode = \"oauth2\",\n                        Oauth2 = new Konnect.Inputs.GatewayPluginKafkaLogConfigSchemaRegistryConfluentAuthenticationOauth2Args\n                        {\n                            Audiences = new[]\n                            {\n                                \"...\",\n                            },\n                            ClientId = \"...my_client_id...\",\n                            ClientSecret = \"...my_client_secret...\",\n                            GrantType = \"password\",\n                            Password = \"...my_password...\",\n                            Scopes = new[]\n                            {\n                                \"...\",\n                            },\n                            TokenEndpoint = \"...my_token_endpoint...\",\n                            TokenHeaders = \n                            {\n                                { \"key\", \"value\" },\n                            },\n                            TokenPostArgs = \n                            {\n                                { \"key\", \"value\" },\n                            },\n                            Username = \"...my_username...\",\n                        },\n                        Oauth2Client = new Konnect.Inputs.GatewayPluginKafkaLogConfigSchemaRegistryConfluentAuthenticationOauth2ClientArgs\n                        {\n                            AuthMethod = \"client_secret_jwt\",\n                            ClientSecretJwtAlg = \"HS512\",\n                            HttpProxy = \"...my_http_proxy...\",\n                            HttpProxyAuthorization = \"...my_http_proxy_authorization...\",\n                            HttpVersion = 9.06,\n                            HttpsProxy = \"...my_https_proxy...\",\n                            HttpsProxyAuthorization = \"...my_https_proxy_authorization...\",\n                            KeepAlive = true,\n                            NoProxy = \"...my_no_proxy...\",\n                            SslVerify = true,\n                            Timeout = 893347002,\n                        },\n                    },\n                    KeySchema = new Konnect.Inputs.GatewayPluginKafkaLogConfigSchemaRegistryConfluentKeySchemaArgs\n                    {\n                        SchemaVersion = \"...my_schema_version...\",\n                        SubjectName = \"...my_subject_name...\",\n                    },\n                    SslVerify = true,\n                    Ttl = 94.95,\n                    Url = \"...my_url...\",\n                    ValueSchema = new Konnect.Inputs.GatewayPluginKafkaLogConfigSchemaRegistryConfluentValueSchemaArgs\n                    {\n                        SchemaVersion = \"...my_schema_version...\",\n                        SubjectName = \"...my_subject_name...\",\n                    },\n                },\n            },\n            Security = new Konnect.Inputs.GatewayPluginKafkaLogConfigSecurityArgs\n            {\n                CertificateId = \"...my_certificate_id...\",\n                Ssl = false,\n                SslVerify = false,\n            },\n            Timeout = 2,\n            Topic = \"...my_topic...\",\n        },\n        Consumer = new Konnect.Inputs.GatewayPluginKafkaLogConsumerArgs\n        {\n            Id = \"...my_id...\",\n        },\n        ControlPlaneId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        CreatedAt = 10,\n        Enabled = true,\n        GatewayPluginKafkaLogId = \"...my_id...\",\n        InstanceName = \"...my_instance_name...\",\n        Ordering = new Konnect.Inputs.GatewayPluginKafkaLogOrderingArgs\n        {\n            After = new Konnect.Inputs.GatewayPluginKafkaLogOrderingAfterArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n            Before = new Konnect.Inputs.GatewayPluginKafkaLogOrderingBeforeArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n        },\n        Partials = new[]\n        {\n            new Konnect.Inputs.GatewayPluginKafkaLogPartialArgs\n            {\n                Id = \"...my_id...\",\n                Name = \"...my_name...\",\n                Path = \"...my_path...\",\n            },\n        },\n        Protocols = new[]\n        {\n            \"grpcs\",\n        },\n        Route = new Konnect.Inputs.GatewayPluginKafkaLogRouteArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Service = new Konnect.Inputs.GatewayPluginKafkaLogServiceArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Tags = new[]\n        {\n            \"...\",\n        },\n        UpdatedAt = 5,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewGatewayPluginKafkaLog(ctx, \"my_gatewaypluginkafkalog\", \u0026konnect.GatewayPluginKafkaLogArgs{\n\t\t\tConfig: \u0026konnect.GatewayPluginKafkaLogConfigArgs{\n\t\t\t\tAuthentication: \u0026konnect.GatewayPluginKafkaLogConfigAuthenticationArgs{\n\t\t\t\t\tMechanism: pulumi.String(\"SCRAM-SHA-256\"),\n\t\t\t\t\tPassword:  pulumi.String(\"...my_password...\"),\n\t\t\t\t\tStrategy:  pulumi.String(\"sasl\"),\n\t\t\t\t\tTokenauth: pulumi.Bool(false),\n\t\t\t\t\tUser:      pulumi.String(\"...my_user...\"),\n\t\t\t\t},\n\t\t\t\tBootstrapServers: konnect.GatewayPluginKafkaLogConfigBootstrapServerArray{\n\t\t\t\t\t\u0026konnect.GatewayPluginKafkaLogConfigBootstrapServerArgs{\n\t\t\t\t\t\tHost: pulumi.String(\"...my_host...\"),\n\t\t\t\t\t\tPort: pulumi.Float64(7302),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tClusterName: pulumi.String(\"...my_cluster_name...\"),\n\t\t\t\tCustomFieldsByLua: pulumi.StringMap{\n\t\t\t\t\t\"key\": pulumi.String(\"value\"),\n\t\t\t\t},\n\t\t\t\tKeepalive:        pulumi.Float64(2),\n\t\t\t\tKeepaliveEnabled: pulumi.Bool(true),\n\t\t\t\tKeyQueryArg:      pulumi.String(\"...my_key_query_arg...\"),\n\t\t\t\tProducerAsync:    pulumi.Bool(false),\n\t\t\t\tProducerAsyncBufferingLimitsMessagesInMemory: pulumi.Float64(2),\n\t\t\t\tProducerAsyncFlushTimeout:                    pulumi.Float64(6),\n\t\t\t\tProducerRequestAcks:                          pulumi.Float64(0),\n\t\t\t\tProducerRequestLimitsBytesPerRequest:         pulumi.Float64(5),\n\t\t\t\tProducerRequestLimitsMessagesPerRequest:      pulumi.Float64(10),\n\t\t\t\tProducerRequestRetriesBackoffTimeout:         pulumi.Float64(1),\n\t\t\t\tProducerRequestRetriesMaxAttempts:            pulumi.Float64(4),\n\t\t\t\tProducerRequestTimeout:                       pulumi.Float64(3),\n\t\t\t\tSchemaRegistry: \u0026konnect.GatewayPluginKafkaLogConfigSchemaRegistryArgs{\n\t\t\t\t\tConfluent: \u0026konnect.GatewayPluginKafkaLogConfigSchemaRegistryConfluentArgs{\n\t\t\t\t\t\tAuthentication: \u0026konnect.GatewayPluginKafkaLogConfigSchemaRegistryConfluentAuthenticationArgs{\n\t\t\t\t\t\t\tBasic: \u0026konnect.GatewayPluginKafkaLogConfigSchemaRegistryConfluentAuthenticationBasicArgs{\n\t\t\t\t\t\t\t\tPassword: pulumi.String(\"...my_password...\"),\n\t\t\t\t\t\t\t\tUsername: pulumi.String(\"...my_username...\"),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tMode: pulumi.String(\"oauth2\"),\n\t\t\t\t\t\t\tOauth2: \u0026konnect.GatewayPluginKafkaLogConfigSchemaRegistryConfluentAuthenticationOauth2Args{\n\t\t\t\t\t\t\t\tAudiences: pulumi.StringArray{\n\t\t\t\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\tClientId:     pulumi.String(\"...my_client_id...\"),\n\t\t\t\t\t\t\t\tClientSecret: pulumi.String(\"...my_client_secret...\"),\n\t\t\t\t\t\t\t\tGrantType:    pulumi.String(\"password\"),\n\t\t\t\t\t\t\t\tPassword:     pulumi.String(\"...my_password...\"),\n\t\t\t\t\t\t\t\tScopes: pulumi.StringArray{\n\t\t\t\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\tTokenEndpoint: pulumi.String(\"...my_token_endpoint...\"),\n\t\t\t\t\t\t\t\tTokenHeaders: pulumi.StringMap{\n\t\t\t\t\t\t\t\t\t\"key\": pulumi.String(\"value\"),\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\tTokenPostArgs: pulumi.StringMap{\n\t\t\t\t\t\t\t\t\t\"key\": pulumi.String(\"value\"),\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\tUsername: pulumi.String(\"...my_username...\"),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tOauth2Client: \u0026konnect.GatewayPluginKafkaLogConfigSchemaRegistryConfluentAuthenticationOauth2ClientArgs{\n\t\t\t\t\t\t\t\tAuthMethod:              pulumi.String(\"client_secret_jwt\"),\n\t\t\t\t\t\t\t\tClientSecretJwtAlg:      pulumi.String(\"HS512\"),\n\t\t\t\t\t\t\t\tHttpProxy:               pulumi.String(\"...my_http_proxy...\"),\n\t\t\t\t\t\t\t\tHttpProxyAuthorization:  pulumi.String(\"...my_http_proxy_authorization...\"),\n\t\t\t\t\t\t\t\tHttpVersion:             pulumi.Float64(9.06),\n\t\t\t\t\t\t\t\tHttpsProxy:              pulumi.String(\"...my_https_proxy...\"),\n\t\t\t\t\t\t\t\tHttpsProxyAuthorization: pulumi.String(\"...my_https_proxy_authorization...\"),\n\t\t\t\t\t\t\t\tKeepAlive:               pulumi.Bool(true),\n\t\t\t\t\t\t\t\tNoProxy:                 pulumi.String(\"...my_no_proxy...\"),\n\t\t\t\t\t\t\t\tSslVerify:               pulumi.Bool(true),\n\t\t\t\t\t\t\t\tTimeout:                 pulumi.Float64(893347002),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t\tKeySchema: \u0026konnect.GatewayPluginKafkaLogConfigSchemaRegistryConfluentKeySchemaArgs{\n\t\t\t\t\t\t\tSchemaVersion: pulumi.String(\"...my_schema_version...\"),\n\t\t\t\t\t\t\tSubjectName:   pulumi.String(\"...my_subject_name...\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\tSslVerify: pulumi.Bool(true),\n\t\t\t\t\t\tTtl:       pulumi.Float64(94.95),\n\t\t\t\t\t\tUrl:       pulumi.String(\"...my_url...\"),\n\t\t\t\t\t\tValueSchema: \u0026konnect.GatewayPluginKafkaLogConfigSchemaRegistryConfluentValueSchemaArgs{\n\t\t\t\t\t\t\tSchemaVersion: pulumi.String(\"...my_schema_version...\"),\n\t\t\t\t\t\t\tSubjectName:   pulumi.String(\"...my_subject_name...\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tSecurity: \u0026konnect.GatewayPluginKafkaLogConfigSecurityArgs{\n\t\t\t\t\tCertificateId: pulumi.String(\"...my_certificate_id...\"),\n\t\t\t\t\tSsl:           pulumi.Bool(false),\n\t\t\t\t\tSslVerify:     pulumi.Bool(false),\n\t\t\t\t},\n\t\t\t\tTimeout: pulumi.Float64(2),\n\t\t\t\tTopic:   pulumi.String(\"...my_topic...\"),\n\t\t\t},\n\t\t\tConsumer: \u0026konnect.GatewayPluginKafkaLogConsumerArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tControlPlaneId:          pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tCreatedAt:               pulumi.Float64(10),\n\t\t\tEnabled:                 pulumi.Bool(true),\n\t\t\tGatewayPluginKafkaLogId: pulumi.String(\"...my_id...\"),\n\t\t\tInstanceName:            pulumi.String(\"...my_instance_name...\"),\n\t\t\tOrdering: \u0026konnect.GatewayPluginKafkaLogOrderingArgs{\n\t\t\t\tAfter: \u0026konnect.GatewayPluginKafkaLogOrderingAfterArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tBefore: \u0026konnect.GatewayPluginKafkaLogOrderingBeforeArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tPartials: konnect.GatewayPluginKafkaLogPartialArray{\n\t\t\t\t\u0026konnect.GatewayPluginKafkaLogPartialArgs{\n\t\t\t\t\tId:   pulumi.String(\"...my_id...\"),\n\t\t\t\t\tName: pulumi.String(\"...my_name...\"),\n\t\t\t\t\tPath: pulumi.String(\"...my_path...\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tProtocols: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"grpcs\"),\n\t\t\t},\n\t\t\tRoute: \u0026konnect.GatewayPluginKafkaLogRouteArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tService: \u0026konnect.GatewayPluginKafkaLogServiceArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"...\"),\n\t\t\t},\n\t\t\tUpdatedAt: pulumi.Float64(5),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.GatewayPluginKafkaLog;\nimport com.pulumi.konnect.GatewayPluginKafkaLogArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginKafkaLogConfigArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginKafkaLogConfigAuthenticationArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginKafkaLogConfigSchemaRegistryArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginKafkaLogConfigSchemaRegistryConfluentArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginKafkaLogConfigSchemaRegistryConfluentAuthenticationArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginKafkaLogConfigSchemaRegistryConfluentAuthenticationBasicArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginKafkaLogConfigSchemaRegistryConfluentAuthenticationOauth2Args;\nimport com.pulumi.konnect.inputs.GatewayPluginKafkaLogConfigSchemaRegistryConfluentAuthenticationOauth2ClientArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginKafkaLogConfigSchemaRegistryConfluentKeySchemaArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginKafkaLogConfigSchemaRegistryConfluentValueSchemaArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginKafkaLogConfigSecurityArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginKafkaLogConsumerArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginKafkaLogOrderingArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginKafkaLogOrderingAfterArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginKafkaLogOrderingBeforeArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginKafkaLogPartialArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginKafkaLogRouteArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginKafkaLogServiceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myGatewaypluginkafkalog = new GatewayPluginKafkaLog(\"myGatewaypluginkafkalog\", GatewayPluginKafkaLogArgs.builder()\n            .config(GatewayPluginKafkaLogConfigArgs.builder()\n                .authentication(GatewayPluginKafkaLogConfigAuthenticationArgs.builder()\n                    .mechanism(\"SCRAM-SHA-256\")\n                    .password(\"...my_password...\")\n                    .strategy(\"sasl\")\n                    .tokenauth(false)\n                    .user(\"...my_user...\")\n                    .build())\n                .bootstrapServers(GatewayPluginKafkaLogConfigBootstrapServerArgs.builder()\n                    .host(\"...my_host...\")\n                    .port(7302.0)\n                    .build())\n                .clusterName(\"...my_cluster_name...\")\n                .customFieldsByLua(Map.of(\"key\", \"value\"))\n                .keepalive(2.0)\n                .keepaliveEnabled(true)\n                .keyQueryArg(\"...my_key_query_arg...\")\n                .producerAsync(false)\n                .producerAsyncBufferingLimitsMessagesInMemory(2.0)\n                .producerAsyncFlushTimeout(6.0)\n                .producerRequestAcks(0.0)\n                .producerRequestLimitsBytesPerRequest(5.0)\n                .producerRequestLimitsMessagesPerRequest(10.0)\n                .producerRequestRetriesBackoffTimeout(1.0)\n                .producerRequestRetriesMaxAttempts(4.0)\n                .producerRequestTimeout(3.0)\n                .schemaRegistry(GatewayPluginKafkaLogConfigSchemaRegistryArgs.builder()\n                    .confluent(GatewayPluginKafkaLogConfigSchemaRegistryConfluentArgs.builder()\n                        .authentication(GatewayPluginKafkaLogConfigSchemaRegistryConfluentAuthenticationArgs.builder()\n                            .basic(GatewayPluginKafkaLogConfigSchemaRegistryConfluentAuthenticationBasicArgs.builder()\n                                .password(\"...my_password...\")\n                                .username(\"...my_username...\")\n                                .build())\n                            .mode(\"oauth2\")\n                            .oauth2(GatewayPluginKafkaLogConfigSchemaRegistryConfluentAuthenticationOauth2Args.builder()\n                                .audiences(\"...\")\n                                .clientId(\"...my_client_id...\")\n                                .clientSecret(\"...my_client_secret...\")\n                                .grantType(\"password\")\n                                .password(\"...my_password...\")\n                                .scopes(\"...\")\n                                .tokenEndpoint(\"...my_token_endpoint...\")\n                                .tokenHeaders(Map.of(\"key\", \"value\"))\n                                .tokenPostArgs(Map.of(\"key\", \"value\"))\n                                .username(\"...my_username...\")\n                                .build())\n                            .oauth2Client(GatewayPluginKafkaLogConfigSchemaRegistryConfluentAuthenticationOauth2ClientArgs.builder()\n                                .authMethod(\"client_secret_jwt\")\n                                .clientSecretJwtAlg(\"HS512\")\n                                .httpProxy(\"...my_http_proxy...\")\n                                .httpProxyAuthorization(\"...my_http_proxy_authorization...\")\n                                .httpVersion(9.06)\n                                .httpsProxy(\"...my_https_proxy...\")\n                                .httpsProxyAuthorization(\"...my_https_proxy_authorization...\")\n                                .keepAlive(true)\n                                .noProxy(\"...my_no_proxy...\")\n                                .sslVerify(true)\n                                .timeout(893347002.0)\n                                .build())\n                            .build())\n                        .keySchema(GatewayPluginKafkaLogConfigSchemaRegistryConfluentKeySchemaArgs.builder()\n                            .schemaVersion(\"...my_schema_version...\")\n                            .subjectName(\"...my_subject_name...\")\n                            .build())\n                        .sslVerify(true)\n                        .ttl(94.95)\n                        .url(\"...my_url...\")\n                        .valueSchema(GatewayPluginKafkaLogConfigSchemaRegistryConfluentValueSchemaArgs.builder()\n                            .schemaVersion(\"...my_schema_version...\")\n                            .subjectName(\"...my_subject_name...\")\n                            .build())\n                        .build())\n                    .build())\n                .security(GatewayPluginKafkaLogConfigSecurityArgs.builder()\n                    .certificateId(\"...my_certificate_id...\")\n                    .ssl(false)\n                    .sslVerify(false)\n                    .build())\n                .timeout(2.0)\n                .topic(\"...my_topic...\")\n                .build())\n            .consumer(GatewayPluginKafkaLogConsumerArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .controlPlaneId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .createdAt(10.0)\n            .enabled(true)\n            .gatewayPluginKafkaLogId(\"...my_id...\")\n            .instanceName(\"...my_instance_name...\")\n            .ordering(GatewayPluginKafkaLogOrderingArgs.builder()\n                .after(GatewayPluginKafkaLogOrderingAfterArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .before(GatewayPluginKafkaLogOrderingBeforeArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .build())\n            .partials(GatewayPluginKafkaLogPartialArgs.builder()\n                .id(\"...my_id...\")\n                .name(\"...my_name...\")\n                .path(\"...my_path...\")\n                .build())\n            .protocols(\"grpcs\")\n            .route(GatewayPluginKafkaLogRouteArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .service(GatewayPluginKafkaLogServiceArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .tags(\"...\")\n            .updatedAt(5.0)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myGatewaypluginkafkalog:\n    type: konnect:GatewayPluginKafkaLog\n    name: my_gatewaypluginkafkalog\n    properties:\n      config:\n        authentication:\n          mechanism: SCRAM-SHA-256\n          password: '...my_password...'\n          strategy: sasl\n          tokenauth: false\n          user: '...my_user...'\n        bootstrapServers:\n          - host: '...my_host...'\n            port: 7302\n        clusterName: '...my_cluster_name...'\n        customFieldsByLua:\n          key: value\n        keepalive: 2\n        keepaliveEnabled: true\n        keyQueryArg: '...my_key_query_arg...'\n        producerAsync: false\n        producerAsyncBufferingLimitsMessagesInMemory: 2\n        producerAsyncFlushTimeout: 6\n        producerRequestAcks: 0\n        producerRequestLimitsBytesPerRequest: 5\n        producerRequestLimitsMessagesPerRequest: 10\n        producerRequestRetriesBackoffTimeout: 1\n        producerRequestRetriesMaxAttempts: 4\n        producerRequestTimeout: 3\n        schemaRegistry:\n          confluent:\n            authentication:\n              basic:\n                password: '...my_password...'\n                username: '...my_username...'\n              mode: oauth2\n              oauth2:\n                audiences:\n                  - '...'\n                clientId: '...my_client_id...'\n                clientSecret: '...my_client_secret...'\n                grantType: password\n                password: '...my_password...'\n                scopes:\n                  - '...'\n                tokenEndpoint: '...my_token_endpoint...'\n                tokenHeaders:\n                  key: value\n                tokenPostArgs:\n                  key: value\n                username: '...my_username...'\n              oauth2Client:\n                authMethod: client_secret_jwt\n                clientSecretJwtAlg: HS512\n                httpProxy: '...my_http_proxy...'\n                httpProxyAuthorization: '...my_http_proxy_authorization...'\n                httpVersion: 9.06\n                httpsProxy: '...my_https_proxy...'\n                httpsProxyAuthorization: '...my_https_proxy_authorization...'\n                keepAlive: true\n                noProxy: '...my_no_proxy...'\n                sslVerify: true\n                timeout: 8.93347002e+08\n            keySchema:\n              schemaVersion: '...my_schema_version...'\n              subjectName: '...my_subject_name...'\n            sslVerify: true\n            ttl: 94.95\n            url: '...my_url...'\n            valueSchema:\n              schemaVersion: '...my_schema_version...'\n              subjectName: '...my_subject_name...'\n        security:\n          certificateId: '...my_certificate_id...'\n          ssl: false\n          sslVerify: false\n        timeout: 2\n        topic: '...my_topic...'\n      consumer:\n        id: '...my_id...'\n      controlPlaneId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      createdAt: 10\n      enabled: true\n      gatewayPluginKafkaLogId: '...my_id...'\n      instanceName: '...my_instance_name...'\n      ordering:\n        after:\n          accesses:\n            - '...'\n        before:\n          accesses:\n            - '...'\n      partials:\n        - id: '...my_id...'\n          name: '...my_name...'\n          path: '...my_path...'\n      protocols:\n        - grpcs\n      route:\n        id: '...my_id...'\n      service:\n        id: '...my_id...'\n      tags:\n        - '...'\n      updatedAt: 5\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_gateway_plugin_kafka_log.my_konnect_gateway_plugin_kafka_log\n\n  id = jsonencode({\n\n    control_plane_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/gatewayPluginKafkaLog:GatewayPluginKafkaLog my_konnect_gateway_plugin_kafka_log '{\"control_plane_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"}'\n```\n\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginKafkaLogConfig:GatewayPluginKafkaLogConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginKafkaLogConsumer:GatewayPluginKafkaLogConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginKafkaLogId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginKafkaLogOrdering:GatewayPluginKafkaLogOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginKafkaLogPartial:GatewayPluginKafkaLogPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A list of the request protocols that will trigger this plugin. The default value, as well as the possible values allowed on this field, may change depending on the plugin type. For example, plugins that only work in stream mode will only support tcp and tls. Default: [\"grpc\",\"grpcs\",\"http\",\"https\",\"ws\",\"wss\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginKafkaLogRoute:GatewayPluginKafkaLogRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginKafkaLogService:GatewayPluginKafkaLogService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object","required":["config","consumer","controlPlaneId","createdAt","enabled","gatewayPluginKafkaLogId","ordering","protocols","route","service","updatedAt"],"inputProperties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginKafkaLogConfig:GatewayPluginKafkaLogConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginKafkaLogConsumer:GatewayPluginKafkaLogConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginKafkaLogId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginKafkaLogOrdering:GatewayPluginKafkaLogOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginKafkaLogPartial:GatewayPluginKafkaLogPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A list of the request protocols that will trigger this plugin. The default value, as well as the possible values allowed on this field, may change depending on the plugin type. For example, plugins that only work in stream mode will only support tcp and tls. Default: [\"grpc\",\"grpcs\",\"http\",\"https\",\"ws\",\"wss\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginKafkaLogRoute:GatewayPluginKafkaLogRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginKafkaLogService:GatewayPluginKafkaLogService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"requiredInputs":["config","controlPlaneId"],"stateInputs":{"description":"Input properties used for looking up and filtering GatewayPluginKafkaLog resources.\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginKafkaLogConfig:GatewayPluginKafkaLogConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginKafkaLogConsumer:GatewayPluginKafkaLogConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginKafkaLogId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginKafkaLogOrdering:GatewayPluginKafkaLogOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginKafkaLogPartial:GatewayPluginKafkaLogPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A list of the request protocols that will trigger this plugin. The default value, as well as the possible values allowed on this field, may change depending on the plugin type. For example, plugins that only work in stream mode will only support tcp and tls. Default: [\"grpc\",\"grpcs\",\"http\",\"https\",\"ws\",\"wss\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginKafkaLogRoute:GatewayPluginKafkaLogRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginKafkaLogService:GatewayPluginKafkaLogService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object"}},"konnect:index/gatewayPluginKafkaUpstream:GatewayPluginKafkaUpstream":{"description":"GatewayPluginKafkaUpstream Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myGatewaypluginkafkaupstream = new konnect.GatewayPluginKafkaUpstream(\"my_gatewaypluginkafkaupstream\", {\n    config: {\n        allowedTopics: [\"...\"],\n        authentication: {\n            mechanism: \"SCRAM-SHA-512\",\n            password: \"...my_password...\",\n            strategy: \"sasl\",\n            tokenauth: false,\n            user: \"...my_user...\",\n        },\n        bootstrapServers: [{\n            host: \"...my_host...\",\n            port: 3969,\n        }],\n        clusterName: \"...my_cluster_name...\",\n        forwardBody: false,\n        forwardHeaders: true,\n        forwardMethod: true,\n        forwardUri: false,\n        keepalive: 3,\n        keepaliveEnabled: true,\n        keyQueryArg: \"...my_key_query_arg...\",\n        messageByLuaFunctions: [\"...\"],\n        producerAsync: true,\n        producerAsyncBufferingLimitsMessagesInMemory: 5,\n        producerAsyncFlushTimeout: 5,\n        producerRequestAcks: 1,\n        producerRequestLimitsBytesPerRequest: 1,\n        producerRequestLimitsMessagesPerRequest: 9,\n        producerRequestRetriesBackoffTimeout: 4,\n        producerRequestRetriesMaxAttempts: 5,\n        producerRequestTimeout: 10,\n        schemaRegistry: {\n            confluent: {\n                authentication: {\n                    basic: {\n                        password: \"...my_password...\",\n                        username: \"...my_username...\",\n                    },\n                    mode: \"none\",\n                    oauth2: {\n                        audiences: [\"...\"],\n                        clientId: \"...my_client_id...\",\n                        clientSecret: \"...my_client_secret...\",\n                        grantType: \"client_credentials\",\n                        password: \"...my_password...\",\n                        scopes: [\"...\"],\n                        tokenEndpoint: \"...my_token_endpoint...\",\n                        tokenHeaders: {\n                            key: \"value\",\n                        },\n                        tokenPostArgs: {\n                            key: \"value\",\n                        },\n                        username: \"...my_username...\",\n                    },\n                    oauth2Client: {\n                        authMethod: \"client_secret_jwt\",\n                        clientSecretJwtAlg: \"HS512\",\n                        httpProxy: \"...my_http_proxy...\",\n                        httpProxyAuthorization: \"...my_http_proxy_authorization...\",\n                        httpVersion: 7.51,\n                        httpsProxy: \"...my_https_proxy...\",\n                        httpsProxyAuthorization: \"...my_https_proxy_authorization...\",\n                        keepAlive: true,\n                        noProxy: \"...my_no_proxy...\",\n                        sslVerify: false,\n                        timeout: 990649997,\n                    },\n                },\n                keySchema: {\n                    schemaVersion: \"...my_schema_version...\",\n                    subjectName: \"...my_subject_name...\",\n                },\n                sslVerify: true,\n                ttl: 1898.36,\n                url: \"...my_url...\",\n                valueSchema: {\n                    schemaVersion: \"...my_schema_version...\",\n                    subjectName: \"...my_subject_name...\",\n                },\n            },\n        },\n        security: {\n            certificateId: \"...my_certificate_id...\",\n            ssl: false,\n            sslVerify: true,\n        },\n        timeout: 0,\n        topic: \"...my_topic...\",\n        topicsQueryArg: \"...my_topics_query_arg...\",\n    },\n    consumer: {\n        id: \"...my_id...\",\n    },\n    controlPlaneId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    createdAt: 10,\n    enabled: false,\n    gatewayPluginKafkaUpstreamId: \"...my_id...\",\n    instanceName: \"...my_instance_name...\",\n    ordering: {\n        after: {\n            accesses: [\"...\"],\n        },\n        before: {\n            accesses: [\"...\"],\n        },\n    },\n    partials: [{\n        id: \"...my_id...\",\n        name: \"...my_name...\",\n        path: \"...my_path...\",\n    }],\n    protocols: [\"grpc\"],\n    route: {\n        id: \"...my_id...\",\n    },\n    service: {\n        id: \"...my_id...\",\n    },\n    tags: [\"...\"],\n    updatedAt: 0,\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_gatewaypluginkafkaupstream = konnect.GatewayPluginKafkaUpstream(\"my_gatewaypluginkafkaupstream\",\n    config={\n        \"allowed_topics\": [\"...\"],\n        \"authentication\": {\n            \"mechanism\": \"SCRAM-SHA-512\",\n            \"password\": \"...my_password...\",\n            \"strategy\": \"sasl\",\n            \"tokenauth\": False,\n            \"user\": \"...my_user...\",\n        },\n        \"bootstrap_servers\": [{\n            \"host\": \"...my_host...\",\n            \"port\": 3969,\n        }],\n        \"cluster_name\": \"...my_cluster_name...\",\n        \"forward_body\": False,\n        \"forward_headers\": True,\n        \"forward_method\": True,\n        \"forward_uri\": False,\n        \"keepalive\": 3,\n        \"keepalive_enabled\": True,\n        \"key_query_arg\": \"...my_key_query_arg...\",\n        \"message_by_lua_functions\": [\"...\"],\n        \"producer_async\": True,\n        \"producer_async_buffering_limits_messages_in_memory\": 5,\n        \"producer_async_flush_timeout\": 5,\n        \"producer_request_acks\": 1,\n        \"producer_request_limits_bytes_per_request\": 1,\n        \"producer_request_limits_messages_per_request\": 9,\n        \"producer_request_retries_backoff_timeout\": 4,\n        \"producer_request_retries_max_attempts\": 5,\n        \"producer_request_timeout\": 10,\n        \"schema_registry\": {\n            \"confluent\": {\n                \"authentication\": {\n                    \"basic\": {\n                        \"password\": \"...my_password...\",\n                        \"username\": \"...my_username...\",\n                    },\n                    \"mode\": \"none\",\n                    \"oauth2\": {\n                        \"audiences\": [\"...\"],\n                        \"client_id\": \"...my_client_id...\",\n                        \"client_secret\": \"...my_client_secret...\",\n                        \"grant_type\": \"client_credentials\",\n                        \"password\": \"...my_password...\",\n                        \"scopes\": [\"...\"],\n                        \"token_endpoint\": \"...my_token_endpoint...\",\n                        \"token_headers\": {\n                            \"key\": \"value\",\n                        },\n                        \"token_post_args\": {\n                            \"key\": \"value\",\n                        },\n                        \"username\": \"...my_username...\",\n                    },\n                    \"oauth2_client\": {\n                        \"auth_method\": \"client_secret_jwt\",\n                        \"client_secret_jwt_alg\": \"HS512\",\n                        \"http_proxy\": \"...my_http_proxy...\",\n                        \"http_proxy_authorization\": \"...my_http_proxy_authorization...\",\n                        \"http_version\": 7.51,\n                        \"https_proxy\": \"...my_https_proxy...\",\n                        \"https_proxy_authorization\": \"...my_https_proxy_authorization...\",\n                        \"keep_alive\": True,\n                        \"no_proxy\": \"...my_no_proxy...\",\n                        \"ssl_verify\": False,\n                        \"timeout\": 990649997,\n                    },\n                },\n                \"key_schema\": {\n                    \"schema_version\": \"...my_schema_version...\",\n                    \"subject_name\": \"...my_subject_name...\",\n                },\n                \"ssl_verify\": True,\n                \"ttl\": 1898.36,\n                \"url\": \"...my_url...\",\n                \"value_schema\": {\n                    \"schema_version\": \"...my_schema_version...\",\n                    \"subject_name\": \"...my_subject_name...\",\n                },\n            },\n        },\n        \"security\": {\n            \"certificate_id\": \"...my_certificate_id...\",\n            \"ssl\": False,\n            \"ssl_verify\": True,\n        },\n        \"timeout\": 0,\n        \"topic\": \"...my_topic...\",\n        \"topics_query_arg\": \"...my_topics_query_arg...\",\n    },\n    consumer={\n        \"id\": \"...my_id...\",\n    },\n    control_plane_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    created_at=10,\n    enabled=False,\n    gateway_plugin_kafka_upstream_id=\"...my_id...\",\n    instance_name=\"...my_instance_name...\",\n    ordering={\n        \"after\": {\n            \"accesses\": [\"...\"],\n        },\n        \"before\": {\n            \"accesses\": [\"...\"],\n        },\n    },\n    partials=[{\n        \"id\": \"...my_id...\",\n        \"name\": \"...my_name...\",\n        \"path\": \"...my_path...\",\n    }],\n    protocols=[\"grpc\"],\n    route={\n        \"id\": \"...my_id...\",\n    },\n    service={\n        \"id\": \"...my_id...\",\n    },\n    tags=[\"...\"],\n    updated_at=0)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myGatewaypluginkafkaupstream = new Konnect.GatewayPluginKafkaUpstream(\"my_gatewaypluginkafkaupstream\", new()\n    {\n        Config = new Konnect.Inputs.GatewayPluginKafkaUpstreamConfigArgs\n        {\n            AllowedTopics = new[]\n            {\n                \"...\",\n            },\n            Authentication = new Konnect.Inputs.GatewayPluginKafkaUpstreamConfigAuthenticationArgs\n            {\n                Mechanism = \"SCRAM-SHA-512\",\n                Password = \"...my_password...\",\n                Strategy = \"sasl\",\n                Tokenauth = false,\n                User = \"...my_user...\",\n            },\n            BootstrapServers = new[]\n            {\n                new Konnect.Inputs.GatewayPluginKafkaUpstreamConfigBootstrapServerArgs\n                {\n                    Host = \"...my_host...\",\n                    Port = 3969,\n                },\n            },\n            ClusterName = \"...my_cluster_name...\",\n            ForwardBody = false,\n            ForwardHeaders = true,\n            ForwardMethod = true,\n            ForwardUri = false,\n            Keepalive = 3,\n            KeepaliveEnabled = true,\n            KeyQueryArg = \"...my_key_query_arg...\",\n            MessageByLuaFunctions = new[]\n            {\n                \"...\",\n            },\n            ProducerAsync = true,\n            ProducerAsyncBufferingLimitsMessagesInMemory = 5,\n            ProducerAsyncFlushTimeout = 5,\n            ProducerRequestAcks = 1,\n            ProducerRequestLimitsBytesPerRequest = 1,\n            ProducerRequestLimitsMessagesPerRequest = 9,\n            ProducerRequestRetriesBackoffTimeout = 4,\n            ProducerRequestRetriesMaxAttempts = 5,\n            ProducerRequestTimeout = 10,\n            SchemaRegistry = new Konnect.Inputs.GatewayPluginKafkaUpstreamConfigSchemaRegistryArgs\n            {\n                Confluent = new Konnect.Inputs.GatewayPluginKafkaUpstreamConfigSchemaRegistryConfluentArgs\n                {\n                    Authentication = new Konnect.Inputs.GatewayPluginKafkaUpstreamConfigSchemaRegistryConfluentAuthenticationArgs\n                    {\n                        Basic = new Konnect.Inputs.GatewayPluginKafkaUpstreamConfigSchemaRegistryConfluentAuthenticationBasicArgs\n                        {\n                            Password = \"...my_password...\",\n                            Username = \"...my_username...\",\n                        },\n                        Mode = \"none\",\n                        Oauth2 = new Konnect.Inputs.GatewayPluginKafkaUpstreamConfigSchemaRegistryConfluentAuthenticationOauth2Args\n                        {\n                            Audiences = new[]\n                            {\n                                \"...\",\n                            },\n                            ClientId = \"...my_client_id...\",\n                            ClientSecret = \"...my_client_secret...\",\n                            GrantType = \"client_credentials\",\n                            Password = \"...my_password...\",\n                            Scopes = new[]\n                            {\n                                \"...\",\n                            },\n                            TokenEndpoint = \"...my_token_endpoint...\",\n                            TokenHeaders = \n                            {\n                                { \"key\", \"value\" },\n                            },\n                            TokenPostArgs = \n                            {\n                                { \"key\", \"value\" },\n                            },\n                            Username = \"...my_username...\",\n                        },\n                        Oauth2Client = new Konnect.Inputs.GatewayPluginKafkaUpstreamConfigSchemaRegistryConfluentAuthenticationOauth2ClientArgs\n                        {\n                            AuthMethod = \"client_secret_jwt\",\n                            ClientSecretJwtAlg = \"HS512\",\n                            HttpProxy = \"...my_http_proxy...\",\n                            HttpProxyAuthorization = \"...my_http_proxy_authorization...\",\n                            HttpVersion = 7.51,\n                            HttpsProxy = \"...my_https_proxy...\",\n                            HttpsProxyAuthorization = \"...my_https_proxy_authorization...\",\n                            KeepAlive = true,\n                            NoProxy = \"...my_no_proxy...\",\n                            SslVerify = false,\n                            Timeout = 990649997,\n                        },\n                    },\n                    KeySchema = new Konnect.Inputs.GatewayPluginKafkaUpstreamConfigSchemaRegistryConfluentKeySchemaArgs\n                    {\n                        SchemaVersion = \"...my_schema_version...\",\n                        SubjectName = \"...my_subject_name...\",\n                    },\n                    SslVerify = true,\n                    Ttl = 1898.36,\n                    Url = \"...my_url...\",\n                    ValueSchema = new Konnect.Inputs.GatewayPluginKafkaUpstreamConfigSchemaRegistryConfluentValueSchemaArgs\n                    {\n                        SchemaVersion = \"...my_schema_version...\",\n                        SubjectName = \"...my_subject_name...\",\n                    },\n                },\n            },\n            Security = new Konnect.Inputs.GatewayPluginKafkaUpstreamConfigSecurityArgs\n            {\n                CertificateId = \"...my_certificate_id...\",\n                Ssl = false,\n                SslVerify = true,\n            },\n            Timeout = 0,\n            Topic = \"...my_topic...\",\n            TopicsQueryArg = \"...my_topics_query_arg...\",\n        },\n        Consumer = new Konnect.Inputs.GatewayPluginKafkaUpstreamConsumerArgs\n        {\n            Id = \"...my_id...\",\n        },\n        ControlPlaneId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        CreatedAt = 10,\n        Enabled = false,\n        GatewayPluginKafkaUpstreamId = \"...my_id...\",\n        InstanceName = \"...my_instance_name...\",\n        Ordering = new Konnect.Inputs.GatewayPluginKafkaUpstreamOrderingArgs\n        {\n            After = new Konnect.Inputs.GatewayPluginKafkaUpstreamOrderingAfterArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n            Before = new Konnect.Inputs.GatewayPluginKafkaUpstreamOrderingBeforeArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n        },\n        Partials = new[]\n        {\n            new Konnect.Inputs.GatewayPluginKafkaUpstreamPartialArgs\n            {\n                Id = \"...my_id...\",\n                Name = \"...my_name...\",\n                Path = \"...my_path...\",\n            },\n        },\n        Protocols = new[]\n        {\n            \"grpc\",\n        },\n        Route = new Konnect.Inputs.GatewayPluginKafkaUpstreamRouteArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Service = new Konnect.Inputs.GatewayPluginKafkaUpstreamServiceArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Tags = new[]\n        {\n            \"...\",\n        },\n        UpdatedAt = 0,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewGatewayPluginKafkaUpstream(ctx, \"my_gatewaypluginkafkaupstream\", \u0026konnect.GatewayPluginKafkaUpstreamArgs{\n\t\t\tConfig: \u0026konnect.GatewayPluginKafkaUpstreamConfigArgs{\n\t\t\t\tAllowedTopics: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tAuthentication: \u0026konnect.GatewayPluginKafkaUpstreamConfigAuthenticationArgs{\n\t\t\t\t\tMechanism: pulumi.String(\"SCRAM-SHA-512\"),\n\t\t\t\t\tPassword:  pulumi.String(\"...my_password...\"),\n\t\t\t\t\tStrategy:  pulumi.String(\"sasl\"),\n\t\t\t\t\tTokenauth: pulumi.Bool(false),\n\t\t\t\t\tUser:      pulumi.String(\"...my_user...\"),\n\t\t\t\t},\n\t\t\t\tBootstrapServers: konnect.GatewayPluginKafkaUpstreamConfigBootstrapServerArray{\n\t\t\t\t\t\u0026konnect.GatewayPluginKafkaUpstreamConfigBootstrapServerArgs{\n\t\t\t\t\t\tHost: pulumi.String(\"...my_host...\"),\n\t\t\t\t\t\tPort: pulumi.Float64(3969),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tClusterName:      pulumi.String(\"...my_cluster_name...\"),\n\t\t\t\tForwardBody:      pulumi.Bool(false),\n\t\t\t\tForwardHeaders:   pulumi.Bool(true),\n\t\t\t\tForwardMethod:    pulumi.Bool(true),\n\t\t\t\tForwardUri:       pulumi.Bool(false),\n\t\t\t\tKeepalive:        pulumi.Float64(3),\n\t\t\t\tKeepaliveEnabled: pulumi.Bool(true),\n\t\t\t\tKeyQueryArg:      pulumi.String(\"...my_key_query_arg...\"),\n\t\t\t\tMessageByLuaFunctions: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tProducerAsync: pulumi.Bool(true),\n\t\t\t\tProducerAsyncBufferingLimitsMessagesInMemory: pulumi.Float64(5),\n\t\t\t\tProducerAsyncFlushTimeout:                    pulumi.Float64(5),\n\t\t\t\tProducerRequestAcks:                          pulumi.Float64(1),\n\t\t\t\tProducerRequestLimitsBytesPerRequest:         pulumi.Float64(1),\n\t\t\t\tProducerRequestLimitsMessagesPerRequest:      pulumi.Float64(9),\n\t\t\t\tProducerRequestRetriesBackoffTimeout:         pulumi.Float64(4),\n\t\t\t\tProducerRequestRetriesMaxAttempts:            pulumi.Float64(5),\n\t\t\t\tProducerRequestTimeout:                       pulumi.Float64(10),\n\t\t\t\tSchemaRegistry: \u0026konnect.GatewayPluginKafkaUpstreamConfigSchemaRegistryArgs{\n\t\t\t\t\tConfluent: \u0026konnect.GatewayPluginKafkaUpstreamConfigSchemaRegistryConfluentArgs{\n\t\t\t\t\t\tAuthentication: \u0026konnect.GatewayPluginKafkaUpstreamConfigSchemaRegistryConfluentAuthenticationArgs{\n\t\t\t\t\t\t\tBasic: \u0026konnect.GatewayPluginKafkaUpstreamConfigSchemaRegistryConfluentAuthenticationBasicArgs{\n\t\t\t\t\t\t\t\tPassword: pulumi.String(\"...my_password...\"),\n\t\t\t\t\t\t\t\tUsername: pulumi.String(\"...my_username...\"),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tMode: pulumi.String(\"none\"),\n\t\t\t\t\t\t\tOauth2: \u0026konnect.GatewayPluginKafkaUpstreamConfigSchemaRegistryConfluentAuthenticationOauth2Args{\n\t\t\t\t\t\t\t\tAudiences: pulumi.StringArray{\n\t\t\t\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\tClientId:     pulumi.String(\"...my_client_id...\"),\n\t\t\t\t\t\t\t\tClientSecret: pulumi.String(\"...my_client_secret...\"),\n\t\t\t\t\t\t\t\tGrantType:    pulumi.String(\"client_credentials\"),\n\t\t\t\t\t\t\t\tPassword:     pulumi.String(\"...my_password...\"),\n\t\t\t\t\t\t\t\tScopes: pulumi.StringArray{\n\t\t\t\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\tTokenEndpoint: pulumi.String(\"...my_token_endpoint...\"),\n\t\t\t\t\t\t\t\tTokenHeaders: pulumi.StringMap{\n\t\t\t\t\t\t\t\t\t\"key\": pulumi.String(\"value\"),\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\tTokenPostArgs: pulumi.StringMap{\n\t\t\t\t\t\t\t\t\t\"key\": pulumi.String(\"value\"),\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\tUsername: pulumi.String(\"...my_username...\"),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tOauth2Client: \u0026konnect.GatewayPluginKafkaUpstreamConfigSchemaRegistryConfluentAuthenticationOauth2ClientArgs{\n\t\t\t\t\t\t\t\tAuthMethod:              pulumi.String(\"client_secret_jwt\"),\n\t\t\t\t\t\t\t\tClientSecretJwtAlg:      pulumi.String(\"HS512\"),\n\t\t\t\t\t\t\t\tHttpProxy:               pulumi.String(\"...my_http_proxy...\"),\n\t\t\t\t\t\t\t\tHttpProxyAuthorization:  pulumi.String(\"...my_http_proxy_authorization...\"),\n\t\t\t\t\t\t\t\tHttpVersion:             pulumi.Float64(7.51),\n\t\t\t\t\t\t\t\tHttpsProxy:              pulumi.String(\"...my_https_proxy...\"),\n\t\t\t\t\t\t\t\tHttpsProxyAuthorization: pulumi.String(\"...my_https_proxy_authorization...\"),\n\t\t\t\t\t\t\t\tKeepAlive:               pulumi.Bool(true),\n\t\t\t\t\t\t\t\tNoProxy:                 pulumi.String(\"...my_no_proxy...\"),\n\t\t\t\t\t\t\t\tSslVerify:               pulumi.Bool(false),\n\t\t\t\t\t\t\t\tTimeout:                 pulumi.Float64(990649997),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t\tKeySchema: \u0026konnect.GatewayPluginKafkaUpstreamConfigSchemaRegistryConfluentKeySchemaArgs{\n\t\t\t\t\t\t\tSchemaVersion: pulumi.String(\"...my_schema_version...\"),\n\t\t\t\t\t\t\tSubjectName:   pulumi.String(\"...my_subject_name...\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\tSslVerify: pulumi.Bool(true),\n\t\t\t\t\t\tTtl:       pulumi.Float64(1898.36),\n\t\t\t\t\t\tUrl:       pulumi.String(\"...my_url...\"),\n\t\t\t\t\t\tValueSchema: \u0026konnect.GatewayPluginKafkaUpstreamConfigSchemaRegistryConfluentValueSchemaArgs{\n\t\t\t\t\t\t\tSchemaVersion: pulumi.String(\"...my_schema_version...\"),\n\t\t\t\t\t\t\tSubjectName:   pulumi.String(\"...my_subject_name...\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tSecurity: \u0026konnect.GatewayPluginKafkaUpstreamConfigSecurityArgs{\n\t\t\t\t\tCertificateId: pulumi.String(\"...my_certificate_id...\"),\n\t\t\t\t\tSsl:           pulumi.Bool(false),\n\t\t\t\t\tSslVerify:     pulumi.Bool(true),\n\t\t\t\t},\n\t\t\t\tTimeout:        pulumi.Float64(0),\n\t\t\t\tTopic:          pulumi.String(\"...my_topic...\"),\n\t\t\t\tTopicsQueryArg: pulumi.String(\"...my_topics_query_arg...\"),\n\t\t\t},\n\t\t\tConsumer: \u0026konnect.GatewayPluginKafkaUpstreamConsumerArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tControlPlaneId:               pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tCreatedAt:                    pulumi.Float64(10),\n\t\t\tEnabled:                      pulumi.Bool(false),\n\t\t\tGatewayPluginKafkaUpstreamId: pulumi.String(\"...my_id...\"),\n\t\t\tInstanceName:                 pulumi.String(\"...my_instance_name...\"),\n\t\t\tOrdering: \u0026konnect.GatewayPluginKafkaUpstreamOrderingArgs{\n\t\t\t\tAfter: \u0026konnect.GatewayPluginKafkaUpstreamOrderingAfterArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tBefore: \u0026konnect.GatewayPluginKafkaUpstreamOrderingBeforeArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tPartials: konnect.GatewayPluginKafkaUpstreamPartialArray{\n\t\t\t\t\u0026konnect.GatewayPluginKafkaUpstreamPartialArgs{\n\t\t\t\t\tId:   pulumi.String(\"...my_id...\"),\n\t\t\t\t\tName: pulumi.String(\"...my_name...\"),\n\t\t\t\t\tPath: pulumi.String(\"...my_path...\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tProtocols: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"grpc\"),\n\t\t\t},\n\t\t\tRoute: \u0026konnect.GatewayPluginKafkaUpstreamRouteArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tService: \u0026konnect.GatewayPluginKafkaUpstreamServiceArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"...\"),\n\t\t\t},\n\t\t\tUpdatedAt: pulumi.Float64(0),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.GatewayPluginKafkaUpstream;\nimport com.pulumi.konnect.GatewayPluginKafkaUpstreamArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginKafkaUpstreamConfigArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginKafkaUpstreamConfigAuthenticationArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginKafkaUpstreamConfigSchemaRegistryArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginKafkaUpstreamConfigSchemaRegistryConfluentArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginKafkaUpstreamConfigSchemaRegistryConfluentAuthenticationArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginKafkaUpstreamConfigSchemaRegistryConfluentAuthenticationBasicArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginKafkaUpstreamConfigSchemaRegistryConfluentAuthenticationOauth2Args;\nimport com.pulumi.konnect.inputs.GatewayPluginKafkaUpstreamConfigSchemaRegistryConfluentAuthenticationOauth2ClientArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginKafkaUpstreamConfigSchemaRegistryConfluentKeySchemaArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginKafkaUpstreamConfigSchemaRegistryConfluentValueSchemaArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginKafkaUpstreamConfigSecurityArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginKafkaUpstreamConsumerArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginKafkaUpstreamOrderingArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginKafkaUpstreamOrderingAfterArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginKafkaUpstreamOrderingBeforeArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginKafkaUpstreamPartialArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginKafkaUpstreamRouteArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginKafkaUpstreamServiceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myGatewaypluginkafkaupstream = new GatewayPluginKafkaUpstream(\"myGatewaypluginkafkaupstream\", GatewayPluginKafkaUpstreamArgs.builder()\n            .config(GatewayPluginKafkaUpstreamConfigArgs.builder()\n                .allowedTopics(\"...\")\n                .authentication(GatewayPluginKafkaUpstreamConfigAuthenticationArgs.builder()\n                    .mechanism(\"SCRAM-SHA-512\")\n                    .password(\"...my_password...\")\n                    .strategy(\"sasl\")\n                    .tokenauth(false)\n                    .user(\"...my_user...\")\n                    .build())\n                .bootstrapServers(GatewayPluginKafkaUpstreamConfigBootstrapServerArgs.builder()\n                    .host(\"...my_host...\")\n                    .port(3969.0)\n                    .build())\n                .clusterName(\"...my_cluster_name...\")\n                .forwardBody(false)\n                .forwardHeaders(true)\n                .forwardMethod(true)\n                .forwardUri(false)\n                .keepalive(3.0)\n                .keepaliveEnabled(true)\n                .keyQueryArg(\"...my_key_query_arg...\")\n                .messageByLuaFunctions(\"...\")\n                .producerAsync(true)\n                .producerAsyncBufferingLimitsMessagesInMemory(5.0)\n                .producerAsyncFlushTimeout(5.0)\n                .producerRequestAcks(1.0)\n                .producerRequestLimitsBytesPerRequest(1.0)\n                .producerRequestLimitsMessagesPerRequest(9.0)\n                .producerRequestRetriesBackoffTimeout(4.0)\n                .producerRequestRetriesMaxAttempts(5.0)\n                .producerRequestTimeout(10.0)\n                .schemaRegistry(GatewayPluginKafkaUpstreamConfigSchemaRegistryArgs.builder()\n                    .confluent(GatewayPluginKafkaUpstreamConfigSchemaRegistryConfluentArgs.builder()\n                        .authentication(GatewayPluginKafkaUpstreamConfigSchemaRegistryConfluentAuthenticationArgs.builder()\n                            .basic(GatewayPluginKafkaUpstreamConfigSchemaRegistryConfluentAuthenticationBasicArgs.builder()\n                                .password(\"...my_password...\")\n                                .username(\"...my_username...\")\n                                .build())\n                            .mode(\"none\")\n                            .oauth2(GatewayPluginKafkaUpstreamConfigSchemaRegistryConfluentAuthenticationOauth2Args.builder()\n                                .audiences(\"...\")\n                                .clientId(\"...my_client_id...\")\n                                .clientSecret(\"...my_client_secret...\")\n                                .grantType(\"client_credentials\")\n                                .password(\"...my_password...\")\n                                .scopes(\"...\")\n                                .tokenEndpoint(\"...my_token_endpoint...\")\n                                .tokenHeaders(Map.of(\"key\", \"value\"))\n                                .tokenPostArgs(Map.of(\"key\", \"value\"))\n                                .username(\"...my_username...\")\n                                .build())\n                            .oauth2Client(GatewayPluginKafkaUpstreamConfigSchemaRegistryConfluentAuthenticationOauth2ClientArgs.builder()\n                                .authMethod(\"client_secret_jwt\")\n                                .clientSecretJwtAlg(\"HS512\")\n                                .httpProxy(\"...my_http_proxy...\")\n                                .httpProxyAuthorization(\"...my_http_proxy_authorization...\")\n                                .httpVersion(7.51)\n                                .httpsProxy(\"...my_https_proxy...\")\n                                .httpsProxyAuthorization(\"...my_https_proxy_authorization...\")\n                                .keepAlive(true)\n                                .noProxy(\"...my_no_proxy...\")\n                                .sslVerify(false)\n                                .timeout(990649997.0)\n                                .build())\n                            .build())\n                        .keySchema(GatewayPluginKafkaUpstreamConfigSchemaRegistryConfluentKeySchemaArgs.builder()\n                            .schemaVersion(\"...my_schema_version...\")\n                            .subjectName(\"...my_subject_name...\")\n                            .build())\n                        .sslVerify(true)\n                        .ttl(1898.36)\n                        .url(\"...my_url...\")\n                        .valueSchema(GatewayPluginKafkaUpstreamConfigSchemaRegistryConfluentValueSchemaArgs.builder()\n                            .schemaVersion(\"...my_schema_version...\")\n                            .subjectName(\"...my_subject_name...\")\n                            .build())\n                        .build())\n                    .build())\n                .security(GatewayPluginKafkaUpstreamConfigSecurityArgs.builder()\n                    .certificateId(\"...my_certificate_id...\")\n                    .ssl(false)\n                    .sslVerify(true)\n                    .build())\n                .timeout(0.0)\n                .topic(\"...my_topic...\")\n                .topicsQueryArg(\"...my_topics_query_arg...\")\n                .build())\n            .consumer(GatewayPluginKafkaUpstreamConsumerArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .controlPlaneId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .createdAt(10.0)\n            .enabled(false)\n            .gatewayPluginKafkaUpstreamId(\"...my_id...\")\n            .instanceName(\"...my_instance_name...\")\n            .ordering(GatewayPluginKafkaUpstreamOrderingArgs.builder()\n                .after(GatewayPluginKafkaUpstreamOrderingAfterArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .before(GatewayPluginKafkaUpstreamOrderingBeforeArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .build())\n            .partials(GatewayPluginKafkaUpstreamPartialArgs.builder()\n                .id(\"...my_id...\")\n                .name(\"...my_name...\")\n                .path(\"...my_path...\")\n                .build())\n            .protocols(\"grpc\")\n            .route(GatewayPluginKafkaUpstreamRouteArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .service(GatewayPluginKafkaUpstreamServiceArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .tags(\"...\")\n            .updatedAt(0.0)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myGatewaypluginkafkaupstream:\n    type: konnect:GatewayPluginKafkaUpstream\n    name: my_gatewaypluginkafkaupstream\n    properties:\n      config:\n        allowedTopics:\n          - '...'\n        authentication:\n          mechanism: SCRAM-SHA-512\n          password: '...my_password...'\n          strategy: sasl\n          tokenauth: false\n          user: '...my_user...'\n        bootstrapServers:\n          - host: '...my_host...'\n            port: 3969\n        clusterName: '...my_cluster_name...'\n        forwardBody: false\n        forwardHeaders: true\n        forwardMethod: true\n        forwardUri: false\n        keepalive: 3\n        keepaliveEnabled: true\n        keyQueryArg: '...my_key_query_arg...'\n        messageByLuaFunctions:\n          - '...'\n        producerAsync: true\n        producerAsyncBufferingLimitsMessagesInMemory: 5\n        producerAsyncFlushTimeout: 5\n        producerRequestAcks: 1\n        producerRequestLimitsBytesPerRequest: 1\n        producerRequestLimitsMessagesPerRequest: 9\n        producerRequestRetriesBackoffTimeout: 4\n        producerRequestRetriesMaxAttempts: 5\n        producerRequestTimeout: 10\n        schemaRegistry:\n          confluent:\n            authentication:\n              basic:\n                password: '...my_password...'\n                username: '...my_username...'\n              mode: none\n              oauth2:\n                audiences:\n                  - '...'\n                clientId: '...my_client_id...'\n                clientSecret: '...my_client_secret...'\n                grantType: client_credentials\n                password: '...my_password...'\n                scopes:\n                  - '...'\n                tokenEndpoint: '...my_token_endpoint...'\n                tokenHeaders:\n                  key: value\n                tokenPostArgs:\n                  key: value\n                username: '...my_username...'\n              oauth2Client:\n                authMethod: client_secret_jwt\n                clientSecretJwtAlg: HS512\n                httpProxy: '...my_http_proxy...'\n                httpProxyAuthorization: '...my_http_proxy_authorization...'\n                httpVersion: 7.51\n                httpsProxy: '...my_https_proxy...'\n                httpsProxyAuthorization: '...my_https_proxy_authorization...'\n                keepAlive: true\n                noProxy: '...my_no_proxy...'\n                sslVerify: false\n                timeout: 9.90649997e+08\n            keySchema:\n              schemaVersion: '...my_schema_version...'\n              subjectName: '...my_subject_name...'\n            sslVerify: true\n            ttl: 1898.36\n            url: '...my_url...'\n            valueSchema:\n              schemaVersion: '...my_schema_version...'\n              subjectName: '...my_subject_name...'\n        security:\n          certificateId: '...my_certificate_id...'\n          ssl: false\n          sslVerify: true\n        timeout: 0\n        topic: '...my_topic...'\n        topicsQueryArg: '...my_topics_query_arg...'\n      consumer:\n        id: '...my_id...'\n      controlPlaneId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      createdAt: 10\n      enabled: false\n      gatewayPluginKafkaUpstreamId: '...my_id...'\n      instanceName: '...my_instance_name...'\n      ordering:\n        after:\n          accesses:\n            - '...'\n        before:\n          accesses:\n            - '...'\n      partials:\n        - id: '...my_id...'\n          name: '...my_name...'\n          path: '...my_path...'\n      protocols:\n        - grpc\n      route:\n        id: '...my_id...'\n      service:\n        id: '...my_id...'\n      tags:\n        - '...'\n      updatedAt: 0\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_gateway_plugin_kafka_upstream.my_konnect_gateway_plugin_kafka_upstream\n\n  id = jsonencode({\n\n    control_plane_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/gatewayPluginKafkaUpstream:GatewayPluginKafkaUpstream my_konnect_gateway_plugin_kafka_upstream '{\"control_plane_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"}'\n```\n\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginKafkaUpstreamConfig:GatewayPluginKafkaUpstreamConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginKafkaUpstreamConsumer:GatewayPluginKafkaUpstreamConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginKafkaUpstreamId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginKafkaUpstreamOrdering:GatewayPluginKafkaUpstreamOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginKafkaUpstreamPartial:GatewayPluginKafkaUpstreamPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginKafkaUpstreamRoute:GatewayPluginKafkaUpstreamRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginKafkaUpstreamService:GatewayPluginKafkaUpstreamService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object","required":["config","consumer","controlPlaneId","createdAt","enabled","gatewayPluginKafkaUpstreamId","ordering","protocols","route","service","updatedAt"],"inputProperties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginKafkaUpstreamConfig:GatewayPluginKafkaUpstreamConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginKafkaUpstreamConsumer:GatewayPluginKafkaUpstreamConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginKafkaUpstreamId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginKafkaUpstreamOrdering:GatewayPluginKafkaUpstreamOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginKafkaUpstreamPartial:GatewayPluginKafkaUpstreamPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginKafkaUpstreamRoute:GatewayPluginKafkaUpstreamRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginKafkaUpstreamService:GatewayPluginKafkaUpstreamService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"requiredInputs":["config","controlPlaneId"],"stateInputs":{"description":"Input properties used for looking up and filtering GatewayPluginKafkaUpstream resources.\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginKafkaUpstreamConfig:GatewayPluginKafkaUpstreamConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginKafkaUpstreamConsumer:GatewayPluginKafkaUpstreamConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginKafkaUpstreamId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginKafkaUpstreamOrdering:GatewayPluginKafkaUpstreamOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginKafkaUpstreamPartial:GatewayPluginKafkaUpstreamPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginKafkaUpstreamRoute:GatewayPluginKafkaUpstreamRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginKafkaUpstreamService:GatewayPluginKafkaUpstreamService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object"}},"konnect:index/gatewayPluginKeyAuth:GatewayPluginKeyAuth":{"description":"GatewayPluginKeyAuth Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myGatewaypluginkeyauth = new konnect.GatewayPluginKeyAuth(\"my_gatewaypluginkeyauth\", {\n    config: {\n        anonymous: \"...my_anonymous...\",\n        hideCredentials: false,\n        identityRealms: [{\n            id: \"...my_id...\",\n            region: \"...my_region...\",\n            scope: \"cp\",\n        }],\n        keyInBody: false,\n        keyInHeader: false,\n        keyInQuery: true,\n        keyNames: [\"...\"],\n        realm: \"...my_realm...\",\n        runOnPreflight: false,\n    },\n    controlPlaneId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    createdAt: 5,\n    enabled: true,\n    gatewayPluginKeyAuthId: \"...my_id...\",\n    instanceName: \"...my_instance_name...\",\n    ordering: {\n        after: {\n            accesses: [\"...\"],\n        },\n        before: {\n            accesses: [\"...\"],\n        },\n    },\n    partials: [{\n        id: \"...my_id...\",\n        name: \"...my_name...\",\n        path: \"...my_path...\",\n    }],\n    protocols: [\"https\"],\n    route: {\n        id: \"...my_id...\",\n    },\n    service: {\n        id: \"...my_id...\",\n    },\n    tags: [\"...\"],\n    updatedAt: 0,\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_gatewaypluginkeyauth = konnect.GatewayPluginKeyAuth(\"my_gatewaypluginkeyauth\",\n    config={\n        \"anonymous\": \"...my_anonymous...\",\n        \"hide_credentials\": False,\n        \"identity_realms\": [{\n            \"id\": \"...my_id...\",\n            \"region\": \"...my_region...\",\n            \"scope\": \"cp\",\n        }],\n        \"key_in_body\": False,\n        \"key_in_header\": False,\n        \"key_in_query\": True,\n        \"key_names\": [\"...\"],\n        \"realm\": \"...my_realm...\",\n        \"run_on_preflight\": False,\n    },\n    control_plane_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    created_at=5,\n    enabled=True,\n    gateway_plugin_key_auth_id=\"...my_id...\",\n    instance_name=\"...my_instance_name...\",\n    ordering={\n        \"after\": {\n            \"accesses\": [\"...\"],\n        },\n        \"before\": {\n            \"accesses\": [\"...\"],\n        },\n    },\n    partials=[{\n        \"id\": \"...my_id...\",\n        \"name\": \"...my_name...\",\n        \"path\": \"...my_path...\",\n    }],\n    protocols=[\"https\"],\n    route={\n        \"id\": \"...my_id...\",\n    },\n    service={\n        \"id\": \"...my_id...\",\n    },\n    tags=[\"...\"],\n    updated_at=0)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myGatewaypluginkeyauth = new Konnect.GatewayPluginKeyAuth(\"my_gatewaypluginkeyauth\", new()\n    {\n        Config = new Konnect.Inputs.GatewayPluginKeyAuthConfigArgs\n        {\n            Anonymous = \"...my_anonymous...\",\n            HideCredentials = false,\n            IdentityRealms = new[]\n            {\n                new Konnect.Inputs.GatewayPluginKeyAuthConfigIdentityRealmArgs\n                {\n                    Id = \"...my_id...\",\n                    Region = \"...my_region...\",\n                    Scope = \"cp\",\n                },\n            },\n            KeyInBody = false,\n            KeyInHeader = false,\n            KeyInQuery = true,\n            KeyNames = new[]\n            {\n                \"...\",\n            },\n            Realm = \"...my_realm...\",\n            RunOnPreflight = false,\n        },\n        ControlPlaneId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        CreatedAt = 5,\n        Enabled = true,\n        GatewayPluginKeyAuthId = \"...my_id...\",\n        InstanceName = \"...my_instance_name...\",\n        Ordering = new Konnect.Inputs.GatewayPluginKeyAuthOrderingArgs\n        {\n            After = new Konnect.Inputs.GatewayPluginKeyAuthOrderingAfterArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n            Before = new Konnect.Inputs.GatewayPluginKeyAuthOrderingBeforeArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n        },\n        Partials = new[]\n        {\n            new Konnect.Inputs.GatewayPluginKeyAuthPartialArgs\n            {\n                Id = \"...my_id...\",\n                Name = \"...my_name...\",\n                Path = \"...my_path...\",\n            },\n        },\n        Protocols = new[]\n        {\n            \"https\",\n        },\n        Route = new Konnect.Inputs.GatewayPluginKeyAuthRouteArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Service = new Konnect.Inputs.GatewayPluginKeyAuthServiceArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Tags = new[]\n        {\n            \"...\",\n        },\n        UpdatedAt = 0,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewGatewayPluginKeyAuth(ctx, \"my_gatewaypluginkeyauth\", \u0026konnect.GatewayPluginKeyAuthArgs{\n\t\t\tConfig: \u0026konnect.GatewayPluginKeyAuthConfigArgs{\n\t\t\t\tAnonymous:       pulumi.String(\"...my_anonymous...\"),\n\t\t\t\tHideCredentials: pulumi.Bool(false),\n\t\t\t\tIdentityRealms: konnect.GatewayPluginKeyAuthConfigIdentityRealmArray{\n\t\t\t\t\t\u0026konnect.GatewayPluginKeyAuthConfigIdentityRealmArgs{\n\t\t\t\t\t\tId:     pulumi.String(\"...my_id...\"),\n\t\t\t\t\t\tRegion: pulumi.String(\"...my_region...\"),\n\t\t\t\t\t\tScope:  pulumi.String(\"cp\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tKeyInBody:   pulumi.Bool(false),\n\t\t\t\tKeyInHeader: pulumi.Bool(false),\n\t\t\t\tKeyInQuery:  pulumi.Bool(true),\n\t\t\t\tKeyNames: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tRealm:          pulumi.String(\"...my_realm...\"),\n\t\t\t\tRunOnPreflight: pulumi.Bool(false),\n\t\t\t},\n\t\t\tControlPlaneId:         pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tCreatedAt:              pulumi.Float64(5),\n\t\t\tEnabled:                pulumi.Bool(true),\n\t\t\tGatewayPluginKeyAuthId: pulumi.String(\"...my_id...\"),\n\t\t\tInstanceName:           pulumi.String(\"...my_instance_name...\"),\n\t\t\tOrdering: \u0026konnect.GatewayPluginKeyAuthOrderingArgs{\n\t\t\t\tAfter: \u0026konnect.GatewayPluginKeyAuthOrderingAfterArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tBefore: \u0026konnect.GatewayPluginKeyAuthOrderingBeforeArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tPartials: konnect.GatewayPluginKeyAuthPartialArray{\n\t\t\t\t\u0026konnect.GatewayPluginKeyAuthPartialArgs{\n\t\t\t\t\tId:   pulumi.String(\"...my_id...\"),\n\t\t\t\t\tName: pulumi.String(\"...my_name...\"),\n\t\t\t\t\tPath: pulumi.String(\"...my_path...\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tProtocols: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"https\"),\n\t\t\t},\n\t\t\tRoute: \u0026konnect.GatewayPluginKeyAuthRouteArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tService: \u0026konnect.GatewayPluginKeyAuthServiceArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"...\"),\n\t\t\t},\n\t\t\tUpdatedAt: pulumi.Float64(0),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.GatewayPluginKeyAuth;\nimport com.pulumi.konnect.GatewayPluginKeyAuthArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginKeyAuthConfigArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginKeyAuthOrderingArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginKeyAuthOrderingAfterArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginKeyAuthOrderingBeforeArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginKeyAuthPartialArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginKeyAuthRouteArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginKeyAuthServiceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myGatewaypluginkeyauth = new GatewayPluginKeyAuth(\"myGatewaypluginkeyauth\", GatewayPluginKeyAuthArgs.builder()\n            .config(GatewayPluginKeyAuthConfigArgs.builder()\n                .anonymous(\"...my_anonymous...\")\n                .hideCredentials(false)\n                .identityRealms(GatewayPluginKeyAuthConfigIdentityRealmArgs.builder()\n                    .id(\"...my_id...\")\n                    .region(\"...my_region...\")\n                    .scope(\"cp\")\n                    .build())\n                .keyInBody(false)\n                .keyInHeader(false)\n                .keyInQuery(true)\n                .keyNames(\"...\")\n                .realm(\"...my_realm...\")\n                .runOnPreflight(false)\n                .build())\n            .controlPlaneId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .createdAt(5.0)\n            .enabled(true)\n            .gatewayPluginKeyAuthId(\"...my_id...\")\n            .instanceName(\"...my_instance_name...\")\n            .ordering(GatewayPluginKeyAuthOrderingArgs.builder()\n                .after(GatewayPluginKeyAuthOrderingAfterArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .before(GatewayPluginKeyAuthOrderingBeforeArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .build())\n            .partials(GatewayPluginKeyAuthPartialArgs.builder()\n                .id(\"...my_id...\")\n                .name(\"...my_name...\")\n                .path(\"...my_path...\")\n                .build())\n            .protocols(\"https\")\n            .route(GatewayPluginKeyAuthRouteArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .service(GatewayPluginKeyAuthServiceArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .tags(\"...\")\n            .updatedAt(0.0)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myGatewaypluginkeyauth:\n    type: konnect:GatewayPluginKeyAuth\n    name: my_gatewaypluginkeyauth\n    properties:\n      config:\n        anonymous: '...my_anonymous...'\n        hideCredentials: false\n        identityRealms:\n          - id: '...my_id...'\n            region: '...my_region...'\n            scope: cp\n        keyInBody: false\n        keyInHeader: false\n        keyInQuery: true\n        keyNames:\n          - '...'\n        realm: '...my_realm...'\n        runOnPreflight: false\n      controlPlaneId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      createdAt: 5\n      enabled: true\n      gatewayPluginKeyAuthId: '...my_id...'\n      instanceName: '...my_instance_name...'\n      ordering:\n        after:\n          accesses:\n            - '...'\n        before:\n          accesses:\n            - '...'\n      partials:\n        - id: '...my_id...'\n          name: '...my_name...'\n          path: '...my_path...'\n      protocols:\n        - https\n      route:\n        id: '...my_id...'\n      service:\n        id: '...my_id...'\n      tags:\n        - '...'\n      updatedAt: 0\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_gateway_plugin_key_auth.my_konnect_gateway_plugin_key_auth\n\n  id = jsonencode({\n\n    control_plane_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/gatewayPluginKeyAuth:GatewayPluginKeyAuth my_konnect_gateway_plugin_key_auth '{\"control_plane_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"}'\n```\n\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginKeyAuthConfig:GatewayPluginKeyAuthConfig"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginKeyAuthId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginKeyAuthOrdering:GatewayPluginKeyAuthOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginKeyAuthPartial:GatewayPluginKeyAuthPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A list of the request protocols that will trigger this plugin. The default value, as well as the possible values allowed on this field, may change depending on the plugin type. For example, plugins that only work in stream mode will only support tcp and tls. Default: [\"grpc\",\"grpcs\",\"http\",\"https\",\"ws\",\"wss\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginKeyAuthRoute:GatewayPluginKeyAuthRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginKeyAuthService:GatewayPluginKeyAuthService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object","required":["config","controlPlaneId","createdAt","enabled","gatewayPluginKeyAuthId","ordering","protocols","route","service","updatedAt"],"inputProperties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginKeyAuthConfig:GatewayPluginKeyAuthConfig"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginKeyAuthId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginKeyAuthOrdering:GatewayPluginKeyAuthOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginKeyAuthPartial:GatewayPluginKeyAuthPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A list of the request protocols that will trigger this plugin. The default value, as well as the possible values allowed on this field, may change depending on the plugin type. For example, plugins that only work in stream mode will only support tcp and tls. Default: [\"grpc\",\"grpcs\",\"http\",\"https\",\"ws\",\"wss\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginKeyAuthRoute:GatewayPluginKeyAuthRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginKeyAuthService:GatewayPluginKeyAuthService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"requiredInputs":["controlPlaneId"],"stateInputs":{"description":"Input properties used for looking up and filtering GatewayPluginKeyAuth resources.\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginKeyAuthConfig:GatewayPluginKeyAuthConfig"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginKeyAuthId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginKeyAuthOrdering:GatewayPluginKeyAuthOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginKeyAuthPartial:GatewayPluginKeyAuthPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A list of the request protocols that will trigger this plugin. The default value, as well as the possible values allowed on this field, may change depending on the plugin type. For example, plugins that only work in stream mode will only support tcp and tls. Default: [\"grpc\",\"grpcs\",\"http\",\"https\",\"ws\",\"wss\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginKeyAuthRoute:GatewayPluginKeyAuthRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginKeyAuthService:GatewayPluginKeyAuthService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object"}},"konnect:index/gatewayPluginLdapAuth:GatewayPluginLdapAuth":{"description":"GatewayPluginLdapAuth Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myGatewaypluginldapauth = new konnect.GatewayPluginLdapAuth(\"my_gatewaypluginldapauth\", {\n    config: {\n        anonymous: \"...my_anonymous...\",\n        attribute: \"...my_attribute...\",\n        baseDn: \"...my_base_dn...\",\n        cacheTtl: 0.75,\n        headerType: \"...my_header_type...\",\n        hideCredentials: false,\n        keepalive: 2.29,\n        ldapHost: \"...my_ldap_host...\",\n        ldapPort: 57764,\n        ldaps: true,\n        realm: \"...my_realm...\",\n        startTls: false,\n        timeout: 2.42,\n        verifyLdapHost: true,\n    },\n    controlPlaneId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    createdAt: 3,\n    enabled: false,\n    gatewayPluginLdapAuthId: \"...my_id...\",\n    instanceName: \"...my_instance_name...\",\n    ordering: {\n        after: {\n            accesses: [\"...\"],\n        },\n        before: {\n            accesses: [\"...\"],\n        },\n    },\n    partials: [{\n        id: \"...my_id...\",\n        name: \"...my_name...\",\n        path: \"...my_path...\",\n    }],\n    protocols: [\"wss\"],\n    route: {\n        id: \"...my_id...\",\n    },\n    service: {\n        id: \"...my_id...\",\n    },\n    tags: [\"...\"],\n    updatedAt: 2,\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_gatewaypluginldapauth = konnect.GatewayPluginLdapAuth(\"my_gatewaypluginldapauth\",\n    config={\n        \"anonymous\": \"...my_anonymous...\",\n        \"attribute\": \"...my_attribute...\",\n        \"base_dn\": \"...my_base_dn...\",\n        \"cache_ttl\": 0.75,\n        \"header_type\": \"...my_header_type...\",\n        \"hide_credentials\": False,\n        \"keepalive\": 2.29,\n        \"ldap_host\": \"...my_ldap_host...\",\n        \"ldap_port\": 57764,\n        \"ldaps\": True,\n        \"realm\": \"...my_realm...\",\n        \"start_tls\": False,\n        \"timeout\": 2.42,\n        \"verify_ldap_host\": True,\n    },\n    control_plane_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    created_at=3,\n    enabled=False,\n    gateway_plugin_ldap_auth_id=\"...my_id...\",\n    instance_name=\"...my_instance_name...\",\n    ordering={\n        \"after\": {\n            \"accesses\": [\"...\"],\n        },\n        \"before\": {\n            \"accesses\": [\"...\"],\n        },\n    },\n    partials=[{\n        \"id\": \"...my_id...\",\n        \"name\": \"...my_name...\",\n        \"path\": \"...my_path...\",\n    }],\n    protocols=[\"wss\"],\n    route={\n        \"id\": \"...my_id...\",\n    },\n    service={\n        \"id\": \"...my_id...\",\n    },\n    tags=[\"...\"],\n    updated_at=2)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myGatewaypluginldapauth = new Konnect.GatewayPluginLdapAuth(\"my_gatewaypluginldapauth\", new()\n    {\n        Config = new Konnect.Inputs.GatewayPluginLdapAuthConfigArgs\n        {\n            Anonymous = \"...my_anonymous...\",\n            Attribute = \"...my_attribute...\",\n            BaseDn = \"...my_base_dn...\",\n            CacheTtl = 0.75,\n            HeaderType = \"...my_header_type...\",\n            HideCredentials = false,\n            Keepalive = 2.29,\n            LdapHost = \"...my_ldap_host...\",\n            LdapPort = 57764,\n            Ldaps = true,\n            Realm = \"...my_realm...\",\n            StartTls = false,\n            Timeout = 2.42,\n            VerifyLdapHost = true,\n        },\n        ControlPlaneId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        CreatedAt = 3,\n        Enabled = false,\n        GatewayPluginLdapAuthId = \"...my_id...\",\n        InstanceName = \"...my_instance_name...\",\n        Ordering = new Konnect.Inputs.GatewayPluginLdapAuthOrderingArgs\n        {\n            After = new Konnect.Inputs.GatewayPluginLdapAuthOrderingAfterArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n            Before = new Konnect.Inputs.GatewayPluginLdapAuthOrderingBeforeArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n        },\n        Partials = new[]\n        {\n            new Konnect.Inputs.GatewayPluginLdapAuthPartialArgs\n            {\n                Id = \"...my_id...\",\n                Name = \"...my_name...\",\n                Path = \"...my_path...\",\n            },\n        },\n        Protocols = new[]\n        {\n            \"wss\",\n        },\n        Route = new Konnect.Inputs.GatewayPluginLdapAuthRouteArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Service = new Konnect.Inputs.GatewayPluginLdapAuthServiceArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Tags = new[]\n        {\n            \"...\",\n        },\n        UpdatedAt = 2,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewGatewayPluginLdapAuth(ctx, \"my_gatewaypluginldapauth\", \u0026konnect.GatewayPluginLdapAuthArgs{\n\t\t\tConfig: \u0026konnect.GatewayPluginLdapAuthConfigArgs{\n\t\t\t\tAnonymous:       pulumi.String(\"...my_anonymous...\"),\n\t\t\t\tAttribute:       pulumi.String(\"...my_attribute...\"),\n\t\t\t\tBaseDn:          pulumi.String(\"...my_base_dn...\"),\n\t\t\t\tCacheTtl:        pulumi.Float64(0.75),\n\t\t\t\tHeaderType:      pulumi.String(\"...my_header_type...\"),\n\t\t\t\tHideCredentials: pulumi.Bool(false),\n\t\t\t\tKeepalive:       pulumi.Float64(2.29),\n\t\t\t\tLdapHost:        pulumi.String(\"...my_ldap_host...\"),\n\t\t\t\tLdapPort:        pulumi.Float64(57764),\n\t\t\t\tLdaps:           pulumi.Bool(true),\n\t\t\t\tRealm:           pulumi.String(\"...my_realm...\"),\n\t\t\t\tStartTls:        pulumi.Bool(false),\n\t\t\t\tTimeout:         pulumi.Float64(2.42),\n\t\t\t\tVerifyLdapHost:  pulumi.Bool(true),\n\t\t\t},\n\t\t\tControlPlaneId:          pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tCreatedAt:               pulumi.Float64(3),\n\t\t\tEnabled:                 pulumi.Bool(false),\n\t\t\tGatewayPluginLdapAuthId: pulumi.String(\"...my_id...\"),\n\t\t\tInstanceName:            pulumi.String(\"...my_instance_name...\"),\n\t\t\tOrdering: \u0026konnect.GatewayPluginLdapAuthOrderingArgs{\n\t\t\t\tAfter: \u0026konnect.GatewayPluginLdapAuthOrderingAfterArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tBefore: \u0026konnect.GatewayPluginLdapAuthOrderingBeforeArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tPartials: konnect.GatewayPluginLdapAuthPartialArray{\n\t\t\t\t\u0026konnect.GatewayPluginLdapAuthPartialArgs{\n\t\t\t\t\tId:   pulumi.String(\"...my_id...\"),\n\t\t\t\t\tName: pulumi.String(\"...my_name...\"),\n\t\t\t\t\tPath: pulumi.String(\"...my_path...\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tProtocols: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"wss\"),\n\t\t\t},\n\t\t\tRoute: \u0026konnect.GatewayPluginLdapAuthRouteArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tService: \u0026konnect.GatewayPluginLdapAuthServiceArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"...\"),\n\t\t\t},\n\t\t\tUpdatedAt: pulumi.Float64(2),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.GatewayPluginLdapAuth;\nimport com.pulumi.konnect.GatewayPluginLdapAuthArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginLdapAuthConfigArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginLdapAuthOrderingArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginLdapAuthOrderingAfterArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginLdapAuthOrderingBeforeArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginLdapAuthPartialArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginLdapAuthRouteArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginLdapAuthServiceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myGatewaypluginldapauth = new GatewayPluginLdapAuth(\"myGatewaypluginldapauth\", GatewayPluginLdapAuthArgs.builder()\n            .config(GatewayPluginLdapAuthConfigArgs.builder()\n                .anonymous(\"...my_anonymous...\")\n                .attribute(\"...my_attribute...\")\n                .baseDn(\"...my_base_dn...\")\n                .cacheTtl(0.75)\n                .headerType(\"...my_header_type...\")\n                .hideCredentials(false)\n                .keepalive(2.29)\n                .ldapHost(\"...my_ldap_host...\")\n                .ldapPort(57764.0)\n                .ldaps(true)\n                .realm(\"...my_realm...\")\n                .startTls(false)\n                .timeout(2.42)\n                .verifyLdapHost(true)\n                .build())\n            .controlPlaneId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .createdAt(3.0)\n            .enabled(false)\n            .gatewayPluginLdapAuthId(\"...my_id...\")\n            .instanceName(\"...my_instance_name...\")\n            .ordering(GatewayPluginLdapAuthOrderingArgs.builder()\n                .after(GatewayPluginLdapAuthOrderingAfterArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .before(GatewayPluginLdapAuthOrderingBeforeArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .build())\n            .partials(GatewayPluginLdapAuthPartialArgs.builder()\n                .id(\"...my_id...\")\n                .name(\"...my_name...\")\n                .path(\"...my_path...\")\n                .build())\n            .protocols(\"wss\")\n            .route(GatewayPluginLdapAuthRouteArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .service(GatewayPluginLdapAuthServiceArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .tags(\"...\")\n            .updatedAt(2.0)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myGatewaypluginldapauth:\n    type: konnect:GatewayPluginLdapAuth\n    name: my_gatewaypluginldapauth\n    properties:\n      config:\n        anonymous: '...my_anonymous...'\n        attribute: '...my_attribute...'\n        baseDn: '...my_base_dn...'\n        cacheTtl: 0.75\n        headerType: '...my_header_type...'\n        hideCredentials: false\n        keepalive: 2.29\n        ldapHost: '...my_ldap_host...'\n        ldapPort: 57764\n        ldaps: true\n        realm: '...my_realm...'\n        startTls: false\n        timeout: 2.42\n        verifyLdapHost: true\n      controlPlaneId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      createdAt: 3\n      enabled: false\n      gatewayPluginLdapAuthId: '...my_id...'\n      instanceName: '...my_instance_name...'\n      ordering:\n        after:\n          accesses:\n            - '...'\n        before:\n          accesses:\n            - '...'\n      partials:\n        - id: '...my_id...'\n          name: '...my_name...'\n          path: '...my_path...'\n      protocols:\n        - wss\n      route:\n        id: '...my_id...'\n      service:\n        id: '...my_id...'\n      tags:\n        - '...'\n      updatedAt: 2\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_gateway_plugin_ldap_auth.my_konnect_gateway_plugin_ldap_auth\n\n  id = jsonencode({\n\n    control_plane_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/gatewayPluginLdapAuth:GatewayPluginLdapAuth my_konnect_gateway_plugin_ldap_auth '{\"control_plane_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"}'\n```\n\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginLdapAuthConfig:GatewayPluginLdapAuthConfig"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginLdapAuthId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginLdapAuthOrdering:GatewayPluginLdapAuthOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginLdapAuthPartial:GatewayPluginLdapAuthPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A list of the request protocols that will trigger this plugin. The default value, as well as the possible values allowed on this field, may change depending on the plugin type. For example, plugins that only work in stream mode will only support tcp and tls. Default: [\"grpc\",\"grpcs\",\"http\",\"https\",\"ws\",\"wss\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginLdapAuthRoute:GatewayPluginLdapAuthRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginLdapAuthService:GatewayPluginLdapAuthService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object","required":["config","controlPlaneId","createdAt","enabled","gatewayPluginLdapAuthId","ordering","protocols","route","service","updatedAt"],"inputProperties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginLdapAuthConfig:GatewayPluginLdapAuthConfig"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginLdapAuthId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginLdapAuthOrdering:GatewayPluginLdapAuthOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginLdapAuthPartial:GatewayPluginLdapAuthPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A list of the request protocols that will trigger this plugin. The default value, as well as the possible values allowed on this field, may change depending on the plugin type. For example, plugins that only work in stream mode will only support tcp and tls. Default: [\"grpc\",\"grpcs\",\"http\",\"https\",\"ws\",\"wss\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginLdapAuthRoute:GatewayPluginLdapAuthRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginLdapAuthService:GatewayPluginLdapAuthService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"requiredInputs":["config","controlPlaneId"],"stateInputs":{"description":"Input properties used for looking up and filtering GatewayPluginLdapAuth resources.\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginLdapAuthConfig:GatewayPluginLdapAuthConfig"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginLdapAuthId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginLdapAuthOrdering:GatewayPluginLdapAuthOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginLdapAuthPartial:GatewayPluginLdapAuthPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A list of the request protocols that will trigger this plugin. The default value, as well as the possible values allowed on this field, may change depending on the plugin type. For example, plugins that only work in stream mode will only support tcp and tls. Default: [\"grpc\",\"grpcs\",\"http\",\"https\",\"ws\",\"wss\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginLdapAuthRoute:GatewayPluginLdapAuthRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginLdapAuthService:GatewayPluginLdapAuthService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object"}},"konnect:index/gatewayPluginLdapAuthAdvanced:GatewayPluginLdapAuthAdvanced":{"description":"GatewayPluginLdapAuthAdvanced Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myGatewaypluginldapauthadvanced = new konnect.GatewayPluginLdapAuthAdvanced(\"my_gatewaypluginldapauthadvanced\", {\n    config: {\n        anonymous: \"...my_anonymous...\",\n        attribute: \"...my_attribute...\",\n        baseDn: \"...my_base_dn...\",\n        bindDn: \"...my_bind_dn...\",\n        cacheTtl: 2.41,\n        consumerBies: [\"username\"],\n        consumerOptional: true,\n        groupBaseDn: \"...my_group_base_dn...\",\n        groupMemberAttribute: \"...my_group_member_attribute...\",\n        groupNameAttribute: \"...my_group_name_attribute...\",\n        groupsRequireds: [\"...\"],\n        headerType: \"...my_header_type...\",\n        hideCredentials: true,\n        keepalive: 3.29,\n        ldapHost: \"...my_ldap_host...\",\n        ldapPassword: \"...my_ldap_password...\",\n        ldapPort: 3.46,\n        ldaps: false,\n        logSearchResults: false,\n        realm: \"...my_realm...\",\n        startTls: true,\n        timeout: 8.28,\n        verifyLdapHost: true,\n    },\n    controlPlaneId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    createdAt: 9,\n    enabled: true,\n    gatewayPluginLdapAuthAdvancedId: \"...my_id...\",\n    instanceName: \"...my_instance_name...\",\n    ordering: {\n        after: {\n            accesses: [\"...\"],\n        },\n        before: {\n            accesses: [\"...\"],\n        },\n    },\n    partials: [{\n        id: \"...my_id...\",\n        name: \"...my_name...\",\n        path: \"...my_path...\",\n    }],\n    protocols: [\"wss\"],\n    route: {\n        id: \"...my_id...\",\n    },\n    service: {\n        id: \"...my_id...\",\n    },\n    tags: [\"...\"],\n    updatedAt: 9,\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_gatewaypluginldapauthadvanced = konnect.GatewayPluginLdapAuthAdvanced(\"my_gatewaypluginldapauthadvanced\",\n    config={\n        \"anonymous\": \"...my_anonymous...\",\n        \"attribute\": \"...my_attribute...\",\n        \"base_dn\": \"...my_base_dn...\",\n        \"bind_dn\": \"...my_bind_dn...\",\n        \"cache_ttl\": 2.41,\n        \"consumer_bies\": [\"username\"],\n        \"consumer_optional\": True,\n        \"group_base_dn\": \"...my_group_base_dn...\",\n        \"group_member_attribute\": \"...my_group_member_attribute...\",\n        \"group_name_attribute\": \"...my_group_name_attribute...\",\n        \"groups_requireds\": [\"...\"],\n        \"header_type\": \"...my_header_type...\",\n        \"hide_credentials\": True,\n        \"keepalive\": 3.29,\n        \"ldap_host\": \"...my_ldap_host...\",\n        \"ldap_password\": \"...my_ldap_password...\",\n        \"ldap_port\": 3.46,\n        \"ldaps\": False,\n        \"log_search_results\": False,\n        \"realm\": \"...my_realm...\",\n        \"start_tls\": True,\n        \"timeout\": 8.28,\n        \"verify_ldap_host\": True,\n    },\n    control_plane_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    created_at=9,\n    enabled=True,\n    gateway_plugin_ldap_auth_advanced_id=\"...my_id...\",\n    instance_name=\"...my_instance_name...\",\n    ordering={\n        \"after\": {\n            \"accesses\": [\"...\"],\n        },\n        \"before\": {\n            \"accesses\": [\"...\"],\n        },\n    },\n    partials=[{\n        \"id\": \"...my_id...\",\n        \"name\": \"...my_name...\",\n        \"path\": \"...my_path...\",\n    }],\n    protocols=[\"wss\"],\n    route={\n        \"id\": \"...my_id...\",\n    },\n    service={\n        \"id\": \"...my_id...\",\n    },\n    tags=[\"...\"],\n    updated_at=9)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myGatewaypluginldapauthadvanced = new Konnect.GatewayPluginLdapAuthAdvanced(\"my_gatewaypluginldapauthadvanced\", new()\n    {\n        Config = new Konnect.Inputs.GatewayPluginLdapAuthAdvancedConfigArgs\n        {\n            Anonymous = \"...my_anonymous...\",\n            Attribute = \"...my_attribute...\",\n            BaseDn = \"...my_base_dn...\",\n            BindDn = \"...my_bind_dn...\",\n            CacheTtl = 2.41,\n            ConsumerBies = new[]\n            {\n                \"username\",\n            },\n            ConsumerOptional = true,\n            GroupBaseDn = \"...my_group_base_dn...\",\n            GroupMemberAttribute = \"...my_group_member_attribute...\",\n            GroupNameAttribute = \"...my_group_name_attribute...\",\n            GroupsRequireds = new[]\n            {\n                \"...\",\n            },\n            HeaderType = \"...my_header_type...\",\n            HideCredentials = true,\n            Keepalive = 3.29,\n            LdapHost = \"...my_ldap_host...\",\n            LdapPassword = \"...my_ldap_password...\",\n            LdapPort = 3.46,\n            Ldaps = false,\n            LogSearchResults = false,\n            Realm = \"...my_realm...\",\n            StartTls = true,\n            Timeout = 8.28,\n            VerifyLdapHost = true,\n        },\n        ControlPlaneId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        CreatedAt = 9,\n        Enabled = true,\n        GatewayPluginLdapAuthAdvancedId = \"...my_id...\",\n        InstanceName = \"...my_instance_name...\",\n        Ordering = new Konnect.Inputs.GatewayPluginLdapAuthAdvancedOrderingArgs\n        {\n            After = new Konnect.Inputs.GatewayPluginLdapAuthAdvancedOrderingAfterArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n            Before = new Konnect.Inputs.GatewayPluginLdapAuthAdvancedOrderingBeforeArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n        },\n        Partials = new[]\n        {\n            new Konnect.Inputs.GatewayPluginLdapAuthAdvancedPartialArgs\n            {\n                Id = \"...my_id...\",\n                Name = \"...my_name...\",\n                Path = \"...my_path...\",\n            },\n        },\n        Protocols = new[]\n        {\n            \"wss\",\n        },\n        Route = new Konnect.Inputs.GatewayPluginLdapAuthAdvancedRouteArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Service = new Konnect.Inputs.GatewayPluginLdapAuthAdvancedServiceArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Tags = new[]\n        {\n            \"...\",\n        },\n        UpdatedAt = 9,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewGatewayPluginLdapAuthAdvanced(ctx, \"my_gatewaypluginldapauthadvanced\", \u0026konnect.GatewayPluginLdapAuthAdvancedArgs{\n\t\t\tConfig: \u0026konnect.GatewayPluginLdapAuthAdvancedConfigArgs{\n\t\t\t\tAnonymous: pulumi.String(\"...my_anonymous...\"),\n\t\t\t\tAttribute: pulumi.String(\"...my_attribute...\"),\n\t\t\t\tBaseDn:    pulumi.String(\"...my_base_dn...\"),\n\t\t\t\tBindDn:    pulumi.String(\"...my_bind_dn...\"),\n\t\t\t\tCacheTtl:  pulumi.Float64(2.41),\n\t\t\t\tConsumerBies: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"username\"),\n\t\t\t\t},\n\t\t\t\tConsumerOptional:     pulumi.Bool(true),\n\t\t\t\tGroupBaseDn:          pulumi.String(\"...my_group_base_dn...\"),\n\t\t\t\tGroupMemberAttribute: pulumi.String(\"...my_group_member_attribute...\"),\n\t\t\t\tGroupNameAttribute:   pulumi.String(\"...my_group_name_attribute...\"),\n\t\t\t\tGroupsRequireds: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tHeaderType:       pulumi.String(\"...my_header_type...\"),\n\t\t\t\tHideCredentials:  pulumi.Bool(true),\n\t\t\t\tKeepalive:        pulumi.Float64(3.29),\n\t\t\t\tLdapHost:         pulumi.String(\"...my_ldap_host...\"),\n\t\t\t\tLdapPassword:     pulumi.String(\"...my_ldap_password...\"),\n\t\t\t\tLdapPort:         pulumi.Float64(3.46),\n\t\t\t\tLdaps:            pulumi.Bool(false),\n\t\t\t\tLogSearchResults: pulumi.Bool(false),\n\t\t\t\tRealm:            pulumi.String(\"...my_realm...\"),\n\t\t\t\tStartTls:         pulumi.Bool(true),\n\t\t\t\tTimeout:          pulumi.Float64(8.28),\n\t\t\t\tVerifyLdapHost:   pulumi.Bool(true),\n\t\t\t},\n\t\t\tControlPlaneId:                  pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tCreatedAt:                       pulumi.Float64(9),\n\t\t\tEnabled:                         pulumi.Bool(true),\n\t\t\tGatewayPluginLdapAuthAdvancedId: pulumi.String(\"...my_id...\"),\n\t\t\tInstanceName:                    pulumi.String(\"...my_instance_name...\"),\n\t\t\tOrdering: \u0026konnect.GatewayPluginLdapAuthAdvancedOrderingArgs{\n\t\t\t\tAfter: \u0026konnect.GatewayPluginLdapAuthAdvancedOrderingAfterArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tBefore: \u0026konnect.GatewayPluginLdapAuthAdvancedOrderingBeforeArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tPartials: konnect.GatewayPluginLdapAuthAdvancedPartialArray{\n\t\t\t\t\u0026konnect.GatewayPluginLdapAuthAdvancedPartialArgs{\n\t\t\t\t\tId:   pulumi.String(\"...my_id...\"),\n\t\t\t\t\tName: pulumi.String(\"...my_name...\"),\n\t\t\t\t\tPath: pulumi.String(\"...my_path...\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tProtocols: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"wss\"),\n\t\t\t},\n\t\t\tRoute: \u0026konnect.GatewayPluginLdapAuthAdvancedRouteArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tService: \u0026konnect.GatewayPluginLdapAuthAdvancedServiceArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"...\"),\n\t\t\t},\n\t\t\tUpdatedAt: pulumi.Float64(9),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.GatewayPluginLdapAuthAdvanced;\nimport com.pulumi.konnect.GatewayPluginLdapAuthAdvancedArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginLdapAuthAdvancedConfigArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginLdapAuthAdvancedOrderingArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginLdapAuthAdvancedOrderingAfterArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginLdapAuthAdvancedOrderingBeforeArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginLdapAuthAdvancedPartialArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginLdapAuthAdvancedRouteArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginLdapAuthAdvancedServiceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myGatewaypluginldapauthadvanced = new GatewayPluginLdapAuthAdvanced(\"myGatewaypluginldapauthadvanced\", GatewayPluginLdapAuthAdvancedArgs.builder()\n            .config(GatewayPluginLdapAuthAdvancedConfigArgs.builder()\n                .anonymous(\"...my_anonymous...\")\n                .attribute(\"...my_attribute...\")\n                .baseDn(\"...my_base_dn...\")\n                .bindDn(\"...my_bind_dn...\")\n                .cacheTtl(2.41)\n                .consumerBies(\"username\")\n                .consumerOptional(true)\n                .groupBaseDn(\"...my_group_base_dn...\")\n                .groupMemberAttribute(\"...my_group_member_attribute...\")\n                .groupNameAttribute(\"...my_group_name_attribute...\")\n                .groupsRequireds(\"...\")\n                .headerType(\"...my_header_type...\")\n                .hideCredentials(true)\n                .keepalive(3.29)\n                .ldapHost(\"...my_ldap_host...\")\n                .ldapPassword(\"...my_ldap_password...\")\n                .ldapPort(3.46)\n                .ldaps(false)\n                .logSearchResults(false)\n                .realm(\"...my_realm...\")\n                .startTls(true)\n                .timeout(8.28)\n                .verifyLdapHost(true)\n                .build())\n            .controlPlaneId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .createdAt(9.0)\n            .enabled(true)\n            .gatewayPluginLdapAuthAdvancedId(\"...my_id...\")\n            .instanceName(\"...my_instance_name...\")\n            .ordering(GatewayPluginLdapAuthAdvancedOrderingArgs.builder()\n                .after(GatewayPluginLdapAuthAdvancedOrderingAfterArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .before(GatewayPluginLdapAuthAdvancedOrderingBeforeArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .build())\n            .partials(GatewayPluginLdapAuthAdvancedPartialArgs.builder()\n                .id(\"...my_id...\")\n                .name(\"...my_name...\")\n                .path(\"...my_path...\")\n                .build())\n            .protocols(\"wss\")\n            .route(GatewayPluginLdapAuthAdvancedRouteArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .service(GatewayPluginLdapAuthAdvancedServiceArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .tags(\"...\")\n            .updatedAt(9.0)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myGatewaypluginldapauthadvanced:\n    type: konnect:GatewayPluginLdapAuthAdvanced\n    name: my_gatewaypluginldapauthadvanced\n    properties:\n      config:\n        anonymous: '...my_anonymous...'\n        attribute: '...my_attribute...'\n        baseDn: '...my_base_dn...'\n        bindDn: '...my_bind_dn...'\n        cacheTtl: 2.41\n        consumerBies:\n          - username\n        consumerOptional: true\n        groupBaseDn: '...my_group_base_dn...'\n        groupMemberAttribute: '...my_group_member_attribute...'\n        groupNameAttribute: '...my_group_name_attribute...'\n        groupsRequireds:\n          - '...'\n        headerType: '...my_header_type...'\n        hideCredentials: true\n        keepalive: 3.29\n        ldapHost: '...my_ldap_host...'\n        ldapPassword: '...my_ldap_password...'\n        ldapPort: 3.46\n        ldaps: false\n        logSearchResults: false\n        realm: '...my_realm...'\n        startTls: true\n        timeout: 8.28\n        verifyLdapHost: true\n      controlPlaneId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      createdAt: 9\n      enabled: true\n      gatewayPluginLdapAuthAdvancedId: '...my_id...'\n      instanceName: '...my_instance_name...'\n      ordering:\n        after:\n          accesses:\n            - '...'\n        before:\n          accesses:\n            - '...'\n      partials:\n        - id: '...my_id...'\n          name: '...my_name...'\n          path: '...my_path...'\n      protocols:\n        - wss\n      route:\n        id: '...my_id...'\n      service:\n        id: '...my_id...'\n      tags:\n        - '...'\n      updatedAt: 9\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_gateway_plugin_ldap_auth_advanced.my_konnect_gateway_plugin_ldap_auth_advanced\n\n  id = jsonencode({\n\n    control_plane_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/gatewayPluginLdapAuthAdvanced:GatewayPluginLdapAuthAdvanced my_konnect_gateway_plugin_ldap_auth_advanced '{\"control_plane_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"}'\n```\n\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginLdapAuthAdvancedConfig:GatewayPluginLdapAuthAdvancedConfig"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginLdapAuthAdvancedId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginLdapAuthAdvancedOrdering:GatewayPluginLdapAuthAdvancedOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginLdapAuthAdvancedPartial:GatewayPluginLdapAuthAdvancedPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A list of the request protocols that will trigger this plugin. The default value, as well as the possible values allowed on this field, may change depending on the plugin type. For example, plugins that only work in stream mode will only support tcp and tls. Default: [\"grpc\",\"grpcs\",\"http\",\"https\",\"ws\",\"wss\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginLdapAuthAdvancedRoute:GatewayPluginLdapAuthAdvancedRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginLdapAuthAdvancedService:GatewayPluginLdapAuthAdvancedService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object","required":["config","controlPlaneId","createdAt","enabled","gatewayPluginLdapAuthAdvancedId","ordering","protocols","route","service","updatedAt"],"inputProperties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginLdapAuthAdvancedConfig:GatewayPluginLdapAuthAdvancedConfig"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginLdapAuthAdvancedId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginLdapAuthAdvancedOrdering:GatewayPluginLdapAuthAdvancedOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginLdapAuthAdvancedPartial:GatewayPluginLdapAuthAdvancedPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A list of the request protocols that will trigger this plugin. The default value, as well as the possible values allowed on this field, may change depending on the plugin type. For example, plugins that only work in stream mode will only support tcp and tls. Default: [\"grpc\",\"grpcs\",\"http\",\"https\",\"ws\",\"wss\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginLdapAuthAdvancedRoute:GatewayPluginLdapAuthAdvancedRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginLdapAuthAdvancedService:GatewayPluginLdapAuthAdvancedService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"requiredInputs":["config","controlPlaneId"],"stateInputs":{"description":"Input properties used for looking up and filtering GatewayPluginLdapAuthAdvanced resources.\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginLdapAuthAdvancedConfig:GatewayPluginLdapAuthAdvancedConfig"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginLdapAuthAdvancedId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginLdapAuthAdvancedOrdering:GatewayPluginLdapAuthAdvancedOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginLdapAuthAdvancedPartial:GatewayPluginLdapAuthAdvancedPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A list of the request protocols that will trigger this plugin. The default value, as well as the possible values allowed on this field, may change depending on the plugin type. For example, plugins that only work in stream mode will only support tcp and tls. Default: [\"grpc\",\"grpcs\",\"http\",\"https\",\"ws\",\"wss\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginLdapAuthAdvancedRoute:GatewayPluginLdapAuthAdvancedRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginLdapAuthAdvancedService:GatewayPluginLdapAuthAdvancedService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object"}},"konnect:index/gatewayPluginLoggly:GatewayPluginLoggly":{"description":"GatewayPluginLoggly Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myGatewaypluginloggly = new konnect.GatewayPluginLoggly(\"my_gatewaypluginloggly\", {\n    config: {\n        clientErrorsSeverity: \"notice\",\n        customFieldsByLua: {\n            key: \"value\",\n        },\n        host: \"...my_host...\",\n        key: \"...my_key...\",\n        logLevel: \"alert\",\n        port: 51730,\n        serverErrorsSeverity: \"crit\",\n        successfulSeverity: \"alert\",\n        tags: [\"...\"],\n        timeout: 9.55,\n    },\n    consumer: {\n        id: \"...my_id...\",\n    },\n    controlPlaneId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    createdAt: 8,\n    enabled: true,\n    gatewayPluginLogglyId: \"...my_id...\",\n    instanceName: \"...my_instance_name...\",\n    ordering: {\n        after: {\n            accesses: [\"...\"],\n        },\n        before: {\n            accesses: [\"...\"],\n        },\n    },\n    partials: [{\n        id: \"...my_id...\",\n        name: \"...my_name...\",\n        path: \"...my_path...\",\n    }],\n    protocols: [\"http\"],\n    route: {\n        id: \"...my_id...\",\n    },\n    service: {\n        id: \"...my_id...\",\n    },\n    tags: [\"...\"],\n    updatedAt: 10,\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_gatewaypluginloggly = konnect.GatewayPluginLoggly(\"my_gatewaypluginloggly\",\n    config={\n        \"client_errors_severity\": \"notice\",\n        \"custom_fields_by_lua\": {\n            \"key\": \"value\",\n        },\n        \"host\": \"...my_host...\",\n        \"key\": \"...my_key...\",\n        \"log_level\": \"alert\",\n        \"port\": 51730,\n        \"server_errors_severity\": \"crit\",\n        \"successful_severity\": \"alert\",\n        \"tags\": [\"...\"],\n        \"timeout\": 9.55,\n    },\n    consumer={\n        \"id\": \"...my_id...\",\n    },\n    control_plane_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    created_at=8,\n    enabled=True,\n    gateway_plugin_loggly_id=\"...my_id...\",\n    instance_name=\"...my_instance_name...\",\n    ordering={\n        \"after\": {\n            \"accesses\": [\"...\"],\n        },\n        \"before\": {\n            \"accesses\": [\"...\"],\n        },\n    },\n    partials=[{\n        \"id\": \"...my_id...\",\n        \"name\": \"...my_name...\",\n        \"path\": \"...my_path...\",\n    }],\n    protocols=[\"http\"],\n    route={\n        \"id\": \"...my_id...\",\n    },\n    service={\n        \"id\": \"...my_id...\",\n    },\n    tags=[\"...\"],\n    updated_at=10)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myGatewaypluginloggly = new Konnect.GatewayPluginLoggly(\"my_gatewaypluginloggly\", new()\n    {\n        Config = new Konnect.Inputs.GatewayPluginLogglyConfigArgs\n        {\n            ClientErrorsSeverity = \"notice\",\n            CustomFieldsByLua = \n            {\n                { \"key\", \"value\" },\n            },\n            Host = \"...my_host...\",\n            Key = \"...my_key...\",\n            LogLevel = \"alert\",\n            Port = 51730,\n            ServerErrorsSeverity = \"crit\",\n            SuccessfulSeverity = \"alert\",\n            Tags = new[]\n            {\n                \"...\",\n            },\n            Timeout = 9.55,\n        },\n        Consumer = new Konnect.Inputs.GatewayPluginLogglyConsumerArgs\n        {\n            Id = \"...my_id...\",\n        },\n        ControlPlaneId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        CreatedAt = 8,\n        Enabled = true,\n        GatewayPluginLogglyId = \"...my_id...\",\n        InstanceName = \"...my_instance_name...\",\n        Ordering = new Konnect.Inputs.GatewayPluginLogglyOrderingArgs\n        {\n            After = new Konnect.Inputs.GatewayPluginLogglyOrderingAfterArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n            Before = new Konnect.Inputs.GatewayPluginLogglyOrderingBeforeArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n        },\n        Partials = new[]\n        {\n            new Konnect.Inputs.GatewayPluginLogglyPartialArgs\n            {\n                Id = \"...my_id...\",\n                Name = \"...my_name...\",\n                Path = \"...my_path...\",\n            },\n        },\n        Protocols = new[]\n        {\n            \"http\",\n        },\n        Route = new Konnect.Inputs.GatewayPluginLogglyRouteArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Service = new Konnect.Inputs.GatewayPluginLogglyServiceArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Tags = new[]\n        {\n            \"...\",\n        },\n        UpdatedAt = 10,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewGatewayPluginLoggly(ctx, \"my_gatewaypluginloggly\", \u0026konnect.GatewayPluginLogglyArgs{\n\t\t\tConfig: \u0026konnect.GatewayPluginLogglyConfigArgs{\n\t\t\t\tClientErrorsSeverity: pulumi.String(\"notice\"),\n\t\t\t\tCustomFieldsByLua: pulumi.StringMap{\n\t\t\t\t\t\"key\": pulumi.String(\"value\"),\n\t\t\t\t},\n\t\t\t\tHost:                 pulumi.String(\"...my_host...\"),\n\t\t\t\tKey:                  pulumi.String(\"...my_key...\"),\n\t\t\t\tLogLevel:             pulumi.String(\"alert\"),\n\t\t\t\tPort:                 pulumi.Float64(51730),\n\t\t\t\tServerErrorsSeverity: pulumi.String(\"crit\"),\n\t\t\t\tSuccessfulSeverity:   pulumi.String(\"alert\"),\n\t\t\t\tTags: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tTimeout: pulumi.Float64(9.55),\n\t\t\t},\n\t\t\tConsumer: \u0026konnect.GatewayPluginLogglyConsumerArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tControlPlaneId:        pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tCreatedAt:             pulumi.Float64(8),\n\t\t\tEnabled:               pulumi.Bool(true),\n\t\t\tGatewayPluginLogglyId: pulumi.String(\"...my_id...\"),\n\t\t\tInstanceName:          pulumi.String(\"...my_instance_name...\"),\n\t\t\tOrdering: \u0026konnect.GatewayPluginLogglyOrderingArgs{\n\t\t\t\tAfter: \u0026konnect.GatewayPluginLogglyOrderingAfterArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tBefore: \u0026konnect.GatewayPluginLogglyOrderingBeforeArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tPartials: konnect.GatewayPluginLogglyPartialArray{\n\t\t\t\t\u0026konnect.GatewayPluginLogglyPartialArgs{\n\t\t\t\t\tId:   pulumi.String(\"...my_id...\"),\n\t\t\t\t\tName: pulumi.String(\"...my_name...\"),\n\t\t\t\t\tPath: pulumi.String(\"...my_path...\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tProtocols: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"http\"),\n\t\t\t},\n\t\t\tRoute: \u0026konnect.GatewayPluginLogglyRouteArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tService: \u0026konnect.GatewayPluginLogglyServiceArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"...\"),\n\t\t\t},\n\t\t\tUpdatedAt: pulumi.Float64(10),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.GatewayPluginLoggly;\nimport com.pulumi.konnect.GatewayPluginLogglyArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginLogglyConfigArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginLogglyConsumerArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginLogglyOrderingArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginLogglyOrderingAfterArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginLogglyOrderingBeforeArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginLogglyPartialArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginLogglyRouteArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginLogglyServiceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myGatewaypluginloggly = new GatewayPluginLoggly(\"myGatewaypluginloggly\", GatewayPluginLogglyArgs.builder()\n            .config(GatewayPluginLogglyConfigArgs.builder()\n                .clientErrorsSeverity(\"notice\")\n                .customFieldsByLua(Map.of(\"key\", \"value\"))\n                .host(\"...my_host...\")\n                .key(\"...my_key...\")\n                .logLevel(\"alert\")\n                .port(51730.0)\n                .serverErrorsSeverity(\"crit\")\n                .successfulSeverity(\"alert\")\n                .tags(\"...\")\n                .timeout(9.55)\n                .build())\n            .consumer(GatewayPluginLogglyConsumerArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .controlPlaneId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .createdAt(8.0)\n            .enabled(true)\n            .gatewayPluginLogglyId(\"...my_id...\")\n            .instanceName(\"...my_instance_name...\")\n            .ordering(GatewayPluginLogglyOrderingArgs.builder()\n                .after(GatewayPluginLogglyOrderingAfterArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .before(GatewayPluginLogglyOrderingBeforeArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .build())\n            .partials(GatewayPluginLogglyPartialArgs.builder()\n                .id(\"...my_id...\")\n                .name(\"...my_name...\")\n                .path(\"...my_path...\")\n                .build())\n            .protocols(\"http\")\n            .route(GatewayPluginLogglyRouteArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .service(GatewayPluginLogglyServiceArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .tags(\"...\")\n            .updatedAt(10.0)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myGatewaypluginloggly:\n    type: konnect:GatewayPluginLoggly\n    name: my_gatewaypluginloggly\n    properties:\n      config:\n        clientErrorsSeverity: notice\n        customFieldsByLua:\n          key: value\n        host: '...my_host...'\n        key: '...my_key...'\n        logLevel: alert\n        port: 51730\n        serverErrorsSeverity: crit\n        successfulSeverity: alert\n        tags:\n          - '...'\n        timeout: 9.55\n      consumer:\n        id: '...my_id...'\n      controlPlaneId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      createdAt: 8\n      enabled: true\n      gatewayPluginLogglyId: '...my_id...'\n      instanceName: '...my_instance_name...'\n      ordering:\n        after:\n          accesses:\n            - '...'\n        before:\n          accesses:\n            - '...'\n      partials:\n        - id: '...my_id...'\n          name: '...my_name...'\n          path: '...my_path...'\n      protocols:\n        - http\n      route:\n        id: '...my_id...'\n      service:\n        id: '...my_id...'\n      tags:\n        - '...'\n      updatedAt: 10\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_gateway_plugin_loggly.my_konnect_gateway_plugin_loggly\n\n  id = jsonencode({\n\n    control_plane_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/gatewayPluginLoggly:GatewayPluginLoggly my_konnect_gateway_plugin_loggly '{\"control_plane_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"}'\n```\n\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginLogglyConfig:GatewayPluginLogglyConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginLogglyConsumer:GatewayPluginLogglyConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginLogglyId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginLogglyOrdering:GatewayPluginLogglyOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginLogglyPartial:GatewayPluginLogglyPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginLogglyRoute:GatewayPluginLogglyRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginLogglyService:GatewayPluginLogglyService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object","required":["config","consumer","controlPlaneId","createdAt","enabled","gatewayPluginLogglyId","ordering","protocols","route","service","updatedAt"],"inputProperties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginLogglyConfig:GatewayPluginLogglyConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginLogglyConsumer:GatewayPluginLogglyConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginLogglyId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginLogglyOrdering:GatewayPluginLogglyOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginLogglyPartial:GatewayPluginLogglyPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginLogglyRoute:GatewayPluginLogglyRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginLogglyService:GatewayPluginLogglyService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"requiredInputs":["config","controlPlaneId"],"stateInputs":{"description":"Input properties used for looking up and filtering GatewayPluginLoggly resources.\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginLogglyConfig:GatewayPluginLogglyConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginLogglyConsumer:GatewayPluginLogglyConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginLogglyId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginLogglyOrdering:GatewayPluginLogglyOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginLogglyPartial:GatewayPluginLogglyPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginLogglyRoute:GatewayPluginLogglyRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginLogglyService:GatewayPluginLogglyService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object"}},"konnect:index/gatewayPluginMocking:GatewayPluginMocking":{"description":"GatewayPluginMocking Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myGatewaypluginmocking = new konnect.GatewayPluginMocking(\"my_gatewaypluginmocking\", {\n    config: {\n        apiSpecification: \"...my_api_specification...\",\n        apiSpecificationFilename: \"...my_api_specification_filename...\",\n        customBasePath: \"...my_custom_base_path...\",\n        includeBasePath: true,\n        includedStatusCodes: [5],\n        maxDelayTime: 1.21,\n        minDelayTime: 6.51,\n        randomDelay: true,\n        randomExamples: false,\n        randomStatusCode: true,\n    },\n    consumer: {\n        id: \"...my_id...\",\n    },\n    controlPlaneId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    createdAt: 5,\n    enabled: true,\n    gatewayPluginMockingId: \"...my_id...\",\n    instanceName: \"...my_instance_name...\",\n    ordering: {\n        after: {\n            accesses: [\"...\"],\n        },\n        before: {\n            accesses: [\"...\"],\n        },\n    },\n    partials: [{\n        id: \"...my_id...\",\n        name: \"...my_name...\",\n        path: \"...my_path...\",\n    }],\n    protocols: [\"grpcs\"],\n    route: {\n        id: \"...my_id...\",\n    },\n    service: {\n        id: \"...my_id...\",\n    },\n    tags: [\"...\"],\n    updatedAt: 4,\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_gatewaypluginmocking = konnect.GatewayPluginMocking(\"my_gatewaypluginmocking\",\n    config={\n        \"api_specification\": \"...my_api_specification...\",\n        \"api_specification_filename\": \"...my_api_specification_filename...\",\n        \"custom_base_path\": \"...my_custom_base_path...\",\n        \"include_base_path\": True,\n        \"included_status_codes\": [5],\n        \"max_delay_time\": 1.21,\n        \"min_delay_time\": 6.51,\n        \"random_delay\": True,\n        \"random_examples\": False,\n        \"random_status_code\": True,\n    },\n    consumer={\n        \"id\": \"...my_id...\",\n    },\n    control_plane_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    created_at=5,\n    enabled=True,\n    gateway_plugin_mocking_id=\"...my_id...\",\n    instance_name=\"...my_instance_name...\",\n    ordering={\n        \"after\": {\n            \"accesses\": [\"...\"],\n        },\n        \"before\": {\n            \"accesses\": [\"...\"],\n        },\n    },\n    partials=[{\n        \"id\": \"...my_id...\",\n        \"name\": \"...my_name...\",\n        \"path\": \"...my_path...\",\n    }],\n    protocols=[\"grpcs\"],\n    route={\n        \"id\": \"...my_id...\",\n    },\n    service={\n        \"id\": \"...my_id...\",\n    },\n    tags=[\"...\"],\n    updated_at=4)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myGatewaypluginmocking = new Konnect.GatewayPluginMocking(\"my_gatewaypluginmocking\", new()\n    {\n        Config = new Konnect.Inputs.GatewayPluginMockingConfigArgs\n        {\n            ApiSpecification = \"...my_api_specification...\",\n            ApiSpecificationFilename = \"...my_api_specification_filename...\",\n            CustomBasePath = \"...my_custom_base_path...\",\n            IncludeBasePath = true,\n            IncludedStatusCodes = new[]\n            {\n                5,\n            },\n            MaxDelayTime = 1.21,\n            MinDelayTime = 6.51,\n            RandomDelay = true,\n            RandomExamples = false,\n            RandomStatusCode = true,\n        },\n        Consumer = new Konnect.Inputs.GatewayPluginMockingConsumerArgs\n        {\n            Id = \"...my_id...\",\n        },\n        ControlPlaneId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        CreatedAt = 5,\n        Enabled = true,\n        GatewayPluginMockingId = \"...my_id...\",\n        InstanceName = \"...my_instance_name...\",\n        Ordering = new Konnect.Inputs.GatewayPluginMockingOrderingArgs\n        {\n            After = new Konnect.Inputs.GatewayPluginMockingOrderingAfterArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n            Before = new Konnect.Inputs.GatewayPluginMockingOrderingBeforeArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n        },\n        Partials = new[]\n        {\n            new Konnect.Inputs.GatewayPluginMockingPartialArgs\n            {\n                Id = \"...my_id...\",\n                Name = \"...my_name...\",\n                Path = \"...my_path...\",\n            },\n        },\n        Protocols = new[]\n        {\n            \"grpcs\",\n        },\n        Route = new Konnect.Inputs.GatewayPluginMockingRouteArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Service = new Konnect.Inputs.GatewayPluginMockingServiceArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Tags = new[]\n        {\n            \"...\",\n        },\n        UpdatedAt = 4,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewGatewayPluginMocking(ctx, \"my_gatewaypluginmocking\", \u0026konnect.GatewayPluginMockingArgs{\n\t\t\tConfig: \u0026konnect.GatewayPluginMockingConfigArgs{\n\t\t\t\tApiSpecification:         pulumi.String(\"...my_api_specification...\"),\n\t\t\t\tApiSpecificationFilename: pulumi.String(\"...my_api_specification_filename...\"),\n\t\t\t\tCustomBasePath:           pulumi.String(\"...my_custom_base_path...\"),\n\t\t\t\tIncludeBasePath:          pulumi.Bool(true),\n\t\t\t\tIncludedStatusCodes: pulumi.Float64Array{\n\t\t\t\t\tpulumi.Float64(5),\n\t\t\t\t},\n\t\t\t\tMaxDelayTime:     pulumi.Float64(1.21),\n\t\t\t\tMinDelayTime:     pulumi.Float64(6.51),\n\t\t\t\tRandomDelay:      pulumi.Bool(true),\n\t\t\t\tRandomExamples:   pulumi.Bool(false),\n\t\t\t\tRandomStatusCode: pulumi.Bool(true),\n\t\t\t},\n\t\t\tConsumer: \u0026konnect.GatewayPluginMockingConsumerArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tControlPlaneId:         pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tCreatedAt:              pulumi.Float64(5),\n\t\t\tEnabled:                pulumi.Bool(true),\n\t\t\tGatewayPluginMockingId: pulumi.String(\"...my_id...\"),\n\t\t\tInstanceName:           pulumi.String(\"...my_instance_name...\"),\n\t\t\tOrdering: \u0026konnect.GatewayPluginMockingOrderingArgs{\n\t\t\t\tAfter: \u0026konnect.GatewayPluginMockingOrderingAfterArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tBefore: \u0026konnect.GatewayPluginMockingOrderingBeforeArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tPartials: konnect.GatewayPluginMockingPartialArray{\n\t\t\t\t\u0026konnect.GatewayPluginMockingPartialArgs{\n\t\t\t\t\tId:   pulumi.String(\"...my_id...\"),\n\t\t\t\t\tName: pulumi.String(\"...my_name...\"),\n\t\t\t\t\tPath: pulumi.String(\"...my_path...\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tProtocols: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"grpcs\"),\n\t\t\t},\n\t\t\tRoute: \u0026konnect.GatewayPluginMockingRouteArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tService: \u0026konnect.GatewayPluginMockingServiceArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"...\"),\n\t\t\t},\n\t\t\tUpdatedAt: pulumi.Float64(4),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.GatewayPluginMocking;\nimport com.pulumi.konnect.GatewayPluginMockingArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginMockingConfigArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginMockingConsumerArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginMockingOrderingArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginMockingOrderingAfterArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginMockingOrderingBeforeArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginMockingPartialArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginMockingRouteArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginMockingServiceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myGatewaypluginmocking = new GatewayPluginMocking(\"myGatewaypluginmocking\", GatewayPluginMockingArgs.builder()\n            .config(GatewayPluginMockingConfigArgs.builder()\n                .apiSpecification(\"...my_api_specification...\")\n                .apiSpecificationFilename(\"...my_api_specification_filename...\")\n                .customBasePath(\"...my_custom_base_path...\")\n                .includeBasePath(true)\n                .includedStatusCodes(5.0)\n                .maxDelayTime(1.21)\n                .minDelayTime(6.51)\n                .randomDelay(true)\n                .randomExamples(false)\n                .randomStatusCode(true)\n                .build())\n            .consumer(GatewayPluginMockingConsumerArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .controlPlaneId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .createdAt(5.0)\n            .enabled(true)\n            .gatewayPluginMockingId(\"...my_id...\")\n            .instanceName(\"...my_instance_name...\")\n            .ordering(GatewayPluginMockingOrderingArgs.builder()\n                .after(GatewayPluginMockingOrderingAfterArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .before(GatewayPluginMockingOrderingBeforeArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .build())\n            .partials(GatewayPluginMockingPartialArgs.builder()\n                .id(\"...my_id...\")\n                .name(\"...my_name...\")\n                .path(\"...my_path...\")\n                .build())\n            .protocols(\"grpcs\")\n            .route(GatewayPluginMockingRouteArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .service(GatewayPluginMockingServiceArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .tags(\"...\")\n            .updatedAt(4.0)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myGatewaypluginmocking:\n    type: konnect:GatewayPluginMocking\n    name: my_gatewaypluginmocking\n    properties:\n      config:\n        apiSpecification: '...my_api_specification...'\n        apiSpecificationFilename: '...my_api_specification_filename...'\n        customBasePath: '...my_custom_base_path...'\n        includeBasePath: true\n        includedStatusCodes:\n          - 5\n        maxDelayTime: 1.21\n        minDelayTime: 6.51\n        randomDelay: true\n        randomExamples: false\n        randomStatusCode: true\n      consumer:\n        id: '...my_id...'\n      controlPlaneId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      createdAt: 5\n      enabled: true\n      gatewayPluginMockingId: '...my_id...'\n      instanceName: '...my_instance_name...'\n      ordering:\n        after:\n          accesses:\n            - '...'\n        before:\n          accesses:\n            - '...'\n      partials:\n        - id: '...my_id...'\n          name: '...my_name...'\n          path: '...my_path...'\n      protocols:\n        - grpcs\n      route:\n        id: '...my_id...'\n      service:\n        id: '...my_id...'\n      tags:\n        - '...'\n      updatedAt: 4\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_gateway_plugin_mocking.my_konnect_gateway_plugin_mocking\n\n  id = jsonencode({\n\n    control_plane_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/gatewayPluginMocking:GatewayPluginMocking my_konnect_gateway_plugin_mocking '{\"control_plane_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"}'\n```\n\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginMockingConfig:GatewayPluginMockingConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginMockingConsumer:GatewayPluginMockingConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginMockingId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginMockingOrdering:GatewayPluginMockingOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginMockingPartial:GatewayPluginMockingPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginMockingRoute:GatewayPluginMockingRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginMockingService:GatewayPluginMockingService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object","required":["config","consumer","controlPlaneId","createdAt","enabled","gatewayPluginMockingId","ordering","protocols","route","service","updatedAt"],"inputProperties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginMockingConfig:GatewayPluginMockingConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginMockingConsumer:GatewayPluginMockingConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginMockingId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginMockingOrdering:GatewayPluginMockingOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginMockingPartial:GatewayPluginMockingPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginMockingRoute:GatewayPluginMockingRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginMockingService:GatewayPluginMockingService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"requiredInputs":["controlPlaneId"],"stateInputs":{"description":"Input properties used for looking up and filtering GatewayPluginMocking resources.\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginMockingConfig:GatewayPluginMockingConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginMockingConsumer:GatewayPluginMockingConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginMockingId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginMockingOrdering:GatewayPluginMockingOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginMockingPartial:GatewayPluginMockingPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginMockingRoute:GatewayPluginMockingRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginMockingService:GatewayPluginMockingService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object"}},"konnect:index/gatewayPluginMtlsAuth:GatewayPluginMtlsAuth":{"description":"GatewayPluginMtlsAuth Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myGatewaypluginmtlsauth = new konnect.GatewayPluginMtlsAuth(\"my_gatewaypluginmtlsauth\", {\n    config: {\n        allowPartialChain: false,\n        anonymous: \"...my_anonymous...\",\n        authenticatedGroupBy: \"DN\",\n        caCertificates: [\"...\"],\n        cacheTtl: 5.53,\n        certCacheTtl: 4.84,\n        consumerBies: [\"username\"],\n        defaultConsumer: \"...my_default_consumer...\",\n        httpProxyHost: \"...my_http_proxy_host...\",\n        httpProxyPort: 30482,\n        httpTimeout: 4.02,\n        httpsProxyHost: \"...my_https_proxy_host...\",\n        httpsProxyPort: 17238,\n        revocationCheckMode: \"STRICT\",\n        sendCaDn: true,\n        skipConsumerLookup: true,\n        sslVerify: false,\n    },\n    controlPlaneId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    createdAt: 8,\n    enabled: false,\n    gatewayPluginMtlsAuthId: \"...my_id...\",\n    instanceName: \"...my_instance_name...\",\n    ordering: {\n        after: {\n            accesses: [\"...\"],\n        },\n        before: {\n            accesses: [\"...\"],\n        },\n    },\n    partials: [{\n        id: \"...my_id...\",\n        name: \"...my_name...\",\n        path: \"...my_path...\",\n    }],\n    protocols: [\"http\"],\n    route: {\n        id: \"...my_id...\",\n    },\n    service: {\n        id: \"...my_id...\",\n    },\n    tags: [\"...\"],\n    updatedAt: 7,\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_gatewaypluginmtlsauth = konnect.GatewayPluginMtlsAuth(\"my_gatewaypluginmtlsauth\",\n    config={\n        \"allow_partial_chain\": False,\n        \"anonymous\": \"...my_anonymous...\",\n        \"authenticated_group_by\": \"DN\",\n        \"ca_certificates\": [\"...\"],\n        \"cache_ttl\": 5.53,\n        \"cert_cache_ttl\": 4.84,\n        \"consumer_bies\": [\"username\"],\n        \"default_consumer\": \"...my_default_consumer...\",\n        \"http_proxy_host\": \"...my_http_proxy_host...\",\n        \"http_proxy_port\": 30482,\n        \"http_timeout\": 4.02,\n        \"https_proxy_host\": \"...my_https_proxy_host...\",\n        \"https_proxy_port\": 17238,\n        \"revocation_check_mode\": \"STRICT\",\n        \"send_ca_dn\": True,\n        \"skip_consumer_lookup\": True,\n        \"ssl_verify\": False,\n    },\n    control_plane_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    created_at=8,\n    enabled=False,\n    gateway_plugin_mtls_auth_id=\"...my_id...\",\n    instance_name=\"...my_instance_name...\",\n    ordering={\n        \"after\": {\n            \"accesses\": [\"...\"],\n        },\n        \"before\": {\n            \"accesses\": [\"...\"],\n        },\n    },\n    partials=[{\n        \"id\": \"...my_id...\",\n        \"name\": \"...my_name...\",\n        \"path\": \"...my_path...\",\n    }],\n    protocols=[\"http\"],\n    route={\n        \"id\": \"...my_id...\",\n    },\n    service={\n        \"id\": \"...my_id...\",\n    },\n    tags=[\"...\"],\n    updated_at=7)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myGatewaypluginmtlsauth = new Konnect.GatewayPluginMtlsAuth(\"my_gatewaypluginmtlsauth\", new()\n    {\n        Config = new Konnect.Inputs.GatewayPluginMtlsAuthConfigArgs\n        {\n            AllowPartialChain = false,\n            Anonymous = \"...my_anonymous...\",\n            AuthenticatedGroupBy = \"DN\",\n            CaCertificates = new[]\n            {\n                \"...\",\n            },\n            CacheTtl = 5.53,\n            CertCacheTtl = 4.84,\n            ConsumerBies = new[]\n            {\n                \"username\",\n            },\n            DefaultConsumer = \"...my_default_consumer...\",\n            HttpProxyHost = \"...my_http_proxy_host...\",\n            HttpProxyPort = 30482,\n            HttpTimeout = 4.02,\n            HttpsProxyHost = \"...my_https_proxy_host...\",\n            HttpsProxyPort = 17238,\n            RevocationCheckMode = \"STRICT\",\n            SendCaDn = true,\n            SkipConsumerLookup = true,\n            SslVerify = false,\n        },\n        ControlPlaneId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        CreatedAt = 8,\n        Enabled = false,\n        GatewayPluginMtlsAuthId = \"...my_id...\",\n        InstanceName = \"...my_instance_name...\",\n        Ordering = new Konnect.Inputs.GatewayPluginMtlsAuthOrderingArgs\n        {\n            After = new Konnect.Inputs.GatewayPluginMtlsAuthOrderingAfterArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n            Before = new Konnect.Inputs.GatewayPluginMtlsAuthOrderingBeforeArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n        },\n        Partials = new[]\n        {\n            new Konnect.Inputs.GatewayPluginMtlsAuthPartialArgs\n            {\n                Id = \"...my_id...\",\n                Name = \"...my_name...\",\n                Path = \"...my_path...\",\n            },\n        },\n        Protocols = new[]\n        {\n            \"http\",\n        },\n        Route = new Konnect.Inputs.GatewayPluginMtlsAuthRouteArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Service = new Konnect.Inputs.GatewayPluginMtlsAuthServiceArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Tags = new[]\n        {\n            \"...\",\n        },\n        UpdatedAt = 7,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewGatewayPluginMtlsAuth(ctx, \"my_gatewaypluginmtlsauth\", \u0026konnect.GatewayPluginMtlsAuthArgs{\n\t\t\tConfig: \u0026konnect.GatewayPluginMtlsAuthConfigArgs{\n\t\t\t\tAllowPartialChain:    pulumi.Bool(false),\n\t\t\t\tAnonymous:            pulumi.String(\"...my_anonymous...\"),\n\t\t\t\tAuthenticatedGroupBy: pulumi.String(\"DN\"),\n\t\t\t\tCaCertificates: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tCacheTtl:     pulumi.Float64(5.53),\n\t\t\t\tCertCacheTtl: pulumi.Float64(4.84),\n\t\t\t\tConsumerBies: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"username\"),\n\t\t\t\t},\n\t\t\t\tDefaultConsumer:     pulumi.String(\"...my_default_consumer...\"),\n\t\t\t\tHttpProxyHost:       pulumi.String(\"...my_http_proxy_host...\"),\n\t\t\t\tHttpProxyPort:       pulumi.Float64(30482),\n\t\t\t\tHttpTimeout:         pulumi.Float64(4.02),\n\t\t\t\tHttpsProxyHost:      pulumi.String(\"...my_https_proxy_host...\"),\n\t\t\t\tHttpsProxyPort:      pulumi.Float64(17238),\n\t\t\t\tRevocationCheckMode: pulumi.String(\"STRICT\"),\n\t\t\t\tSendCaDn:            pulumi.Bool(true),\n\t\t\t\tSkipConsumerLookup:  pulumi.Bool(true),\n\t\t\t\tSslVerify:           pulumi.Bool(false),\n\t\t\t},\n\t\t\tControlPlaneId:          pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tCreatedAt:               pulumi.Float64(8),\n\t\t\tEnabled:                 pulumi.Bool(false),\n\t\t\tGatewayPluginMtlsAuthId: pulumi.String(\"...my_id...\"),\n\t\t\tInstanceName:            pulumi.String(\"...my_instance_name...\"),\n\t\t\tOrdering: \u0026konnect.GatewayPluginMtlsAuthOrderingArgs{\n\t\t\t\tAfter: \u0026konnect.GatewayPluginMtlsAuthOrderingAfterArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tBefore: \u0026konnect.GatewayPluginMtlsAuthOrderingBeforeArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tPartials: konnect.GatewayPluginMtlsAuthPartialArray{\n\t\t\t\t\u0026konnect.GatewayPluginMtlsAuthPartialArgs{\n\t\t\t\t\tId:   pulumi.String(\"...my_id...\"),\n\t\t\t\t\tName: pulumi.String(\"...my_name...\"),\n\t\t\t\t\tPath: pulumi.String(\"...my_path...\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tProtocols: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"http\"),\n\t\t\t},\n\t\t\tRoute: \u0026konnect.GatewayPluginMtlsAuthRouteArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tService: \u0026konnect.GatewayPluginMtlsAuthServiceArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"...\"),\n\t\t\t},\n\t\t\tUpdatedAt: pulumi.Float64(7),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.GatewayPluginMtlsAuth;\nimport com.pulumi.konnect.GatewayPluginMtlsAuthArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginMtlsAuthConfigArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginMtlsAuthOrderingArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginMtlsAuthOrderingAfterArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginMtlsAuthOrderingBeforeArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginMtlsAuthPartialArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginMtlsAuthRouteArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginMtlsAuthServiceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myGatewaypluginmtlsauth = new GatewayPluginMtlsAuth(\"myGatewaypluginmtlsauth\", GatewayPluginMtlsAuthArgs.builder()\n            .config(GatewayPluginMtlsAuthConfigArgs.builder()\n                .allowPartialChain(false)\n                .anonymous(\"...my_anonymous...\")\n                .authenticatedGroupBy(\"DN\")\n                .caCertificates(\"...\")\n                .cacheTtl(5.53)\n                .certCacheTtl(4.84)\n                .consumerBies(\"username\")\n                .defaultConsumer(\"...my_default_consumer...\")\n                .httpProxyHost(\"...my_http_proxy_host...\")\n                .httpProxyPort(30482.0)\n                .httpTimeout(4.02)\n                .httpsProxyHost(\"...my_https_proxy_host...\")\n                .httpsProxyPort(17238.0)\n                .revocationCheckMode(\"STRICT\")\n                .sendCaDn(true)\n                .skipConsumerLookup(true)\n                .sslVerify(false)\n                .build())\n            .controlPlaneId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .createdAt(8.0)\n            .enabled(false)\n            .gatewayPluginMtlsAuthId(\"...my_id...\")\n            .instanceName(\"...my_instance_name...\")\n            .ordering(GatewayPluginMtlsAuthOrderingArgs.builder()\n                .after(GatewayPluginMtlsAuthOrderingAfterArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .before(GatewayPluginMtlsAuthOrderingBeforeArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .build())\n            .partials(GatewayPluginMtlsAuthPartialArgs.builder()\n                .id(\"...my_id...\")\n                .name(\"...my_name...\")\n                .path(\"...my_path...\")\n                .build())\n            .protocols(\"http\")\n            .route(GatewayPluginMtlsAuthRouteArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .service(GatewayPluginMtlsAuthServiceArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .tags(\"...\")\n            .updatedAt(7.0)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myGatewaypluginmtlsauth:\n    type: konnect:GatewayPluginMtlsAuth\n    name: my_gatewaypluginmtlsauth\n    properties:\n      config:\n        allowPartialChain: false\n        anonymous: '...my_anonymous...'\n        authenticatedGroupBy: DN\n        caCertificates:\n          - '...'\n        cacheTtl: 5.53\n        certCacheTtl: 4.84\n        consumerBies:\n          - username\n        defaultConsumer: '...my_default_consumer...'\n        httpProxyHost: '...my_http_proxy_host...'\n        httpProxyPort: 30482\n        httpTimeout: 4.02\n        httpsProxyHost: '...my_https_proxy_host...'\n        httpsProxyPort: 17238\n        revocationCheckMode: STRICT\n        sendCaDn: true\n        skipConsumerLookup: true\n        sslVerify: false\n      controlPlaneId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      createdAt: 8\n      enabled: false\n      gatewayPluginMtlsAuthId: '...my_id...'\n      instanceName: '...my_instance_name...'\n      ordering:\n        after:\n          accesses:\n            - '...'\n        before:\n          accesses:\n            - '...'\n      partials:\n        - id: '...my_id...'\n          name: '...my_name...'\n          path: '...my_path...'\n      protocols:\n        - http\n      route:\n        id: '...my_id...'\n      service:\n        id: '...my_id...'\n      tags:\n        - '...'\n      updatedAt: 7\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_gateway_plugin_mtls_auth.my_konnect_gateway_plugin_mtls_auth\n\n  id = jsonencode({\n\n    control_plane_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/gatewayPluginMtlsAuth:GatewayPluginMtlsAuth my_konnect_gateway_plugin_mtls_auth '{\"control_plane_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"}'\n```\n\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginMtlsAuthConfig:GatewayPluginMtlsAuthConfig"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginMtlsAuthId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginMtlsAuthOrdering:GatewayPluginMtlsAuthOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginMtlsAuthPartial:GatewayPluginMtlsAuthPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginMtlsAuthRoute:GatewayPluginMtlsAuthRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginMtlsAuthService:GatewayPluginMtlsAuthService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object","required":["config","controlPlaneId","createdAt","enabled","gatewayPluginMtlsAuthId","ordering","protocols","route","service","updatedAt"],"inputProperties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginMtlsAuthConfig:GatewayPluginMtlsAuthConfig"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginMtlsAuthId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginMtlsAuthOrdering:GatewayPluginMtlsAuthOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginMtlsAuthPartial:GatewayPluginMtlsAuthPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginMtlsAuthRoute:GatewayPluginMtlsAuthRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginMtlsAuthService:GatewayPluginMtlsAuthService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"requiredInputs":["config","controlPlaneId"],"stateInputs":{"description":"Input properties used for looking up and filtering GatewayPluginMtlsAuth resources.\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginMtlsAuthConfig:GatewayPluginMtlsAuthConfig"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginMtlsAuthId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginMtlsAuthOrdering:GatewayPluginMtlsAuthOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginMtlsAuthPartial:GatewayPluginMtlsAuthPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginMtlsAuthRoute:GatewayPluginMtlsAuthRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginMtlsAuthService:GatewayPluginMtlsAuthService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object"}},"konnect:index/gatewayPluginOasValidation:GatewayPluginOasValidation":{"description":"GatewayPluginOasValidation Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myGatewaypluginoasvalidation = new konnect.GatewayPluginOasValidation(\"my_gatewaypluginoasvalidation\", {\n    config: {\n        allowedHeaderParameters: \"...my_allowed_header_parameters...\",\n        apiSpec: \"...my_api_spec...\",\n        apiSpecEncoded: false,\n        collectAllErrors: false,\n        customBasePath: \"...my_custom_base_path...\",\n        headerParameterCheck: false,\n        includeBasePath: true,\n        notifyOnlyRequestValidationFailure: false,\n        notifyOnlyResponseBodyValidationFailure: true,\n        queryParameterCheck: true,\n        validateRequestBody: true,\n        validateRequestHeaderParams: true,\n        validateRequestQueryParams: false,\n        validateRequestUriParams: true,\n        validateResponseBody: false,\n        verboseResponse: true,\n    },\n    consumer: {\n        id: \"...my_id...\",\n    },\n    controlPlaneId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    createdAt: 4,\n    enabled: true,\n    gatewayPluginOasValidationId: \"...my_id...\",\n    instanceName: \"...my_instance_name...\",\n    ordering: {\n        after: {\n            accesses: [\"...\"],\n        },\n        before: {\n            accesses: [\"...\"],\n        },\n    },\n    partials: [{\n        id: \"...my_id...\",\n        name: \"...my_name...\",\n        path: \"...my_path...\",\n    }],\n    protocols: [\"https\"],\n    route: {\n        id: \"...my_id...\",\n    },\n    service: {\n        id: \"...my_id...\",\n    },\n    tags: [\"...\"],\n    updatedAt: 9,\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_gatewaypluginoasvalidation = konnect.GatewayPluginOasValidation(\"my_gatewaypluginoasvalidation\",\n    config={\n        \"allowed_header_parameters\": \"...my_allowed_header_parameters...\",\n        \"api_spec\": \"...my_api_spec...\",\n        \"api_spec_encoded\": False,\n        \"collect_all_errors\": False,\n        \"custom_base_path\": \"...my_custom_base_path...\",\n        \"header_parameter_check\": False,\n        \"include_base_path\": True,\n        \"notify_only_request_validation_failure\": False,\n        \"notify_only_response_body_validation_failure\": True,\n        \"query_parameter_check\": True,\n        \"validate_request_body\": True,\n        \"validate_request_header_params\": True,\n        \"validate_request_query_params\": False,\n        \"validate_request_uri_params\": True,\n        \"validate_response_body\": False,\n        \"verbose_response\": True,\n    },\n    consumer={\n        \"id\": \"...my_id...\",\n    },\n    control_plane_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    created_at=4,\n    enabled=True,\n    gateway_plugin_oas_validation_id=\"...my_id...\",\n    instance_name=\"...my_instance_name...\",\n    ordering={\n        \"after\": {\n            \"accesses\": [\"...\"],\n        },\n        \"before\": {\n            \"accesses\": [\"...\"],\n        },\n    },\n    partials=[{\n        \"id\": \"...my_id...\",\n        \"name\": \"...my_name...\",\n        \"path\": \"...my_path...\",\n    }],\n    protocols=[\"https\"],\n    route={\n        \"id\": \"...my_id...\",\n    },\n    service={\n        \"id\": \"...my_id...\",\n    },\n    tags=[\"...\"],\n    updated_at=9)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myGatewaypluginoasvalidation = new Konnect.GatewayPluginOasValidation(\"my_gatewaypluginoasvalidation\", new()\n    {\n        Config = new Konnect.Inputs.GatewayPluginOasValidationConfigArgs\n        {\n            AllowedHeaderParameters = \"...my_allowed_header_parameters...\",\n            ApiSpec = \"...my_api_spec...\",\n            ApiSpecEncoded = false,\n            CollectAllErrors = false,\n            CustomBasePath = \"...my_custom_base_path...\",\n            HeaderParameterCheck = false,\n            IncludeBasePath = true,\n            NotifyOnlyRequestValidationFailure = false,\n            NotifyOnlyResponseBodyValidationFailure = true,\n            QueryParameterCheck = true,\n            ValidateRequestBody = true,\n            ValidateRequestHeaderParams = true,\n            ValidateRequestQueryParams = false,\n            ValidateRequestUriParams = true,\n            ValidateResponseBody = false,\n            VerboseResponse = true,\n        },\n        Consumer = new Konnect.Inputs.GatewayPluginOasValidationConsumerArgs\n        {\n            Id = \"...my_id...\",\n        },\n        ControlPlaneId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        CreatedAt = 4,\n        Enabled = true,\n        GatewayPluginOasValidationId = \"...my_id...\",\n        InstanceName = \"...my_instance_name...\",\n        Ordering = new Konnect.Inputs.GatewayPluginOasValidationOrderingArgs\n        {\n            After = new Konnect.Inputs.GatewayPluginOasValidationOrderingAfterArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n            Before = new Konnect.Inputs.GatewayPluginOasValidationOrderingBeforeArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n        },\n        Partials = new[]\n        {\n            new Konnect.Inputs.GatewayPluginOasValidationPartialArgs\n            {\n                Id = \"...my_id...\",\n                Name = \"...my_name...\",\n                Path = \"...my_path...\",\n            },\n        },\n        Protocols = new[]\n        {\n            \"https\",\n        },\n        Route = new Konnect.Inputs.GatewayPluginOasValidationRouteArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Service = new Konnect.Inputs.GatewayPluginOasValidationServiceArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Tags = new[]\n        {\n            \"...\",\n        },\n        UpdatedAt = 9,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewGatewayPluginOasValidation(ctx, \"my_gatewaypluginoasvalidation\", \u0026konnect.GatewayPluginOasValidationArgs{\n\t\t\tConfig: \u0026konnect.GatewayPluginOasValidationConfigArgs{\n\t\t\t\tAllowedHeaderParameters:                 pulumi.String(\"...my_allowed_header_parameters...\"),\n\t\t\t\tApiSpec:                                 pulumi.String(\"...my_api_spec...\"),\n\t\t\t\tApiSpecEncoded:                          pulumi.Bool(false),\n\t\t\t\tCollectAllErrors:                        pulumi.Bool(false),\n\t\t\t\tCustomBasePath:                          pulumi.String(\"...my_custom_base_path...\"),\n\t\t\t\tHeaderParameterCheck:                    pulumi.Bool(false),\n\t\t\t\tIncludeBasePath:                         pulumi.Bool(true),\n\t\t\t\tNotifyOnlyRequestValidationFailure:      pulumi.Bool(false),\n\t\t\t\tNotifyOnlyResponseBodyValidationFailure: pulumi.Bool(true),\n\t\t\t\tQueryParameterCheck:                     pulumi.Bool(true),\n\t\t\t\tValidateRequestBody:                     pulumi.Bool(true),\n\t\t\t\tValidateRequestHeaderParams:             pulumi.Bool(true),\n\t\t\t\tValidateRequestQueryParams:              pulumi.Bool(false),\n\t\t\t\tValidateRequestUriParams:                pulumi.Bool(true),\n\t\t\t\tValidateResponseBody:                    pulumi.Bool(false),\n\t\t\t\tVerboseResponse:                         pulumi.Bool(true),\n\t\t\t},\n\t\t\tConsumer: \u0026konnect.GatewayPluginOasValidationConsumerArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tControlPlaneId:               pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tCreatedAt:                    pulumi.Float64(4),\n\t\t\tEnabled:                      pulumi.Bool(true),\n\t\t\tGatewayPluginOasValidationId: pulumi.String(\"...my_id...\"),\n\t\t\tInstanceName:                 pulumi.String(\"...my_instance_name...\"),\n\t\t\tOrdering: \u0026konnect.GatewayPluginOasValidationOrderingArgs{\n\t\t\t\tAfter: \u0026konnect.GatewayPluginOasValidationOrderingAfterArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tBefore: \u0026konnect.GatewayPluginOasValidationOrderingBeforeArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tPartials: konnect.GatewayPluginOasValidationPartialArray{\n\t\t\t\t\u0026konnect.GatewayPluginOasValidationPartialArgs{\n\t\t\t\t\tId:   pulumi.String(\"...my_id...\"),\n\t\t\t\t\tName: pulumi.String(\"...my_name...\"),\n\t\t\t\t\tPath: pulumi.String(\"...my_path...\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tProtocols: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"https\"),\n\t\t\t},\n\t\t\tRoute: \u0026konnect.GatewayPluginOasValidationRouteArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tService: \u0026konnect.GatewayPluginOasValidationServiceArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"...\"),\n\t\t\t},\n\t\t\tUpdatedAt: pulumi.Float64(9),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.GatewayPluginOasValidation;\nimport com.pulumi.konnect.GatewayPluginOasValidationArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginOasValidationConfigArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginOasValidationConsumerArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginOasValidationOrderingArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginOasValidationOrderingAfterArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginOasValidationOrderingBeforeArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginOasValidationPartialArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginOasValidationRouteArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginOasValidationServiceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myGatewaypluginoasvalidation = new GatewayPluginOasValidation(\"myGatewaypluginoasvalidation\", GatewayPluginOasValidationArgs.builder()\n            .config(GatewayPluginOasValidationConfigArgs.builder()\n                .allowedHeaderParameters(\"...my_allowed_header_parameters...\")\n                .apiSpec(\"...my_api_spec...\")\n                .apiSpecEncoded(false)\n                .collectAllErrors(false)\n                .customBasePath(\"...my_custom_base_path...\")\n                .headerParameterCheck(false)\n                .includeBasePath(true)\n                .notifyOnlyRequestValidationFailure(false)\n                .notifyOnlyResponseBodyValidationFailure(true)\n                .queryParameterCheck(true)\n                .validateRequestBody(true)\n                .validateRequestHeaderParams(true)\n                .validateRequestQueryParams(false)\n                .validateRequestUriParams(true)\n                .validateResponseBody(false)\n                .verboseResponse(true)\n                .build())\n            .consumer(GatewayPluginOasValidationConsumerArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .controlPlaneId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .createdAt(4.0)\n            .enabled(true)\n            .gatewayPluginOasValidationId(\"...my_id...\")\n            .instanceName(\"...my_instance_name...\")\n            .ordering(GatewayPluginOasValidationOrderingArgs.builder()\n                .after(GatewayPluginOasValidationOrderingAfterArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .before(GatewayPluginOasValidationOrderingBeforeArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .build())\n            .partials(GatewayPluginOasValidationPartialArgs.builder()\n                .id(\"...my_id...\")\n                .name(\"...my_name...\")\n                .path(\"...my_path...\")\n                .build())\n            .protocols(\"https\")\n            .route(GatewayPluginOasValidationRouteArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .service(GatewayPluginOasValidationServiceArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .tags(\"...\")\n            .updatedAt(9.0)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myGatewaypluginoasvalidation:\n    type: konnect:GatewayPluginOasValidation\n    name: my_gatewaypluginoasvalidation\n    properties:\n      config:\n        allowedHeaderParameters: '...my_allowed_header_parameters...'\n        apiSpec: '...my_api_spec...'\n        apiSpecEncoded: false\n        collectAllErrors: false\n        customBasePath: '...my_custom_base_path...'\n        headerParameterCheck: false\n        includeBasePath: true\n        notifyOnlyRequestValidationFailure: false\n        notifyOnlyResponseBodyValidationFailure: true\n        queryParameterCheck: true\n        validateRequestBody: true\n        validateRequestHeaderParams: true\n        validateRequestQueryParams: false\n        validateRequestUriParams: true\n        validateResponseBody: false\n        verboseResponse: true\n      consumer:\n        id: '...my_id...'\n      controlPlaneId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      createdAt: 4\n      enabled: true\n      gatewayPluginOasValidationId: '...my_id...'\n      instanceName: '...my_instance_name...'\n      ordering:\n        after:\n          accesses:\n            - '...'\n        before:\n          accesses:\n            - '...'\n      partials:\n        - id: '...my_id...'\n          name: '...my_name...'\n          path: '...my_path...'\n      protocols:\n        - https\n      route:\n        id: '...my_id...'\n      service:\n        id: '...my_id...'\n      tags:\n        - '...'\n      updatedAt: 9\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_gateway_plugin_oas_validation.my_konnect_gateway_plugin_oas_validation\n\n  id = jsonencode({\n\n    control_plane_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/gatewayPluginOasValidation:GatewayPluginOasValidation my_konnect_gateway_plugin_oas_validation '{\"control_plane_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"}'\n```\n\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginOasValidationConfig:GatewayPluginOasValidationConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginOasValidationConsumer:GatewayPluginOasValidationConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginOasValidationId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginOasValidationOrdering:GatewayPluginOasValidationOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginOasValidationPartial:GatewayPluginOasValidationPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginOasValidationRoute:GatewayPluginOasValidationRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginOasValidationService:GatewayPluginOasValidationService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object","required":["config","consumer","controlPlaneId","createdAt","enabled","gatewayPluginOasValidationId","ordering","protocols","route","service","updatedAt"],"inputProperties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginOasValidationConfig:GatewayPluginOasValidationConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginOasValidationConsumer:GatewayPluginOasValidationConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginOasValidationId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginOasValidationOrdering:GatewayPluginOasValidationOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginOasValidationPartial:GatewayPluginOasValidationPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginOasValidationRoute:GatewayPluginOasValidationRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginOasValidationService:GatewayPluginOasValidationService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"requiredInputs":["config","controlPlaneId"],"stateInputs":{"description":"Input properties used for looking up and filtering GatewayPluginOasValidation resources.\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginOasValidationConfig:GatewayPluginOasValidationConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginOasValidationConsumer:GatewayPluginOasValidationConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginOasValidationId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginOasValidationOrdering:GatewayPluginOasValidationOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginOasValidationPartial:GatewayPluginOasValidationPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginOasValidationRoute:GatewayPluginOasValidationRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginOasValidationService:GatewayPluginOasValidationService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object"}},"konnect:index/gatewayPluginOauth2Introspection:GatewayPluginOauth2Introspection":{"description":"GatewayPluginOauth2Introspection Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myGatewaypluginoauth2introspection = new konnect.GatewayPluginOauth2Introspection(\"my_gatewaypluginoauth2introspection\", {\n    config: {\n        anonymous: \"...my_anonymous...\",\n        authorizationValue: \"...my_authorization_value...\",\n        consumerBy: \"username\",\n        customClaimsForwards: [\"...\"],\n        customIntrospectionHeaders: {\n            key: \"value\",\n        },\n        hideCredentials: true,\n        introspectRequest: false,\n        introspectionUrl: \"...my_introspection_url...\",\n        keepalive: 2,\n        runOnPreflight: true,\n        timeout: 8,\n        tokenTypeHint: \"...my_token_type_hint...\",\n        ttl: 1.29,\n    },\n    controlPlaneId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    createdAt: 3,\n    enabled: false,\n    gatewayPluginOauth2IntrospectionId: \"...my_id...\",\n    instanceName: \"...my_instance_name...\",\n    ordering: {\n        after: {\n            accesses: [\"...\"],\n        },\n        before: {\n            accesses: [\"...\"],\n        },\n    },\n    partials: [{\n        id: \"...my_id...\",\n        name: \"...my_name...\",\n        path: \"...my_path...\",\n    }],\n    protocols: [\"grpc\"],\n    route: {\n        id: \"...my_id...\",\n    },\n    service: {\n        id: \"...my_id...\",\n    },\n    tags: [\"...\"],\n    updatedAt: 8,\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_gatewaypluginoauth2introspection = konnect.GatewayPluginOauth2Introspection(\"my_gatewaypluginoauth2introspection\",\n    config={\n        \"anonymous\": \"...my_anonymous...\",\n        \"authorization_value\": \"...my_authorization_value...\",\n        \"consumer_by\": \"username\",\n        \"custom_claims_forwards\": [\"...\"],\n        \"custom_introspection_headers\": {\n            \"key\": \"value\",\n        },\n        \"hide_credentials\": True,\n        \"introspect_request\": False,\n        \"introspection_url\": \"...my_introspection_url...\",\n        \"keepalive\": 2,\n        \"run_on_preflight\": True,\n        \"timeout\": 8,\n        \"token_type_hint\": \"...my_token_type_hint...\",\n        \"ttl\": 1.29,\n    },\n    control_plane_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    created_at=3,\n    enabled=False,\n    gateway_plugin_oauth2_introspection_id=\"...my_id...\",\n    instance_name=\"...my_instance_name...\",\n    ordering={\n        \"after\": {\n            \"accesses\": [\"...\"],\n        },\n        \"before\": {\n            \"accesses\": [\"...\"],\n        },\n    },\n    partials=[{\n        \"id\": \"...my_id...\",\n        \"name\": \"...my_name...\",\n        \"path\": \"...my_path...\",\n    }],\n    protocols=[\"grpc\"],\n    route={\n        \"id\": \"...my_id...\",\n    },\n    service={\n        \"id\": \"...my_id...\",\n    },\n    tags=[\"...\"],\n    updated_at=8)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myGatewaypluginoauth2introspection = new Konnect.GatewayPluginOauth2Introspection(\"my_gatewaypluginoauth2introspection\", new()\n    {\n        Config = new Konnect.Inputs.GatewayPluginOauth2IntrospectionConfigArgs\n        {\n            Anonymous = \"...my_anonymous...\",\n            AuthorizationValue = \"...my_authorization_value...\",\n            ConsumerBy = \"username\",\n            CustomClaimsForwards = new[]\n            {\n                \"...\",\n            },\n            CustomIntrospectionHeaders = \n            {\n                { \"key\", \"value\" },\n            },\n            HideCredentials = true,\n            IntrospectRequest = false,\n            IntrospectionUrl = \"...my_introspection_url...\",\n            Keepalive = 2,\n            RunOnPreflight = true,\n            Timeout = 8,\n            TokenTypeHint = \"...my_token_type_hint...\",\n            Ttl = 1.29,\n        },\n        ControlPlaneId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        CreatedAt = 3,\n        Enabled = false,\n        GatewayPluginOauth2IntrospectionId = \"...my_id...\",\n        InstanceName = \"...my_instance_name...\",\n        Ordering = new Konnect.Inputs.GatewayPluginOauth2IntrospectionOrderingArgs\n        {\n            After = new Konnect.Inputs.GatewayPluginOauth2IntrospectionOrderingAfterArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n            Before = new Konnect.Inputs.GatewayPluginOauth2IntrospectionOrderingBeforeArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n        },\n        Partials = new[]\n        {\n            new Konnect.Inputs.GatewayPluginOauth2IntrospectionPartialArgs\n            {\n                Id = \"...my_id...\",\n                Name = \"...my_name...\",\n                Path = \"...my_path...\",\n            },\n        },\n        Protocols = new[]\n        {\n            \"grpc\",\n        },\n        Route = new Konnect.Inputs.GatewayPluginOauth2IntrospectionRouteArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Service = new Konnect.Inputs.GatewayPluginOauth2IntrospectionServiceArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Tags = new[]\n        {\n            \"...\",\n        },\n        UpdatedAt = 8,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewGatewayPluginOauth2Introspection(ctx, \"my_gatewaypluginoauth2introspection\", \u0026konnect.GatewayPluginOauth2IntrospectionArgs{\n\t\t\tConfig: \u0026konnect.GatewayPluginOauth2IntrospectionConfigArgs{\n\t\t\t\tAnonymous:          pulumi.String(\"...my_anonymous...\"),\n\t\t\t\tAuthorizationValue: pulumi.String(\"...my_authorization_value...\"),\n\t\t\t\tConsumerBy:         pulumi.String(\"username\"),\n\t\t\t\tCustomClaimsForwards: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tCustomIntrospectionHeaders: pulumi.StringMap{\n\t\t\t\t\t\"key\": pulumi.String(\"value\"),\n\t\t\t\t},\n\t\t\t\tHideCredentials:   pulumi.Bool(true),\n\t\t\t\tIntrospectRequest: pulumi.Bool(false),\n\t\t\t\tIntrospectionUrl:  pulumi.String(\"...my_introspection_url...\"),\n\t\t\t\tKeepalive:         pulumi.Float64(2),\n\t\t\t\tRunOnPreflight:    pulumi.Bool(true),\n\t\t\t\tTimeout:           pulumi.Float64(8),\n\t\t\t\tTokenTypeHint:     pulumi.String(\"...my_token_type_hint...\"),\n\t\t\t\tTtl:               pulumi.Float64(1.29),\n\t\t\t},\n\t\t\tControlPlaneId:                     pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tCreatedAt:                          pulumi.Float64(3),\n\t\t\tEnabled:                            pulumi.Bool(false),\n\t\t\tGatewayPluginOauth2IntrospectionId: pulumi.String(\"...my_id...\"),\n\t\t\tInstanceName:                       pulumi.String(\"...my_instance_name...\"),\n\t\t\tOrdering: \u0026konnect.GatewayPluginOauth2IntrospectionOrderingArgs{\n\t\t\t\tAfter: \u0026konnect.GatewayPluginOauth2IntrospectionOrderingAfterArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tBefore: \u0026konnect.GatewayPluginOauth2IntrospectionOrderingBeforeArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tPartials: konnect.GatewayPluginOauth2IntrospectionPartialArray{\n\t\t\t\t\u0026konnect.GatewayPluginOauth2IntrospectionPartialArgs{\n\t\t\t\t\tId:   pulumi.String(\"...my_id...\"),\n\t\t\t\t\tName: pulumi.String(\"...my_name...\"),\n\t\t\t\t\tPath: pulumi.String(\"...my_path...\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tProtocols: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"grpc\"),\n\t\t\t},\n\t\t\tRoute: \u0026konnect.GatewayPluginOauth2IntrospectionRouteArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tService: \u0026konnect.GatewayPluginOauth2IntrospectionServiceArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"...\"),\n\t\t\t},\n\t\t\tUpdatedAt: pulumi.Float64(8),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.GatewayPluginOauth2Introspection;\nimport com.pulumi.konnect.GatewayPluginOauth2IntrospectionArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginOauth2IntrospectionConfigArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginOauth2IntrospectionOrderingArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginOauth2IntrospectionOrderingAfterArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginOauth2IntrospectionOrderingBeforeArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginOauth2IntrospectionPartialArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginOauth2IntrospectionRouteArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginOauth2IntrospectionServiceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myGatewaypluginoauth2introspection = new GatewayPluginOauth2Introspection(\"myGatewaypluginoauth2introspection\", GatewayPluginOauth2IntrospectionArgs.builder()\n            .config(GatewayPluginOauth2IntrospectionConfigArgs.builder()\n                .anonymous(\"...my_anonymous...\")\n                .authorizationValue(\"...my_authorization_value...\")\n                .consumerBy(\"username\")\n                .customClaimsForwards(\"...\")\n                .customIntrospectionHeaders(Map.of(\"key\", \"value\"))\n                .hideCredentials(true)\n                .introspectRequest(false)\n                .introspectionUrl(\"...my_introspection_url...\")\n                .keepalive(2.0)\n                .runOnPreflight(true)\n                .timeout(8.0)\n                .tokenTypeHint(\"...my_token_type_hint...\")\n                .ttl(1.29)\n                .build())\n            .controlPlaneId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .createdAt(3.0)\n            .enabled(false)\n            .gatewayPluginOauth2IntrospectionId(\"...my_id...\")\n            .instanceName(\"...my_instance_name...\")\n            .ordering(GatewayPluginOauth2IntrospectionOrderingArgs.builder()\n                .after(GatewayPluginOauth2IntrospectionOrderingAfterArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .before(GatewayPluginOauth2IntrospectionOrderingBeforeArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .build())\n            .partials(GatewayPluginOauth2IntrospectionPartialArgs.builder()\n                .id(\"...my_id...\")\n                .name(\"...my_name...\")\n                .path(\"...my_path...\")\n                .build())\n            .protocols(\"grpc\")\n            .route(GatewayPluginOauth2IntrospectionRouteArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .service(GatewayPluginOauth2IntrospectionServiceArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .tags(\"...\")\n            .updatedAt(8.0)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myGatewaypluginoauth2introspection:\n    type: konnect:GatewayPluginOauth2Introspection\n    name: my_gatewaypluginoauth2introspection\n    properties:\n      config:\n        anonymous: '...my_anonymous...'\n        authorizationValue: '...my_authorization_value...'\n        consumerBy: username\n        customClaimsForwards:\n          - '...'\n        customIntrospectionHeaders:\n          key: value\n        hideCredentials: true\n        introspectRequest: false\n        introspectionUrl: '...my_introspection_url...'\n        keepalive: 2\n        runOnPreflight: true\n        timeout: 8\n        tokenTypeHint: '...my_token_type_hint...'\n        ttl: 1.29\n      controlPlaneId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      createdAt: 3\n      enabled: false\n      gatewayPluginOauth2IntrospectionId: '...my_id...'\n      instanceName: '...my_instance_name...'\n      ordering:\n        after:\n          accesses:\n            - '...'\n        before:\n          accesses:\n            - '...'\n      partials:\n        - id: '...my_id...'\n          name: '...my_name...'\n          path: '...my_path...'\n      protocols:\n        - grpc\n      route:\n        id: '...my_id...'\n      service:\n        id: '...my_id...'\n      tags:\n        - '...'\n      updatedAt: 8\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_gateway_plugin_oauth2_introspection.my_konnect_gateway_plugin_oauth2_introspection\n\n  id = jsonencode({\n\n    control_plane_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/gatewayPluginOauth2Introspection:GatewayPluginOauth2Introspection my_konnect_gateway_plugin_oauth2_introspection '{\"control_plane_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"}'\n```\n\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginOauth2IntrospectionConfig:GatewayPluginOauth2IntrospectionConfig"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginOauth2IntrospectionId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginOauth2IntrospectionOrdering:GatewayPluginOauth2IntrospectionOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginOauth2IntrospectionPartial:GatewayPluginOauth2IntrospectionPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginOauth2IntrospectionRoute:GatewayPluginOauth2IntrospectionRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginOauth2IntrospectionService:GatewayPluginOauth2IntrospectionService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object","required":["config","controlPlaneId","createdAt","enabled","gatewayPluginOauth2IntrospectionId","ordering","protocols","route","service","updatedAt"],"inputProperties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginOauth2IntrospectionConfig:GatewayPluginOauth2IntrospectionConfig"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginOauth2IntrospectionId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginOauth2IntrospectionOrdering:GatewayPluginOauth2IntrospectionOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginOauth2IntrospectionPartial:GatewayPluginOauth2IntrospectionPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginOauth2IntrospectionRoute:GatewayPluginOauth2IntrospectionRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginOauth2IntrospectionService:GatewayPluginOauth2IntrospectionService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"requiredInputs":["config","controlPlaneId"],"stateInputs":{"description":"Input properties used for looking up and filtering GatewayPluginOauth2Introspection resources.\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginOauth2IntrospectionConfig:GatewayPluginOauth2IntrospectionConfig"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginOauth2IntrospectionId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginOauth2IntrospectionOrdering:GatewayPluginOauth2IntrospectionOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginOauth2IntrospectionPartial:GatewayPluginOauth2IntrospectionPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginOauth2IntrospectionRoute:GatewayPluginOauth2IntrospectionRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginOauth2IntrospectionService:GatewayPluginOauth2IntrospectionService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object"}},"konnect:index/gatewayPluginOpa:GatewayPluginOpa":{"description":"GatewayPluginOpa Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myGatewaypluginopa = new konnect.GatewayPluginOpa(\"my_gatewaypluginopa\", {\n    config: {\n        includeBodyInOpaInput: true,\n        includeConsumerInOpaInput: true,\n        includeParsedJsonBodyInOpaInput: true,\n        includeRouteInOpaInput: false,\n        includeServiceInOpaInput: true,\n        includeUriCapturesInOpaInput: false,\n        opaHost: \"...my_opa_host...\",\n        opaPath: \"...my_opa_path...\",\n        opaPort: 43549,\n        opaProtocol: \"https\",\n        sslVerify: false,\n    },\n    controlPlaneId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    createdAt: 0,\n    enabled: true,\n    gatewayPluginOpaId: \"...my_id...\",\n    instanceName: \"...my_instance_name...\",\n    ordering: {\n        after: {\n            accesses: [\"...\"],\n        },\n        before: {\n            accesses: [\"...\"],\n        },\n    },\n    partials: [{\n        id: \"...my_id...\",\n        name: \"...my_name...\",\n        path: \"...my_path...\",\n    }],\n    protocols: [\"grpcs\"],\n    route: {\n        id: \"...my_id...\",\n    },\n    service: {\n        id: \"...my_id...\",\n    },\n    tags: [\"...\"],\n    updatedAt: 9,\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_gatewaypluginopa = konnect.GatewayPluginOpa(\"my_gatewaypluginopa\",\n    config={\n        \"include_body_in_opa_input\": True,\n        \"include_consumer_in_opa_input\": True,\n        \"include_parsed_json_body_in_opa_input\": True,\n        \"include_route_in_opa_input\": False,\n        \"include_service_in_opa_input\": True,\n        \"include_uri_captures_in_opa_input\": False,\n        \"opa_host\": \"...my_opa_host...\",\n        \"opa_path\": \"...my_opa_path...\",\n        \"opa_port\": 43549,\n        \"opa_protocol\": \"https\",\n        \"ssl_verify\": False,\n    },\n    control_plane_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    created_at=0,\n    enabled=True,\n    gateway_plugin_opa_id=\"...my_id...\",\n    instance_name=\"...my_instance_name...\",\n    ordering={\n        \"after\": {\n            \"accesses\": [\"...\"],\n        },\n        \"before\": {\n            \"accesses\": [\"...\"],\n        },\n    },\n    partials=[{\n        \"id\": \"...my_id...\",\n        \"name\": \"...my_name...\",\n        \"path\": \"...my_path...\",\n    }],\n    protocols=[\"grpcs\"],\n    route={\n        \"id\": \"...my_id...\",\n    },\n    service={\n        \"id\": \"...my_id...\",\n    },\n    tags=[\"...\"],\n    updated_at=9)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myGatewaypluginopa = new Konnect.GatewayPluginOpa(\"my_gatewaypluginopa\", new()\n    {\n        Config = new Konnect.Inputs.GatewayPluginOpaConfigArgs\n        {\n            IncludeBodyInOpaInput = true,\n            IncludeConsumerInOpaInput = true,\n            IncludeParsedJsonBodyInOpaInput = true,\n            IncludeRouteInOpaInput = false,\n            IncludeServiceInOpaInput = true,\n            IncludeUriCapturesInOpaInput = false,\n            OpaHost = \"...my_opa_host...\",\n            OpaPath = \"...my_opa_path...\",\n            OpaPort = 43549,\n            OpaProtocol = \"https\",\n            SslVerify = false,\n        },\n        ControlPlaneId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        CreatedAt = 0,\n        Enabled = true,\n        GatewayPluginOpaId = \"...my_id...\",\n        InstanceName = \"...my_instance_name...\",\n        Ordering = new Konnect.Inputs.GatewayPluginOpaOrderingArgs\n        {\n            After = new Konnect.Inputs.GatewayPluginOpaOrderingAfterArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n            Before = new Konnect.Inputs.GatewayPluginOpaOrderingBeforeArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n        },\n        Partials = new[]\n        {\n            new Konnect.Inputs.GatewayPluginOpaPartialArgs\n            {\n                Id = \"...my_id...\",\n                Name = \"...my_name...\",\n                Path = \"...my_path...\",\n            },\n        },\n        Protocols = new[]\n        {\n            \"grpcs\",\n        },\n        Route = new Konnect.Inputs.GatewayPluginOpaRouteArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Service = new Konnect.Inputs.GatewayPluginOpaServiceArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Tags = new[]\n        {\n            \"...\",\n        },\n        UpdatedAt = 9,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewGatewayPluginOpa(ctx, \"my_gatewaypluginopa\", \u0026konnect.GatewayPluginOpaArgs{\n\t\t\tConfig: \u0026konnect.GatewayPluginOpaConfigArgs{\n\t\t\t\tIncludeBodyInOpaInput:           pulumi.Bool(true),\n\t\t\t\tIncludeConsumerInOpaInput:       pulumi.Bool(true),\n\t\t\t\tIncludeParsedJsonBodyInOpaInput: pulumi.Bool(true),\n\t\t\t\tIncludeRouteInOpaInput:          pulumi.Bool(false),\n\t\t\t\tIncludeServiceInOpaInput:        pulumi.Bool(true),\n\t\t\t\tIncludeUriCapturesInOpaInput:    pulumi.Bool(false),\n\t\t\t\tOpaHost:                         pulumi.String(\"...my_opa_host...\"),\n\t\t\t\tOpaPath:                         pulumi.String(\"...my_opa_path...\"),\n\t\t\t\tOpaPort:                         pulumi.Float64(43549),\n\t\t\t\tOpaProtocol:                     pulumi.String(\"https\"),\n\t\t\t\tSslVerify:                       pulumi.Bool(false),\n\t\t\t},\n\t\t\tControlPlaneId:     pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tCreatedAt:          pulumi.Float64(0),\n\t\t\tEnabled:            pulumi.Bool(true),\n\t\t\tGatewayPluginOpaId: pulumi.String(\"...my_id...\"),\n\t\t\tInstanceName:       pulumi.String(\"...my_instance_name...\"),\n\t\t\tOrdering: \u0026konnect.GatewayPluginOpaOrderingArgs{\n\t\t\t\tAfter: \u0026konnect.GatewayPluginOpaOrderingAfterArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tBefore: \u0026konnect.GatewayPluginOpaOrderingBeforeArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tPartials: konnect.GatewayPluginOpaPartialArray{\n\t\t\t\t\u0026konnect.GatewayPluginOpaPartialArgs{\n\t\t\t\t\tId:   pulumi.String(\"...my_id...\"),\n\t\t\t\t\tName: pulumi.String(\"...my_name...\"),\n\t\t\t\t\tPath: pulumi.String(\"...my_path...\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tProtocols: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"grpcs\"),\n\t\t\t},\n\t\t\tRoute: \u0026konnect.GatewayPluginOpaRouteArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tService: \u0026konnect.GatewayPluginOpaServiceArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"...\"),\n\t\t\t},\n\t\t\tUpdatedAt: pulumi.Float64(9),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.GatewayPluginOpa;\nimport com.pulumi.konnect.GatewayPluginOpaArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginOpaConfigArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginOpaOrderingArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginOpaOrderingAfterArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginOpaOrderingBeforeArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginOpaPartialArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginOpaRouteArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginOpaServiceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myGatewaypluginopa = new GatewayPluginOpa(\"myGatewaypluginopa\", GatewayPluginOpaArgs.builder()\n            .config(GatewayPluginOpaConfigArgs.builder()\n                .includeBodyInOpaInput(true)\n                .includeConsumerInOpaInput(true)\n                .includeParsedJsonBodyInOpaInput(true)\n                .includeRouteInOpaInput(false)\n                .includeServiceInOpaInput(true)\n                .includeUriCapturesInOpaInput(false)\n                .opaHost(\"...my_opa_host...\")\n                .opaPath(\"...my_opa_path...\")\n                .opaPort(43549.0)\n                .opaProtocol(\"https\")\n                .sslVerify(false)\n                .build())\n            .controlPlaneId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .createdAt(0.0)\n            .enabled(true)\n            .gatewayPluginOpaId(\"...my_id...\")\n            .instanceName(\"...my_instance_name...\")\n            .ordering(GatewayPluginOpaOrderingArgs.builder()\n                .after(GatewayPluginOpaOrderingAfterArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .before(GatewayPluginOpaOrderingBeforeArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .build())\n            .partials(GatewayPluginOpaPartialArgs.builder()\n                .id(\"...my_id...\")\n                .name(\"...my_name...\")\n                .path(\"...my_path...\")\n                .build())\n            .protocols(\"grpcs\")\n            .route(GatewayPluginOpaRouteArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .service(GatewayPluginOpaServiceArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .tags(\"...\")\n            .updatedAt(9.0)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myGatewaypluginopa:\n    type: konnect:GatewayPluginOpa\n    name: my_gatewaypluginopa\n    properties:\n      config:\n        includeBodyInOpaInput: true\n        includeConsumerInOpaInput: true\n        includeParsedJsonBodyInOpaInput: true\n        includeRouteInOpaInput: false\n        includeServiceInOpaInput: true\n        includeUriCapturesInOpaInput: false\n        opaHost: '...my_opa_host...'\n        opaPath: '...my_opa_path...'\n        opaPort: 43549\n        opaProtocol: https\n        sslVerify: false\n      controlPlaneId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      createdAt: 0\n      enabled: true\n      gatewayPluginOpaId: '...my_id...'\n      instanceName: '...my_instance_name...'\n      ordering:\n        after:\n          accesses:\n            - '...'\n        before:\n          accesses:\n            - '...'\n      partials:\n        - id: '...my_id...'\n          name: '...my_name...'\n          path: '...my_path...'\n      protocols:\n        - grpcs\n      route:\n        id: '...my_id...'\n      service:\n        id: '...my_id...'\n      tags:\n        - '...'\n      updatedAt: 9\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_gateway_plugin_opa.my_konnect_gateway_plugin_opa\n\n  id = jsonencode({\n\n    control_plane_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/gatewayPluginOpa:GatewayPluginOpa my_konnect_gateway_plugin_opa '{\"control_plane_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"}'\n```\n\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginOpaConfig:GatewayPluginOpaConfig"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginOpaId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginOpaOrdering:GatewayPluginOpaOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginOpaPartial:GatewayPluginOpaPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginOpaRoute:GatewayPluginOpaRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginOpaService:GatewayPluginOpaService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object","required":["config","controlPlaneId","createdAt","enabled","gatewayPluginOpaId","ordering","protocols","route","service","updatedAt"],"inputProperties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginOpaConfig:GatewayPluginOpaConfig"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginOpaId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginOpaOrdering:GatewayPluginOpaOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginOpaPartial:GatewayPluginOpaPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginOpaRoute:GatewayPluginOpaRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginOpaService:GatewayPluginOpaService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"requiredInputs":["config","controlPlaneId"],"stateInputs":{"description":"Input properties used for looking up and filtering GatewayPluginOpa resources.\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginOpaConfig:GatewayPluginOpaConfig"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginOpaId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginOpaOrdering:GatewayPluginOpaOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginOpaPartial:GatewayPluginOpaPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginOpaRoute:GatewayPluginOpaRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginOpaService:GatewayPluginOpaService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object"}},"konnect:index/gatewayPluginOpenidConnect:GatewayPluginOpenidConnect":{"description":"GatewayPluginOpenidConnect Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myGatewaypluginopenidconnect = new konnect.GatewayPluginOpenidConnect(\"my_gatewaypluginopenidconnect\", {\n    config: {\n        anonymous: \"...my_anonymous...\",\n        audiences: [\"...\"],\n        audienceClaims: [\"...\"],\n        audienceRequireds: [\"...\"],\n        authMethods: [\"userinfo\"],\n        authenticatedGroupsClaims: [\"...\"],\n        authorizationCookieDomain: \"...my_authorization_cookie_domain...\",\n        authorizationCookieHttpOnly: false,\n        authorizationCookieName: \"...my_authorization_cookie_name...\",\n        authorizationCookiePath: \"...my_authorization_cookie_path...\",\n        authorizationCookieSameSite: \"Strict\",\n        authorizationCookieSecure: false,\n        authorizationEndpoint: \"...my_authorization_endpoint...\",\n        authorizationQueryArgsClients: [\"...\"],\n        authorizationQueryArgsNames: [\"...\"],\n        authorizationQueryArgsValues: [\"...\"],\n        authorizationRollingTimeout: 1.26,\n        bearerTokenCookieName: \"...my_bearer_token_cookie_name...\",\n        bearerTokenParamTypes: [\"body\"],\n        byUsernameIgnoreCase: false,\n        cacheIntrospection: true,\n        cacheTokenExchange: false,\n        cacheTokens: false,\n        cacheTokensSalt: \"...my_cache_tokens_salt...\",\n        cacheTtl: 4.51,\n        cacheTtlMax: 8.18,\n        cacheTtlMin: 0.48,\n        cacheTtlNeg: 5.85,\n        cacheTtlResurrect: 0.5,\n        cacheUserInfo: false,\n        claimsForbiddens: [\"...\"],\n        clientAlgs: [\"HS384\"],\n        clientArg: \"...my_client_arg...\",\n        clientAuths: [\"client_secret_post\"],\n        clientCredentialsParamTypes: [\"query\"],\n        clientIds: [\"...\"],\n        clientJwks: [{\n            alg: \"...my_alg...\",\n            crv: \"...my_crv...\",\n            d: \"...my_d...\",\n            dp: \"...my_dp...\",\n            dq: \"...my_dq...\",\n            e: \"...my_e...\",\n            issuer: \"...my_issuer...\",\n            k: \"...my_k...\",\n            keyOps: [\"...\"],\n            kid: \"...my_kid...\",\n            kty: \"...my_kty...\",\n            n: \"...my_n...\",\n            oth: \"...my_oth...\",\n            p: \"...my_p...\",\n            q: \"...my_q...\",\n            qi: \"...my_qi...\",\n            r: \"...my_r...\",\n            t: \"...my_t...\",\n            use: \"...my_use...\",\n            x: \"...my_x...\",\n            x5cs: [\"...\"],\n            x5t: \"...my_x5t...\",\n            x5tNumberS256: \"...my_x5t_number_s256...\",\n            x5u: \"...my_x5u...\",\n            y: \"...my_y...\",\n        }],\n        clientSecrets: [\"...\"],\n        clusterCacheRedis: {\n            cloudAuthentication: {\n                authProvider: \"azure\",\n                awsAccessKeyId: \"...my_aws_access_key_id...\",\n                awsAssumeRoleArn: \"...my_aws_assume_role_arn...\",\n                awsCacheName: \"...my_aws_cache_name...\",\n                awsIsServerless: false,\n                awsRegion: \"...my_aws_region...\",\n                awsRoleSessionName: \"...my_aws_role_session_name...\",\n                awsSecretAccessKey: \"...my_aws_secret_access_key...\",\n                azureClientId: \"...my_azure_client_id...\",\n                azureClientSecret: \"...my_azure_client_secret...\",\n                azureTenantId: \"...my_azure_tenant_id...\",\n                gcpServiceAccountJson: \"...my_gcp_service_account_json...\",\n            },\n            clusterMaxRedirections: 5,\n            clusterNodes: [{\n                ip: \"...my_ip...\",\n                port: 39126,\n            }],\n            connectTimeout: 1007376275,\n            connectionIsProxied: false,\n            database: 6,\n            host: \"...my_host...\",\n            keepaliveBacklog: 513691764,\n            keepalivePoolSize: 742855137,\n            password: \"...my_password...\",\n            port: 25288,\n            readTimeout: 1652724306,\n            sendTimeout: 24704322,\n            sentinelMaster: \"...my_sentinel_master...\",\n            sentinelNodes: [{\n                host: \"...my_host...\",\n                port: 5690,\n            }],\n            sentinelPassword: \"...my_sentinel_password...\",\n            sentinelRole: \"any\",\n            sentinelUsername: \"...my_sentinel_username...\",\n            serverName: \"...my_server_name...\",\n            ssl: true,\n            sslVerify: true,\n            username: \"...my_username...\",\n        },\n        clusterCacheStrategy: \"off\",\n        consumerBies: [\"id\"],\n        consumerClaims: [\"...\"],\n        consumerGroupsClaims: [\"...\"],\n        consumerGroupsOptional: true,\n        consumerOptional: true,\n        credentialClaims: [\"...\"],\n        disableSessions: [\"bearer\"],\n        discoveryHeadersNames: [\"...\"],\n        discoveryHeadersValues: [\"...\"],\n        displayErrors: false,\n        domains: [\"...\"],\n        downstreamAccessTokenHeader: \"...my_downstream_access_token_header...\",\n        downstreamAccessTokenJwkHeader: \"...my_downstream_access_token_jwk_header...\",\n        downstreamHeadersClaims: [\"...\"],\n        downstreamHeadersNames: [\"...\"],\n        downstreamIdTokenHeader: \"...my_downstream_id_token_header...\",\n        downstreamIdTokenJwkHeader: \"...my_downstream_id_token_jwk_header...\",\n        downstreamIntrospectionHeader: \"...my_downstream_introspection_header...\",\n        downstreamIntrospectionJwtHeader: \"...my_downstream_introspection_jwt_header...\",\n        downstreamRefreshTokenHeader: \"...my_downstream_refresh_token_header...\",\n        downstreamSessionIdHeader: \"...my_downstream_session_id_header...\",\n        downstreamUserInfoHeader: \"...my_downstream_user_info_header...\",\n        downstreamUserInfoJwtHeader: \"...my_downstream_user_info_jwt_header...\",\n        dpopProofLifetime: 9.34,\n        dpopUseNonce: true,\n        enableHsSignatures: true,\n        endSessionEndpoint: \"...my_end_session_endpoint...\",\n        exposeErrorCode: false,\n        extraJwksUris: [\"...\"],\n        forbiddenDestroySession: false,\n        forbiddenErrorMessage: \"...my_forbidden_error_message...\",\n        forbiddenRedirectUris: [\"...\"],\n        groupsClaims: [\"...\"],\n        groupsRequireds: [\"...\"],\n        hideCredentials: true,\n        httpProxy: \"...my_http_proxy...\",\n        httpProxyAuthorization: \"...my_http_proxy_authorization...\",\n        httpVersion: 2.54,\n        httpsProxy: \"...my_https_proxy...\",\n        httpsProxyAuthorization: \"...my_https_proxy_authorization...\",\n        idTokenParamName: \"...my_id_token_param_name...\",\n        idTokenParamTypes: [\"query\"],\n        ignoreSignatures: [\"refresh_token\"],\n        introspectJwtTokens: true,\n        introspectionAccept: \"application/json\",\n        introspectionCheckActive: false,\n        introspectionEndpoint: \"...my_introspection_endpoint...\",\n        introspectionEndpointAuthMethod: \"client_secret_basic\",\n        introspectionHeadersClients: [\"...\"],\n        introspectionHeadersNames: [\"...\"],\n        introspectionHeadersValues: [\"...\"],\n        introspectionHint: \"...my_introspection_hint...\",\n        introspectionPostArgsClients: [\"...\"],\n        introspectionPostArgsClientHeaders: [\"...\"],\n        introspectionPostArgsNames: [\"...\"],\n        introspectionPostArgsValues: [\"...\"],\n        introspectionTokenParamName: \"...my_introspection_token_param_name...\",\n        issuer: \"...my_issuer...\",\n        issuersAlloweds: [\"...\"],\n        jwtSessionClaim: \"...my_jwt_session_claim...\",\n        jwtSessionCookie: \"...my_jwt_session_cookie...\",\n        keepalive: true,\n        leeway: 4.43,\n        loginAction: \"redirect\",\n        loginMethods: [\"authorization_code\"],\n        loginRedirectMode: \"query\",\n        loginRedirectUris: [\"...\"],\n        loginTokens: [\"refresh_token\"],\n        logoutMethods: [\"GET\"],\n        logoutPostArg: \"...my_logout_post_arg...\",\n        logoutQueryArg: \"...my_logout_query_arg...\",\n        logoutRedirectUris: [\"...\"],\n        logoutRevoke: true,\n        logoutRevokeAccessToken: false,\n        logoutRevokeRefreshToken: false,\n        logoutUriSuffix: \"...my_logout_uri_suffix...\",\n        maxAge: 0.81,\n        mtlsIntrospectionEndpoint: \"...my_mtls_introspection_endpoint...\",\n        mtlsRevocationEndpoint: \"...my_mtls_revocation_endpoint...\",\n        mtlsTokenEndpoint: \"...my_mtls_token_endpoint...\",\n        noProxy: \"...my_no_proxy...\",\n        passwordParamTypes: [\"body\"],\n        preserveQueryArgs: true,\n        proofOfPossessionAuthMethodsValidation: true,\n        proofOfPossessionDpop: \"optional\",\n        proofOfPossessionMtls: \"off\",\n        pushedAuthorizationRequestEndpoint: \"...my_pushed_authorization_request_endpoint...\",\n        pushedAuthorizationRequestEndpointAuthMethod: \"tls_client_auth\",\n        redirectUris: [\"...\"],\n        redis: {\n            cloudAuthentication: {\n                authProvider: \"gcp\",\n                awsAccessKeyId: \"...my_aws_access_key_id...\",\n                awsAssumeRoleArn: \"...my_aws_assume_role_arn...\",\n                awsCacheName: \"...my_aws_cache_name...\",\n                awsIsServerless: false,\n                awsRegion: \"...my_aws_region...\",\n                awsRoleSessionName: \"...my_aws_role_session_name...\",\n                awsSecretAccessKey: \"...my_aws_secret_access_key...\",\n                azureClientId: \"...my_azure_client_id...\",\n                azureClientSecret: \"...my_azure_client_secret...\",\n                azureTenantId: \"...my_azure_tenant_id...\",\n                gcpServiceAccountJson: \"...my_gcp_service_account_json...\",\n            },\n            clusterMaxRedirections: 9,\n            clusterNodes: [{\n                ip: \"...my_ip...\",\n                port: 55819,\n            }],\n            connectTimeout: 829309575,\n            connectionIsProxied: true,\n            database: 2,\n            host: \"...my_host...\",\n            keepaliveBacklog: 1420640006,\n            keepalivePoolSize: 147781497,\n            password: \"...my_password...\",\n            port: 20220,\n            prefix: \"...my_prefix...\",\n            readTimeout: 2120279470,\n            sendTimeout: 523577252,\n            sentinelMaster: \"...my_sentinel_master...\",\n            sentinelNodes: [{\n                host: \"...my_host...\",\n                port: 58352,\n            }],\n            sentinelPassword: \"...my_sentinel_password...\",\n            sentinelRole: \"slave\",\n            sentinelUsername: \"...my_sentinel_username...\",\n            serverName: \"...my_server_name...\",\n            socket: \"...my_socket...\",\n            ssl: true,\n            sslVerify: true,\n            username: \"...my_username...\",\n        },\n        rediscoveryLifetime: 0.82,\n        refreshTokenParamName: \"...my_refresh_token_param_name...\",\n        refreshTokenParamTypes: [\"header\"],\n        refreshTokens: true,\n        requireProofKeyForCodeExchange: true,\n        requirePushedAuthorizationRequests: true,\n        requireSignedRequestObject: false,\n        resolveDistributedClaims: true,\n        responseMode: \"fragment.jwt\",\n        responseTypes: [\"...\"],\n        reverify: false,\n        revocationEndpoint: \"...my_revocation_endpoint...\",\n        revocationEndpointAuthMethod: \"tls_client_auth\",\n        revocationTokenParamName: \"...my_revocation_token_param_name...\",\n        rolesClaims: [\"...\"],\n        rolesRequireds: [\"...\"],\n        runOnPreflight: true,\n        scopes: [\"...\"],\n        scopesClaims: [\"...\"],\n        scopesRequireds: [\"...\"],\n        searchUserInfo: false,\n        sessionAbsoluteTimeout: 6.27,\n        sessionAudience: \"...my_session_audience...\",\n        sessionBinds: [\"scheme\"],\n        sessionCookieDomain: \"...my_session_cookie_domain...\",\n        sessionCookieHttpOnly: false,\n        sessionCookieName: \"...my_session_cookie_name...\",\n        sessionCookiePath: \"...my_session_cookie_path...\",\n        sessionCookieSameSite: \"Default\",\n        sessionCookieSecure: true,\n        sessionEnforceSameSubject: false,\n        sessionHashStorageKey: false,\n        sessionHashSubject: false,\n        sessionIdlingTimeout: 9.33,\n        sessionMemcachedHost: \"...my_session_memcached_host...\",\n        sessionMemcachedPort: 10230,\n        sessionMemcachedPrefix: \"...my_session_memcached_prefix...\",\n        sessionMemcachedSocket: \"...my_session_memcached_socket...\",\n        sessionMemcachedSsl: true,\n        sessionMemcachedSslVerify: false,\n        sessionRemember: false,\n        sessionRememberAbsoluteTimeout: 6.89,\n        sessionRememberCookieName: \"...my_session_remember_cookie_name...\",\n        sessionRememberRollingTimeout: 2.91,\n        sessionRequestHeaders: [\"audience\"],\n        sessionResponseHeaders: [\"absolute-timeout\"],\n        sessionRollingTimeout: 5.68,\n        sessionSecret: \"...my_session_secret...\",\n        sessionStorage: \"memcache\",\n        sessionStoreMetadata: true,\n        sslVerify: true,\n        timeout: 0.75,\n        tlsClientAuthCertId: \"...my_tls_client_auth_cert_id...\",\n        tlsClientAuthSslVerify: false,\n        tokenCacheKeyIncludeScope: true,\n        tokenEndpoint: \"...my_token_endpoint...\",\n        tokenEndpointAuthMethod: \"client_secret_post\",\n        tokenExchangeEndpoint: \"...my_token_exchange_endpoint...\",\n        tokenHeadersClients: [\"...\"],\n        tokenHeadersGrants: [\"client_credentials\"],\n        tokenHeadersNames: [\"...\"],\n        tokenHeadersPrefix: \"...my_token_headers_prefix...\",\n        tokenHeadersReplays: [\"...\"],\n        tokenHeadersValues: [\"...\"],\n        tokenPostArgsClients: [\"...\"],\n        tokenPostArgsNames: [\"...\"],\n        tokenPostArgsValues: [\"...\"],\n        unauthorizedDestroySession: false,\n        unauthorizedErrorMessage: \"...my_unauthorized_error_message...\",\n        unauthorizedRedirectUris: [\"...\"],\n        unexpectedRedirectUris: [\"...\"],\n        upstreamAccessTokenHeader: \"...my_upstream_access_token_header...\",\n        upstreamAccessTokenJwkHeader: \"...my_upstream_access_token_jwk_header...\",\n        upstreamHeadersClaims: [\"...\"],\n        upstreamHeadersNames: [\"...\"],\n        upstreamIdTokenHeader: \"...my_upstream_id_token_header...\",\n        upstreamIdTokenJwkHeader: \"...my_upstream_id_token_jwk_header...\",\n        upstreamIntrospectionHeader: \"...my_upstream_introspection_header...\",\n        upstreamIntrospectionJwtHeader: \"...my_upstream_introspection_jwt_header...\",\n        upstreamRefreshTokenHeader: \"...my_upstream_refresh_token_header...\",\n        upstreamSessionIdHeader: \"...my_upstream_session_id_header...\",\n        upstreamUserInfoHeader: \"...my_upstream_user_info_header...\",\n        upstreamUserInfoJwtHeader: \"...my_upstream_user_info_jwt_header...\",\n        userinfoAccept: \"application/json\",\n        userinfoEndpoint: \"...my_userinfo_endpoint...\",\n        userinfoHeadersClients: [\"...\"],\n        userinfoHeadersNames: [\"...\"],\n        userinfoHeadersValues: [\"...\"],\n        userinfoQueryArgsClients: [\"...\"],\n        userinfoQueryArgsNames: [\"...\"],\n        userinfoQueryArgsValues: [\"...\"],\n        usingPseudoIssuer: true,\n        verifyClaims: true,\n        verifyNonce: false,\n        verifyParameters: true,\n        verifySignature: false,\n    },\n    controlPlaneId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    createdAt: 7,\n    enabled: true,\n    gatewayPluginOpenidConnectId: \"...my_id...\",\n    instanceName: \"...my_instance_name...\",\n    ordering: {\n        after: {\n            accesses: [\"...\"],\n        },\n        before: {\n            accesses: [\"...\"],\n        },\n    },\n    partials: [{\n        id: \"...my_id...\",\n        name: \"...my_name...\",\n        path: \"...my_path...\",\n    }],\n    protocols: [\"http\"],\n    route: {\n        id: \"...my_id...\",\n    },\n    service: {\n        id: \"...my_id...\",\n    },\n    tags: [\"...\"],\n    updatedAt: 2,\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_gatewaypluginopenidconnect = konnect.GatewayPluginOpenidConnect(\"my_gatewaypluginopenidconnect\",\n    config={\n        \"anonymous\": \"...my_anonymous...\",\n        \"audiences\": [\"...\"],\n        \"audience_claims\": [\"...\"],\n        \"audience_requireds\": [\"...\"],\n        \"auth_methods\": [\"userinfo\"],\n        \"authenticated_groups_claims\": [\"...\"],\n        \"authorization_cookie_domain\": \"...my_authorization_cookie_domain...\",\n        \"authorization_cookie_http_only\": False,\n        \"authorization_cookie_name\": \"...my_authorization_cookie_name...\",\n        \"authorization_cookie_path\": \"...my_authorization_cookie_path...\",\n        \"authorization_cookie_same_site\": \"Strict\",\n        \"authorization_cookie_secure\": False,\n        \"authorization_endpoint\": \"...my_authorization_endpoint...\",\n        \"authorization_query_args_clients\": [\"...\"],\n        \"authorization_query_args_names\": [\"...\"],\n        \"authorization_query_args_values\": [\"...\"],\n        \"authorization_rolling_timeout\": 1.26,\n        \"bearer_token_cookie_name\": \"...my_bearer_token_cookie_name...\",\n        \"bearer_token_param_types\": [\"body\"],\n        \"by_username_ignore_case\": False,\n        \"cache_introspection\": True,\n        \"cache_token_exchange\": False,\n        \"cache_tokens\": False,\n        \"cache_tokens_salt\": \"...my_cache_tokens_salt...\",\n        \"cache_ttl\": 4.51,\n        \"cache_ttl_max\": 8.18,\n        \"cache_ttl_min\": 0.48,\n        \"cache_ttl_neg\": 5.85,\n        \"cache_ttl_resurrect\": 0.5,\n        \"cache_user_info\": False,\n        \"claims_forbiddens\": [\"...\"],\n        \"client_algs\": [\"HS384\"],\n        \"client_arg\": \"...my_client_arg...\",\n        \"client_auths\": [\"client_secret_post\"],\n        \"client_credentials_param_types\": [\"query\"],\n        \"client_ids\": [\"...\"],\n        \"client_jwks\": [{\n            \"alg\": \"...my_alg...\",\n            \"crv\": \"...my_crv...\",\n            \"d\": \"...my_d...\",\n            \"dp\": \"...my_dp...\",\n            \"dq\": \"...my_dq...\",\n            \"e\": \"...my_e...\",\n            \"issuer\": \"...my_issuer...\",\n            \"k\": \"...my_k...\",\n            \"key_ops\": [\"...\"],\n            \"kid\": \"...my_kid...\",\n            \"kty\": \"...my_kty...\",\n            \"n\": \"...my_n...\",\n            \"oth\": \"...my_oth...\",\n            \"p\": \"...my_p...\",\n            \"q\": \"...my_q...\",\n            \"qi\": \"...my_qi...\",\n            \"r\": \"...my_r...\",\n            \"t\": \"...my_t...\",\n            \"use\": \"...my_use...\",\n            \"x\": \"...my_x...\",\n            \"x5cs\": [\"...\"],\n            \"x5t\": \"...my_x5t...\",\n            \"x5t_number_s256\": \"...my_x5t_number_s256...\",\n            \"x5u\": \"...my_x5u...\",\n            \"y\": \"...my_y...\",\n        }],\n        \"client_secrets\": [\"...\"],\n        \"cluster_cache_redis\": {\n            \"cloud_authentication\": {\n                \"auth_provider\": \"azure\",\n                \"aws_access_key_id\": \"...my_aws_access_key_id...\",\n                \"aws_assume_role_arn\": \"...my_aws_assume_role_arn...\",\n                \"aws_cache_name\": \"...my_aws_cache_name...\",\n                \"aws_is_serverless\": False,\n                \"aws_region\": \"...my_aws_region...\",\n                \"aws_role_session_name\": \"...my_aws_role_session_name...\",\n                \"aws_secret_access_key\": \"...my_aws_secret_access_key...\",\n                \"azure_client_id\": \"...my_azure_client_id...\",\n                \"azure_client_secret\": \"...my_azure_client_secret...\",\n                \"azure_tenant_id\": \"...my_azure_tenant_id...\",\n                \"gcp_service_account_json\": \"...my_gcp_service_account_json...\",\n            },\n            \"cluster_max_redirections\": 5,\n            \"cluster_nodes\": [{\n                \"ip\": \"...my_ip...\",\n                \"port\": 39126,\n            }],\n            \"connect_timeout\": 1007376275,\n            \"connection_is_proxied\": False,\n            \"database\": 6,\n            \"host\": \"...my_host...\",\n            \"keepalive_backlog\": 513691764,\n            \"keepalive_pool_size\": 742855137,\n            \"password\": \"...my_password...\",\n            \"port\": 25288,\n            \"read_timeout\": 1652724306,\n            \"send_timeout\": 24704322,\n            \"sentinel_master\": \"...my_sentinel_master...\",\n            \"sentinel_nodes\": [{\n                \"host\": \"...my_host...\",\n                \"port\": 5690,\n            }],\n            \"sentinel_password\": \"...my_sentinel_password...\",\n            \"sentinel_role\": \"any\",\n            \"sentinel_username\": \"...my_sentinel_username...\",\n            \"server_name\": \"...my_server_name...\",\n            \"ssl\": True,\n            \"ssl_verify\": True,\n            \"username\": \"...my_username...\",\n        },\n        \"cluster_cache_strategy\": \"off\",\n        \"consumer_bies\": [\"id\"],\n        \"consumer_claims\": [\"...\"],\n        \"consumer_groups_claims\": [\"...\"],\n        \"consumer_groups_optional\": True,\n        \"consumer_optional\": True,\n        \"credential_claims\": [\"...\"],\n        \"disable_sessions\": [\"bearer\"],\n        \"discovery_headers_names\": [\"...\"],\n        \"discovery_headers_values\": [\"...\"],\n        \"display_errors\": False,\n        \"domains\": [\"...\"],\n        \"downstream_access_token_header\": \"...my_downstream_access_token_header...\",\n        \"downstream_access_token_jwk_header\": \"...my_downstream_access_token_jwk_header...\",\n        \"downstream_headers_claims\": [\"...\"],\n        \"downstream_headers_names\": [\"...\"],\n        \"downstream_id_token_header\": \"...my_downstream_id_token_header...\",\n        \"downstream_id_token_jwk_header\": \"...my_downstream_id_token_jwk_header...\",\n        \"downstream_introspection_header\": \"...my_downstream_introspection_header...\",\n        \"downstream_introspection_jwt_header\": \"...my_downstream_introspection_jwt_header...\",\n        \"downstream_refresh_token_header\": \"...my_downstream_refresh_token_header...\",\n        \"downstream_session_id_header\": \"...my_downstream_session_id_header...\",\n        \"downstream_user_info_header\": \"...my_downstream_user_info_header...\",\n        \"downstream_user_info_jwt_header\": \"...my_downstream_user_info_jwt_header...\",\n        \"dpop_proof_lifetime\": 9.34,\n        \"dpop_use_nonce\": True,\n        \"enable_hs_signatures\": True,\n        \"end_session_endpoint\": \"...my_end_session_endpoint...\",\n        \"expose_error_code\": False,\n        \"extra_jwks_uris\": [\"...\"],\n        \"forbidden_destroy_session\": False,\n        \"forbidden_error_message\": \"...my_forbidden_error_message...\",\n        \"forbidden_redirect_uris\": [\"...\"],\n        \"groups_claims\": [\"...\"],\n        \"groups_requireds\": [\"...\"],\n        \"hide_credentials\": True,\n        \"http_proxy\": \"...my_http_proxy...\",\n        \"http_proxy_authorization\": \"...my_http_proxy_authorization...\",\n        \"http_version\": 2.54,\n        \"https_proxy\": \"...my_https_proxy...\",\n        \"https_proxy_authorization\": \"...my_https_proxy_authorization...\",\n        \"id_token_param_name\": \"...my_id_token_param_name...\",\n        \"id_token_param_types\": [\"query\"],\n        \"ignore_signatures\": [\"refresh_token\"],\n        \"introspect_jwt_tokens\": True,\n        \"introspection_accept\": \"application/json\",\n        \"introspection_check_active\": False,\n        \"introspection_endpoint\": \"...my_introspection_endpoint...\",\n        \"introspection_endpoint_auth_method\": \"client_secret_basic\",\n        \"introspection_headers_clients\": [\"...\"],\n        \"introspection_headers_names\": [\"...\"],\n        \"introspection_headers_values\": [\"...\"],\n        \"introspection_hint\": \"...my_introspection_hint...\",\n        \"introspection_post_args_clients\": [\"...\"],\n        \"introspection_post_args_client_headers\": [\"...\"],\n        \"introspection_post_args_names\": [\"...\"],\n        \"introspection_post_args_values\": [\"...\"],\n        \"introspection_token_param_name\": \"...my_introspection_token_param_name...\",\n        \"issuer\": \"...my_issuer...\",\n        \"issuers_alloweds\": [\"...\"],\n        \"jwt_session_claim\": \"...my_jwt_session_claim...\",\n        \"jwt_session_cookie\": \"...my_jwt_session_cookie...\",\n        \"keepalive\": True,\n        \"leeway\": 4.43,\n        \"login_action\": \"redirect\",\n        \"login_methods\": [\"authorization_code\"],\n        \"login_redirect_mode\": \"query\",\n        \"login_redirect_uris\": [\"...\"],\n        \"login_tokens\": [\"refresh_token\"],\n        \"logout_methods\": [\"GET\"],\n        \"logout_post_arg\": \"...my_logout_post_arg...\",\n        \"logout_query_arg\": \"...my_logout_query_arg...\",\n        \"logout_redirect_uris\": [\"...\"],\n        \"logout_revoke\": True,\n        \"logout_revoke_access_token\": False,\n        \"logout_revoke_refresh_token\": False,\n        \"logout_uri_suffix\": \"...my_logout_uri_suffix...\",\n        \"max_age\": 0.81,\n        \"mtls_introspection_endpoint\": \"...my_mtls_introspection_endpoint...\",\n        \"mtls_revocation_endpoint\": \"...my_mtls_revocation_endpoint...\",\n        \"mtls_token_endpoint\": \"...my_mtls_token_endpoint...\",\n        \"no_proxy\": \"...my_no_proxy...\",\n        \"password_param_types\": [\"body\"],\n        \"preserve_query_args\": True,\n        \"proof_of_possession_auth_methods_validation\": True,\n        \"proof_of_possession_dpop\": \"optional\",\n        \"proof_of_possession_mtls\": \"off\",\n        \"pushed_authorization_request_endpoint\": \"...my_pushed_authorization_request_endpoint...\",\n        \"pushed_authorization_request_endpoint_auth_method\": \"tls_client_auth\",\n        \"redirect_uris\": [\"...\"],\n        \"redis\": {\n            \"cloud_authentication\": {\n                \"auth_provider\": \"gcp\",\n                \"aws_access_key_id\": \"...my_aws_access_key_id...\",\n                \"aws_assume_role_arn\": \"...my_aws_assume_role_arn...\",\n                \"aws_cache_name\": \"...my_aws_cache_name...\",\n                \"aws_is_serverless\": False,\n                \"aws_region\": \"...my_aws_region...\",\n                \"aws_role_session_name\": \"...my_aws_role_session_name...\",\n                \"aws_secret_access_key\": \"...my_aws_secret_access_key...\",\n                \"azure_client_id\": \"...my_azure_client_id...\",\n                \"azure_client_secret\": \"...my_azure_client_secret...\",\n                \"azure_tenant_id\": \"...my_azure_tenant_id...\",\n                \"gcp_service_account_json\": \"...my_gcp_service_account_json...\",\n            },\n            \"cluster_max_redirections\": 9,\n            \"cluster_nodes\": [{\n                \"ip\": \"...my_ip...\",\n                \"port\": 55819,\n            }],\n            \"connect_timeout\": 829309575,\n            \"connection_is_proxied\": True,\n            \"database\": 2,\n            \"host\": \"...my_host...\",\n            \"keepalive_backlog\": 1420640006,\n            \"keepalive_pool_size\": 147781497,\n            \"password\": \"...my_password...\",\n            \"port\": 20220,\n            \"prefix\": \"...my_prefix...\",\n            \"read_timeout\": 2120279470,\n            \"send_timeout\": 523577252,\n            \"sentinel_master\": \"...my_sentinel_master...\",\n            \"sentinel_nodes\": [{\n                \"host\": \"...my_host...\",\n                \"port\": 58352,\n            }],\n            \"sentinel_password\": \"...my_sentinel_password...\",\n            \"sentinel_role\": \"slave\",\n            \"sentinel_username\": \"...my_sentinel_username...\",\n            \"server_name\": \"...my_server_name...\",\n            \"socket\": \"...my_socket...\",\n            \"ssl\": True,\n            \"ssl_verify\": True,\n            \"username\": \"...my_username...\",\n        },\n        \"rediscovery_lifetime\": 0.82,\n        \"refresh_token_param_name\": \"...my_refresh_token_param_name...\",\n        \"refresh_token_param_types\": [\"header\"],\n        \"refresh_tokens\": True,\n        \"require_proof_key_for_code_exchange\": True,\n        \"require_pushed_authorization_requests\": True,\n        \"require_signed_request_object\": False,\n        \"resolve_distributed_claims\": True,\n        \"response_mode\": \"fragment.jwt\",\n        \"response_types\": [\"...\"],\n        \"reverify\": False,\n        \"revocation_endpoint\": \"...my_revocation_endpoint...\",\n        \"revocation_endpoint_auth_method\": \"tls_client_auth\",\n        \"revocation_token_param_name\": \"...my_revocation_token_param_name...\",\n        \"roles_claims\": [\"...\"],\n        \"roles_requireds\": [\"...\"],\n        \"run_on_preflight\": True,\n        \"scopes\": [\"...\"],\n        \"scopes_claims\": [\"...\"],\n        \"scopes_requireds\": [\"...\"],\n        \"search_user_info\": False,\n        \"session_absolute_timeout\": 6.27,\n        \"session_audience\": \"...my_session_audience...\",\n        \"session_binds\": [\"scheme\"],\n        \"session_cookie_domain\": \"...my_session_cookie_domain...\",\n        \"session_cookie_http_only\": False,\n        \"session_cookie_name\": \"...my_session_cookie_name...\",\n        \"session_cookie_path\": \"...my_session_cookie_path...\",\n        \"session_cookie_same_site\": \"Default\",\n        \"session_cookie_secure\": True,\n        \"session_enforce_same_subject\": False,\n        \"session_hash_storage_key\": False,\n        \"session_hash_subject\": False,\n        \"session_idling_timeout\": 9.33,\n        \"session_memcached_host\": \"...my_session_memcached_host...\",\n        \"session_memcached_port\": 10230,\n        \"session_memcached_prefix\": \"...my_session_memcached_prefix...\",\n        \"session_memcached_socket\": \"...my_session_memcached_socket...\",\n        \"session_memcached_ssl\": True,\n        \"session_memcached_ssl_verify\": False,\n        \"session_remember\": False,\n        \"session_remember_absolute_timeout\": 6.89,\n        \"session_remember_cookie_name\": \"...my_session_remember_cookie_name...\",\n        \"session_remember_rolling_timeout\": 2.91,\n        \"session_request_headers\": [\"audience\"],\n        \"session_response_headers\": [\"absolute-timeout\"],\n        \"session_rolling_timeout\": 5.68,\n        \"session_secret\": \"...my_session_secret...\",\n        \"session_storage\": \"memcache\",\n        \"session_store_metadata\": True,\n        \"ssl_verify\": True,\n        \"timeout\": 0.75,\n        \"tls_client_auth_cert_id\": \"...my_tls_client_auth_cert_id...\",\n        \"tls_client_auth_ssl_verify\": False,\n        \"token_cache_key_include_scope\": True,\n        \"token_endpoint\": \"...my_token_endpoint...\",\n        \"token_endpoint_auth_method\": \"client_secret_post\",\n        \"token_exchange_endpoint\": \"...my_token_exchange_endpoint...\",\n        \"token_headers_clients\": [\"...\"],\n        \"token_headers_grants\": [\"client_credentials\"],\n        \"token_headers_names\": [\"...\"],\n        \"token_headers_prefix\": \"...my_token_headers_prefix...\",\n        \"token_headers_replays\": [\"...\"],\n        \"token_headers_values\": [\"...\"],\n        \"token_post_args_clients\": [\"...\"],\n        \"token_post_args_names\": [\"...\"],\n        \"token_post_args_values\": [\"...\"],\n        \"unauthorized_destroy_session\": False,\n        \"unauthorized_error_message\": \"...my_unauthorized_error_message...\",\n        \"unauthorized_redirect_uris\": [\"...\"],\n        \"unexpected_redirect_uris\": [\"...\"],\n        \"upstream_access_token_header\": \"...my_upstream_access_token_header...\",\n        \"upstream_access_token_jwk_header\": \"...my_upstream_access_token_jwk_header...\",\n        \"upstream_headers_claims\": [\"...\"],\n        \"upstream_headers_names\": [\"...\"],\n        \"upstream_id_token_header\": \"...my_upstream_id_token_header...\",\n        \"upstream_id_token_jwk_header\": \"...my_upstream_id_token_jwk_header...\",\n        \"upstream_introspection_header\": \"...my_upstream_introspection_header...\",\n        \"upstream_introspection_jwt_header\": \"...my_upstream_introspection_jwt_header...\",\n        \"upstream_refresh_token_header\": \"...my_upstream_refresh_token_header...\",\n        \"upstream_session_id_header\": \"...my_upstream_session_id_header...\",\n        \"upstream_user_info_header\": \"...my_upstream_user_info_header...\",\n        \"upstream_user_info_jwt_header\": \"...my_upstream_user_info_jwt_header...\",\n        \"userinfo_accept\": \"application/json\",\n        \"userinfo_endpoint\": \"...my_userinfo_endpoint...\",\n        \"userinfo_headers_clients\": [\"...\"],\n        \"userinfo_headers_names\": [\"...\"],\n        \"userinfo_headers_values\": [\"...\"],\n        \"userinfo_query_args_clients\": [\"...\"],\n        \"userinfo_query_args_names\": [\"...\"],\n        \"userinfo_query_args_values\": [\"...\"],\n        \"using_pseudo_issuer\": True,\n        \"verify_claims\": True,\n        \"verify_nonce\": False,\n        \"verify_parameters\": True,\n        \"verify_signature\": False,\n    },\n    control_plane_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    created_at=7,\n    enabled=True,\n    gateway_plugin_openid_connect_id=\"...my_id...\",\n    instance_name=\"...my_instance_name...\",\n    ordering={\n        \"after\": {\n            \"accesses\": [\"...\"],\n        },\n        \"before\": {\n            \"accesses\": [\"...\"],\n        },\n    },\n    partials=[{\n        \"id\": \"...my_id...\",\n        \"name\": \"...my_name...\",\n        \"path\": \"...my_path...\",\n    }],\n    protocols=[\"http\"],\n    route={\n        \"id\": \"...my_id...\",\n    },\n    service={\n        \"id\": \"...my_id...\",\n    },\n    tags=[\"...\"],\n    updated_at=2)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myGatewaypluginopenidconnect = new Konnect.GatewayPluginOpenidConnect(\"my_gatewaypluginopenidconnect\", new()\n    {\n        Config = new Konnect.Inputs.GatewayPluginOpenidConnectConfigArgs\n        {\n            Anonymous = \"...my_anonymous...\",\n            Audiences = new[]\n            {\n                \"...\",\n            },\n            AudienceClaims = new[]\n            {\n                \"...\",\n            },\n            AudienceRequireds = new[]\n            {\n                \"...\",\n            },\n            AuthMethods = new[]\n            {\n                \"userinfo\",\n            },\n            AuthenticatedGroupsClaims = new[]\n            {\n                \"...\",\n            },\n            AuthorizationCookieDomain = \"...my_authorization_cookie_domain...\",\n            AuthorizationCookieHttpOnly = false,\n            AuthorizationCookieName = \"...my_authorization_cookie_name...\",\n            AuthorizationCookiePath = \"...my_authorization_cookie_path...\",\n            AuthorizationCookieSameSite = \"Strict\",\n            AuthorizationCookieSecure = false,\n            AuthorizationEndpoint = \"...my_authorization_endpoint...\",\n            AuthorizationQueryArgsClients = new[]\n            {\n                \"...\",\n            },\n            AuthorizationQueryArgsNames = new[]\n            {\n                \"...\",\n            },\n            AuthorizationQueryArgsValues = new[]\n            {\n                \"...\",\n            },\n            AuthorizationRollingTimeout = 1.26,\n            BearerTokenCookieName = \"...my_bearer_token_cookie_name...\",\n            BearerTokenParamTypes = new[]\n            {\n                \"body\",\n            },\n            ByUsernameIgnoreCase = false,\n            CacheIntrospection = true,\n            CacheTokenExchange = false,\n            CacheTokens = false,\n            CacheTokensSalt = \"...my_cache_tokens_salt...\",\n            CacheTtl = 4.51,\n            CacheTtlMax = 8.18,\n            CacheTtlMin = 0.48,\n            CacheTtlNeg = 5.85,\n            CacheTtlResurrect = 0.5,\n            CacheUserInfo = false,\n            ClaimsForbiddens = new[]\n            {\n                \"...\",\n            },\n            ClientAlgs = new[]\n            {\n                \"HS384\",\n            },\n            ClientArg = \"...my_client_arg...\",\n            ClientAuths = new[]\n            {\n                \"client_secret_post\",\n            },\n            ClientCredentialsParamTypes = new[]\n            {\n                \"query\",\n            },\n            ClientIds = new[]\n            {\n                \"...\",\n            },\n            ClientJwks = new[]\n            {\n                new Konnect.Inputs.GatewayPluginOpenidConnectConfigClientJwkArgs\n                {\n                    Alg = \"...my_alg...\",\n                    Crv = \"...my_crv...\",\n                    D = \"...my_d...\",\n                    Dp = \"...my_dp...\",\n                    Dq = \"...my_dq...\",\n                    E = \"...my_e...\",\n                    Issuer = \"...my_issuer...\",\n                    K = \"...my_k...\",\n                    KeyOps = new[]\n                    {\n                        \"...\",\n                    },\n                    Kid = \"...my_kid...\",\n                    Kty = \"...my_kty...\",\n                    N = \"...my_n...\",\n                    Oth = \"...my_oth...\",\n                    P = \"...my_p...\",\n                    Q = \"...my_q...\",\n                    Qi = \"...my_qi...\",\n                    R = \"...my_r...\",\n                    T = \"...my_t...\",\n                    Use = \"...my_use...\",\n                    X = \"...my_x...\",\n                    X5cs = new[]\n                    {\n                        \"...\",\n                    },\n                    X5t = \"...my_x5t...\",\n                    X5tNumberS256 = \"...my_x5t_number_s256...\",\n                    X5u = \"...my_x5u...\",\n                    Y = \"...my_y...\",\n                },\n            },\n            ClientSecrets = new[]\n            {\n                \"...\",\n            },\n            ClusterCacheRedis = new Konnect.Inputs.GatewayPluginOpenidConnectConfigClusterCacheRedisArgs\n            {\n                CloudAuthentication = new Konnect.Inputs.GatewayPluginOpenidConnectConfigClusterCacheRedisCloudAuthenticationArgs\n                {\n                    AuthProvider = \"azure\",\n                    AwsAccessKeyId = \"...my_aws_access_key_id...\",\n                    AwsAssumeRoleArn = \"...my_aws_assume_role_arn...\",\n                    AwsCacheName = \"...my_aws_cache_name...\",\n                    AwsIsServerless = false,\n                    AwsRegion = \"...my_aws_region...\",\n                    AwsRoleSessionName = \"...my_aws_role_session_name...\",\n                    AwsSecretAccessKey = \"...my_aws_secret_access_key...\",\n                    AzureClientId = \"...my_azure_client_id...\",\n                    AzureClientSecret = \"...my_azure_client_secret...\",\n                    AzureTenantId = \"...my_azure_tenant_id...\",\n                    GcpServiceAccountJson = \"...my_gcp_service_account_json...\",\n                },\n                ClusterMaxRedirections = 5,\n                ClusterNodes = new[]\n                {\n                    new Konnect.Inputs.GatewayPluginOpenidConnectConfigClusterCacheRedisClusterNodeArgs\n                    {\n                        Ip = \"...my_ip...\",\n                        Port = 39126,\n                    },\n                },\n                ConnectTimeout = 1007376275,\n                ConnectionIsProxied = false,\n                Database = 6,\n                Host = \"...my_host...\",\n                KeepaliveBacklog = 513691764,\n                KeepalivePoolSize = 742855137,\n                Password = \"...my_password...\",\n                Port = 25288,\n                ReadTimeout = 1652724306,\n                SendTimeout = 24704322,\n                SentinelMaster = \"...my_sentinel_master...\",\n                SentinelNodes = new[]\n                {\n                    new Konnect.Inputs.GatewayPluginOpenidConnectConfigClusterCacheRedisSentinelNodeArgs\n                    {\n                        Host = \"...my_host...\",\n                        Port = 5690,\n                    },\n                },\n                SentinelPassword = \"...my_sentinel_password...\",\n                SentinelRole = \"any\",\n                SentinelUsername = \"...my_sentinel_username...\",\n                ServerName = \"...my_server_name...\",\n                Ssl = true,\n                SslVerify = true,\n                Username = \"...my_username...\",\n            },\n            ClusterCacheStrategy = \"off\",\n            ConsumerBies = new[]\n            {\n                \"id\",\n            },\n            ConsumerClaims = new[]\n            {\n                \"...\",\n            },\n            ConsumerGroupsClaims = new[]\n            {\n                \"...\",\n            },\n            ConsumerGroupsOptional = true,\n            ConsumerOptional = true,\n            CredentialClaims = new[]\n            {\n                \"...\",\n            },\n            DisableSessions = new[]\n            {\n                \"bearer\",\n            },\n            DiscoveryHeadersNames = new[]\n            {\n                \"...\",\n            },\n            DiscoveryHeadersValues = new[]\n            {\n                \"...\",\n            },\n            DisplayErrors = false,\n            Domains = new[]\n            {\n                \"...\",\n            },\n            DownstreamAccessTokenHeader = \"...my_downstream_access_token_header...\",\n            DownstreamAccessTokenJwkHeader = \"...my_downstream_access_token_jwk_header...\",\n            DownstreamHeadersClaims = new[]\n            {\n                \"...\",\n            },\n            DownstreamHeadersNames = new[]\n            {\n                \"...\",\n            },\n            DownstreamIdTokenHeader = \"...my_downstream_id_token_header...\",\n            DownstreamIdTokenJwkHeader = \"...my_downstream_id_token_jwk_header...\",\n            DownstreamIntrospectionHeader = \"...my_downstream_introspection_header...\",\n            DownstreamIntrospectionJwtHeader = \"...my_downstream_introspection_jwt_header...\",\n            DownstreamRefreshTokenHeader = \"...my_downstream_refresh_token_header...\",\n            DownstreamSessionIdHeader = \"...my_downstream_session_id_header...\",\n            DownstreamUserInfoHeader = \"...my_downstream_user_info_header...\",\n            DownstreamUserInfoJwtHeader = \"...my_downstream_user_info_jwt_header...\",\n            DpopProofLifetime = 9.34,\n            DpopUseNonce = true,\n            EnableHsSignatures = true,\n            EndSessionEndpoint = \"...my_end_session_endpoint...\",\n            ExposeErrorCode = false,\n            ExtraJwksUris = new[]\n            {\n                \"...\",\n            },\n            ForbiddenDestroySession = false,\n            ForbiddenErrorMessage = \"...my_forbidden_error_message...\",\n            ForbiddenRedirectUris = new[]\n            {\n                \"...\",\n            },\n            GroupsClaims = new[]\n            {\n                \"...\",\n            },\n            GroupsRequireds = new[]\n            {\n                \"...\",\n            },\n            HideCredentials = true,\n            HttpProxy = \"...my_http_proxy...\",\n            HttpProxyAuthorization = \"...my_http_proxy_authorization...\",\n            HttpVersion = 2.54,\n            HttpsProxy = \"...my_https_proxy...\",\n            HttpsProxyAuthorization = \"...my_https_proxy_authorization...\",\n            IdTokenParamName = \"...my_id_token_param_name...\",\n            IdTokenParamTypes = new[]\n            {\n                \"query\",\n            },\n            IgnoreSignatures = new[]\n            {\n                \"refresh_token\",\n            },\n            IntrospectJwtTokens = true,\n            IntrospectionAccept = \"application/json\",\n            IntrospectionCheckActive = false,\n            IntrospectionEndpoint = \"...my_introspection_endpoint...\",\n            IntrospectionEndpointAuthMethod = \"client_secret_basic\",\n            IntrospectionHeadersClients = new[]\n            {\n                \"...\",\n            },\n            IntrospectionHeadersNames = new[]\n            {\n                \"...\",\n            },\n            IntrospectionHeadersValues = new[]\n            {\n                \"...\",\n            },\n            IntrospectionHint = \"...my_introspection_hint...\",\n            IntrospectionPostArgsClients = new[]\n            {\n                \"...\",\n            },\n            IntrospectionPostArgsClientHeaders = new[]\n            {\n                \"...\",\n            },\n            IntrospectionPostArgsNames = new[]\n            {\n                \"...\",\n            },\n            IntrospectionPostArgsValues = new[]\n            {\n                \"...\",\n            },\n            IntrospectionTokenParamName = \"...my_introspection_token_param_name...\",\n            Issuer = \"...my_issuer...\",\n            IssuersAlloweds = new[]\n            {\n                \"...\",\n            },\n            JwtSessionClaim = \"...my_jwt_session_claim...\",\n            JwtSessionCookie = \"...my_jwt_session_cookie...\",\n            Keepalive = true,\n            Leeway = 4.43,\n            LoginAction = \"redirect\",\n            LoginMethods = new[]\n            {\n                \"authorization_code\",\n            },\n            LoginRedirectMode = \"query\",\n            LoginRedirectUris = new[]\n            {\n                \"...\",\n            },\n            LoginTokens = new[]\n            {\n                \"refresh_token\",\n            },\n            LogoutMethods = new[]\n            {\n                \"GET\",\n            },\n            LogoutPostArg = \"...my_logout_post_arg...\",\n            LogoutQueryArg = \"...my_logout_query_arg...\",\n            LogoutRedirectUris = new[]\n            {\n                \"...\",\n            },\n            LogoutRevoke = true,\n            LogoutRevokeAccessToken = false,\n            LogoutRevokeRefreshToken = false,\n            LogoutUriSuffix = \"...my_logout_uri_suffix...\",\n            MaxAge = 0.81,\n            MtlsIntrospectionEndpoint = \"...my_mtls_introspection_endpoint...\",\n            MtlsRevocationEndpoint = \"...my_mtls_revocation_endpoint...\",\n            MtlsTokenEndpoint = \"...my_mtls_token_endpoint...\",\n            NoProxy = \"...my_no_proxy...\",\n            PasswordParamTypes = new[]\n            {\n                \"body\",\n            },\n            PreserveQueryArgs = true,\n            ProofOfPossessionAuthMethodsValidation = true,\n            ProofOfPossessionDpop = \"optional\",\n            ProofOfPossessionMtls = \"off\",\n            PushedAuthorizationRequestEndpoint = \"...my_pushed_authorization_request_endpoint...\",\n            PushedAuthorizationRequestEndpointAuthMethod = \"tls_client_auth\",\n            RedirectUris = new[]\n            {\n                \"...\",\n            },\n            Redis = new Konnect.Inputs.GatewayPluginOpenidConnectConfigRedisArgs\n            {\n                CloudAuthentication = new Konnect.Inputs.GatewayPluginOpenidConnectConfigRedisCloudAuthenticationArgs\n                {\n                    AuthProvider = \"gcp\",\n                    AwsAccessKeyId = \"...my_aws_access_key_id...\",\n                    AwsAssumeRoleArn = \"...my_aws_assume_role_arn...\",\n                    AwsCacheName = \"...my_aws_cache_name...\",\n                    AwsIsServerless = false,\n                    AwsRegion = \"...my_aws_region...\",\n                    AwsRoleSessionName = \"...my_aws_role_session_name...\",\n                    AwsSecretAccessKey = \"...my_aws_secret_access_key...\",\n                    AzureClientId = \"...my_azure_client_id...\",\n                    AzureClientSecret = \"...my_azure_client_secret...\",\n                    AzureTenantId = \"...my_azure_tenant_id...\",\n                    GcpServiceAccountJson = \"...my_gcp_service_account_json...\",\n                },\n                ClusterMaxRedirections = 9,\n                ClusterNodes = new[]\n                {\n                    new Konnect.Inputs.GatewayPluginOpenidConnectConfigRedisClusterNodeArgs\n                    {\n                        Ip = \"...my_ip...\",\n                        Port = 55819,\n                    },\n                },\n                ConnectTimeout = 829309575,\n                ConnectionIsProxied = true,\n                Database = 2,\n                Host = \"...my_host...\",\n                KeepaliveBacklog = 1420640006,\n                KeepalivePoolSize = 147781497,\n                Password = \"...my_password...\",\n                Port = 20220,\n                Prefix = \"...my_prefix...\",\n                ReadTimeout = 2120279470,\n                SendTimeout = 523577252,\n                SentinelMaster = \"...my_sentinel_master...\",\n                SentinelNodes = new[]\n                {\n                    new Konnect.Inputs.GatewayPluginOpenidConnectConfigRedisSentinelNodeArgs\n                    {\n                        Host = \"...my_host...\",\n                        Port = 58352,\n                    },\n                },\n                SentinelPassword = \"...my_sentinel_password...\",\n                SentinelRole = \"slave\",\n                SentinelUsername = \"...my_sentinel_username...\",\n                ServerName = \"...my_server_name...\",\n                Socket = \"...my_socket...\",\n                Ssl = true,\n                SslVerify = true,\n                Username = \"...my_username...\",\n            },\n            RediscoveryLifetime = 0.82,\n            RefreshTokenParamName = \"...my_refresh_token_param_name...\",\n            RefreshTokenParamTypes = new[]\n            {\n                \"header\",\n            },\n            RefreshTokens = true,\n            RequireProofKeyForCodeExchange = true,\n            RequirePushedAuthorizationRequests = true,\n            RequireSignedRequestObject = false,\n            ResolveDistributedClaims = true,\n            ResponseMode = \"fragment.jwt\",\n            ResponseTypes = new[]\n            {\n                \"...\",\n            },\n            Reverify = false,\n            RevocationEndpoint = \"...my_revocation_endpoint...\",\n            RevocationEndpointAuthMethod = \"tls_client_auth\",\n            RevocationTokenParamName = \"...my_revocation_token_param_name...\",\n            RolesClaims = new[]\n            {\n                \"...\",\n            },\n            RolesRequireds = new[]\n            {\n                \"...\",\n            },\n            RunOnPreflight = true,\n            Scopes = new[]\n            {\n                \"...\",\n            },\n            ScopesClaims = new[]\n            {\n                \"...\",\n            },\n            ScopesRequireds = new[]\n            {\n                \"...\",\n            },\n            SearchUserInfo = false,\n            SessionAbsoluteTimeout = 6.27,\n            SessionAudience = \"...my_session_audience...\",\n            SessionBinds = new[]\n            {\n                \"scheme\",\n            },\n            SessionCookieDomain = \"...my_session_cookie_domain...\",\n            SessionCookieHttpOnly = false,\n            SessionCookieName = \"...my_session_cookie_name...\",\n            SessionCookiePath = \"...my_session_cookie_path...\",\n            SessionCookieSameSite = \"Default\",\n            SessionCookieSecure = true,\n            SessionEnforceSameSubject = false,\n            SessionHashStorageKey = false,\n            SessionHashSubject = false,\n            SessionIdlingTimeout = 9.33,\n            SessionMemcachedHost = \"...my_session_memcached_host...\",\n            SessionMemcachedPort = 10230,\n            SessionMemcachedPrefix = \"...my_session_memcached_prefix...\",\n            SessionMemcachedSocket = \"...my_session_memcached_socket...\",\n            SessionMemcachedSsl = true,\n            SessionMemcachedSslVerify = false,\n            SessionRemember = false,\n            SessionRememberAbsoluteTimeout = 6.89,\n            SessionRememberCookieName = \"...my_session_remember_cookie_name...\",\n            SessionRememberRollingTimeout = 2.91,\n            SessionRequestHeaders = new[]\n            {\n                \"audience\",\n            },\n            SessionResponseHeaders = new[]\n            {\n                \"absolute-timeout\",\n            },\n            SessionRollingTimeout = 5.68,\n            SessionSecret = \"...my_session_secret...\",\n            SessionStorage = \"memcache\",\n            SessionStoreMetadata = true,\n            SslVerify = true,\n            Timeout = 0.75,\n            TlsClientAuthCertId = \"...my_tls_client_auth_cert_id...\",\n            TlsClientAuthSslVerify = false,\n            TokenCacheKeyIncludeScope = true,\n            TokenEndpoint = \"...my_token_endpoint...\",\n            TokenEndpointAuthMethod = \"client_secret_post\",\n            TokenExchangeEndpoint = \"...my_token_exchange_endpoint...\",\n            TokenHeadersClients = new[]\n            {\n                \"...\",\n            },\n            TokenHeadersGrants = new[]\n            {\n                \"client_credentials\",\n            },\n            TokenHeadersNames = new[]\n            {\n                \"...\",\n            },\n            TokenHeadersPrefix = \"...my_token_headers_prefix...\",\n            TokenHeadersReplays = new[]\n            {\n                \"...\",\n            },\n            TokenHeadersValues = new[]\n            {\n                \"...\",\n            },\n            TokenPostArgsClients = new[]\n            {\n                \"...\",\n            },\n            TokenPostArgsNames = new[]\n            {\n                \"...\",\n            },\n            TokenPostArgsValues = new[]\n            {\n                \"...\",\n            },\n            UnauthorizedDestroySession = false,\n            UnauthorizedErrorMessage = \"...my_unauthorized_error_message...\",\n            UnauthorizedRedirectUris = new[]\n            {\n                \"...\",\n            },\n            UnexpectedRedirectUris = new[]\n            {\n                \"...\",\n            },\n            UpstreamAccessTokenHeader = \"...my_upstream_access_token_header...\",\n            UpstreamAccessTokenJwkHeader = \"...my_upstream_access_token_jwk_header...\",\n            UpstreamHeadersClaims = new[]\n            {\n                \"...\",\n            },\n            UpstreamHeadersNames = new[]\n            {\n                \"...\",\n            },\n            UpstreamIdTokenHeader = \"...my_upstream_id_token_header...\",\n            UpstreamIdTokenJwkHeader = \"...my_upstream_id_token_jwk_header...\",\n            UpstreamIntrospectionHeader = \"...my_upstream_introspection_header...\",\n            UpstreamIntrospectionJwtHeader = \"...my_upstream_introspection_jwt_header...\",\n            UpstreamRefreshTokenHeader = \"...my_upstream_refresh_token_header...\",\n            UpstreamSessionIdHeader = \"...my_upstream_session_id_header...\",\n            UpstreamUserInfoHeader = \"...my_upstream_user_info_header...\",\n            UpstreamUserInfoJwtHeader = \"...my_upstream_user_info_jwt_header...\",\n            UserinfoAccept = \"application/json\",\n            UserinfoEndpoint = \"...my_userinfo_endpoint...\",\n            UserinfoHeadersClients = new[]\n            {\n                \"...\",\n            },\n            UserinfoHeadersNames = new[]\n            {\n                \"...\",\n            },\n            UserinfoHeadersValues = new[]\n            {\n                \"...\",\n            },\n            UserinfoQueryArgsClients = new[]\n            {\n                \"...\",\n            },\n            UserinfoQueryArgsNames = new[]\n            {\n                \"...\",\n            },\n            UserinfoQueryArgsValues = new[]\n            {\n                \"...\",\n            },\n            UsingPseudoIssuer = true,\n            VerifyClaims = true,\n            VerifyNonce = false,\n            VerifyParameters = true,\n            VerifySignature = false,\n        },\n        ControlPlaneId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        CreatedAt = 7,\n        Enabled = true,\n        GatewayPluginOpenidConnectId = \"...my_id...\",\n        InstanceName = \"...my_instance_name...\",\n        Ordering = new Konnect.Inputs.GatewayPluginOpenidConnectOrderingArgs\n        {\n            After = new Konnect.Inputs.GatewayPluginOpenidConnectOrderingAfterArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n            Before = new Konnect.Inputs.GatewayPluginOpenidConnectOrderingBeforeArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n        },\n        Partials = new[]\n        {\n            new Konnect.Inputs.GatewayPluginOpenidConnectPartialArgs\n            {\n                Id = \"...my_id...\",\n                Name = \"...my_name...\",\n                Path = \"...my_path...\",\n            },\n        },\n        Protocols = new[]\n        {\n            \"http\",\n        },\n        Route = new Konnect.Inputs.GatewayPluginOpenidConnectRouteArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Service = new Konnect.Inputs.GatewayPluginOpenidConnectServiceArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Tags = new[]\n        {\n            \"...\",\n        },\n        UpdatedAt = 2,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewGatewayPluginOpenidConnect(ctx, \"my_gatewaypluginopenidconnect\", \u0026konnect.GatewayPluginOpenidConnectArgs{\n\t\t\tConfig: \u0026konnect.GatewayPluginOpenidConnectConfigArgs{\n\t\t\t\tAnonymous: pulumi.String(\"...my_anonymous...\"),\n\t\t\t\tAudiences: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tAudienceClaims: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tAudienceRequireds: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tAuthMethods: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"userinfo\"),\n\t\t\t\t},\n\t\t\t\tAuthenticatedGroupsClaims: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tAuthorizationCookieDomain:   pulumi.String(\"...my_authorization_cookie_domain...\"),\n\t\t\t\tAuthorizationCookieHttpOnly: pulumi.Bool(false),\n\t\t\t\tAuthorizationCookieName:     pulumi.String(\"...my_authorization_cookie_name...\"),\n\t\t\t\tAuthorizationCookiePath:     pulumi.String(\"...my_authorization_cookie_path...\"),\n\t\t\t\tAuthorizationCookieSameSite: pulumi.String(\"Strict\"),\n\t\t\t\tAuthorizationCookieSecure:   pulumi.Bool(false),\n\t\t\t\tAuthorizationEndpoint:       pulumi.String(\"...my_authorization_endpoint...\"),\n\t\t\t\tAuthorizationQueryArgsClients: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tAuthorizationQueryArgsNames: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tAuthorizationQueryArgsValues: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tAuthorizationRollingTimeout: pulumi.Float64(1.26),\n\t\t\t\tBearerTokenCookieName:       pulumi.String(\"...my_bearer_token_cookie_name...\"),\n\t\t\t\tBearerTokenParamTypes: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"body\"),\n\t\t\t\t},\n\t\t\t\tByUsernameIgnoreCase: pulumi.Bool(false),\n\t\t\t\tCacheIntrospection:   pulumi.Bool(true),\n\t\t\t\tCacheTokenExchange:   pulumi.Bool(false),\n\t\t\t\tCacheTokens:          pulumi.Bool(false),\n\t\t\t\tCacheTokensSalt:      pulumi.String(\"...my_cache_tokens_salt...\"),\n\t\t\t\tCacheTtl:             pulumi.Float64(4.51),\n\t\t\t\tCacheTtlMax:          pulumi.Float64(8.18),\n\t\t\t\tCacheTtlMin:          pulumi.Float64(0.48),\n\t\t\t\tCacheTtlNeg:          pulumi.Float64(5.85),\n\t\t\t\tCacheTtlResurrect:    pulumi.Float64(0.5),\n\t\t\t\tCacheUserInfo:        pulumi.Bool(false),\n\t\t\t\tClaimsForbiddens: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tClientAlgs: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"HS384\"),\n\t\t\t\t},\n\t\t\t\tClientArg: pulumi.String(\"...my_client_arg...\"),\n\t\t\t\tClientAuths: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"client_secret_post\"),\n\t\t\t\t},\n\t\t\t\tClientCredentialsParamTypes: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"query\"),\n\t\t\t\t},\n\t\t\t\tClientIds: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tClientJwks: konnect.GatewayPluginOpenidConnectConfigClientJwkArray{\n\t\t\t\t\t\u0026konnect.GatewayPluginOpenidConnectConfigClientJwkArgs{\n\t\t\t\t\t\tAlg:    pulumi.String(\"...my_alg...\"),\n\t\t\t\t\t\tCrv:    pulumi.String(\"...my_crv...\"),\n\t\t\t\t\t\tD:      pulumi.String(\"...my_d...\"),\n\t\t\t\t\t\tDp:     pulumi.String(\"...my_dp...\"),\n\t\t\t\t\t\tDq:     pulumi.String(\"...my_dq...\"),\n\t\t\t\t\t\tE:      pulumi.String(\"...my_e...\"),\n\t\t\t\t\t\tIssuer: pulumi.String(\"...my_issuer...\"),\n\t\t\t\t\t\tK:      pulumi.String(\"...my_k...\"),\n\t\t\t\t\t\tKeyOps: pulumi.StringArray{\n\t\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\tKid: pulumi.String(\"...my_kid...\"),\n\t\t\t\t\t\tKty: pulumi.String(\"...my_kty...\"),\n\t\t\t\t\t\tN:   pulumi.String(\"...my_n...\"),\n\t\t\t\t\t\tOth: pulumi.String(\"...my_oth...\"),\n\t\t\t\t\t\tP:   pulumi.String(\"...my_p...\"),\n\t\t\t\t\t\tQ:   pulumi.String(\"...my_q...\"),\n\t\t\t\t\t\tQi:  pulumi.String(\"...my_qi...\"),\n\t\t\t\t\t\tR:   pulumi.String(\"...my_r...\"),\n\t\t\t\t\t\tT:   pulumi.String(\"...my_t...\"),\n\t\t\t\t\t\tUse: pulumi.String(\"...my_use...\"),\n\t\t\t\t\t\tX:   pulumi.String(\"...my_x...\"),\n\t\t\t\t\t\tX5cs: pulumi.StringArray{\n\t\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\tX5t:           pulumi.String(\"...my_x5t...\"),\n\t\t\t\t\t\tX5tNumberS256: pulumi.String(\"...my_x5t_number_s256...\"),\n\t\t\t\t\t\tX5u:           pulumi.String(\"...my_x5u...\"),\n\t\t\t\t\t\tY:             pulumi.String(\"...my_y...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tClientSecrets: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tClusterCacheRedis: \u0026konnect.GatewayPluginOpenidConnectConfigClusterCacheRedisArgs{\n\t\t\t\t\tCloudAuthentication: \u0026konnect.GatewayPluginOpenidConnectConfigClusterCacheRedisCloudAuthenticationArgs{\n\t\t\t\t\t\tAuthProvider:          pulumi.String(\"azure\"),\n\t\t\t\t\t\tAwsAccessKeyId:        pulumi.String(\"...my_aws_access_key_id...\"),\n\t\t\t\t\t\tAwsAssumeRoleArn:      pulumi.String(\"...my_aws_assume_role_arn...\"),\n\t\t\t\t\t\tAwsCacheName:          pulumi.String(\"...my_aws_cache_name...\"),\n\t\t\t\t\t\tAwsIsServerless:       pulumi.Bool(false),\n\t\t\t\t\t\tAwsRegion:             pulumi.String(\"...my_aws_region...\"),\n\t\t\t\t\t\tAwsRoleSessionName:    pulumi.String(\"...my_aws_role_session_name...\"),\n\t\t\t\t\t\tAwsSecretAccessKey:    pulumi.String(\"...my_aws_secret_access_key...\"),\n\t\t\t\t\t\tAzureClientId:         pulumi.String(\"...my_azure_client_id...\"),\n\t\t\t\t\t\tAzureClientSecret:     pulumi.String(\"...my_azure_client_secret...\"),\n\t\t\t\t\t\tAzureTenantId:         pulumi.String(\"...my_azure_tenant_id...\"),\n\t\t\t\t\t\tGcpServiceAccountJson: pulumi.String(\"...my_gcp_service_account_json...\"),\n\t\t\t\t\t},\n\t\t\t\t\tClusterMaxRedirections: pulumi.Float64(5),\n\t\t\t\t\tClusterNodes: konnect.GatewayPluginOpenidConnectConfigClusterCacheRedisClusterNodeArray{\n\t\t\t\t\t\t\u0026konnect.GatewayPluginOpenidConnectConfigClusterCacheRedisClusterNodeArgs{\n\t\t\t\t\t\t\tIp:   pulumi.String(\"...my_ip...\"),\n\t\t\t\t\t\t\tPort: pulumi.Float64(39126),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tConnectTimeout:      pulumi.Float64(1007376275),\n\t\t\t\t\tConnectionIsProxied: pulumi.Bool(false),\n\t\t\t\t\tDatabase:            pulumi.Float64(6),\n\t\t\t\t\tHost:                pulumi.String(\"...my_host...\"),\n\t\t\t\t\tKeepaliveBacklog:    pulumi.Float64(513691764),\n\t\t\t\t\tKeepalivePoolSize:   pulumi.Float64(742855137),\n\t\t\t\t\tPassword:            pulumi.String(\"...my_password...\"),\n\t\t\t\t\tPort:                pulumi.Float64(25288),\n\t\t\t\t\tReadTimeout:         pulumi.Float64(1652724306),\n\t\t\t\t\tSendTimeout:         pulumi.Float64(24704322),\n\t\t\t\t\tSentinelMaster:      pulumi.String(\"...my_sentinel_master...\"),\n\t\t\t\t\tSentinelNodes: konnect.GatewayPluginOpenidConnectConfigClusterCacheRedisSentinelNodeArray{\n\t\t\t\t\t\t\u0026konnect.GatewayPluginOpenidConnectConfigClusterCacheRedisSentinelNodeArgs{\n\t\t\t\t\t\t\tHost: pulumi.String(\"...my_host...\"),\n\t\t\t\t\t\t\tPort: pulumi.Float64(5690),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tSentinelPassword: pulumi.String(\"...my_sentinel_password...\"),\n\t\t\t\t\tSentinelRole:     pulumi.String(\"any\"),\n\t\t\t\t\tSentinelUsername: pulumi.String(\"...my_sentinel_username...\"),\n\t\t\t\t\tServerName:       pulumi.String(\"...my_server_name...\"),\n\t\t\t\t\tSsl:              pulumi.Bool(true),\n\t\t\t\t\tSslVerify:        pulumi.Bool(true),\n\t\t\t\t\tUsername:         pulumi.String(\"...my_username...\"),\n\t\t\t\t},\n\t\t\t\tClusterCacheStrategy: pulumi.String(\"off\"),\n\t\t\t\tConsumerBies: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"id\"),\n\t\t\t\t},\n\t\t\t\tConsumerClaims: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tConsumerGroupsClaims: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tConsumerGroupsOptional: pulumi.Bool(true),\n\t\t\t\tConsumerOptional:       pulumi.Bool(true),\n\t\t\t\tCredentialClaims: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tDisableSessions: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"bearer\"),\n\t\t\t\t},\n\t\t\t\tDiscoveryHeadersNames: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tDiscoveryHeadersValues: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tDisplayErrors: pulumi.Bool(false),\n\t\t\t\tDomains: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tDownstreamAccessTokenHeader:    pulumi.String(\"...my_downstream_access_token_header...\"),\n\t\t\t\tDownstreamAccessTokenJwkHeader: pulumi.String(\"...my_downstream_access_token_jwk_header...\"),\n\t\t\t\tDownstreamHeadersClaims: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tDownstreamHeadersNames: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tDownstreamIdTokenHeader:          pulumi.String(\"...my_downstream_id_token_header...\"),\n\t\t\t\tDownstreamIdTokenJwkHeader:       pulumi.String(\"...my_downstream_id_token_jwk_header...\"),\n\t\t\t\tDownstreamIntrospectionHeader:    pulumi.String(\"...my_downstream_introspection_header...\"),\n\t\t\t\tDownstreamIntrospectionJwtHeader: pulumi.String(\"...my_downstream_introspection_jwt_header...\"),\n\t\t\t\tDownstreamRefreshTokenHeader:     pulumi.String(\"...my_downstream_refresh_token_header...\"),\n\t\t\t\tDownstreamSessionIdHeader:        pulumi.String(\"...my_downstream_session_id_header...\"),\n\t\t\t\tDownstreamUserInfoHeader:         pulumi.String(\"...my_downstream_user_info_header...\"),\n\t\t\t\tDownstreamUserInfoJwtHeader:      pulumi.String(\"...my_downstream_user_info_jwt_header...\"),\n\t\t\t\tDpopProofLifetime:                pulumi.Float64(9.34),\n\t\t\t\tDpopUseNonce:                     pulumi.Bool(true),\n\t\t\t\tEnableHsSignatures:               pulumi.Bool(true),\n\t\t\t\tEndSessionEndpoint:               pulumi.String(\"...my_end_session_endpoint...\"),\n\t\t\t\tExposeErrorCode:                  pulumi.Bool(false),\n\t\t\t\tExtraJwksUris: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tForbiddenDestroySession: pulumi.Bool(false),\n\t\t\t\tForbiddenErrorMessage:   pulumi.String(\"...my_forbidden_error_message...\"),\n\t\t\t\tForbiddenRedirectUris: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tGroupsClaims: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tGroupsRequireds: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tHideCredentials:         pulumi.Bool(true),\n\t\t\t\tHttpProxy:               pulumi.String(\"...my_http_proxy...\"),\n\t\t\t\tHttpProxyAuthorization:  pulumi.String(\"...my_http_proxy_authorization...\"),\n\t\t\t\tHttpVersion:             pulumi.Float64(2.54),\n\t\t\t\tHttpsProxy:              pulumi.String(\"...my_https_proxy...\"),\n\t\t\t\tHttpsProxyAuthorization: pulumi.String(\"...my_https_proxy_authorization...\"),\n\t\t\t\tIdTokenParamName:        pulumi.String(\"...my_id_token_param_name...\"),\n\t\t\t\tIdTokenParamTypes: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"query\"),\n\t\t\t\t},\n\t\t\t\tIgnoreSignatures: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"refresh_token\"),\n\t\t\t\t},\n\t\t\t\tIntrospectJwtTokens:             pulumi.Bool(true),\n\t\t\t\tIntrospectionAccept:             pulumi.String(\"application/json\"),\n\t\t\t\tIntrospectionCheckActive:        pulumi.Bool(false),\n\t\t\t\tIntrospectionEndpoint:           pulumi.String(\"...my_introspection_endpoint...\"),\n\t\t\t\tIntrospectionEndpointAuthMethod: pulumi.String(\"client_secret_basic\"),\n\t\t\t\tIntrospectionHeadersClients: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tIntrospectionHeadersNames: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tIntrospectionHeadersValues: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tIntrospectionHint: pulumi.String(\"...my_introspection_hint...\"),\n\t\t\t\tIntrospectionPostArgsClients: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tIntrospectionPostArgsClientHeaders: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tIntrospectionPostArgsNames: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tIntrospectionPostArgsValues: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tIntrospectionTokenParamName: pulumi.String(\"...my_introspection_token_param_name...\"),\n\t\t\t\tIssuer:                      pulumi.String(\"...my_issuer...\"),\n\t\t\t\tIssuersAlloweds: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tJwtSessionClaim:  pulumi.String(\"...my_jwt_session_claim...\"),\n\t\t\t\tJwtSessionCookie: pulumi.String(\"...my_jwt_session_cookie...\"),\n\t\t\t\tKeepalive:        pulumi.Bool(true),\n\t\t\t\tLeeway:           pulumi.Float64(4.43),\n\t\t\t\tLoginAction:      pulumi.String(\"redirect\"),\n\t\t\t\tLoginMethods: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"authorization_code\"),\n\t\t\t\t},\n\t\t\t\tLoginRedirectMode: pulumi.String(\"query\"),\n\t\t\t\tLoginRedirectUris: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tLoginTokens: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"refresh_token\"),\n\t\t\t\t},\n\t\t\t\tLogoutMethods: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"GET\"),\n\t\t\t\t},\n\t\t\t\tLogoutPostArg:  pulumi.String(\"...my_logout_post_arg...\"),\n\t\t\t\tLogoutQueryArg: pulumi.String(\"...my_logout_query_arg...\"),\n\t\t\t\tLogoutRedirectUris: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tLogoutRevoke:              pulumi.Bool(true),\n\t\t\t\tLogoutRevokeAccessToken:   pulumi.Bool(false),\n\t\t\t\tLogoutRevokeRefreshToken:  pulumi.Bool(false),\n\t\t\t\tLogoutUriSuffix:           pulumi.String(\"...my_logout_uri_suffix...\"),\n\t\t\t\tMaxAge:                    pulumi.Float64(0.81),\n\t\t\t\tMtlsIntrospectionEndpoint: pulumi.String(\"...my_mtls_introspection_endpoint...\"),\n\t\t\t\tMtlsRevocationEndpoint:    pulumi.String(\"...my_mtls_revocation_endpoint...\"),\n\t\t\t\tMtlsTokenEndpoint:         pulumi.String(\"...my_mtls_token_endpoint...\"),\n\t\t\t\tNoProxy:                   pulumi.String(\"...my_no_proxy...\"),\n\t\t\t\tPasswordParamTypes: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"body\"),\n\t\t\t\t},\n\t\t\t\tPreserveQueryArgs:                            pulumi.Bool(true),\n\t\t\t\tProofOfPossessionAuthMethodsValidation:       pulumi.Bool(true),\n\t\t\t\tProofOfPossessionDpop:                        pulumi.String(\"optional\"),\n\t\t\t\tProofOfPossessionMtls:                        pulumi.String(\"off\"),\n\t\t\t\tPushedAuthorizationRequestEndpoint:           pulumi.String(\"...my_pushed_authorization_request_endpoint...\"),\n\t\t\t\tPushedAuthorizationRequestEndpointAuthMethod: pulumi.String(\"tls_client_auth\"),\n\t\t\t\tRedirectUris: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tRedis: \u0026konnect.GatewayPluginOpenidConnectConfigRedisArgs{\n\t\t\t\t\tCloudAuthentication: \u0026konnect.GatewayPluginOpenidConnectConfigRedisCloudAuthenticationArgs{\n\t\t\t\t\t\tAuthProvider:          pulumi.String(\"gcp\"),\n\t\t\t\t\t\tAwsAccessKeyId:        pulumi.String(\"...my_aws_access_key_id...\"),\n\t\t\t\t\t\tAwsAssumeRoleArn:      pulumi.String(\"...my_aws_assume_role_arn...\"),\n\t\t\t\t\t\tAwsCacheName:          pulumi.String(\"...my_aws_cache_name...\"),\n\t\t\t\t\t\tAwsIsServerless:       pulumi.Bool(false),\n\t\t\t\t\t\tAwsRegion:             pulumi.String(\"...my_aws_region...\"),\n\t\t\t\t\t\tAwsRoleSessionName:    pulumi.String(\"...my_aws_role_session_name...\"),\n\t\t\t\t\t\tAwsSecretAccessKey:    pulumi.String(\"...my_aws_secret_access_key...\"),\n\t\t\t\t\t\tAzureClientId:         pulumi.String(\"...my_azure_client_id...\"),\n\t\t\t\t\t\tAzureClientSecret:     pulumi.String(\"...my_azure_client_secret...\"),\n\t\t\t\t\t\tAzureTenantId:         pulumi.String(\"...my_azure_tenant_id...\"),\n\t\t\t\t\t\tGcpServiceAccountJson: pulumi.String(\"...my_gcp_service_account_json...\"),\n\t\t\t\t\t},\n\t\t\t\t\tClusterMaxRedirections: pulumi.Float64(9),\n\t\t\t\t\tClusterNodes: konnect.GatewayPluginOpenidConnectConfigRedisClusterNodeArray{\n\t\t\t\t\t\t\u0026konnect.GatewayPluginOpenidConnectConfigRedisClusterNodeArgs{\n\t\t\t\t\t\t\tIp:   pulumi.String(\"...my_ip...\"),\n\t\t\t\t\t\t\tPort: pulumi.Float64(55819),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tConnectTimeout:      pulumi.Float64(829309575),\n\t\t\t\t\tConnectionIsProxied: pulumi.Bool(true),\n\t\t\t\t\tDatabase:            pulumi.Float64(2),\n\t\t\t\t\tHost:                pulumi.String(\"...my_host...\"),\n\t\t\t\t\tKeepaliveBacklog:    pulumi.Float64(1420640006),\n\t\t\t\t\tKeepalivePoolSize:   pulumi.Float64(147781497),\n\t\t\t\t\tPassword:            pulumi.String(\"...my_password...\"),\n\t\t\t\t\tPort:                pulumi.Float64(20220),\n\t\t\t\t\tPrefix:              pulumi.String(\"...my_prefix...\"),\n\t\t\t\t\tReadTimeout:         pulumi.Float64(2120279470),\n\t\t\t\t\tSendTimeout:         pulumi.Float64(523577252),\n\t\t\t\t\tSentinelMaster:      pulumi.String(\"...my_sentinel_master...\"),\n\t\t\t\t\tSentinelNodes: konnect.GatewayPluginOpenidConnectConfigRedisSentinelNodeArray{\n\t\t\t\t\t\t\u0026konnect.GatewayPluginOpenidConnectConfigRedisSentinelNodeArgs{\n\t\t\t\t\t\t\tHost: pulumi.String(\"...my_host...\"),\n\t\t\t\t\t\t\tPort: pulumi.Float64(58352),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tSentinelPassword: pulumi.String(\"...my_sentinel_password...\"),\n\t\t\t\t\tSentinelRole:     pulumi.String(\"slave\"),\n\t\t\t\t\tSentinelUsername: pulumi.String(\"...my_sentinel_username...\"),\n\t\t\t\t\tServerName:       pulumi.String(\"...my_server_name...\"),\n\t\t\t\t\tSocket:           pulumi.String(\"...my_socket...\"),\n\t\t\t\t\tSsl:              pulumi.Bool(true),\n\t\t\t\t\tSslVerify:        pulumi.Bool(true),\n\t\t\t\t\tUsername:         pulumi.String(\"...my_username...\"),\n\t\t\t\t},\n\t\t\t\tRediscoveryLifetime:   pulumi.Float64(0.82),\n\t\t\t\tRefreshTokenParamName: pulumi.String(\"...my_refresh_token_param_name...\"),\n\t\t\t\tRefreshTokenParamTypes: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"header\"),\n\t\t\t\t},\n\t\t\t\tRefreshTokens:                      pulumi.Bool(true),\n\t\t\t\tRequireProofKeyForCodeExchange:     pulumi.Bool(true),\n\t\t\t\tRequirePushedAuthorizationRequests: pulumi.Bool(true),\n\t\t\t\tRequireSignedRequestObject:         pulumi.Bool(false),\n\t\t\t\tResolveDistributedClaims:           pulumi.Bool(true),\n\t\t\t\tResponseMode:                       pulumi.String(\"fragment.jwt\"),\n\t\t\t\tResponseTypes: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tReverify:                     pulumi.Bool(false),\n\t\t\t\tRevocationEndpoint:           pulumi.String(\"...my_revocation_endpoint...\"),\n\t\t\t\tRevocationEndpointAuthMethod: pulumi.String(\"tls_client_auth\"),\n\t\t\t\tRevocationTokenParamName:     pulumi.String(\"...my_revocation_token_param_name...\"),\n\t\t\t\tRolesClaims: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tRolesRequireds: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tRunOnPreflight: pulumi.Bool(true),\n\t\t\t\tScopes: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tScopesClaims: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tScopesRequireds: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tSearchUserInfo:         pulumi.Bool(false),\n\t\t\t\tSessionAbsoluteTimeout: pulumi.Float64(6.27),\n\t\t\t\tSessionAudience:        pulumi.String(\"...my_session_audience...\"),\n\t\t\t\tSessionBinds: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"scheme\"),\n\t\t\t\t},\n\t\t\t\tSessionCookieDomain:            pulumi.String(\"...my_session_cookie_domain...\"),\n\t\t\t\tSessionCookieHttpOnly:          pulumi.Bool(false),\n\t\t\t\tSessionCookieName:              pulumi.String(\"...my_session_cookie_name...\"),\n\t\t\t\tSessionCookiePath:              pulumi.String(\"...my_session_cookie_path...\"),\n\t\t\t\tSessionCookieSameSite:          pulumi.String(\"Default\"),\n\t\t\t\tSessionCookieSecure:            pulumi.Bool(true),\n\t\t\t\tSessionEnforceSameSubject:      pulumi.Bool(false),\n\t\t\t\tSessionHashStorageKey:          pulumi.Bool(false),\n\t\t\t\tSessionHashSubject:             pulumi.Bool(false),\n\t\t\t\tSessionIdlingTimeout:           pulumi.Float64(9.33),\n\t\t\t\tSessionMemcachedHost:           pulumi.String(\"...my_session_memcached_host...\"),\n\t\t\t\tSessionMemcachedPort:           pulumi.Float64(10230),\n\t\t\t\tSessionMemcachedPrefix:         pulumi.String(\"...my_session_memcached_prefix...\"),\n\t\t\t\tSessionMemcachedSocket:         pulumi.String(\"...my_session_memcached_socket...\"),\n\t\t\t\tSessionMemcachedSsl:            pulumi.Bool(true),\n\t\t\t\tSessionMemcachedSslVerify:      pulumi.Bool(false),\n\t\t\t\tSessionRemember:                pulumi.Bool(false),\n\t\t\t\tSessionRememberAbsoluteTimeout: pulumi.Float64(6.89),\n\t\t\t\tSessionRememberCookieName:      pulumi.String(\"...my_session_remember_cookie_name...\"),\n\t\t\t\tSessionRememberRollingTimeout:  pulumi.Float64(2.91),\n\t\t\t\tSessionRequestHeaders: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"audience\"),\n\t\t\t\t},\n\t\t\t\tSessionResponseHeaders: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"absolute-timeout\"),\n\t\t\t\t},\n\t\t\t\tSessionRollingTimeout:     pulumi.Float64(5.68),\n\t\t\t\tSessionSecret:             pulumi.String(\"...my_session_secret...\"),\n\t\t\t\tSessionStorage:            pulumi.String(\"memcache\"),\n\t\t\t\tSessionStoreMetadata:      pulumi.Bool(true),\n\t\t\t\tSslVerify:                 pulumi.Bool(true),\n\t\t\t\tTimeout:                   pulumi.Float64(0.75),\n\t\t\t\tTlsClientAuthCertId:       pulumi.String(\"...my_tls_client_auth_cert_id...\"),\n\t\t\t\tTlsClientAuthSslVerify:    pulumi.Bool(false),\n\t\t\t\tTokenCacheKeyIncludeScope: pulumi.Bool(true),\n\t\t\t\tTokenEndpoint:             pulumi.String(\"...my_token_endpoint...\"),\n\t\t\t\tTokenEndpointAuthMethod:   pulumi.String(\"client_secret_post\"),\n\t\t\t\tTokenExchangeEndpoint:     pulumi.String(\"...my_token_exchange_endpoint...\"),\n\t\t\t\tTokenHeadersClients: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tTokenHeadersGrants: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"client_credentials\"),\n\t\t\t\t},\n\t\t\t\tTokenHeadersNames: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tTokenHeadersPrefix: pulumi.String(\"...my_token_headers_prefix...\"),\n\t\t\t\tTokenHeadersReplays: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tTokenHeadersValues: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tTokenPostArgsClients: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tTokenPostArgsNames: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tTokenPostArgsValues: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tUnauthorizedDestroySession: pulumi.Bool(false),\n\t\t\t\tUnauthorizedErrorMessage:   pulumi.String(\"...my_unauthorized_error_message...\"),\n\t\t\t\tUnauthorizedRedirectUris: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tUnexpectedRedirectUris: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tUpstreamAccessTokenHeader:    pulumi.String(\"...my_upstream_access_token_header...\"),\n\t\t\t\tUpstreamAccessTokenJwkHeader: pulumi.String(\"...my_upstream_access_token_jwk_header...\"),\n\t\t\t\tUpstreamHeadersClaims: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tUpstreamHeadersNames: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tUpstreamIdTokenHeader:          pulumi.String(\"...my_upstream_id_token_header...\"),\n\t\t\t\tUpstreamIdTokenJwkHeader:       pulumi.String(\"...my_upstream_id_token_jwk_header...\"),\n\t\t\t\tUpstreamIntrospectionHeader:    pulumi.String(\"...my_upstream_introspection_header...\"),\n\t\t\t\tUpstreamIntrospectionJwtHeader: pulumi.String(\"...my_upstream_introspection_jwt_header...\"),\n\t\t\t\tUpstreamRefreshTokenHeader:     pulumi.String(\"...my_upstream_refresh_token_header...\"),\n\t\t\t\tUpstreamSessionIdHeader:        pulumi.String(\"...my_upstream_session_id_header...\"),\n\t\t\t\tUpstreamUserInfoHeader:         pulumi.String(\"...my_upstream_user_info_header...\"),\n\t\t\t\tUpstreamUserInfoJwtHeader:      pulumi.String(\"...my_upstream_user_info_jwt_header...\"),\n\t\t\t\tUserinfoAccept:                 pulumi.String(\"application/json\"),\n\t\t\t\tUserinfoEndpoint:               pulumi.String(\"...my_userinfo_endpoint...\"),\n\t\t\t\tUserinfoHeadersClients: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tUserinfoHeadersNames: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tUserinfoHeadersValues: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tUserinfoQueryArgsClients: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tUserinfoQueryArgsNames: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tUserinfoQueryArgsValues: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tUsingPseudoIssuer: pulumi.Bool(true),\n\t\t\t\tVerifyClaims:      pulumi.Bool(true),\n\t\t\t\tVerifyNonce:       pulumi.Bool(false),\n\t\t\t\tVerifyParameters:  pulumi.Bool(true),\n\t\t\t\tVerifySignature:   pulumi.Bool(false),\n\t\t\t},\n\t\t\tControlPlaneId:               pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tCreatedAt:                    pulumi.Float64(7),\n\t\t\tEnabled:                      pulumi.Bool(true),\n\t\t\tGatewayPluginOpenidConnectId: pulumi.String(\"...my_id...\"),\n\t\t\tInstanceName:                 pulumi.String(\"...my_instance_name...\"),\n\t\t\tOrdering: \u0026konnect.GatewayPluginOpenidConnectOrderingArgs{\n\t\t\t\tAfter: \u0026konnect.GatewayPluginOpenidConnectOrderingAfterArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tBefore: \u0026konnect.GatewayPluginOpenidConnectOrderingBeforeArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tPartials: konnect.GatewayPluginOpenidConnectPartialArray{\n\t\t\t\t\u0026konnect.GatewayPluginOpenidConnectPartialArgs{\n\t\t\t\t\tId:   pulumi.String(\"...my_id...\"),\n\t\t\t\t\tName: pulumi.String(\"...my_name...\"),\n\t\t\t\t\tPath: pulumi.String(\"...my_path...\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tProtocols: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"http\"),\n\t\t\t},\n\t\t\tRoute: \u0026konnect.GatewayPluginOpenidConnectRouteArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tService: \u0026konnect.GatewayPluginOpenidConnectServiceArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"...\"),\n\t\t\t},\n\t\t\tUpdatedAt: pulumi.Float64(2),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.GatewayPluginOpenidConnect;\nimport com.pulumi.konnect.GatewayPluginOpenidConnectArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginOpenidConnectConfigArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginOpenidConnectConfigClusterCacheRedisArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginOpenidConnectConfigClusterCacheRedisCloudAuthenticationArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginOpenidConnectConfigRedisArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginOpenidConnectConfigRedisCloudAuthenticationArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginOpenidConnectOrderingArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginOpenidConnectOrderingAfterArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginOpenidConnectOrderingBeforeArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginOpenidConnectPartialArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginOpenidConnectRouteArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginOpenidConnectServiceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myGatewaypluginopenidconnect = new GatewayPluginOpenidConnect(\"myGatewaypluginopenidconnect\", GatewayPluginOpenidConnectArgs.builder()\n            .config(GatewayPluginOpenidConnectConfigArgs.builder()\n                .anonymous(\"...my_anonymous...\")\n                .audiences(\"...\")\n                .audienceClaims(\"...\")\n                .audienceRequireds(\"...\")\n                .authMethods(\"userinfo\")\n                .authenticatedGroupsClaims(\"...\")\n                .authorizationCookieDomain(\"...my_authorization_cookie_domain...\")\n                .authorizationCookieHttpOnly(false)\n                .authorizationCookieName(\"...my_authorization_cookie_name...\")\n                .authorizationCookiePath(\"...my_authorization_cookie_path...\")\n                .authorizationCookieSameSite(\"Strict\")\n                .authorizationCookieSecure(false)\n                .authorizationEndpoint(\"...my_authorization_endpoint...\")\n                .authorizationQueryArgsClients(\"...\")\n                .authorizationQueryArgsNames(\"...\")\n                .authorizationQueryArgsValues(\"...\")\n                .authorizationRollingTimeout(1.26)\n                .bearerTokenCookieName(\"...my_bearer_token_cookie_name...\")\n                .bearerTokenParamTypes(\"body\")\n                .byUsernameIgnoreCase(false)\n                .cacheIntrospection(true)\n                .cacheTokenExchange(false)\n                .cacheTokens(false)\n                .cacheTokensSalt(\"...my_cache_tokens_salt...\")\n                .cacheTtl(4.51)\n                .cacheTtlMax(8.18)\n                .cacheTtlMin(0.48)\n                .cacheTtlNeg(5.85)\n                .cacheTtlResurrect(0.5)\n                .cacheUserInfo(false)\n                .claimsForbiddens(\"...\")\n                .clientAlgs(\"HS384\")\n                .clientArg(\"...my_client_arg...\")\n                .clientAuths(\"client_secret_post\")\n                .clientCredentialsParamTypes(\"query\")\n                .clientIds(\"...\")\n                .clientJwks(GatewayPluginOpenidConnectConfigClientJwkArgs.builder()\n                    .alg(\"...my_alg...\")\n                    .crv(\"...my_crv...\")\n                    .d(\"...my_d...\")\n                    .dp(\"...my_dp...\")\n                    .dq(\"...my_dq...\")\n                    .e(\"...my_e...\")\n                    .issuer(\"...my_issuer...\")\n                    .k(\"...my_k...\")\n                    .keyOps(\"...\")\n                    .kid(\"...my_kid...\")\n                    .kty(\"...my_kty...\")\n                    .n(\"...my_n...\")\n                    .oth(\"...my_oth...\")\n                    .p(\"...my_p...\")\n                    .q(\"...my_q...\")\n                    .qi(\"...my_qi...\")\n                    .r(\"...my_r...\")\n                    .t(\"...my_t...\")\n                    .use(\"...my_use...\")\n                    .x(\"...my_x...\")\n                    .x5cs(\"...\")\n                    .x5t(\"...my_x5t...\")\n                    .x5tNumberS256(\"...my_x5t_number_s256...\")\n                    .x5u(\"...my_x5u...\")\n                    .y(\"...my_y...\")\n                    .build())\n                .clientSecrets(\"...\")\n                .clusterCacheRedis(GatewayPluginOpenidConnectConfigClusterCacheRedisArgs.builder()\n                    .cloudAuthentication(GatewayPluginOpenidConnectConfigClusterCacheRedisCloudAuthenticationArgs.builder()\n                        .authProvider(\"azure\")\n                        .awsAccessKeyId(\"...my_aws_access_key_id...\")\n                        .awsAssumeRoleArn(\"...my_aws_assume_role_arn...\")\n                        .awsCacheName(\"...my_aws_cache_name...\")\n                        .awsIsServerless(false)\n                        .awsRegion(\"...my_aws_region...\")\n                        .awsRoleSessionName(\"...my_aws_role_session_name...\")\n                        .awsSecretAccessKey(\"...my_aws_secret_access_key...\")\n                        .azureClientId(\"...my_azure_client_id...\")\n                        .azureClientSecret(\"...my_azure_client_secret...\")\n                        .azureTenantId(\"...my_azure_tenant_id...\")\n                        .gcpServiceAccountJson(\"...my_gcp_service_account_json...\")\n                        .build())\n                    .clusterMaxRedirections(5.0)\n                    .clusterNodes(GatewayPluginOpenidConnectConfigClusterCacheRedisClusterNodeArgs.builder()\n                        .ip(\"...my_ip...\")\n                        .port(39126.0)\n                        .build())\n                    .connectTimeout(1007376275.0)\n                    .connectionIsProxied(false)\n                    .database(6.0)\n                    .host(\"...my_host...\")\n                    .keepaliveBacklog(513691764.0)\n                    .keepalivePoolSize(742855137.0)\n                    .password(\"...my_password...\")\n                    .port(25288.0)\n                    .readTimeout(1652724306.0)\n                    .sendTimeout(24704322.0)\n                    .sentinelMaster(\"...my_sentinel_master...\")\n                    .sentinelNodes(GatewayPluginOpenidConnectConfigClusterCacheRedisSentinelNodeArgs.builder()\n                        .host(\"...my_host...\")\n                        .port(5690.0)\n                        .build())\n                    .sentinelPassword(\"...my_sentinel_password...\")\n                    .sentinelRole(\"any\")\n                    .sentinelUsername(\"...my_sentinel_username...\")\n                    .serverName(\"...my_server_name...\")\n                    .ssl(true)\n                    .sslVerify(true)\n                    .username(\"...my_username...\")\n                    .build())\n                .clusterCacheStrategy(\"off\")\n                .consumerBies(\"id\")\n                .consumerClaims(\"...\")\n                .consumerGroupsClaims(\"...\")\n                .consumerGroupsOptional(true)\n                .consumerOptional(true)\n                .credentialClaims(\"...\")\n                .disableSessions(\"bearer\")\n                .discoveryHeadersNames(\"...\")\n                .discoveryHeadersValues(\"...\")\n                .displayErrors(false)\n                .domains(\"...\")\n                .downstreamAccessTokenHeader(\"...my_downstream_access_token_header...\")\n                .downstreamAccessTokenJwkHeader(\"...my_downstream_access_token_jwk_header...\")\n                .downstreamHeadersClaims(\"...\")\n                .downstreamHeadersNames(\"...\")\n                .downstreamIdTokenHeader(\"...my_downstream_id_token_header...\")\n                .downstreamIdTokenJwkHeader(\"...my_downstream_id_token_jwk_header...\")\n                .downstreamIntrospectionHeader(\"...my_downstream_introspection_header...\")\n                .downstreamIntrospectionJwtHeader(\"...my_downstream_introspection_jwt_header...\")\n                .downstreamRefreshTokenHeader(\"...my_downstream_refresh_token_header...\")\n                .downstreamSessionIdHeader(\"...my_downstream_session_id_header...\")\n                .downstreamUserInfoHeader(\"...my_downstream_user_info_header...\")\n                .downstreamUserInfoJwtHeader(\"...my_downstream_user_info_jwt_header...\")\n                .dpopProofLifetime(9.34)\n                .dpopUseNonce(true)\n                .enableHsSignatures(true)\n                .endSessionEndpoint(\"...my_end_session_endpoint...\")\n                .exposeErrorCode(false)\n                .extraJwksUris(\"...\")\n                .forbiddenDestroySession(false)\n                .forbiddenErrorMessage(\"...my_forbidden_error_message...\")\n                .forbiddenRedirectUris(\"...\")\n                .groupsClaims(\"...\")\n                .groupsRequireds(\"...\")\n                .hideCredentials(true)\n                .httpProxy(\"...my_http_proxy...\")\n                .httpProxyAuthorization(\"...my_http_proxy_authorization...\")\n                .httpVersion(2.54)\n                .httpsProxy(\"...my_https_proxy...\")\n                .httpsProxyAuthorization(\"...my_https_proxy_authorization...\")\n                .idTokenParamName(\"...my_id_token_param_name...\")\n                .idTokenParamTypes(\"query\")\n                .ignoreSignatures(\"refresh_token\")\n                .introspectJwtTokens(true)\n                .introspectionAccept(\"application/json\")\n                .introspectionCheckActive(false)\n                .introspectionEndpoint(\"...my_introspection_endpoint...\")\n                .introspectionEndpointAuthMethod(\"client_secret_basic\")\n                .introspectionHeadersClients(\"...\")\n                .introspectionHeadersNames(\"...\")\n                .introspectionHeadersValues(\"...\")\n                .introspectionHint(\"...my_introspection_hint...\")\n                .introspectionPostArgsClients(\"...\")\n                .introspectionPostArgsClientHeaders(\"...\")\n                .introspectionPostArgsNames(\"...\")\n                .introspectionPostArgsValues(\"...\")\n                .introspectionTokenParamName(\"...my_introspection_token_param_name...\")\n                .issuer(\"...my_issuer...\")\n                .issuersAlloweds(\"...\")\n                .jwtSessionClaim(\"...my_jwt_session_claim...\")\n                .jwtSessionCookie(\"...my_jwt_session_cookie...\")\n                .keepalive(true)\n                .leeway(4.43)\n                .loginAction(\"redirect\")\n                .loginMethods(\"authorization_code\")\n                .loginRedirectMode(\"query\")\n                .loginRedirectUris(\"...\")\n                .loginTokens(\"refresh_token\")\n                .logoutMethods(\"GET\")\n                .logoutPostArg(\"...my_logout_post_arg...\")\n                .logoutQueryArg(\"...my_logout_query_arg...\")\n                .logoutRedirectUris(\"...\")\n                .logoutRevoke(true)\n                .logoutRevokeAccessToken(false)\n                .logoutRevokeRefreshToken(false)\n                .logoutUriSuffix(\"...my_logout_uri_suffix...\")\n                .maxAge(0.81)\n                .mtlsIntrospectionEndpoint(\"...my_mtls_introspection_endpoint...\")\n                .mtlsRevocationEndpoint(\"...my_mtls_revocation_endpoint...\")\n                .mtlsTokenEndpoint(\"...my_mtls_token_endpoint...\")\n                .noProxy(\"...my_no_proxy...\")\n                .passwordParamTypes(\"body\")\n                .preserveQueryArgs(true)\n                .proofOfPossessionAuthMethodsValidation(true)\n                .proofOfPossessionDpop(\"optional\")\n                .proofOfPossessionMtls(\"off\")\n                .pushedAuthorizationRequestEndpoint(\"...my_pushed_authorization_request_endpoint...\")\n                .pushedAuthorizationRequestEndpointAuthMethod(\"tls_client_auth\")\n                .redirectUris(\"...\")\n                .redis(GatewayPluginOpenidConnectConfigRedisArgs.builder()\n                    .cloudAuthentication(GatewayPluginOpenidConnectConfigRedisCloudAuthenticationArgs.builder()\n                        .authProvider(\"gcp\")\n                        .awsAccessKeyId(\"...my_aws_access_key_id...\")\n                        .awsAssumeRoleArn(\"...my_aws_assume_role_arn...\")\n                        .awsCacheName(\"...my_aws_cache_name...\")\n                        .awsIsServerless(false)\n                        .awsRegion(\"...my_aws_region...\")\n                        .awsRoleSessionName(\"...my_aws_role_session_name...\")\n                        .awsSecretAccessKey(\"...my_aws_secret_access_key...\")\n                        .azureClientId(\"...my_azure_client_id...\")\n                        .azureClientSecret(\"...my_azure_client_secret...\")\n                        .azureTenantId(\"...my_azure_tenant_id...\")\n                        .gcpServiceAccountJson(\"...my_gcp_service_account_json...\")\n                        .build())\n                    .clusterMaxRedirections(9.0)\n                    .clusterNodes(GatewayPluginOpenidConnectConfigRedisClusterNodeArgs.builder()\n                        .ip(\"...my_ip...\")\n                        .port(55819.0)\n                        .build())\n                    .connectTimeout(829309575.0)\n                    .connectionIsProxied(true)\n                    .database(2.0)\n                    .host(\"...my_host...\")\n                    .keepaliveBacklog(1420640006.0)\n                    .keepalivePoolSize(147781497.0)\n                    .password(\"...my_password...\")\n                    .port(20220.0)\n                    .prefix(\"...my_prefix...\")\n                    .readTimeout(2120279470.0)\n                    .sendTimeout(523577252.0)\n                    .sentinelMaster(\"...my_sentinel_master...\")\n                    .sentinelNodes(GatewayPluginOpenidConnectConfigRedisSentinelNodeArgs.builder()\n                        .host(\"...my_host...\")\n                        .port(58352.0)\n                        .build())\n                    .sentinelPassword(\"...my_sentinel_password...\")\n                    .sentinelRole(\"slave\")\n                    .sentinelUsername(\"...my_sentinel_username...\")\n                    .serverName(\"...my_server_name...\")\n                    .socket(\"...my_socket...\")\n                    .ssl(true)\n                    .sslVerify(true)\n                    .username(\"...my_username...\")\n                    .build())\n                .rediscoveryLifetime(0.82)\n                .refreshTokenParamName(\"...my_refresh_token_param_name...\")\n                .refreshTokenParamTypes(\"header\")\n                .refreshTokens(true)\n                .requireProofKeyForCodeExchange(true)\n                .requirePushedAuthorizationRequests(true)\n                .requireSignedRequestObject(false)\n                .resolveDistributedClaims(true)\n                .responseMode(\"fragment.jwt\")\n                .responseTypes(\"...\")\n                .reverify(false)\n                .revocationEndpoint(\"...my_revocation_endpoint...\")\n                .revocationEndpointAuthMethod(\"tls_client_auth\")\n                .revocationTokenParamName(\"...my_revocation_token_param_name...\")\n                .rolesClaims(\"...\")\n                .rolesRequireds(\"...\")\n                .runOnPreflight(true)\n                .scopes(\"...\")\n                .scopesClaims(\"...\")\n                .scopesRequireds(\"...\")\n                .searchUserInfo(false)\n                .sessionAbsoluteTimeout(6.27)\n                .sessionAudience(\"...my_session_audience...\")\n                .sessionBinds(\"scheme\")\n                .sessionCookieDomain(\"...my_session_cookie_domain...\")\n                .sessionCookieHttpOnly(false)\n                .sessionCookieName(\"...my_session_cookie_name...\")\n                .sessionCookiePath(\"...my_session_cookie_path...\")\n                .sessionCookieSameSite(\"Default\")\n                .sessionCookieSecure(true)\n                .sessionEnforceSameSubject(false)\n                .sessionHashStorageKey(false)\n                .sessionHashSubject(false)\n                .sessionIdlingTimeout(9.33)\n                .sessionMemcachedHost(\"...my_session_memcached_host...\")\n                .sessionMemcachedPort(10230.0)\n                .sessionMemcachedPrefix(\"...my_session_memcached_prefix...\")\n                .sessionMemcachedSocket(\"...my_session_memcached_socket...\")\n                .sessionMemcachedSsl(true)\n                .sessionMemcachedSslVerify(false)\n                .sessionRemember(false)\n                .sessionRememberAbsoluteTimeout(6.89)\n                .sessionRememberCookieName(\"...my_session_remember_cookie_name...\")\n                .sessionRememberRollingTimeout(2.91)\n                .sessionRequestHeaders(\"audience\")\n                .sessionResponseHeaders(\"absolute-timeout\")\n                .sessionRollingTimeout(5.68)\n                .sessionSecret(\"...my_session_secret...\")\n                .sessionStorage(\"memcache\")\n                .sessionStoreMetadata(true)\n                .sslVerify(true)\n                .timeout(0.75)\n                .tlsClientAuthCertId(\"...my_tls_client_auth_cert_id...\")\n                .tlsClientAuthSslVerify(false)\n                .tokenCacheKeyIncludeScope(true)\n                .tokenEndpoint(\"...my_token_endpoint...\")\n                .tokenEndpointAuthMethod(\"client_secret_post\")\n                .tokenExchangeEndpoint(\"...my_token_exchange_endpoint...\")\n                .tokenHeadersClients(\"...\")\n                .tokenHeadersGrants(\"client_credentials\")\n                .tokenHeadersNames(\"...\")\n                .tokenHeadersPrefix(\"...my_token_headers_prefix...\")\n                .tokenHeadersReplays(\"...\")\n                .tokenHeadersValues(\"...\")\n                .tokenPostArgsClients(\"...\")\n                .tokenPostArgsNames(\"...\")\n                .tokenPostArgsValues(\"...\")\n                .unauthorizedDestroySession(false)\n                .unauthorizedErrorMessage(\"...my_unauthorized_error_message...\")\n                .unauthorizedRedirectUris(\"...\")\n                .unexpectedRedirectUris(\"...\")\n                .upstreamAccessTokenHeader(\"...my_upstream_access_token_header...\")\n                .upstreamAccessTokenJwkHeader(\"...my_upstream_access_token_jwk_header...\")\n                .upstreamHeadersClaims(\"...\")\n                .upstreamHeadersNames(\"...\")\n                .upstreamIdTokenHeader(\"...my_upstream_id_token_header...\")\n                .upstreamIdTokenJwkHeader(\"...my_upstream_id_token_jwk_header...\")\n                .upstreamIntrospectionHeader(\"...my_upstream_introspection_header...\")\n                .upstreamIntrospectionJwtHeader(\"...my_upstream_introspection_jwt_header...\")\n                .upstreamRefreshTokenHeader(\"...my_upstream_refresh_token_header...\")\n                .upstreamSessionIdHeader(\"...my_upstream_session_id_header...\")\n                .upstreamUserInfoHeader(\"...my_upstream_user_info_header...\")\n                .upstreamUserInfoJwtHeader(\"...my_upstream_user_info_jwt_header...\")\n                .userinfoAccept(\"application/json\")\n                .userinfoEndpoint(\"...my_userinfo_endpoint...\")\n                .userinfoHeadersClients(\"...\")\n                .userinfoHeadersNames(\"...\")\n                .userinfoHeadersValues(\"...\")\n                .userinfoQueryArgsClients(\"...\")\n                .userinfoQueryArgsNames(\"...\")\n                .userinfoQueryArgsValues(\"...\")\n                .usingPseudoIssuer(true)\n                .verifyClaims(true)\n                .verifyNonce(false)\n                .verifyParameters(true)\n                .verifySignature(false)\n                .build())\n            .controlPlaneId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .createdAt(7.0)\n            .enabled(true)\n            .gatewayPluginOpenidConnectId(\"...my_id...\")\n            .instanceName(\"...my_instance_name...\")\n            .ordering(GatewayPluginOpenidConnectOrderingArgs.builder()\n                .after(GatewayPluginOpenidConnectOrderingAfterArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .before(GatewayPluginOpenidConnectOrderingBeforeArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .build())\n            .partials(GatewayPluginOpenidConnectPartialArgs.builder()\n                .id(\"...my_id...\")\n                .name(\"...my_name...\")\n                .path(\"...my_path...\")\n                .build())\n            .protocols(\"http\")\n            .route(GatewayPluginOpenidConnectRouteArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .service(GatewayPluginOpenidConnectServiceArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .tags(\"...\")\n            .updatedAt(2.0)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myGatewaypluginopenidconnect:\n    type: konnect:GatewayPluginOpenidConnect\n    name: my_gatewaypluginopenidconnect\n    properties:\n      config:\n        anonymous: '...my_anonymous...'\n        audiences:\n          - '...'\n        audienceClaims:\n          - '...'\n        audienceRequireds:\n          - '...'\n        authMethods:\n          - userinfo\n        authenticatedGroupsClaims:\n          - '...'\n        authorizationCookieDomain: '...my_authorization_cookie_domain...'\n        authorizationCookieHttpOnly: false\n        authorizationCookieName: '...my_authorization_cookie_name...'\n        authorizationCookiePath: '...my_authorization_cookie_path...'\n        authorizationCookieSameSite: Strict\n        authorizationCookieSecure: false\n        authorizationEndpoint: '...my_authorization_endpoint...'\n        authorizationQueryArgsClients:\n          - '...'\n        authorizationQueryArgsNames:\n          - '...'\n        authorizationQueryArgsValues:\n          - '...'\n        authorizationRollingTimeout: 1.26\n        bearerTokenCookieName: '...my_bearer_token_cookie_name...'\n        bearerTokenParamTypes:\n          - body\n        byUsernameIgnoreCase: false\n        cacheIntrospection: true\n        cacheTokenExchange: false\n        cacheTokens: false\n        cacheTokensSalt: '...my_cache_tokens_salt...'\n        cacheTtl: 4.51\n        cacheTtlMax: 8.18\n        cacheTtlMin: 0.48\n        cacheTtlNeg: 5.85\n        cacheTtlResurrect: 0.5\n        cacheUserInfo: false\n        claimsForbiddens:\n          - '...'\n        clientAlgs:\n          - HS384\n        clientArg: '...my_client_arg...'\n        clientAuths:\n          - client_secret_post\n        clientCredentialsParamTypes:\n          - query\n        clientIds:\n          - '...'\n        clientJwks:\n          - alg: '...my_alg...'\n            crv: '...my_crv...'\n            d: '...my_d...'\n            dp: '...my_dp...'\n            dq: '...my_dq...'\n            e: '...my_e...'\n            issuer: '...my_issuer...'\n            k: '...my_k...'\n            keyOps:\n              - '...'\n            kid: '...my_kid...'\n            kty: '...my_kty...'\n            n: '...my_n...'\n            oth: '...my_oth...'\n            p: '...my_p...'\n            q: '...my_q...'\n            qi: '...my_qi...'\n            r: '...my_r...'\n            t: '...my_t...'\n            use: '...my_use...'\n            x: '...my_x...'\n            x5cs:\n              - '...'\n            x5t: '...my_x5t...'\n            x5tNumberS256: '...my_x5t_number_s256...'\n            x5u: '...my_x5u...'\n            y: '...my_y...'\n        clientSecrets:\n          - '...'\n        clusterCacheRedis:\n          cloudAuthentication:\n            authProvider: azure\n            awsAccessKeyId: '...my_aws_access_key_id...'\n            awsAssumeRoleArn: '...my_aws_assume_role_arn...'\n            awsCacheName: '...my_aws_cache_name...'\n            awsIsServerless: false\n            awsRegion: '...my_aws_region...'\n            awsRoleSessionName: '...my_aws_role_session_name...'\n            awsSecretAccessKey: '...my_aws_secret_access_key...'\n            azureClientId: '...my_azure_client_id...'\n            azureClientSecret: '...my_azure_client_secret...'\n            azureTenantId: '...my_azure_tenant_id...'\n            gcpServiceAccountJson: '...my_gcp_service_account_json...'\n          clusterMaxRedirections: 5\n          clusterNodes:\n            - ip: '...my_ip...'\n              port: 39126\n          connectTimeout: 1.007376275e+09\n          connectionIsProxied: false\n          database: 6\n          host: '...my_host...'\n          keepaliveBacklog: 5.13691764e+08\n          keepalivePoolSize: 7.42855137e+08\n          password: '...my_password...'\n          port: 25288\n          readTimeout: 1.652724306e+09\n          sendTimeout: 2.4704322e+07\n          sentinelMaster: '...my_sentinel_master...'\n          sentinelNodes:\n            - host: '...my_host...'\n              port: 5690\n          sentinelPassword: '...my_sentinel_password...'\n          sentinelRole: any\n          sentinelUsername: '...my_sentinel_username...'\n          serverName: '...my_server_name...'\n          ssl: true\n          sslVerify: true\n          username: '...my_username...'\n        clusterCacheStrategy: off\n        consumerBies:\n          - id\n        consumerClaims:\n          - '...'\n        consumerGroupsClaims:\n          - '...'\n        consumerGroupsOptional: true\n        consumerOptional: true\n        credentialClaims:\n          - '...'\n        disableSessions:\n          - bearer\n        discoveryHeadersNames:\n          - '...'\n        discoveryHeadersValues:\n          - '...'\n        displayErrors: false\n        domains:\n          - '...'\n        downstreamAccessTokenHeader: '...my_downstream_access_token_header...'\n        downstreamAccessTokenJwkHeader: '...my_downstream_access_token_jwk_header...'\n        downstreamHeadersClaims:\n          - '...'\n        downstreamHeadersNames:\n          - '...'\n        downstreamIdTokenHeader: '...my_downstream_id_token_header...'\n        downstreamIdTokenJwkHeader: '...my_downstream_id_token_jwk_header...'\n        downstreamIntrospectionHeader: '...my_downstream_introspection_header...'\n        downstreamIntrospectionJwtHeader: '...my_downstream_introspection_jwt_header...'\n        downstreamRefreshTokenHeader: '...my_downstream_refresh_token_header...'\n        downstreamSessionIdHeader: '...my_downstream_session_id_header...'\n        downstreamUserInfoHeader: '...my_downstream_user_info_header...'\n        downstreamUserInfoJwtHeader: '...my_downstream_user_info_jwt_header...'\n        dpopProofLifetime: 9.34\n        dpopUseNonce: true\n        enableHsSignatures: true\n        endSessionEndpoint: '...my_end_session_endpoint...'\n        exposeErrorCode: false\n        extraJwksUris:\n          - '...'\n        forbiddenDestroySession: false\n        forbiddenErrorMessage: '...my_forbidden_error_message...'\n        forbiddenRedirectUris:\n          - '...'\n        groupsClaims:\n          - '...'\n        groupsRequireds:\n          - '...'\n        hideCredentials: true\n        httpProxy: '...my_http_proxy...'\n        httpProxyAuthorization: '...my_http_proxy_authorization...'\n        httpVersion: 2.54\n        httpsProxy: '...my_https_proxy...'\n        httpsProxyAuthorization: '...my_https_proxy_authorization...'\n        idTokenParamName: '...my_id_token_param_name...'\n        idTokenParamTypes:\n          - query\n        ignoreSignatures:\n          - refresh_token\n        introspectJwtTokens: true\n        introspectionAccept: application/json\n        introspectionCheckActive: false\n        introspectionEndpoint: '...my_introspection_endpoint...'\n        introspectionEndpointAuthMethod: client_secret_basic\n        introspectionHeadersClients:\n          - '...'\n        introspectionHeadersNames:\n          - '...'\n        introspectionHeadersValues:\n          - '...'\n        introspectionHint: '...my_introspection_hint...'\n        introspectionPostArgsClients:\n          - '...'\n        introspectionPostArgsClientHeaders:\n          - '...'\n        introspectionPostArgsNames:\n          - '...'\n        introspectionPostArgsValues:\n          - '...'\n        introspectionTokenParamName: '...my_introspection_token_param_name...'\n        issuer: '...my_issuer...'\n        issuersAlloweds:\n          - '...'\n        jwtSessionClaim: '...my_jwt_session_claim...'\n        jwtSessionCookie: '...my_jwt_session_cookie...'\n        keepalive: true\n        leeway: 4.43\n        loginAction: redirect\n        loginMethods:\n          - authorization_code\n        loginRedirectMode: query\n        loginRedirectUris:\n          - '...'\n        loginTokens:\n          - refresh_token\n        logoutMethods:\n          - GET\n        logoutPostArg: '...my_logout_post_arg...'\n        logoutQueryArg: '...my_logout_query_arg...'\n        logoutRedirectUris:\n          - '...'\n        logoutRevoke: true\n        logoutRevokeAccessToken: false\n        logoutRevokeRefreshToken: false\n        logoutUriSuffix: '...my_logout_uri_suffix...'\n        maxAge: 0.81\n        mtlsIntrospectionEndpoint: '...my_mtls_introspection_endpoint...'\n        mtlsRevocationEndpoint: '...my_mtls_revocation_endpoint...'\n        mtlsTokenEndpoint: '...my_mtls_token_endpoint...'\n        noProxy: '...my_no_proxy...'\n        passwordParamTypes:\n          - body\n        preserveQueryArgs: true\n        proofOfPossessionAuthMethodsValidation: true\n        proofOfPossessionDpop: optional\n        proofOfPossessionMtls: off\n        pushedAuthorizationRequestEndpoint: '...my_pushed_authorization_request_endpoint...'\n        pushedAuthorizationRequestEndpointAuthMethod: tls_client_auth\n        redirectUris:\n          - '...'\n        redis:\n          cloudAuthentication:\n            authProvider: gcp\n            awsAccessKeyId: '...my_aws_access_key_id...'\n            awsAssumeRoleArn: '...my_aws_assume_role_arn...'\n            awsCacheName: '...my_aws_cache_name...'\n            awsIsServerless: false\n            awsRegion: '...my_aws_region...'\n            awsRoleSessionName: '...my_aws_role_session_name...'\n            awsSecretAccessKey: '...my_aws_secret_access_key...'\n            azureClientId: '...my_azure_client_id...'\n            azureClientSecret: '...my_azure_client_secret...'\n            azureTenantId: '...my_azure_tenant_id...'\n            gcpServiceAccountJson: '...my_gcp_service_account_json...'\n          clusterMaxRedirections: 9\n          clusterNodes:\n            - ip: '...my_ip...'\n              port: 55819\n          connectTimeout: 8.29309575e+08\n          connectionIsProxied: true\n          database: 2\n          host: '...my_host...'\n          keepaliveBacklog: 1.420640006e+09\n          keepalivePoolSize: 1.47781497e+08\n          password: '...my_password...'\n          port: 20220\n          prefix: '...my_prefix...'\n          readTimeout: 2.12027947e+09\n          sendTimeout: 5.23577252e+08\n          sentinelMaster: '...my_sentinel_master...'\n          sentinelNodes:\n            - host: '...my_host...'\n              port: 58352\n          sentinelPassword: '...my_sentinel_password...'\n          sentinelRole: slave\n          sentinelUsername: '...my_sentinel_username...'\n          serverName: '...my_server_name...'\n          socket: '...my_socket...'\n          ssl: true\n          sslVerify: true\n          username: '...my_username...'\n        rediscoveryLifetime: 0.82\n        refreshTokenParamName: '...my_refresh_token_param_name...'\n        refreshTokenParamTypes:\n          - header\n        refreshTokens: true\n        requireProofKeyForCodeExchange: true\n        requirePushedAuthorizationRequests: true\n        requireSignedRequestObject: false\n        resolveDistributedClaims: true\n        responseMode: fragment.jwt\n        responseTypes:\n          - '...'\n        reverify: false\n        revocationEndpoint: '...my_revocation_endpoint...'\n        revocationEndpointAuthMethod: tls_client_auth\n        revocationTokenParamName: '...my_revocation_token_param_name...'\n        rolesClaims:\n          - '...'\n        rolesRequireds:\n          - '...'\n        runOnPreflight: true\n        scopes:\n          - '...'\n        scopesClaims:\n          - '...'\n        scopesRequireds:\n          - '...'\n        searchUserInfo: false\n        sessionAbsoluteTimeout: 6.27\n        sessionAudience: '...my_session_audience...'\n        sessionBinds:\n          - scheme\n        sessionCookieDomain: '...my_session_cookie_domain...'\n        sessionCookieHttpOnly: false\n        sessionCookieName: '...my_session_cookie_name...'\n        sessionCookiePath: '...my_session_cookie_path...'\n        sessionCookieSameSite: Default\n        sessionCookieSecure: true\n        sessionEnforceSameSubject: false\n        sessionHashStorageKey: false\n        sessionHashSubject: false\n        sessionIdlingTimeout: 9.33\n        sessionMemcachedHost: '...my_session_memcached_host...'\n        sessionMemcachedPort: 10230\n        sessionMemcachedPrefix: '...my_session_memcached_prefix...'\n        sessionMemcachedSocket: '...my_session_memcached_socket...'\n        sessionMemcachedSsl: true\n        sessionMemcachedSslVerify: false\n        sessionRemember: false\n        sessionRememberAbsoluteTimeout: 6.89\n        sessionRememberCookieName: '...my_session_remember_cookie_name...'\n        sessionRememberRollingTimeout: 2.91\n        sessionRequestHeaders:\n          - audience\n        sessionResponseHeaders:\n          - absolute-timeout\n        sessionRollingTimeout: 5.68\n        sessionSecret: '...my_session_secret...'\n        sessionStorage: memcache\n        sessionStoreMetadata: true\n        sslVerify: true\n        timeout: 0.75\n        tlsClientAuthCertId: '...my_tls_client_auth_cert_id...'\n        tlsClientAuthSslVerify: false\n        tokenCacheKeyIncludeScope: true\n        tokenEndpoint: '...my_token_endpoint...'\n        tokenEndpointAuthMethod: client_secret_post\n        tokenExchangeEndpoint: '...my_token_exchange_endpoint...'\n        tokenHeadersClients:\n          - '...'\n        tokenHeadersGrants:\n          - client_credentials\n        tokenHeadersNames:\n          - '...'\n        tokenHeadersPrefix: '...my_token_headers_prefix...'\n        tokenHeadersReplays:\n          - '...'\n        tokenHeadersValues:\n          - '...'\n        tokenPostArgsClients:\n          - '...'\n        tokenPostArgsNames:\n          - '...'\n        tokenPostArgsValues:\n          - '...'\n        unauthorizedDestroySession: false\n        unauthorizedErrorMessage: '...my_unauthorized_error_message...'\n        unauthorizedRedirectUris:\n          - '...'\n        unexpectedRedirectUris:\n          - '...'\n        upstreamAccessTokenHeader: '...my_upstream_access_token_header...'\n        upstreamAccessTokenJwkHeader: '...my_upstream_access_token_jwk_header...'\n        upstreamHeadersClaims:\n          - '...'\n        upstreamHeadersNames:\n          - '...'\n        upstreamIdTokenHeader: '...my_upstream_id_token_header...'\n        upstreamIdTokenJwkHeader: '...my_upstream_id_token_jwk_header...'\n        upstreamIntrospectionHeader: '...my_upstream_introspection_header...'\n        upstreamIntrospectionJwtHeader: '...my_upstream_introspection_jwt_header...'\n        upstreamRefreshTokenHeader: '...my_upstream_refresh_token_header...'\n        upstreamSessionIdHeader: '...my_upstream_session_id_header...'\n        upstreamUserInfoHeader: '...my_upstream_user_info_header...'\n        upstreamUserInfoJwtHeader: '...my_upstream_user_info_jwt_header...'\n        userinfoAccept: application/json\n        userinfoEndpoint: '...my_userinfo_endpoint...'\n        userinfoHeadersClients:\n          - '...'\n        userinfoHeadersNames:\n          - '...'\n        userinfoHeadersValues:\n          - '...'\n        userinfoQueryArgsClients:\n          - '...'\n        userinfoQueryArgsNames:\n          - '...'\n        userinfoQueryArgsValues:\n          - '...'\n        usingPseudoIssuer: true\n        verifyClaims: true\n        verifyNonce: false\n        verifyParameters: true\n        verifySignature: false\n      controlPlaneId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      createdAt: 7\n      enabled: true\n      gatewayPluginOpenidConnectId: '...my_id...'\n      instanceName: '...my_instance_name...'\n      ordering:\n        after:\n          accesses:\n            - '...'\n        before:\n          accesses:\n            - '...'\n      partials:\n        - id: '...my_id...'\n          name: '...my_name...'\n          path: '...my_path...'\n      protocols:\n        - http\n      route:\n        id: '...my_id...'\n      service:\n        id: '...my_id...'\n      tags:\n        - '...'\n      updatedAt: 2\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_gateway_plugin_openid_connect.my_konnect_gateway_plugin_openid_connect\n\n  id = jsonencode({\n\n    control_plane_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/gatewayPluginOpenidConnect:GatewayPluginOpenidConnect my_konnect_gateway_plugin_openid_connect '{\"control_plane_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"}'\n```\n\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginOpenidConnectConfig:GatewayPluginOpenidConnectConfig"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginOpenidConnectId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginOpenidConnectOrdering:GatewayPluginOpenidConnectOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginOpenidConnectPartial:GatewayPluginOpenidConnectPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginOpenidConnectRoute:GatewayPluginOpenidConnectRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginOpenidConnectService:GatewayPluginOpenidConnectService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object","required":["config","controlPlaneId","createdAt","enabled","gatewayPluginOpenidConnectId","ordering","protocols","route","service","updatedAt"],"inputProperties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginOpenidConnectConfig:GatewayPluginOpenidConnectConfig"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginOpenidConnectId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginOpenidConnectOrdering:GatewayPluginOpenidConnectOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginOpenidConnectPartial:GatewayPluginOpenidConnectPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginOpenidConnectRoute:GatewayPluginOpenidConnectRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginOpenidConnectService:GatewayPluginOpenidConnectService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"requiredInputs":["config","controlPlaneId"],"stateInputs":{"description":"Input properties used for looking up and filtering GatewayPluginOpenidConnect resources.\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginOpenidConnectConfig:GatewayPluginOpenidConnectConfig"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginOpenidConnectId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginOpenidConnectOrdering:GatewayPluginOpenidConnectOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginOpenidConnectPartial:GatewayPluginOpenidConnectPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginOpenidConnectRoute:GatewayPluginOpenidConnectRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginOpenidConnectService:GatewayPluginOpenidConnectService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object"}},"konnect:index/gatewayPluginOpentelemetry:GatewayPluginOpentelemetry":{"description":"GatewayPluginOpentelemetry Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myGatewaypluginopentelemetry = new konnect.GatewayPluginOpentelemetry(\"my_gatewaypluginopentelemetry\", {\n    config: {\n        accessLogsEndpoint: \"...my_access_logs_endpoint...\",\n        batchFlushDelay: 7,\n        batchSpanCount: 5,\n        connectTimeout: 1207240418,\n        headerType: \"gcp\",\n        headers: {\n            key: \"value\",\n        },\n        httpResponseHeaderForTraceid: \"...my_http_response_header_for_traceid...\",\n        logsEndpoint: \"...my_logs_endpoint...\",\n        metrics: {\n            enableBandwidthMetrics: true,\n            enableConsumerAttribute: false,\n            enableLatencyMetrics: false,\n            enableRequestMetrics: true,\n            enableUpstreamHealthMetrics: false,\n            endpoint: \"...my_endpoint...\",\n            pushInterval: 0.85,\n        },\n        propagation: {\n            clears: [\"...\"],\n            defaultFormat: \"aws\",\n            extracts: [\"instana\"],\n            injects: [\"b3\"],\n        },\n        queue: {\n            concurrencyLimit: 2,\n            initialRetryDelay: 226722.01,\n            maxBatchSize: 779071,\n            maxBytes: 9,\n            maxCoalescingDelay: 763.01,\n            maxEntries: 975127,\n            maxRetryDelay: 892016.33,\n            maxRetryTime: 0.21,\n        },\n        readTimeout: 1485093464,\n        resourceAttributes: {\n            key: \"value\",\n        },\n        samplingRate: 0.37,\n        samplingStrategy: \"parent_drop_probability_fallback\",\n        sendTimeout: 1637096441,\n        tracesEndpoint: \"...my_traces_endpoint...\",\n    },\n    consumer: {\n        id: \"...my_id...\",\n    },\n    controlPlaneId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    createdAt: 0,\n    enabled: false,\n    gatewayPluginOpentelemetryId: \"...my_id...\",\n    instanceName: \"...my_instance_name...\",\n    ordering: {\n        after: {\n            accesses: [\"...\"],\n        },\n        before: {\n            accesses: [\"...\"],\n        },\n    },\n    partials: [{\n        id: \"...my_id...\",\n        name: \"...my_name...\",\n        path: \"...my_path...\",\n    }],\n    protocols: [\"tls_passthrough\"],\n    route: {\n        id: \"...my_id...\",\n    },\n    service: {\n        id: \"...my_id...\",\n    },\n    tags: [\"...\"],\n    updatedAt: 8,\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_gatewaypluginopentelemetry = konnect.GatewayPluginOpentelemetry(\"my_gatewaypluginopentelemetry\",\n    config={\n        \"access_logs_endpoint\": \"...my_access_logs_endpoint...\",\n        \"batch_flush_delay\": 7,\n        \"batch_span_count\": 5,\n        \"connect_timeout\": 1207240418,\n        \"header_type\": \"gcp\",\n        \"headers\": {\n            \"key\": \"value\",\n        },\n        \"http_response_header_for_traceid\": \"...my_http_response_header_for_traceid...\",\n        \"logs_endpoint\": \"...my_logs_endpoint...\",\n        \"metrics\": {\n            \"enable_bandwidth_metrics\": True,\n            \"enable_consumer_attribute\": False,\n            \"enable_latency_metrics\": False,\n            \"enable_request_metrics\": True,\n            \"enable_upstream_health_metrics\": False,\n            \"endpoint\": \"...my_endpoint...\",\n            \"push_interval\": 0.85,\n        },\n        \"propagation\": {\n            \"clears\": [\"...\"],\n            \"default_format\": \"aws\",\n            \"extracts\": [\"instana\"],\n            \"injects\": [\"b3\"],\n        },\n        \"queue\": {\n            \"concurrency_limit\": 2,\n            \"initial_retry_delay\": 226722.01,\n            \"max_batch_size\": 779071,\n            \"max_bytes\": 9,\n            \"max_coalescing_delay\": 763.01,\n            \"max_entries\": 975127,\n            \"max_retry_delay\": 892016.33,\n            \"max_retry_time\": 0.21,\n        },\n        \"read_timeout\": 1485093464,\n        \"resource_attributes\": {\n            \"key\": \"value\",\n        },\n        \"sampling_rate\": 0.37,\n        \"sampling_strategy\": \"parent_drop_probability_fallback\",\n        \"send_timeout\": 1637096441,\n        \"traces_endpoint\": \"...my_traces_endpoint...\",\n    },\n    consumer={\n        \"id\": \"...my_id...\",\n    },\n    control_plane_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    created_at=0,\n    enabled=False,\n    gateway_plugin_opentelemetry_id=\"...my_id...\",\n    instance_name=\"...my_instance_name...\",\n    ordering={\n        \"after\": {\n            \"accesses\": [\"...\"],\n        },\n        \"before\": {\n            \"accesses\": [\"...\"],\n        },\n    },\n    partials=[{\n        \"id\": \"...my_id...\",\n        \"name\": \"...my_name...\",\n        \"path\": \"...my_path...\",\n    }],\n    protocols=[\"tls_passthrough\"],\n    route={\n        \"id\": \"...my_id...\",\n    },\n    service={\n        \"id\": \"...my_id...\",\n    },\n    tags=[\"...\"],\n    updated_at=8)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myGatewaypluginopentelemetry = new Konnect.GatewayPluginOpentelemetry(\"my_gatewaypluginopentelemetry\", new()\n    {\n        Config = new Konnect.Inputs.GatewayPluginOpentelemetryConfigArgs\n        {\n            AccessLogsEndpoint = \"...my_access_logs_endpoint...\",\n            BatchFlushDelay = 7,\n            BatchSpanCount = 5,\n            ConnectTimeout = 1207240418,\n            HeaderType = \"gcp\",\n            Headers = \n            {\n                { \"key\", \"value\" },\n            },\n            HttpResponseHeaderForTraceid = \"...my_http_response_header_for_traceid...\",\n            LogsEndpoint = \"...my_logs_endpoint...\",\n            Metrics = new Konnect.Inputs.GatewayPluginOpentelemetryConfigMetricsArgs\n            {\n                EnableBandwidthMetrics = true,\n                EnableConsumerAttribute = false,\n                EnableLatencyMetrics = false,\n                EnableRequestMetrics = true,\n                EnableUpstreamHealthMetrics = false,\n                Endpoint = \"...my_endpoint...\",\n                PushInterval = 0.85,\n            },\n            Propagation = new Konnect.Inputs.GatewayPluginOpentelemetryConfigPropagationArgs\n            {\n                Clears = new[]\n                {\n                    \"...\",\n                },\n                DefaultFormat = \"aws\",\n                Extracts = new[]\n                {\n                    \"instana\",\n                },\n                Injects = new[]\n                {\n                    \"b3\",\n                },\n            },\n            Queue = new Konnect.Inputs.GatewayPluginOpentelemetryConfigQueueArgs\n            {\n                ConcurrencyLimit = 2,\n                InitialRetryDelay = 226722.01,\n                MaxBatchSize = 779071,\n                MaxBytes = 9,\n                MaxCoalescingDelay = 763.01,\n                MaxEntries = 975127,\n                MaxRetryDelay = 892016.33,\n                MaxRetryTime = 0.21,\n            },\n            ReadTimeout = 1485093464,\n            ResourceAttributes = \n            {\n                { \"key\", \"value\" },\n            },\n            SamplingRate = 0.37,\n            SamplingStrategy = \"parent_drop_probability_fallback\",\n            SendTimeout = 1637096441,\n            TracesEndpoint = \"...my_traces_endpoint...\",\n        },\n        Consumer = new Konnect.Inputs.GatewayPluginOpentelemetryConsumerArgs\n        {\n            Id = \"...my_id...\",\n        },\n        ControlPlaneId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        CreatedAt = 0,\n        Enabled = false,\n        GatewayPluginOpentelemetryId = \"...my_id...\",\n        InstanceName = \"...my_instance_name...\",\n        Ordering = new Konnect.Inputs.GatewayPluginOpentelemetryOrderingArgs\n        {\n            After = new Konnect.Inputs.GatewayPluginOpentelemetryOrderingAfterArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n            Before = new Konnect.Inputs.GatewayPluginOpentelemetryOrderingBeforeArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n        },\n        Partials = new[]\n        {\n            new Konnect.Inputs.GatewayPluginOpentelemetryPartialArgs\n            {\n                Id = \"...my_id...\",\n                Name = \"...my_name...\",\n                Path = \"...my_path...\",\n            },\n        },\n        Protocols = new[]\n        {\n            \"tls_passthrough\",\n        },\n        Route = new Konnect.Inputs.GatewayPluginOpentelemetryRouteArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Service = new Konnect.Inputs.GatewayPluginOpentelemetryServiceArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Tags = new[]\n        {\n            \"...\",\n        },\n        UpdatedAt = 8,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewGatewayPluginOpentelemetry(ctx, \"my_gatewaypluginopentelemetry\", \u0026konnect.GatewayPluginOpentelemetryArgs{\n\t\t\tConfig: \u0026konnect.GatewayPluginOpentelemetryConfigArgs{\n\t\t\t\tAccessLogsEndpoint: pulumi.String(\"...my_access_logs_endpoint...\"),\n\t\t\t\tBatchFlushDelay:    pulumi.Float64(7),\n\t\t\t\tBatchSpanCount:     pulumi.Float64(5),\n\t\t\t\tConnectTimeout:     pulumi.Float64(1207240418),\n\t\t\t\tHeaderType:         pulumi.String(\"gcp\"),\n\t\t\t\tHeaders: pulumi.StringMap{\n\t\t\t\t\t\"key\": pulumi.String(\"value\"),\n\t\t\t\t},\n\t\t\t\tHttpResponseHeaderForTraceid: pulumi.String(\"...my_http_response_header_for_traceid...\"),\n\t\t\t\tLogsEndpoint:                 pulumi.String(\"...my_logs_endpoint...\"),\n\t\t\t\tMetrics: \u0026konnect.GatewayPluginOpentelemetryConfigMetricsArgs{\n\t\t\t\t\tEnableBandwidthMetrics:      pulumi.Bool(true),\n\t\t\t\t\tEnableConsumerAttribute:     pulumi.Bool(false),\n\t\t\t\t\tEnableLatencyMetrics:        pulumi.Bool(false),\n\t\t\t\t\tEnableRequestMetrics:        pulumi.Bool(true),\n\t\t\t\t\tEnableUpstreamHealthMetrics: pulumi.Bool(false),\n\t\t\t\t\tEndpoint:                    pulumi.String(\"...my_endpoint...\"),\n\t\t\t\t\tPushInterval:                pulumi.Float64(0.85),\n\t\t\t\t},\n\t\t\t\tPropagation: \u0026konnect.GatewayPluginOpentelemetryConfigPropagationArgs{\n\t\t\t\t\tClears: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t\tDefaultFormat: pulumi.String(\"aws\"),\n\t\t\t\t\tExtracts: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"instana\"),\n\t\t\t\t\t},\n\t\t\t\t\tInjects: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"b3\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tQueue: \u0026konnect.GatewayPluginOpentelemetryConfigQueueArgs{\n\t\t\t\t\tConcurrencyLimit:   pulumi.Float64(2),\n\t\t\t\t\tInitialRetryDelay:  pulumi.Float64(226722.01),\n\t\t\t\t\tMaxBatchSize:       pulumi.Float64(779071),\n\t\t\t\t\tMaxBytes:           pulumi.Float64(9),\n\t\t\t\t\tMaxCoalescingDelay: pulumi.Float64(763.01),\n\t\t\t\t\tMaxEntries:         pulumi.Float64(975127),\n\t\t\t\t\tMaxRetryDelay:      pulumi.Float64(892016.33),\n\t\t\t\t\tMaxRetryTime:       pulumi.Float64(0.21),\n\t\t\t\t},\n\t\t\t\tReadTimeout: pulumi.Float64(1485093464),\n\t\t\t\tResourceAttributes: pulumi.StringMap{\n\t\t\t\t\t\"key\": pulumi.String(\"value\"),\n\t\t\t\t},\n\t\t\t\tSamplingRate:     pulumi.Float64(0.37),\n\t\t\t\tSamplingStrategy: pulumi.String(\"parent_drop_probability_fallback\"),\n\t\t\t\tSendTimeout:      pulumi.Float64(1637096441),\n\t\t\t\tTracesEndpoint:   pulumi.String(\"...my_traces_endpoint...\"),\n\t\t\t},\n\t\t\tConsumer: \u0026konnect.GatewayPluginOpentelemetryConsumerArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tControlPlaneId:               pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tCreatedAt:                    pulumi.Float64(0),\n\t\t\tEnabled:                      pulumi.Bool(false),\n\t\t\tGatewayPluginOpentelemetryId: pulumi.String(\"...my_id...\"),\n\t\t\tInstanceName:                 pulumi.String(\"...my_instance_name...\"),\n\t\t\tOrdering: \u0026konnect.GatewayPluginOpentelemetryOrderingArgs{\n\t\t\t\tAfter: \u0026konnect.GatewayPluginOpentelemetryOrderingAfterArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tBefore: \u0026konnect.GatewayPluginOpentelemetryOrderingBeforeArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tPartials: konnect.GatewayPluginOpentelemetryPartialArray{\n\t\t\t\t\u0026konnect.GatewayPluginOpentelemetryPartialArgs{\n\t\t\t\t\tId:   pulumi.String(\"...my_id...\"),\n\t\t\t\t\tName: pulumi.String(\"...my_name...\"),\n\t\t\t\t\tPath: pulumi.String(\"...my_path...\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tProtocols: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"tls_passthrough\"),\n\t\t\t},\n\t\t\tRoute: \u0026konnect.GatewayPluginOpentelemetryRouteArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tService: \u0026konnect.GatewayPluginOpentelemetryServiceArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"...\"),\n\t\t\t},\n\t\t\tUpdatedAt: pulumi.Float64(8),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.GatewayPluginOpentelemetry;\nimport com.pulumi.konnect.GatewayPluginOpentelemetryArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginOpentelemetryConfigArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginOpentelemetryConfigMetricsArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginOpentelemetryConfigPropagationArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginOpentelemetryConfigQueueArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginOpentelemetryConsumerArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginOpentelemetryOrderingArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginOpentelemetryOrderingAfterArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginOpentelemetryOrderingBeforeArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginOpentelemetryPartialArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginOpentelemetryRouteArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginOpentelemetryServiceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myGatewaypluginopentelemetry = new GatewayPluginOpentelemetry(\"myGatewaypluginopentelemetry\", GatewayPluginOpentelemetryArgs.builder()\n            .config(GatewayPluginOpentelemetryConfigArgs.builder()\n                .accessLogsEndpoint(\"...my_access_logs_endpoint...\")\n                .batchFlushDelay(7.0)\n                .batchSpanCount(5.0)\n                .connectTimeout(1207240418.0)\n                .headerType(\"gcp\")\n                .headers(Map.of(\"key\", \"value\"))\n                .httpResponseHeaderForTraceid(\"...my_http_response_header_for_traceid...\")\n                .logsEndpoint(\"...my_logs_endpoint...\")\n                .metrics(GatewayPluginOpentelemetryConfigMetricsArgs.builder()\n                    .enableBandwidthMetrics(true)\n                    .enableConsumerAttribute(false)\n                    .enableLatencyMetrics(false)\n                    .enableRequestMetrics(true)\n                    .enableUpstreamHealthMetrics(false)\n                    .endpoint(\"...my_endpoint...\")\n                    .pushInterval(0.85)\n                    .build())\n                .propagation(GatewayPluginOpentelemetryConfigPropagationArgs.builder()\n                    .clears(\"...\")\n                    .defaultFormat(\"aws\")\n                    .extracts(\"instana\")\n                    .injects(\"b3\")\n                    .build())\n                .queue(GatewayPluginOpentelemetryConfigQueueArgs.builder()\n                    .concurrencyLimit(2.0)\n                    .initialRetryDelay(226722.01)\n                    .maxBatchSize(779071.0)\n                    .maxBytes(9.0)\n                    .maxCoalescingDelay(763.01)\n                    .maxEntries(975127.0)\n                    .maxRetryDelay(892016.33)\n                    .maxRetryTime(0.21)\n                    .build())\n                .readTimeout(1485093464.0)\n                .resourceAttributes(Map.of(\"key\", \"value\"))\n                .samplingRate(0.37)\n                .samplingStrategy(\"parent_drop_probability_fallback\")\n                .sendTimeout(1637096441.0)\n                .tracesEndpoint(\"...my_traces_endpoint...\")\n                .build())\n            .consumer(GatewayPluginOpentelemetryConsumerArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .controlPlaneId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .createdAt(0.0)\n            .enabled(false)\n            .gatewayPluginOpentelemetryId(\"...my_id...\")\n            .instanceName(\"...my_instance_name...\")\n            .ordering(GatewayPluginOpentelemetryOrderingArgs.builder()\n                .after(GatewayPluginOpentelemetryOrderingAfterArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .before(GatewayPluginOpentelemetryOrderingBeforeArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .build())\n            .partials(GatewayPluginOpentelemetryPartialArgs.builder()\n                .id(\"...my_id...\")\n                .name(\"...my_name...\")\n                .path(\"...my_path...\")\n                .build())\n            .protocols(\"tls_passthrough\")\n            .route(GatewayPluginOpentelemetryRouteArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .service(GatewayPluginOpentelemetryServiceArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .tags(\"...\")\n            .updatedAt(8.0)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myGatewaypluginopentelemetry:\n    type: konnect:GatewayPluginOpentelemetry\n    name: my_gatewaypluginopentelemetry\n    properties:\n      config:\n        accessLogsEndpoint: '...my_access_logs_endpoint...'\n        batchFlushDelay: 7\n        batchSpanCount: 5\n        connectTimeout: 1.207240418e+09\n        headerType: gcp\n        headers:\n          key: value\n        httpResponseHeaderForTraceid: '...my_http_response_header_for_traceid...'\n        logsEndpoint: '...my_logs_endpoint...'\n        metrics:\n          enableBandwidthMetrics: true\n          enableConsumerAttribute: false\n          enableLatencyMetrics: false\n          enableRequestMetrics: true\n          enableUpstreamHealthMetrics: false\n          endpoint: '...my_endpoint...'\n          pushInterval: 0.85\n        propagation:\n          clears:\n            - '...'\n          defaultFormat: aws\n          extracts:\n            - instana\n          injects:\n            - b3\n        queue:\n          concurrencyLimit: 2\n          initialRetryDelay: 226722.01\n          maxBatchSize: 779071\n          maxBytes: 9\n          maxCoalescingDelay: 763.01\n          maxEntries: 975127\n          maxRetryDelay: 892016.33\n          maxRetryTime: 0.21\n        readTimeout: 1.485093464e+09\n        resourceAttributes:\n          key: value\n        samplingRate: 0.37\n        samplingStrategy: parent_drop_probability_fallback\n        sendTimeout: 1.637096441e+09\n        tracesEndpoint: '...my_traces_endpoint...'\n      consumer:\n        id: '...my_id...'\n      controlPlaneId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      createdAt: 0\n      enabled: false\n      gatewayPluginOpentelemetryId: '...my_id...'\n      instanceName: '...my_instance_name...'\n      ordering:\n        after:\n          accesses:\n            - '...'\n        before:\n          accesses:\n            - '...'\n      partials:\n        - id: '...my_id...'\n          name: '...my_name...'\n          path: '...my_path...'\n      protocols:\n        - tls_passthrough\n      route:\n        id: '...my_id...'\n      service:\n        id: '...my_id...'\n      tags:\n        - '...'\n      updatedAt: 8\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_gateway_plugin_opentelemetry.my_konnect_gateway_plugin_opentelemetry\n\n  id = jsonencode({\n\n    control_plane_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/gatewayPluginOpentelemetry:GatewayPluginOpentelemetry my_konnect_gateway_plugin_opentelemetry '{\"control_plane_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"}'\n```\n\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginOpentelemetryConfig:GatewayPluginOpentelemetryConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginOpentelemetryConsumer:GatewayPluginOpentelemetryConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginOpentelemetryId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginOpentelemetryOrdering:GatewayPluginOpentelemetryOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginOpentelemetryPartial:GatewayPluginOpentelemetryPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginOpentelemetryRoute:GatewayPluginOpentelemetryRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginOpentelemetryService:GatewayPluginOpentelemetryService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object","required":["config","consumer","controlPlaneId","createdAt","enabled","gatewayPluginOpentelemetryId","ordering","protocols","route","service","updatedAt"],"inputProperties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginOpentelemetryConfig:GatewayPluginOpentelemetryConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginOpentelemetryConsumer:GatewayPluginOpentelemetryConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginOpentelemetryId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginOpentelemetryOrdering:GatewayPluginOpentelemetryOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginOpentelemetryPartial:GatewayPluginOpentelemetryPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginOpentelemetryRoute:GatewayPluginOpentelemetryRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginOpentelemetryService:GatewayPluginOpentelemetryService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"requiredInputs":["controlPlaneId"],"stateInputs":{"description":"Input properties used for looking up and filtering GatewayPluginOpentelemetry resources.\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginOpentelemetryConfig:GatewayPluginOpentelemetryConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginOpentelemetryConsumer:GatewayPluginOpentelemetryConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginOpentelemetryId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginOpentelemetryOrdering:GatewayPluginOpentelemetryOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginOpentelemetryPartial:GatewayPluginOpentelemetryPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginOpentelemetryRoute:GatewayPluginOpentelemetryRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginOpentelemetryService:GatewayPluginOpentelemetryService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object"}},"konnect:index/gatewayPluginPostFunction:GatewayPluginPostFunction":{"description":"GatewayPluginPostFunction Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myGatewaypluginpostfunction = new konnect.GatewayPluginPostFunction(\"my_gatewaypluginpostfunction\", {\n    config: {\n        accesses: [\"...\"],\n        bodyFilters: [\"...\"],\n        certificates: [\"...\"],\n        headerFilters: [\"...\"],\n        logs: [\"...\"],\n        rewrites: [\"...\"],\n        wsClientFrames: [\"...\"],\n        wsCloses: [\"...\"],\n        wsHandshakes: [\"...\"],\n        wsUpstreamFrames: [\"...\"],\n    },\n    controlPlaneId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    createdAt: 5,\n    enabled: true,\n    gatewayPluginPostFunctionId: \"...my_id...\",\n    instanceName: \"...my_instance_name...\",\n    ordering: {\n        after: {\n            accesses: [\"...\"],\n        },\n        before: {\n            accesses: [\"...\"],\n        },\n    },\n    partials: [{\n        id: \"...my_id...\",\n        name: \"...my_name...\",\n        path: \"...my_path...\",\n    }],\n    protocols: [\"grpcs\"],\n    route: {\n        id: \"...my_id...\",\n    },\n    service: {\n        id: \"...my_id...\",\n    },\n    tags: [\"...\"],\n    updatedAt: 7,\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_gatewaypluginpostfunction = konnect.GatewayPluginPostFunction(\"my_gatewaypluginpostfunction\",\n    config={\n        \"accesses\": [\"...\"],\n        \"body_filters\": [\"...\"],\n        \"certificates\": [\"...\"],\n        \"header_filters\": [\"...\"],\n        \"logs\": [\"...\"],\n        \"rewrites\": [\"...\"],\n        \"ws_client_frames\": [\"...\"],\n        \"ws_closes\": [\"...\"],\n        \"ws_handshakes\": [\"...\"],\n        \"ws_upstream_frames\": [\"...\"],\n    },\n    control_plane_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    created_at=5,\n    enabled=True,\n    gateway_plugin_post_function_id=\"...my_id...\",\n    instance_name=\"...my_instance_name...\",\n    ordering={\n        \"after\": {\n            \"accesses\": [\"...\"],\n        },\n        \"before\": {\n            \"accesses\": [\"...\"],\n        },\n    },\n    partials=[{\n        \"id\": \"...my_id...\",\n        \"name\": \"...my_name...\",\n        \"path\": \"...my_path...\",\n    }],\n    protocols=[\"grpcs\"],\n    route={\n        \"id\": \"...my_id...\",\n    },\n    service={\n        \"id\": \"...my_id...\",\n    },\n    tags=[\"...\"],\n    updated_at=7)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myGatewaypluginpostfunction = new Konnect.GatewayPluginPostFunction(\"my_gatewaypluginpostfunction\", new()\n    {\n        Config = new Konnect.Inputs.GatewayPluginPostFunctionConfigArgs\n        {\n            Accesses = new[]\n            {\n                \"...\",\n            },\n            BodyFilters = new[]\n            {\n                \"...\",\n            },\n            Certificates = new[]\n            {\n                \"...\",\n            },\n            HeaderFilters = new[]\n            {\n                \"...\",\n            },\n            Logs = new[]\n            {\n                \"...\",\n            },\n            Rewrites = new[]\n            {\n                \"...\",\n            },\n            WsClientFrames = new[]\n            {\n                \"...\",\n            },\n            WsCloses = new[]\n            {\n                \"...\",\n            },\n            WsHandshakes = new[]\n            {\n                \"...\",\n            },\n            WsUpstreamFrames = new[]\n            {\n                \"...\",\n            },\n        },\n        ControlPlaneId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        CreatedAt = 5,\n        Enabled = true,\n        GatewayPluginPostFunctionId = \"...my_id...\",\n        InstanceName = \"...my_instance_name...\",\n        Ordering = new Konnect.Inputs.GatewayPluginPostFunctionOrderingArgs\n        {\n            After = new Konnect.Inputs.GatewayPluginPostFunctionOrderingAfterArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n            Before = new Konnect.Inputs.GatewayPluginPostFunctionOrderingBeforeArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n        },\n        Partials = new[]\n        {\n            new Konnect.Inputs.GatewayPluginPostFunctionPartialArgs\n            {\n                Id = \"...my_id...\",\n                Name = \"...my_name...\",\n                Path = \"...my_path...\",\n            },\n        },\n        Protocols = new[]\n        {\n            \"grpcs\",\n        },\n        Route = new Konnect.Inputs.GatewayPluginPostFunctionRouteArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Service = new Konnect.Inputs.GatewayPluginPostFunctionServiceArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Tags = new[]\n        {\n            \"...\",\n        },\n        UpdatedAt = 7,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewGatewayPluginPostFunction(ctx, \"my_gatewaypluginpostfunction\", \u0026konnect.GatewayPluginPostFunctionArgs{\n\t\t\tConfig: \u0026konnect.GatewayPluginPostFunctionConfigArgs{\n\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tBodyFilters: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tCertificates: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tHeaderFilters: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tLogs: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tRewrites: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tWsClientFrames: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tWsCloses: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tWsHandshakes: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tWsUpstreamFrames: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tControlPlaneId:              pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tCreatedAt:                   pulumi.Float64(5),\n\t\t\tEnabled:                     pulumi.Bool(true),\n\t\t\tGatewayPluginPostFunctionId: pulumi.String(\"...my_id...\"),\n\t\t\tInstanceName:                pulumi.String(\"...my_instance_name...\"),\n\t\t\tOrdering: \u0026konnect.GatewayPluginPostFunctionOrderingArgs{\n\t\t\t\tAfter: \u0026konnect.GatewayPluginPostFunctionOrderingAfterArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tBefore: \u0026konnect.GatewayPluginPostFunctionOrderingBeforeArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tPartials: konnect.GatewayPluginPostFunctionPartialArray{\n\t\t\t\t\u0026konnect.GatewayPluginPostFunctionPartialArgs{\n\t\t\t\t\tId:   pulumi.String(\"...my_id...\"),\n\t\t\t\t\tName: pulumi.String(\"...my_name...\"),\n\t\t\t\t\tPath: pulumi.String(\"...my_path...\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tProtocols: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"grpcs\"),\n\t\t\t},\n\t\t\tRoute: \u0026konnect.GatewayPluginPostFunctionRouteArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tService: \u0026konnect.GatewayPluginPostFunctionServiceArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"...\"),\n\t\t\t},\n\t\t\tUpdatedAt: pulumi.Float64(7),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.GatewayPluginPostFunction;\nimport com.pulumi.konnect.GatewayPluginPostFunctionArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginPostFunctionConfigArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginPostFunctionOrderingArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginPostFunctionOrderingAfterArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginPostFunctionOrderingBeforeArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginPostFunctionPartialArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginPostFunctionRouteArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginPostFunctionServiceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myGatewaypluginpostfunction = new GatewayPluginPostFunction(\"myGatewaypluginpostfunction\", GatewayPluginPostFunctionArgs.builder()\n            .config(GatewayPluginPostFunctionConfigArgs.builder()\n                .accesses(\"...\")\n                .bodyFilters(\"...\")\n                .certificates(\"...\")\n                .headerFilters(\"...\")\n                .logs(\"...\")\n                .rewrites(\"...\")\n                .wsClientFrames(\"...\")\n                .wsCloses(\"...\")\n                .wsHandshakes(\"...\")\n                .wsUpstreamFrames(\"...\")\n                .build())\n            .controlPlaneId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .createdAt(5.0)\n            .enabled(true)\n            .gatewayPluginPostFunctionId(\"...my_id...\")\n            .instanceName(\"...my_instance_name...\")\n            .ordering(GatewayPluginPostFunctionOrderingArgs.builder()\n                .after(GatewayPluginPostFunctionOrderingAfterArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .before(GatewayPluginPostFunctionOrderingBeforeArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .build())\n            .partials(GatewayPluginPostFunctionPartialArgs.builder()\n                .id(\"...my_id...\")\n                .name(\"...my_name...\")\n                .path(\"...my_path...\")\n                .build())\n            .protocols(\"grpcs\")\n            .route(GatewayPluginPostFunctionRouteArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .service(GatewayPluginPostFunctionServiceArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .tags(\"...\")\n            .updatedAt(7.0)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myGatewaypluginpostfunction:\n    type: konnect:GatewayPluginPostFunction\n    name: my_gatewaypluginpostfunction\n    properties:\n      config:\n        accesses:\n          - '...'\n        bodyFilters:\n          - '...'\n        certificates:\n          - '...'\n        headerFilters:\n          - '...'\n        logs:\n          - '...'\n        rewrites:\n          - '...'\n        wsClientFrames:\n          - '...'\n        wsCloses:\n          - '...'\n        wsHandshakes:\n          - '...'\n        wsUpstreamFrames:\n          - '...'\n      controlPlaneId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      createdAt: 5\n      enabled: true\n      gatewayPluginPostFunctionId: '...my_id...'\n      instanceName: '...my_instance_name...'\n      ordering:\n        after:\n          accesses:\n            - '...'\n        before:\n          accesses:\n            - '...'\n      partials:\n        - id: '...my_id...'\n          name: '...my_name...'\n          path: '...my_path...'\n      protocols:\n        - grpcs\n      route:\n        id: '...my_id...'\n      service:\n        id: '...my_id...'\n      tags:\n        - '...'\n      updatedAt: 7\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_gateway_plugin_post_function.my_konnect_gateway_plugin_post_function\n\n  id = jsonencode({\n\n    control_plane_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/gatewayPluginPostFunction:GatewayPluginPostFunction my_konnect_gateway_plugin_post_function '{\"control_plane_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"}'\n```\n\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginPostFunctionConfig:GatewayPluginPostFunctionConfig"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginPostFunctionId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginPostFunctionOrdering:GatewayPluginPostFunctionOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginPostFunctionPartial:GatewayPluginPostFunctionPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginPostFunctionRoute:GatewayPluginPostFunctionRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginPostFunctionService:GatewayPluginPostFunctionService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object","required":["config","controlPlaneId","createdAt","enabled","gatewayPluginPostFunctionId","ordering","protocols","route","service","updatedAt"],"inputProperties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginPostFunctionConfig:GatewayPluginPostFunctionConfig"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginPostFunctionId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginPostFunctionOrdering:GatewayPluginPostFunctionOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginPostFunctionPartial:GatewayPluginPostFunctionPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginPostFunctionRoute:GatewayPluginPostFunctionRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginPostFunctionService:GatewayPluginPostFunctionService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"requiredInputs":["controlPlaneId"],"stateInputs":{"description":"Input properties used for looking up and filtering GatewayPluginPostFunction resources.\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginPostFunctionConfig:GatewayPluginPostFunctionConfig"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginPostFunctionId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginPostFunctionOrdering:GatewayPluginPostFunctionOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginPostFunctionPartial:GatewayPluginPostFunctionPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginPostFunctionRoute:GatewayPluginPostFunctionRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginPostFunctionService:GatewayPluginPostFunctionService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object"}},"konnect:index/gatewayPluginPreFunction:GatewayPluginPreFunction":{"description":"GatewayPluginPreFunction Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myGatewaypluginprefunction = new konnect.GatewayPluginPreFunction(\"my_gatewaypluginprefunction\", {\n    config: {\n        accesses: [\"...\"],\n        bodyFilters: [\"...\"],\n        certificates: [\"...\"],\n        headerFilters: [\"...\"],\n        logs: [\"...\"],\n        rewrites: [\"...\"],\n        wsClientFrames: [\"...\"],\n        wsCloses: [\"...\"],\n        wsHandshakes: [\"...\"],\n        wsUpstreamFrames: [\"...\"],\n    },\n    controlPlaneId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    createdAt: 6,\n    enabled: true,\n    gatewayPluginPreFunctionId: \"...my_id...\",\n    instanceName: \"...my_instance_name...\",\n    ordering: {\n        after: {\n            accesses: [\"...\"],\n        },\n        before: {\n            accesses: [\"...\"],\n        },\n    },\n    partials: [{\n        id: \"...my_id...\",\n        name: \"...my_name...\",\n        path: \"...my_path...\",\n    }],\n    protocols: [\"udp\"],\n    route: {\n        id: \"...my_id...\",\n    },\n    service: {\n        id: \"...my_id...\",\n    },\n    tags: [\"...\"],\n    updatedAt: 3,\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_gatewaypluginprefunction = konnect.GatewayPluginPreFunction(\"my_gatewaypluginprefunction\",\n    config={\n        \"accesses\": [\"...\"],\n        \"body_filters\": [\"...\"],\n        \"certificates\": [\"...\"],\n        \"header_filters\": [\"...\"],\n        \"logs\": [\"...\"],\n        \"rewrites\": [\"...\"],\n        \"ws_client_frames\": [\"...\"],\n        \"ws_closes\": [\"...\"],\n        \"ws_handshakes\": [\"...\"],\n        \"ws_upstream_frames\": [\"...\"],\n    },\n    control_plane_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    created_at=6,\n    enabled=True,\n    gateway_plugin_pre_function_id=\"...my_id...\",\n    instance_name=\"...my_instance_name...\",\n    ordering={\n        \"after\": {\n            \"accesses\": [\"...\"],\n        },\n        \"before\": {\n            \"accesses\": [\"...\"],\n        },\n    },\n    partials=[{\n        \"id\": \"...my_id...\",\n        \"name\": \"...my_name...\",\n        \"path\": \"...my_path...\",\n    }],\n    protocols=[\"udp\"],\n    route={\n        \"id\": \"...my_id...\",\n    },\n    service={\n        \"id\": \"...my_id...\",\n    },\n    tags=[\"...\"],\n    updated_at=3)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myGatewaypluginprefunction = new Konnect.GatewayPluginPreFunction(\"my_gatewaypluginprefunction\", new()\n    {\n        Config = new Konnect.Inputs.GatewayPluginPreFunctionConfigArgs\n        {\n            Accesses = new[]\n            {\n                \"...\",\n            },\n            BodyFilters = new[]\n            {\n                \"...\",\n            },\n            Certificates = new[]\n            {\n                \"...\",\n            },\n            HeaderFilters = new[]\n            {\n                \"...\",\n            },\n            Logs = new[]\n            {\n                \"...\",\n            },\n            Rewrites = new[]\n            {\n                \"...\",\n            },\n            WsClientFrames = new[]\n            {\n                \"...\",\n            },\n            WsCloses = new[]\n            {\n                \"...\",\n            },\n            WsHandshakes = new[]\n            {\n                \"...\",\n            },\n            WsUpstreamFrames = new[]\n            {\n                \"...\",\n            },\n        },\n        ControlPlaneId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        CreatedAt = 6,\n        Enabled = true,\n        GatewayPluginPreFunctionId = \"...my_id...\",\n        InstanceName = \"...my_instance_name...\",\n        Ordering = new Konnect.Inputs.GatewayPluginPreFunctionOrderingArgs\n        {\n            After = new Konnect.Inputs.GatewayPluginPreFunctionOrderingAfterArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n            Before = new Konnect.Inputs.GatewayPluginPreFunctionOrderingBeforeArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n        },\n        Partials = new[]\n        {\n            new Konnect.Inputs.GatewayPluginPreFunctionPartialArgs\n            {\n                Id = \"...my_id...\",\n                Name = \"...my_name...\",\n                Path = \"...my_path...\",\n            },\n        },\n        Protocols = new[]\n        {\n            \"udp\",\n        },\n        Route = new Konnect.Inputs.GatewayPluginPreFunctionRouteArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Service = new Konnect.Inputs.GatewayPluginPreFunctionServiceArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Tags = new[]\n        {\n            \"...\",\n        },\n        UpdatedAt = 3,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewGatewayPluginPreFunction(ctx, \"my_gatewaypluginprefunction\", \u0026konnect.GatewayPluginPreFunctionArgs{\n\t\t\tConfig: \u0026konnect.GatewayPluginPreFunctionConfigArgs{\n\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tBodyFilters: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tCertificates: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tHeaderFilters: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tLogs: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tRewrites: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tWsClientFrames: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tWsCloses: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tWsHandshakes: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tWsUpstreamFrames: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tControlPlaneId:             pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tCreatedAt:                  pulumi.Float64(6),\n\t\t\tEnabled:                    pulumi.Bool(true),\n\t\t\tGatewayPluginPreFunctionId: pulumi.String(\"...my_id...\"),\n\t\t\tInstanceName:               pulumi.String(\"...my_instance_name...\"),\n\t\t\tOrdering: \u0026konnect.GatewayPluginPreFunctionOrderingArgs{\n\t\t\t\tAfter: \u0026konnect.GatewayPluginPreFunctionOrderingAfterArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tBefore: \u0026konnect.GatewayPluginPreFunctionOrderingBeforeArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tPartials: konnect.GatewayPluginPreFunctionPartialArray{\n\t\t\t\t\u0026konnect.GatewayPluginPreFunctionPartialArgs{\n\t\t\t\t\tId:   pulumi.String(\"...my_id...\"),\n\t\t\t\t\tName: pulumi.String(\"...my_name...\"),\n\t\t\t\t\tPath: pulumi.String(\"...my_path...\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tProtocols: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"udp\"),\n\t\t\t},\n\t\t\tRoute: \u0026konnect.GatewayPluginPreFunctionRouteArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tService: \u0026konnect.GatewayPluginPreFunctionServiceArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"...\"),\n\t\t\t},\n\t\t\tUpdatedAt: pulumi.Float64(3),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.GatewayPluginPreFunction;\nimport com.pulumi.konnect.GatewayPluginPreFunctionArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginPreFunctionConfigArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginPreFunctionOrderingArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginPreFunctionOrderingAfterArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginPreFunctionOrderingBeforeArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginPreFunctionPartialArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginPreFunctionRouteArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginPreFunctionServiceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myGatewaypluginprefunction = new GatewayPluginPreFunction(\"myGatewaypluginprefunction\", GatewayPluginPreFunctionArgs.builder()\n            .config(GatewayPluginPreFunctionConfigArgs.builder()\n                .accesses(\"...\")\n                .bodyFilters(\"...\")\n                .certificates(\"...\")\n                .headerFilters(\"...\")\n                .logs(\"...\")\n                .rewrites(\"...\")\n                .wsClientFrames(\"...\")\n                .wsCloses(\"...\")\n                .wsHandshakes(\"...\")\n                .wsUpstreamFrames(\"...\")\n                .build())\n            .controlPlaneId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .createdAt(6.0)\n            .enabled(true)\n            .gatewayPluginPreFunctionId(\"...my_id...\")\n            .instanceName(\"...my_instance_name...\")\n            .ordering(GatewayPluginPreFunctionOrderingArgs.builder()\n                .after(GatewayPluginPreFunctionOrderingAfterArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .before(GatewayPluginPreFunctionOrderingBeforeArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .build())\n            .partials(GatewayPluginPreFunctionPartialArgs.builder()\n                .id(\"...my_id...\")\n                .name(\"...my_name...\")\n                .path(\"...my_path...\")\n                .build())\n            .protocols(\"udp\")\n            .route(GatewayPluginPreFunctionRouteArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .service(GatewayPluginPreFunctionServiceArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .tags(\"...\")\n            .updatedAt(3.0)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myGatewaypluginprefunction:\n    type: konnect:GatewayPluginPreFunction\n    name: my_gatewaypluginprefunction\n    properties:\n      config:\n        accesses:\n          - '...'\n        bodyFilters:\n          - '...'\n        certificates:\n          - '...'\n        headerFilters:\n          - '...'\n        logs:\n          - '...'\n        rewrites:\n          - '...'\n        wsClientFrames:\n          - '...'\n        wsCloses:\n          - '...'\n        wsHandshakes:\n          - '...'\n        wsUpstreamFrames:\n          - '...'\n      controlPlaneId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      createdAt: 6\n      enabled: true\n      gatewayPluginPreFunctionId: '...my_id...'\n      instanceName: '...my_instance_name...'\n      ordering:\n        after:\n          accesses:\n            - '...'\n        before:\n          accesses:\n            - '...'\n      partials:\n        - id: '...my_id...'\n          name: '...my_name...'\n          path: '...my_path...'\n      protocols:\n        - udp\n      route:\n        id: '...my_id...'\n      service:\n        id: '...my_id...'\n      tags:\n        - '...'\n      updatedAt: 3\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_gateway_plugin_pre_function.my_konnect_gateway_plugin_pre_function\n\n  id = jsonencode({\n\n    control_plane_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/gatewayPluginPreFunction:GatewayPluginPreFunction my_konnect_gateway_plugin_pre_function '{\"control_plane_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"}'\n```\n\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginPreFunctionConfig:GatewayPluginPreFunctionConfig"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginPreFunctionId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginPreFunctionOrdering:GatewayPluginPreFunctionOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginPreFunctionPartial:GatewayPluginPreFunctionPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginPreFunctionRoute:GatewayPluginPreFunctionRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginPreFunctionService:GatewayPluginPreFunctionService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object","required":["config","controlPlaneId","createdAt","enabled","gatewayPluginPreFunctionId","ordering","protocols","route","service","updatedAt"],"inputProperties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginPreFunctionConfig:GatewayPluginPreFunctionConfig"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginPreFunctionId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginPreFunctionOrdering:GatewayPluginPreFunctionOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginPreFunctionPartial:GatewayPluginPreFunctionPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginPreFunctionRoute:GatewayPluginPreFunctionRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginPreFunctionService:GatewayPluginPreFunctionService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"requiredInputs":["controlPlaneId"],"stateInputs":{"description":"Input properties used for looking up and filtering GatewayPluginPreFunction resources.\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginPreFunctionConfig:GatewayPluginPreFunctionConfig"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginPreFunctionId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginPreFunctionOrdering:GatewayPluginPreFunctionOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginPreFunctionPartial:GatewayPluginPreFunctionPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginPreFunctionRoute:GatewayPluginPreFunctionRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginPreFunctionService:GatewayPluginPreFunctionService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object"}},"konnect:index/gatewayPluginPrometheus:GatewayPluginPrometheus":{"description":"GatewayPluginPrometheus Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myGatewaypluginprometheus = new konnect.GatewayPluginPrometheus(\"my_gatewaypluginprometheus\", {\n    config: {\n        aiMetrics: true,\n        bandwidthMetrics: false,\n        latencyMetrics: false,\n        perConsumer: true,\n        statusCodeMetrics: true,\n        upstreamHealthMetrics: true,\n        wasmMetrics: true,\n    },\n    consumer: {\n        id: \"...my_id...\",\n    },\n    controlPlaneId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    createdAt: 7,\n    enabled: true,\n    gatewayPluginPrometheusId: \"...my_id...\",\n    instanceName: \"...my_instance_name...\",\n    ordering: {\n        after: {\n            accesses: [\"...\"],\n        },\n        before: {\n            accesses: [\"...\"],\n        },\n    },\n    partials: [{\n        id: \"...my_id...\",\n        name: \"...my_name...\",\n        path: \"...my_path...\",\n    }],\n    protocols: [\"tls_passthrough\"],\n    route: {\n        id: \"...my_id...\",\n    },\n    service: {\n        id: \"...my_id...\",\n    },\n    tags: [\"...\"],\n    updatedAt: 1,\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_gatewaypluginprometheus = konnect.GatewayPluginPrometheus(\"my_gatewaypluginprometheus\",\n    config={\n        \"ai_metrics\": True,\n        \"bandwidth_metrics\": False,\n        \"latency_metrics\": False,\n        \"per_consumer\": True,\n        \"status_code_metrics\": True,\n        \"upstream_health_metrics\": True,\n        \"wasm_metrics\": True,\n    },\n    consumer={\n        \"id\": \"...my_id...\",\n    },\n    control_plane_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    created_at=7,\n    enabled=True,\n    gateway_plugin_prometheus_id=\"...my_id...\",\n    instance_name=\"...my_instance_name...\",\n    ordering={\n        \"after\": {\n            \"accesses\": [\"...\"],\n        },\n        \"before\": {\n            \"accesses\": [\"...\"],\n        },\n    },\n    partials=[{\n        \"id\": \"...my_id...\",\n        \"name\": \"...my_name...\",\n        \"path\": \"...my_path...\",\n    }],\n    protocols=[\"tls_passthrough\"],\n    route={\n        \"id\": \"...my_id...\",\n    },\n    service={\n        \"id\": \"...my_id...\",\n    },\n    tags=[\"...\"],\n    updated_at=1)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myGatewaypluginprometheus = new Konnect.GatewayPluginPrometheus(\"my_gatewaypluginprometheus\", new()\n    {\n        Config = new Konnect.Inputs.GatewayPluginPrometheusConfigArgs\n        {\n            AiMetrics = true,\n            BandwidthMetrics = false,\n            LatencyMetrics = false,\n            PerConsumer = true,\n            StatusCodeMetrics = true,\n            UpstreamHealthMetrics = true,\n            WasmMetrics = true,\n        },\n        Consumer = new Konnect.Inputs.GatewayPluginPrometheusConsumerArgs\n        {\n            Id = \"...my_id...\",\n        },\n        ControlPlaneId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        CreatedAt = 7,\n        Enabled = true,\n        GatewayPluginPrometheusId = \"...my_id...\",\n        InstanceName = \"...my_instance_name...\",\n        Ordering = new Konnect.Inputs.GatewayPluginPrometheusOrderingArgs\n        {\n            After = new Konnect.Inputs.GatewayPluginPrometheusOrderingAfterArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n            Before = new Konnect.Inputs.GatewayPluginPrometheusOrderingBeforeArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n        },\n        Partials = new[]\n        {\n            new Konnect.Inputs.GatewayPluginPrometheusPartialArgs\n            {\n                Id = \"...my_id...\",\n                Name = \"...my_name...\",\n                Path = \"...my_path...\",\n            },\n        },\n        Protocols = new[]\n        {\n            \"tls_passthrough\",\n        },\n        Route = new Konnect.Inputs.GatewayPluginPrometheusRouteArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Service = new Konnect.Inputs.GatewayPluginPrometheusServiceArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Tags = new[]\n        {\n            \"...\",\n        },\n        UpdatedAt = 1,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewGatewayPluginPrometheus(ctx, \"my_gatewaypluginprometheus\", \u0026konnect.GatewayPluginPrometheusArgs{\n\t\t\tConfig: \u0026konnect.GatewayPluginPrometheusConfigArgs{\n\t\t\t\tAiMetrics:             pulumi.Bool(true),\n\t\t\t\tBandwidthMetrics:      pulumi.Bool(false),\n\t\t\t\tLatencyMetrics:        pulumi.Bool(false),\n\t\t\t\tPerConsumer:           pulumi.Bool(true),\n\t\t\t\tStatusCodeMetrics:     pulumi.Bool(true),\n\t\t\t\tUpstreamHealthMetrics: pulumi.Bool(true),\n\t\t\t\tWasmMetrics:           pulumi.Bool(true),\n\t\t\t},\n\t\t\tConsumer: \u0026konnect.GatewayPluginPrometheusConsumerArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tControlPlaneId:            pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tCreatedAt:                 pulumi.Float64(7),\n\t\t\tEnabled:                   pulumi.Bool(true),\n\t\t\tGatewayPluginPrometheusId: pulumi.String(\"...my_id...\"),\n\t\t\tInstanceName:              pulumi.String(\"...my_instance_name...\"),\n\t\t\tOrdering: \u0026konnect.GatewayPluginPrometheusOrderingArgs{\n\t\t\t\tAfter: \u0026konnect.GatewayPluginPrometheusOrderingAfterArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tBefore: \u0026konnect.GatewayPluginPrometheusOrderingBeforeArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tPartials: konnect.GatewayPluginPrometheusPartialArray{\n\t\t\t\t\u0026konnect.GatewayPluginPrometheusPartialArgs{\n\t\t\t\t\tId:   pulumi.String(\"...my_id...\"),\n\t\t\t\t\tName: pulumi.String(\"...my_name...\"),\n\t\t\t\t\tPath: pulumi.String(\"...my_path...\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tProtocols: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"tls_passthrough\"),\n\t\t\t},\n\t\t\tRoute: \u0026konnect.GatewayPluginPrometheusRouteArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tService: \u0026konnect.GatewayPluginPrometheusServiceArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"...\"),\n\t\t\t},\n\t\t\tUpdatedAt: pulumi.Float64(1),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.GatewayPluginPrometheus;\nimport com.pulumi.konnect.GatewayPluginPrometheusArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginPrometheusConfigArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginPrometheusConsumerArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginPrometheusOrderingArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginPrometheusOrderingAfterArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginPrometheusOrderingBeforeArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginPrometheusPartialArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginPrometheusRouteArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginPrometheusServiceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myGatewaypluginprometheus = new GatewayPluginPrometheus(\"myGatewaypluginprometheus\", GatewayPluginPrometheusArgs.builder()\n            .config(GatewayPluginPrometheusConfigArgs.builder()\n                .aiMetrics(true)\n                .bandwidthMetrics(false)\n                .latencyMetrics(false)\n                .perConsumer(true)\n                .statusCodeMetrics(true)\n                .upstreamHealthMetrics(true)\n                .wasmMetrics(true)\n                .build())\n            .consumer(GatewayPluginPrometheusConsumerArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .controlPlaneId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .createdAt(7.0)\n            .enabled(true)\n            .gatewayPluginPrometheusId(\"...my_id...\")\n            .instanceName(\"...my_instance_name...\")\n            .ordering(GatewayPluginPrometheusOrderingArgs.builder()\n                .after(GatewayPluginPrometheusOrderingAfterArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .before(GatewayPluginPrometheusOrderingBeforeArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .build())\n            .partials(GatewayPluginPrometheusPartialArgs.builder()\n                .id(\"...my_id...\")\n                .name(\"...my_name...\")\n                .path(\"...my_path...\")\n                .build())\n            .protocols(\"tls_passthrough\")\n            .route(GatewayPluginPrometheusRouteArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .service(GatewayPluginPrometheusServiceArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .tags(\"...\")\n            .updatedAt(1.0)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myGatewaypluginprometheus:\n    type: konnect:GatewayPluginPrometheus\n    name: my_gatewaypluginprometheus\n    properties:\n      config:\n        aiMetrics: true\n        bandwidthMetrics: false\n        latencyMetrics: false\n        perConsumer: true\n        statusCodeMetrics: true\n        upstreamHealthMetrics: true\n        wasmMetrics: true\n      consumer:\n        id: '...my_id...'\n      controlPlaneId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      createdAt: 7\n      enabled: true\n      gatewayPluginPrometheusId: '...my_id...'\n      instanceName: '...my_instance_name...'\n      ordering:\n        after:\n          accesses:\n            - '...'\n        before:\n          accesses:\n            - '...'\n      partials:\n        - id: '...my_id...'\n          name: '...my_name...'\n          path: '...my_path...'\n      protocols:\n        - tls_passthrough\n      route:\n        id: '...my_id...'\n      service:\n        id: '...my_id...'\n      tags:\n        - '...'\n      updatedAt: 1\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_gateway_plugin_prometheus.my_konnect_gateway_plugin_prometheus\n\n  id = jsonencode({\n\n    control_plane_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/gatewayPluginPrometheus:GatewayPluginPrometheus my_konnect_gateway_plugin_prometheus '{\"control_plane_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"}'\n```\n\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginPrometheusConfig:GatewayPluginPrometheusConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginPrometheusConsumer:GatewayPluginPrometheusConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginPrometheusId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginPrometheusOrdering:GatewayPluginPrometheusOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginPrometheusPartial:GatewayPluginPrometheusPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginPrometheusRoute:GatewayPluginPrometheusRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginPrometheusService:GatewayPluginPrometheusService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object","required":["config","consumer","controlPlaneId","createdAt","enabled","gatewayPluginPrometheusId","ordering","protocols","route","service","updatedAt"],"inputProperties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginPrometheusConfig:GatewayPluginPrometheusConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginPrometheusConsumer:GatewayPluginPrometheusConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginPrometheusId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginPrometheusOrdering:GatewayPluginPrometheusOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginPrometheusPartial:GatewayPluginPrometheusPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginPrometheusRoute:GatewayPluginPrometheusRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginPrometheusService:GatewayPluginPrometheusService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"requiredInputs":["controlPlaneId"],"stateInputs":{"description":"Input properties used for looking up and filtering GatewayPluginPrometheus resources.\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginPrometheusConfig:GatewayPluginPrometheusConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginPrometheusConsumer:GatewayPluginPrometheusConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginPrometheusId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginPrometheusOrdering:GatewayPluginPrometheusOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginPrometheusPartial:GatewayPluginPrometheusPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginPrometheusRoute:GatewayPluginPrometheusRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginPrometheusService:GatewayPluginPrometheusService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object"}},"konnect:index/gatewayPluginProxyCache:GatewayPluginProxyCache":{"description":"GatewayPluginProxyCache Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myGatewaypluginproxycache = new konnect.GatewayPluginProxyCache(\"my_gatewaypluginproxycache\", {\n    config: {\n        cacheControl: false,\n        cacheTtl: 8,\n        contentTypes: [\"...\"],\n        ignoreUriCase: false,\n        memory: {\n            dictionaryName: \"...my_dictionary_name...\",\n        },\n        requestMethods: [\"PATCH\"],\n        responseCodes: [411],\n        responseHeaders: {\n            age: false,\n            xCacheKey: true,\n            xCacheStatus: false,\n        },\n        storageTtl: 2,\n        strategy: \"memory\",\n        varyHeaders: [\"...\"],\n        varyQueryParams: [\"...\"],\n    },\n    consumer: {\n        id: \"...my_id...\",\n    },\n    consumerGroup: {\n        id: \"...my_id...\",\n    },\n    controlPlaneId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    createdAt: 9,\n    enabled: true,\n    gatewayPluginProxyCacheId: \"...my_id...\",\n    instanceName: \"...my_instance_name...\",\n    ordering: {\n        after: {\n            accesses: [\"...\"],\n        },\n        before: {\n            accesses: [\"...\"],\n        },\n    },\n    partials: [{\n        id: \"...my_id...\",\n        name: \"...my_name...\",\n        path: \"...my_path...\",\n    }],\n    protocols: [\"https\"],\n    route: {\n        id: \"...my_id...\",\n    },\n    service: {\n        id: \"...my_id...\",\n    },\n    tags: [\"...\"],\n    updatedAt: 3,\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_gatewaypluginproxycache = konnect.GatewayPluginProxyCache(\"my_gatewaypluginproxycache\",\n    config={\n        \"cache_control\": False,\n        \"cache_ttl\": 8,\n        \"content_types\": [\"...\"],\n        \"ignore_uri_case\": False,\n        \"memory\": {\n            \"dictionary_name\": \"...my_dictionary_name...\",\n        },\n        \"request_methods\": [\"PATCH\"],\n        \"response_codes\": [411],\n        \"response_headers\": {\n            \"age\": False,\n            \"x_cache_key\": True,\n            \"x_cache_status\": False,\n        },\n        \"storage_ttl\": 2,\n        \"strategy\": \"memory\",\n        \"vary_headers\": [\"...\"],\n        \"vary_query_params\": [\"...\"],\n    },\n    consumer={\n        \"id\": \"...my_id...\",\n    },\n    consumer_group={\n        \"id\": \"...my_id...\",\n    },\n    control_plane_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    created_at=9,\n    enabled=True,\n    gateway_plugin_proxy_cache_id=\"...my_id...\",\n    instance_name=\"...my_instance_name...\",\n    ordering={\n        \"after\": {\n            \"accesses\": [\"...\"],\n        },\n        \"before\": {\n            \"accesses\": [\"...\"],\n        },\n    },\n    partials=[{\n        \"id\": \"...my_id...\",\n        \"name\": \"...my_name...\",\n        \"path\": \"...my_path...\",\n    }],\n    protocols=[\"https\"],\n    route={\n        \"id\": \"...my_id...\",\n    },\n    service={\n        \"id\": \"...my_id...\",\n    },\n    tags=[\"...\"],\n    updated_at=3)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myGatewaypluginproxycache = new Konnect.GatewayPluginProxyCache(\"my_gatewaypluginproxycache\", new()\n    {\n        Config = new Konnect.Inputs.GatewayPluginProxyCacheConfigArgs\n        {\n            CacheControl = false,\n            CacheTtl = 8,\n            ContentTypes = new[]\n            {\n                \"...\",\n            },\n            IgnoreUriCase = false,\n            Memory = new Konnect.Inputs.GatewayPluginProxyCacheConfigMemoryArgs\n            {\n                DictionaryName = \"...my_dictionary_name...\",\n            },\n            RequestMethods = new[]\n            {\n                \"PATCH\",\n            },\n            ResponseCodes = new[]\n            {\n                411,\n            },\n            ResponseHeaders = new Konnect.Inputs.GatewayPluginProxyCacheConfigResponseHeadersArgs\n            {\n                Age = false,\n                XCacheKey = true,\n                XCacheStatus = false,\n            },\n            StorageTtl = 2,\n            Strategy = \"memory\",\n            VaryHeaders = new[]\n            {\n                \"...\",\n            },\n            VaryQueryParams = new[]\n            {\n                \"...\",\n            },\n        },\n        Consumer = new Konnect.Inputs.GatewayPluginProxyCacheConsumerArgs\n        {\n            Id = \"...my_id...\",\n        },\n        ConsumerGroup = new Konnect.Inputs.GatewayPluginProxyCacheConsumerGroupArgs\n        {\n            Id = \"...my_id...\",\n        },\n        ControlPlaneId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        CreatedAt = 9,\n        Enabled = true,\n        GatewayPluginProxyCacheId = \"...my_id...\",\n        InstanceName = \"...my_instance_name...\",\n        Ordering = new Konnect.Inputs.GatewayPluginProxyCacheOrderingArgs\n        {\n            After = new Konnect.Inputs.GatewayPluginProxyCacheOrderingAfterArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n            Before = new Konnect.Inputs.GatewayPluginProxyCacheOrderingBeforeArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n        },\n        Partials = new[]\n        {\n            new Konnect.Inputs.GatewayPluginProxyCachePartialArgs\n            {\n                Id = \"...my_id...\",\n                Name = \"...my_name...\",\n                Path = \"...my_path...\",\n            },\n        },\n        Protocols = new[]\n        {\n            \"https\",\n        },\n        Route = new Konnect.Inputs.GatewayPluginProxyCacheRouteArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Service = new Konnect.Inputs.GatewayPluginProxyCacheServiceArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Tags = new[]\n        {\n            \"...\",\n        },\n        UpdatedAt = 3,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewGatewayPluginProxyCache(ctx, \"my_gatewaypluginproxycache\", \u0026konnect.GatewayPluginProxyCacheArgs{\n\t\t\tConfig: \u0026konnect.GatewayPluginProxyCacheConfigArgs{\n\t\t\t\tCacheControl: pulumi.Bool(false),\n\t\t\t\tCacheTtl:     pulumi.Float64(8),\n\t\t\t\tContentTypes: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tIgnoreUriCase: pulumi.Bool(false),\n\t\t\t\tMemory: \u0026konnect.GatewayPluginProxyCacheConfigMemoryArgs{\n\t\t\t\t\tDictionaryName: pulumi.String(\"...my_dictionary_name...\"),\n\t\t\t\t},\n\t\t\t\tRequestMethods: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"PATCH\"),\n\t\t\t\t},\n\t\t\t\tResponseCodes: pulumi.Float64Array{\n\t\t\t\t\tpulumi.Float64(411),\n\t\t\t\t},\n\t\t\t\tResponseHeaders: \u0026konnect.GatewayPluginProxyCacheConfigResponseHeadersArgs{\n\t\t\t\t\tAge:          pulumi.Bool(false),\n\t\t\t\t\tXCacheKey:    pulumi.Bool(true),\n\t\t\t\t\tXCacheStatus: pulumi.Bool(false),\n\t\t\t\t},\n\t\t\t\tStorageTtl: pulumi.Float64(2),\n\t\t\t\tStrategy:   pulumi.String(\"memory\"),\n\t\t\t\tVaryHeaders: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tVaryQueryParams: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tConsumer: \u0026konnect.GatewayPluginProxyCacheConsumerArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tConsumerGroup: \u0026konnect.GatewayPluginProxyCacheConsumerGroupArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tControlPlaneId:            pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tCreatedAt:                 pulumi.Float64(9),\n\t\t\tEnabled:                   pulumi.Bool(true),\n\t\t\tGatewayPluginProxyCacheId: pulumi.String(\"...my_id...\"),\n\t\t\tInstanceName:              pulumi.String(\"...my_instance_name...\"),\n\t\t\tOrdering: \u0026konnect.GatewayPluginProxyCacheOrderingArgs{\n\t\t\t\tAfter: \u0026konnect.GatewayPluginProxyCacheOrderingAfterArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tBefore: \u0026konnect.GatewayPluginProxyCacheOrderingBeforeArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tPartials: konnect.GatewayPluginProxyCachePartialArray{\n\t\t\t\t\u0026konnect.GatewayPluginProxyCachePartialArgs{\n\t\t\t\t\tId:   pulumi.String(\"...my_id...\"),\n\t\t\t\t\tName: pulumi.String(\"...my_name...\"),\n\t\t\t\t\tPath: pulumi.String(\"...my_path...\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tProtocols: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"https\"),\n\t\t\t},\n\t\t\tRoute: \u0026konnect.GatewayPluginProxyCacheRouteArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tService: \u0026konnect.GatewayPluginProxyCacheServiceArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"...\"),\n\t\t\t},\n\t\t\tUpdatedAt: pulumi.Float64(3),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.GatewayPluginProxyCache;\nimport com.pulumi.konnect.GatewayPluginProxyCacheArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginProxyCacheConfigArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginProxyCacheConfigMemoryArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginProxyCacheConfigResponseHeadersArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginProxyCacheConsumerArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginProxyCacheConsumerGroupArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginProxyCacheOrderingArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginProxyCacheOrderingAfterArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginProxyCacheOrderingBeforeArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginProxyCachePartialArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginProxyCacheRouteArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginProxyCacheServiceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myGatewaypluginproxycache = new GatewayPluginProxyCache(\"myGatewaypluginproxycache\", GatewayPluginProxyCacheArgs.builder()\n            .config(GatewayPluginProxyCacheConfigArgs.builder()\n                .cacheControl(false)\n                .cacheTtl(8.0)\n                .contentTypes(\"...\")\n                .ignoreUriCase(false)\n                .memory(GatewayPluginProxyCacheConfigMemoryArgs.builder()\n                    .dictionaryName(\"...my_dictionary_name...\")\n                    .build())\n                .requestMethods(\"PATCH\")\n                .responseCodes(411.0)\n                .responseHeaders(GatewayPluginProxyCacheConfigResponseHeadersArgs.builder()\n                    .age(false)\n                    .xCacheKey(true)\n                    .xCacheStatus(false)\n                    .build())\n                .storageTtl(2.0)\n                .strategy(\"memory\")\n                .varyHeaders(\"...\")\n                .varyQueryParams(\"...\")\n                .build())\n            .consumer(GatewayPluginProxyCacheConsumerArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .consumerGroup(GatewayPluginProxyCacheConsumerGroupArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .controlPlaneId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .createdAt(9.0)\n            .enabled(true)\n            .gatewayPluginProxyCacheId(\"...my_id...\")\n            .instanceName(\"...my_instance_name...\")\n            .ordering(GatewayPluginProxyCacheOrderingArgs.builder()\n                .after(GatewayPluginProxyCacheOrderingAfterArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .before(GatewayPluginProxyCacheOrderingBeforeArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .build())\n            .partials(GatewayPluginProxyCachePartialArgs.builder()\n                .id(\"...my_id...\")\n                .name(\"...my_name...\")\n                .path(\"...my_path...\")\n                .build())\n            .protocols(\"https\")\n            .route(GatewayPluginProxyCacheRouteArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .service(GatewayPluginProxyCacheServiceArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .tags(\"...\")\n            .updatedAt(3.0)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myGatewaypluginproxycache:\n    type: konnect:GatewayPluginProxyCache\n    name: my_gatewaypluginproxycache\n    properties:\n      config:\n        cacheControl: false\n        cacheTtl: 8\n        contentTypes:\n          - '...'\n        ignoreUriCase: false\n        memory:\n          dictionaryName: '...my_dictionary_name...'\n        requestMethods:\n          - PATCH\n        responseCodes:\n          - 411\n        responseHeaders:\n          age: false\n          xCacheKey: true\n          xCacheStatus: false\n        storageTtl: 2\n        strategy: memory\n        varyHeaders:\n          - '...'\n        varyQueryParams:\n          - '...'\n      consumer:\n        id: '...my_id...'\n      consumerGroup:\n        id: '...my_id...'\n      controlPlaneId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      createdAt: 9\n      enabled: true\n      gatewayPluginProxyCacheId: '...my_id...'\n      instanceName: '...my_instance_name...'\n      ordering:\n        after:\n          accesses:\n            - '...'\n        before:\n          accesses:\n            - '...'\n      partials:\n        - id: '...my_id...'\n          name: '...my_name...'\n          path: '...my_path...'\n      protocols:\n        - https\n      route:\n        id: '...my_id...'\n      service:\n        id: '...my_id...'\n      tags:\n        - '...'\n      updatedAt: 3\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_gateway_plugin_proxy_cache.my_konnect_gateway_plugin_proxy_cache\n\n  id = jsonencode({\n\n    control_plane_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/gatewayPluginProxyCache:GatewayPluginProxyCache my_konnect_gateway_plugin_proxy_cache '{\"control_plane_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"}'\n```\n\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginProxyCacheConfig:GatewayPluginProxyCacheConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginProxyCacheConsumer:GatewayPluginProxyCacheConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"consumerGroup":{"$ref":"#/types/konnect:index%2FGatewayPluginProxyCacheConsumerGroup:GatewayPluginProxyCacheConsumerGroup","description":"If set, the plugin will activate only for requests where the specified consumer group has been authenticated. (Note that some plugins can not be restricted to consumers groups this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer Groups\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginProxyCacheId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginProxyCacheOrdering:GatewayPluginProxyCacheOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginProxyCachePartial:GatewayPluginProxyCachePartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginProxyCacheRoute:GatewayPluginProxyCacheRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginProxyCacheService:GatewayPluginProxyCacheService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object","required":["config","consumer","consumerGroup","controlPlaneId","createdAt","enabled","gatewayPluginProxyCacheId","ordering","protocols","route","service","updatedAt"],"inputProperties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginProxyCacheConfig:GatewayPluginProxyCacheConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginProxyCacheConsumer:GatewayPluginProxyCacheConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"consumerGroup":{"$ref":"#/types/konnect:index%2FGatewayPluginProxyCacheConsumerGroup:GatewayPluginProxyCacheConsumerGroup","description":"If set, the plugin will activate only for requests where the specified consumer group has been authenticated. (Note that some plugins can not be restricted to consumers groups this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer Groups\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginProxyCacheId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginProxyCacheOrdering:GatewayPluginProxyCacheOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginProxyCachePartial:GatewayPluginProxyCachePartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginProxyCacheRoute:GatewayPluginProxyCacheRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginProxyCacheService:GatewayPluginProxyCacheService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"requiredInputs":["config","controlPlaneId"],"stateInputs":{"description":"Input properties used for looking up and filtering GatewayPluginProxyCache resources.\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginProxyCacheConfig:GatewayPluginProxyCacheConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginProxyCacheConsumer:GatewayPluginProxyCacheConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"consumerGroup":{"$ref":"#/types/konnect:index%2FGatewayPluginProxyCacheConsumerGroup:GatewayPluginProxyCacheConsumerGroup","description":"If set, the plugin will activate only for requests where the specified consumer group has been authenticated. (Note that some plugins can not be restricted to consumers groups this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer Groups\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginProxyCacheId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginProxyCacheOrdering:GatewayPluginProxyCacheOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginProxyCachePartial:GatewayPluginProxyCachePartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginProxyCacheRoute:GatewayPluginProxyCacheRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginProxyCacheService:GatewayPluginProxyCacheService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object"}},"konnect:index/gatewayPluginProxyCacheAdvanced:GatewayPluginProxyCacheAdvanced":{"description":"GatewayPluginProxyCacheAdvanced Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myGatewaypluginproxycacheadvanced = new konnect.GatewayPluginProxyCacheAdvanced(\"my_gatewaypluginproxycacheadvanced\", {\n    config: {\n        bypassOnErr: true,\n        cacheControl: true,\n        cacheTtl: 5,\n        contentTypes: [\"...\"],\n        ignoreUriCase: false,\n        memory: {\n            dictionaryName: \"...my_dictionary_name...\",\n        },\n        redis: {\n            cloudAuthentication: {\n                authProvider: \"aws\",\n                awsAccessKeyId: \"...my_aws_access_key_id...\",\n                awsAssumeRoleArn: \"...my_aws_assume_role_arn...\",\n                awsCacheName: \"...my_aws_cache_name...\",\n                awsIsServerless: true,\n                awsRegion: \"...my_aws_region...\",\n                awsRoleSessionName: \"...my_aws_role_session_name...\",\n                awsSecretAccessKey: \"...my_aws_secret_access_key...\",\n                azureClientId: \"...my_azure_client_id...\",\n                azureClientSecret: \"...my_azure_client_secret...\",\n                azureTenantId: \"...my_azure_tenant_id...\",\n                gcpServiceAccountJson: \"...my_gcp_service_account_json...\",\n            },\n            clusterMaxRedirections: 7,\n            clusterNodes: [{\n                ip: \"...my_ip...\",\n                port: 56343,\n            }],\n            connectTimeout: 883264270,\n            connectionIsProxied: false,\n            database: 1,\n            host: \"...my_host...\",\n            keepaliveBacklog: 578209368,\n            keepalivePoolSize: 1307431457,\n            password: \"...my_password...\",\n            port: 54281,\n            readTimeout: 350076819,\n            sendTimeout: 2140614627,\n            sentinelMaster: \"...my_sentinel_master...\",\n            sentinelNodes: [{\n                host: \"...my_host...\",\n                port: 8222,\n            }],\n            sentinelPassword: \"...my_sentinel_password...\",\n            sentinelRole: \"any\",\n            sentinelUsername: \"...my_sentinel_username...\",\n            serverName: \"...my_server_name...\",\n            ssl: false,\n            sslVerify: true,\n            username: \"...my_username...\",\n        },\n        requestMethods: [\"GET\"],\n        responseCodes: [269],\n        responseHeaders: {\n            age: false,\n            xCacheKey: true,\n            xCacheStatus: true,\n        },\n        storageTtl: 0,\n        strategy: \"redis\",\n        varyHeaders: [\"...\"],\n        varyQueryParams: [\"...\"],\n    },\n    consumer: {\n        id: \"...my_id...\",\n    },\n    consumerGroup: {\n        id: \"...my_id...\",\n    },\n    controlPlaneId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    createdAt: 8,\n    enabled: false,\n    gatewayPluginProxyCacheAdvancedId: \"...my_id...\",\n    instanceName: \"...my_instance_name...\",\n    ordering: {\n        after: {\n            accesses: [\"...\"],\n        },\n        before: {\n            accesses: [\"...\"],\n        },\n    },\n    partials: [{\n        id: \"...my_id...\",\n        name: \"...my_name...\",\n        path: \"...my_path...\",\n    }],\n    protocols: [\"grpcs\"],\n    route: {\n        id: \"...my_id...\",\n    },\n    service: {\n        id: \"...my_id...\",\n    },\n    tags: [\"...\"],\n    updatedAt: 6,\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_gatewaypluginproxycacheadvanced = konnect.GatewayPluginProxyCacheAdvanced(\"my_gatewaypluginproxycacheadvanced\",\n    config={\n        \"bypass_on_err\": True,\n        \"cache_control\": True,\n        \"cache_ttl\": 5,\n        \"content_types\": [\"...\"],\n        \"ignore_uri_case\": False,\n        \"memory\": {\n            \"dictionary_name\": \"...my_dictionary_name...\",\n        },\n        \"redis\": {\n            \"cloud_authentication\": {\n                \"auth_provider\": \"aws\",\n                \"aws_access_key_id\": \"...my_aws_access_key_id...\",\n                \"aws_assume_role_arn\": \"...my_aws_assume_role_arn...\",\n                \"aws_cache_name\": \"...my_aws_cache_name...\",\n                \"aws_is_serverless\": True,\n                \"aws_region\": \"...my_aws_region...\",\n                \"aws_role_session_name\": \"...my_aws_role_session_name...\",\n                \"aws_secret_access_key\": \"...my_aws_secret_access_key...\",\n                \"azure_client_id\": \"...my_azure_client_id...\",\n                \"azure_client_secret\": \"...my_azure_client_secret...\",\n                \"azure_tenant_id\": \"...my_azure_tenant_id...\",\n                \"gcp_service_account_json\": \"...my_gcp_service_account_json...\",\n            },\n            \"cluster_max_redirections\": 7,\n            \"cluster_nodes\": [{\n                \"ip\": \"...my_ip...\",\n                \"port\": 56343,\n            }],\n            \"connect_timeout\": 883264270,\n            \"connection_is_proxied\": False,\n            \"database\": 1,\n            \"host\": \"...my_host...\",\n            \"keepalive_backlog\": 578209368,\n            \"keepalive_pool_size\": 1307431457,\n            \"password\": \"...my_password...\",\n            \"port\": 54281,\n            \"read_timeout\": 350076819,\n            \"send_timeout\": 2140614627,\n            \"sentinel_master\": \"...my_sentinel_master...\",\n            \"sentinel_nodes\": [{\n                \"host\": \"...my_host...\",\n                \"port\": 8222,\n            }],\n            \"sentinel_password\": \"...my_sentinel_password...\",\n            \"sentinel_role\": \"any\",\n            \"sentinel_username\": \"...my_sentinel_username...\",\n            \"server_name\": \"...my_server_name...\",\n            \"ssl\": False,\n            \"ssl_verify\": True,\n            \"username\": \"...my_username...\",\n        },\n        \"request_methods\": [\"GET\"],\n        \"response_codes\": [269],\n        \"response_headers\": {\n            \"age\": False,\n            \"x_cache_key\": True,\n            \"x_cache_status\": True,\n        },\n        \"storage_ttl\": 0,\n        \"strategy\": \"redis\",\n        \"vary_headers\": [\"...\"],\n        \"vary_query_params\": [\"...\"],\n    },\n    consumer={\n        \"id\": \"...my_id...\",\n    },\n    consumer_group={\n        \"id\": \"...my_id...\",\n    },\n    control_plane_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    created_at=8,\n    enabled=False,\n    gateway_plugin_proxy_cache_advanced_id=\"...my_id...\",\n    instance_name=\"...my_instance_name...\",\n    ordering={\n        \"after\": {\n            \"accesses\": [\"...\"],\n        },\n        \"before\": {\n            \"accesses\": [\"...\"],\n        },\n    },\n    partials=[{\n        \"id\": \"...my_id...\",\n        \"name\": \"...my_name...\",\n        \"path\": \"...my_path...\",\n    }],\n    protocols=[\"grpcs\"],\n    route={\n        \"id\": \"...my_id...\",\n    },\n    service={\n        \"id\": \"...my_id...\",\n    },\n    tags=[\"...\"],\n    updated_at=6)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myGatewaypluginproxycacheadvanced = new Konnect.GatewayPluginProxyCacheAdvanced(\"my_gatewaypluginproxycacheadvanced\", new()\n    {\n        Config = new Konnect.Inputs.GatewayPluginProxyCacheAdvancedConfigArgs\n        {\n            BypassOnErr = true,\n            CacheControl = true,\n            CacheTtl = 5,\n            ContentTypes = new[]\n            {\n                \"...\",\n            },\n            IgnoreUriCase = false,\n            Memory = new Konnect.Inputs.GatewayPluginProxyCacheAdvancedConfigMemoryArgs\n            {\n                DictionaryName = \"...my_dictionary_name...\",\n            },\n            Redis = new Konnect.Inputs.GatewayPluginProxyCacheAdvancedConfigRedisArgs\n            {\n                CloudAuthentication = new Konnect.Inputs.GatewayPluginProxyCacheAdvancedConfigRedisCloudAuthenticationArgs\n                {\n                    AuthProvider = \"aws\",\n                    AwsAccessKeyId = \"...my_aws_access_key_id...\",\n                    AwsAssumeRoleArn = \"...my_aws_assume_role_arn...\",\n                    AwsCacheName = \"...my_aws_cache_name...\",\n                    AwsIsServerless = true,\n                    AwsRegion = \"...my_aws_region...\",\n                    AwsRoleSessionName = \"...my_aws_role_session_name...\",\n                    AwsSecretAccessKey = \"...my_aws_secret_access_key...\",\n                    AzureClientId = \"...my_azure_client_id...\",\n                    AzureClientSecret = \"...my_azure_client_secret...\",\n                    AzureTenantId = \"...my_azure_tenant_id...\",\n                    GcpServiceAccountJson = \"...my_gcp_service_account_json...\",\n                },\n                ClusterMaxRedirections = 7,\n                ClusterNodes = new[]\n                {\n                    new Konnect.Inputs.GatewayPluginProxyCacheAdvancedConfigRedisClusterNodeArgs\n                    {\n                        Ip = \"...my_ip...\",\n                        Port = 56343,\n                    },\n                },\n                ConnectTimeout = 883264270,\n                ConnectionIsProxied = false,\n                Database = 1,\n                Host = \"...my_host...\",\n                KeepaliveBacklog = 578209368,\n                KeepalivePoolSize = 1307431457,\n                Password = \"...my_password...\",\n                Port = 54281,\n                ReadTimeout = 350076819,\n                SendTimeout = 2140614627,\n                SentinelMaster = \"...my_sentinel_master...\",\n                SentinelNodes = new[]\n                {\n                    new Konnect.Inputs.GatewayPluginProxyCacheAdvancedConfigRedisSentinelNodeArgs\n                    {\n                        Host = \"...my_host...\",\n                        Port = 8222,\n                    },\n                },\n                SentinelPassword = \"...my_sentinel_password...\",\n                SentinelRole = \"any\",\n                SentinelUsername = \"...my_sentinel_username...\",\n                ServerName = \"...my_server_name...\",\n                Ssl = false,\n                SslVerify = true,\n                Username = \"...my_username...\",\n            },\n            RequestMethods = new[]\n            {\n                \"GET\",\n            },\n            ResponseCodes = new[]\n            {\n                269,\n            },\n            ResponseHeaders = new Konnect.Inputs.GatewayPluginProxyCacheAdvancedConfigResponseHeadersArgs\n            {\n                Age = false,\n                XCacheKey = true,\n                XCacheStatus = true,\n            },\n            StorageTtl = 0,\n            Strategy = \"redis\",\n            VaryHeaders = new[]\n            {\n                \"...\",\n            },\n            VaryQueryParams = new[]\n            {\n                \"...\",\n            },\n        },\n        Consumer = new Konnect.Inputs.GatewayPluginProxyCacheAdvancedConsumerArgs\n        {\n            Id = \"...my_id...\",\n        },\n        ConsumerGroup = new Konnect.Inputs.GatewayPluginProxyCacheAdvancedConsumerGroupArgs\n        {\n            Id = \"...my_id...\",\n        },\n        ControlPlaneId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        CreatedAt = 8,\n        Enabled = false,\n        GatewayPluginProxyCacheAdvancedId = \"...my_id...\",\n        InstanceName = \"...my_instance_name...\",\n        Ordering = new Konnect.Inputs.GatewayPluginProxyCacheAdvancedOrderingArgs\n        {\n            After = new Konnect.Inputs.GatewayPluginProxyCacheAdvancedOrderingAfterArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n            Before = new Konnect.Inputs.GatewayPluginProxyCacheAdvancedOrderingBeforeArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n        },\n        Partials = new[]\n        {\n            new Konnect.Inputs.GatewayPluginProxyCacheAdvancedPartialArgs\n            {\n                Id = \"...my_id...\",\n                Name = \"...my_name...\",\n                Path = \"...my_path...\",\n            },\n        },\n        Protocols = new[]\n        {\n            \"grpcs\",\n        },\n        Route = new Konnect.Inputs.GatewayPluginProxyCacheAdvancedRouteArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Service = new Konnect.Inputs.GatewayPluginProxyCacheAdvancedServiceArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Tags = new[]\n        {\n            \"...\",\n        },\n        UpdatedAt = 6,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewGatewayPluginProxyCacheAdvanced(ctx, \"my_gatewaypluginproxycacheadvanced\", \u0026konnect.GatewayPluginProxyCacheAdvancedArgs{\n\t\t\tConfig: \u0026konnect.GatewayPluginProxyCacheAdvancedConfigArgs{\n\t\t\t\tBypassOnErr:  pulumi.Bool(true),\n\t\t\t\tCacheControl: pulumi.Bool(true),\n\t\t\t\tCacheTtl:     pulumi.Float64(5),\n\t\t\t\tContentTypes: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tIgnoreUriCase: pulumi.Bool(false),\n\t\t\t\tMemory: \u0026konnect.GatewayPluginProxyCacheAdvancedConfigMemoryArgs{\n\t\t\t\t\tDictionaryName: pulumi.String(\"...my_dictionary_name...\"),\n\t\t\t\t},\n\t\t\t\tRedis: \u0026konnect.GatewayPluginProxyCacheAdvancedConfigRedisArgs{\n\t\t\t\t\tCloudAuthentication: \u0026konnect.GatewayPluginProxyCacheAdvancedConfigRedisCloudAuthenticationArgs{\n\t\t\t\t\t\tAuthProvider:          pulumi.String(\"aws\"),\n\t\t\t\t\t\tAwsAccessKeyId:        pulumi.String(\"...my_aws_access_key_id...\"),\n\t\t\t\t\t\tAwsAssumeRoleArn:      pulumi.String(\"...my_aws_assume_role_arn...\"),\n\t\t\t\t\t\tAwsCacheName:          pulumi.String(\"...my_aws_cache_name...\"),\n\t\t\t\t\t\tAwsIsServerless:       pulumi.Bool(true),\n\t\t\t\t\t\tAwsRegion:             pulumi.String(\"...my_aws_region...\"),\n\t\t\t\t\t\tAwsRoleSessionName:    pulumi.String(\"...my_aws_role_session_name...\"),\n\t\t\t\t\t\tAwsSecretAccessKey:    pulumi.String(\"...my_aws_secret_access_key...\"),\n\t\t\t\t\t\tAzureClientId:         pulumi.String(\"...my_azure_client_id...\"),\n\t\t\t\t\t\tAzureClientSecret:     pulumi.String(\"...my_azure_client_secret...\"),\n\t\t\t\t\t\tAzureTenantId:         pulumi.String(\"...my_azure_tenant_id...\"),\n\t\t\t\t\t\tGcpServiceAccountJson: pulumi.String(\"...my_gcp_service_account_json...\"),\n\t\t\t\t\t},\n\t\t\t\t\tClusterMaxRedirections: pulumi.Float64(7),\n\t\t\t\t\tClusterNodes: konnect.GatewayPluginProxyCacheAdvancedConfigRedisClusterNodeArray{\n\t\t\t\t\t\t\u0026konnect.GatewayPluginProxyCacheAdvancedConfigRedisClusterNodeArgs{\n\t\t\t\t\t\t\tIp:   pulumi.String(\"...my_ip...\"),\n\t\t\t\t\t\t\tPort: pulumi.Float64(56343),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tConnectTimeout:      pulumi.Float64(883264270),\n\t\t\t\t\tConnectionIsProxied: pulumi.Bool(false),\n\t\t\t\t\tDatabase:            pulumi.Float64(1),\n\t\t\t\t\tHost:                pulumi.String(\"...my_host...\"),\n\t\t\t\t\tKeepaliveBacklog:    pulumi.Float64(578209368),\n\t\t\t\t\tKeepalivePoolSize:   pulumi.Float64(1307431457),\n\t\t\t\t\tPassword:            pulumi.String(\"...my_password...\"),\n\t\t\t\t\tPort:                pulumi.Float64(54281),\n\t\t\t\t\tReadTimeout:         pulumi.Float64(350076819),\n\t\t\t\t\tSendTimeout:         pulumi.Float64(2140614627),\n\t\t\t\t\tSentinelMaster:      pulumi.String(\"...my_sentinel_master...\"),\n\t\t\t\t\tSentinelNodes: konnect.GatewayPluginProxyCacheAdvancedConfigRedisSentinelNodeArray{\n\t\t\t\t\t\t\u0026konnect.GatewayPluginProxyCacheAdvancedConfigRedisSentinelNodeArgs{\n\t\t\t\t\t\t\tHost: pulumi.String(\"...my_host...\"),\n\t\t\t\t\t\t\tPort: pulumi.Float64(8222),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tSentinelPassword: pulumi.String(\"...my_sentinel_password...\"),\n\t\t\t\t\tSentinelRole:     pulumi.String(\"any\"),\n\t\t\t\t\tSentinelUsername: pulumi.String(\"...my_sentinel_username...\"),\n\t\t\t\t\tServerName:       pulumi.String(\"...my_server_name...\"),\n\t\t\t\t\tSsl:              pulumi.Bool(false),\n\t\t\t\t\tSslVerify:        pulumi.Bool(true),\n\t\t\t\t\tUsername:         pulumi.String(\"...my_username...\"),\n\t\t\t\t},\n\t\t\t\tRequestMethods: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"GET\"),\n\t\t\t\t},\n\t\t\t\tResponseCodes: pulumi.Float64Array{\n\t\t\t\t\tpulumi.Float64(269),\n\t\t\t\t},\n\t\t\t\tResponseHeaders: \u0026konnect.GatewayPluginProxyCacheAdvancedConfigResponseHeadersArgs{\n\t\t\t\t\tAge:          pulumi.Bool(false),\n\t\t\t\t\tXCacheKey:    pulumi.Bool(true),\n\t\t\t\t\tXCacheStatus: pulumi.Bool(true),\n\t\t\t\t},\n\t\t\t\tStorageTtl: pulumi.Float64(0),\n\t\t\t\tStrategy:   pulumi.String(\"redis\"),\n\t\t\t\tVaryHeaders: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tVaryQueryParams: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tConsumer: \u0026konnect.GatewayPluginProxyCacheAdvancedConsumerArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tConsumerGroup: \u0026konnect.GatewayPluginProxyCacheAdvancedConsumerGroupArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tControlPlaneId:                    pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tCreatedAt:                         pulumi.Float64(8),\n\t\t\tEnabled:                           pulumi.Bool(false),\n\t\t\tGatewayPluginProxyCacheAdvancedId: pulumi.String(\"...my_id...\"),\n\t\t\tInstanceName:                      pulumi.String(\"...my_instance_name...\"),\n\t\t\tOrdering: \u0026konnect.GatewayPluginProxyCacheAdvancedOrderingArgs{\n\t\t\t\tAfter: \u0026konnect.GatewayPluginProxyCacheAdvancedOrderingAfterArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tBefore: \u0026konnect.GatewayPluginProxyCacheAdvancedOrderingBeforeArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tPartials: konnect.GatewayPluginProxyCacheAdvancedPartialArray{\n\t\t\t\t\u0026konnect.GatewayPluginProxyCacheAdvancedPartialArgs{\n\t\t\t\t\tId:   pulumi.String(\"...my_id...\"),\n\t\t\t\t\tName: pulumi.String(\"...my_name...\"),\n\t\t\t\t\tPath: pulumi.String(\"...my_path...\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tProtocols: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"grpcs\"),\n\t\t\t},\n\t\t\tRoute: \u0026konnect.GatewayPluginProxyCacheAdvancedRouteArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tService: \u0026konnect.GatewayPluginProxyCacheAdvancedServiceArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"...\"),\n\t\t\t},\n\t\t\tUpdatedAt: pulumi.Float64(6),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.GatewayPluginProxyCacheAdvanced;\nimport com.pulumi.konnect.GatewayPluginProxyCacheAdvancedArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginProxyCacheAdvancedConfigArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginProxyCacheAdvancedConfigMemoryArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginProxyCacheAdvancedConfigRedisArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginProxyCacheAdvancedConfigRedisCloudAuthenticationArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginProxyCacheAdvancedConfigResponseHeadersArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginProxyCacheAdvancedConsumerArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginProxyCacheAdvancedConsumerGroupArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginProxyCacheAdvancedOrderingArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginProxyCacheAdvancedOrderingAfterArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginProxyCacheAdvancedOrderingBeforeArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginProxyCacheAdvancedPartialArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginProxyCacheAdvancedRouteArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginProxyCacheAdvancedServiceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myGatewaypluginproxycacheadvanced = new GatewayPluginProxyCacheAdvanced(\"myGatewaypluginproxycacheadvanced\", GatewayPluginProxyCacheAdvancedArgs.builder()\n            .config(GatewayPluginProxyCacheAdvancedConfigArgs.builder()\n                .bypassOnErr(true)\n                .cacheControl(true)\n                .cacheTtl(5.0)\n                .contentTypes(\"...\")\n                .ignoreUriCase(false)\n                .memory(GatewayPluginProxyCacheAdvancedConfigMemoryArgs.builder()\n                    .dictionaryName(\"...my_dictionary_name...\")\n                    .build())\n                .redis(GatewayPluginProxyCacheAdvancedConfigRedisArgs.builder()\n                    .cloudAuthentication(GatewayPluginProxyCacheAdvancedConfigRedisCloudAuthenticationArgs.builder()\n                        .authProvider(\"aws\")\n                        .awsAccessKeyId(\"...my_aws_access_key_id...\")\n                        .awsAssumeRoleArn(\"...my_aws_assume_role_arn...\")\n                        .awsCacheName(\"...my_aws_cache_name...\")\n                        .awsIsServerless(true)\n                        .awsRegion(\"...my_aws_region...\")\n                        .awsRoleSessionName(\"...my_aws_role_session_name...\")\n                        .awsSecretAccessKey(\"...my_aws_secret_access_key...\")\n                        .azureClientId(\"...my_azure_client_id...\")\n                        .azureClientSecret(\"...my_azure_client_secret...\")\n                        .azureTenantId(\"...my_azure_tenant_id...\")\n                        .gcpServiceAccountJson(\"...my_gcp_service_account_json...\")\n                        .build())\n                    .clusterMaxRedirections(7.0)\n                    .clusterNodes(GatewayPluginProxyCacheAdvancedConfigRedisClusterNodeArgs.builder()\n                        .ip(\"...my_ip...\")\n                        .port(56343.0)\n                        .build())\n                    .connectTimeout(883264270.0)\n                    .connectionIsProxied(false)\n                    .database(1.0)\n                    .host(\"...my_host...\")\n                    .keepaliveBacklog(578209368.0)\n                    .keepalivePoolSize(1307431457.0)\n                    .password(\"...my_password...\")\n                    .port(54281.0)\n                    .readTimeout(350076819.0)\n                    .sendTimeout(2140614627.0)\n                    .sentinelMaster(\"...my_sentinel_master...\")\n                    .sentinelNodes(GatewayPluginProxyCacheAdvancedConfigRedisSentinelNodeArgs.builder()\n                        .host(\"...my_host...\")\n                        .port(8222.0)\n                        .build())\n                    .sentinelPassword(\"...my_sentinel_password...\")\n                    .sentinelRole(\"any\")\n                    .sentinelUsername(\"...my_sentinel_username...\")\n                    .serverName(\"...my_server_name...\")\n                    .ssl(false)\n                    .sslVerify(true)\n                    .username(\"...my_username...\")\n                    .build())\n                .requestMethods(\"GET\")\n                .responseCodes(269.0)\n                .responseHeaders(GatewayPluginProxyCacheAdvancedConfigResponseHeadersArgs.builder()\n                    .age(false)\n                    .xCacheKey(true)\n                    .xCacheStatus(true)\n                    .build())\n                .storageTtl(0.0)\n                .strategy(\"redis\")\n                .varyHeaders(\"...\")\n                .varyQueryParams(\"...\")\n                .build())\n            .consumer(GatewayPluginProxyCacheAdvancedConsumerArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .consumerGroup(GatewayPluginProxyCacheAdvancedConsumerGroupArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .controlPlaneId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .createdAt(8.0)\n            .enabled(false)\n            .gatewayPluginProxyCacheAdvancedId(\"...my_id...\")\n            .instanceName(\"...my_instance_name...\")\n            .ordering(GatewayPluginProxyCacheAdvancedOrderingArgs.builder()\n                .after(GatewayPluginProxyCacheAdvancedOrderingAfterArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .before(GatewayPluginProxyCacheAdvancedOrderingBeforeArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .build())\n            .partials(GatewayPluginProxyCacheAdvancedPartialArgs.builder()\n                .id(\"...my_id...\")\n                .name(\"...my_name...\")\n                .path(\"...my_path...\")\n                .build())\n            .protocols(\"grpcs\")\n            .route(GatewayPluginProxyCacheAdvancedRouteArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .service(GatewayPluginProxyCacheAdvancedServiceArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .tags(\"...\")\n            .updatedAt(6.0)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myGatewaypluginproxycacheadvanced:\n    type: konnect:GatewayPluginProxyCacheAdvanced\n    name: my_gatewaypluginproxycacheadvanced\n    properties:\n      config:\n        bypassOnErr: true\n        cacheControl: true\n        cacheTtl: 5\n        contentTypes:\n          - '...'\n        ignoreUriCase: false\n        memory:\n          dictionaryName: '...my_dictionary_name...'\n        redis:\n          cloudAuthentication:\n            authProvider: aws\n            awsAccessKeyId: '...my_aws_access_key_id...'\n            awsAssumeRoleArn: '...my_aws_assume_role_arn...'\n            awsCacheName: '...my_aws_cache_name...'\n            awsIsServerless: true\n            awsRegion: '...my_aws_region...'\n            awsRoleSessionName: '...my_aws_role_session_name...'\n            awsSecretAccessKey: '...my_aws_secret_access_key...'\n            azureClientId: '...my_azure_client_id...'\n            azureClientSecret: '...my_azure_client_secret...'\n            azureTenantId: '...my_azure_tenant_id...'\n            gcpServiceAccountJson: '...my_gcp_service_account_json...'\n          clusterMaxRedirections: 7\n          clusterNodes:\n            - ip: '...my_ip...'\n              port: 56343\n          connectTimeout: 8.8326427e+08\n          connectionIsProxied: false\n          database: 1\n          host: '...my_host...'\n          keepaliveBacklog: 5.78209368e+08\n          keepalivePoolSize: 1.307431457e+09\n          password: '...my_password...'\n          port: 54281\n          readTimeout: 3.50076819e+08\n          sendTimeout: 2.140614627e+09\n          sentinelMaster: '...my_sentinel_master...'\n          sentinelNodes:\n            - host: '...my_host...'\n              port: 8222\n          sentinelPassword: '...my_sentinel_password...'\n          sentinelRole: any\n          sentinelUsername: '...my_sentinel_username...'\n          serverName: '...my_server_name...'\n          ssl: false\n          sslVerify: true\n          username: '...my_username...'\n        requestMethods:\n          - GET\n        responseCodes:\n          - 269\n        responseHeaders:\n          age: false\n          xCacheKey: true\n          xCacheStatus: true\n        storageTtl: 0\n        strategy: redis\n        varyHeaders:\n          - '...'\n        varyQueryParams:\n          - '...'\n      consumer:\n        id: '...my_id...'\n      consumerGroup:\n        id: '...my_id...'\n      controlPlaneId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      createdAt: 8\n      enabled: false\n      gatewayPluginProxyCacheAdvancedId: '...my_id...'\n      instanceName: '...my_instance_name...'\n      ordering:\n        after:\n          accesses:\n            - '...'\n        before:\n          accesses:\n            - '...'\n      partials:\n        - id: '...my_id...'\n          name: '...my_name...'\n          path: '...my_path...'\n      protocols:\n        - grpcs\n      route:\n        id: '...my_id...'\n      service:\n        id: '...my_id...'\n      tags:\n        - '...'\n      updatedAt: 6\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_gateway_plugin_proxy_cache_advanced.my_konnect_gateway_plugin_proxy_cache_advanced\n\n  id = jsonencode({\n\n    control_plane_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/gatewayPluginProxyCacheAdvanced:GatewayPluginProxyCacheAdvanced my_konnect_gateway_plugin_proxy_cache_advanced '{\"control_plane_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"}'\n```\n\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginProxyCacheAdvancedConfig:GatewayPluginProxyCacheAdvancedConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginProxyCacheAdvancedConsumer:GatewayPluginProxyCacheAdvancedConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"consumerGroup":{"$ref":"#/types/konnect:index%2FGatewayPluginProxyCacheAdvancedConsumerGroup:GatewayPluginProxyCacheAdvancedConsumerGroup","description":"If set, the plugin will activate only for requests where the specified consumer group has been authenticated. (Note that some plugins can not be restricted to consumers groups this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer Groups\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginProxyCacheAdvancedId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginProxyCacheAdvancedOrdering:GatewayPluginProxyCacheAdvancedOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginProxyCacheAdvancedPartial:GatewayPluginProxyCacheAdvancedPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginProxyCacheAdvancedRoute:GatewayPluginProxyCacheAdvancedRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginProxyCacheAdvancedService:GatewayPluginProxyCacheAdvancedService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object","required":["config","consumer","consumerGroup","controlPlaneId","createdAt","enabled","gatewayPluginProxyCacheAdvancedId","ordering","protocols","route","service","updatedAt"],"inputProperties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginProxyCacheAdvancedConfig:GatewayPluginProxyCacheAdvancedConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginProxyCacheAdvancedConsumer:GatewayPluginProxyCacheAdvancedConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"consumerGroup":{"$ref":"#/types/konnect:index%2FGatewayPluginProxyCacheAdvancedConsumerGroup:GatewayPluginProxyCacheAdvancedConsumerGroup","description":"If set, the plugin will activate only for requests where the specified consumer group has been authenticated. (Note that some plugins can not be restricted to consumers groups this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer Groups\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginProxyCacheAdvancedId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginProxyCacheAdvancedOrdering:GatewayPluginProxyCacheAdvancedOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginProxyCacheAdvancedPartial:GatewayPluginProxyCacheAdvancedPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginProxyCacheAdvancedRoute:GatewayPluginProxyCacheAdvancedRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginProxyCacheAdvancedService:GatewayPluginProxyCacheAdvancedService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"requiredInputs":["config","controlPlaneId"],"stateInputs":{"description":"Input properties used for looking up and filtering GatewayPluginProxyCacheAdvanced resources.\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginProxyCacheAdvancedConfig:GatewayPluginProxyCacheAdvancedConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginProxyCacheAdvancedConsumer:GatewayPluginProxyCacheAdvancedConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"consumerGroup":{"$ref":"#/types/konnect:index%2FGatewayPluginProxyCacheAdvancedConsumerGroup:GatewayPluginProxyCacheAdvancedConsumerGroup","description":"If set, the plugin will activate only for requests where the specified consumer group has been authenticated. (Note that some plugins can not be restricted to consumers groups this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer Groups\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginProxyCacheAdvancedId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginProxyCacheAdvancedOrdering:GatewayPluginProxyCacheAdvancedOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginProxyCacheAdvancedPartial:GatewayPluginProxyCacheAdvancedPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginProxyCacheAdvancedRoute:GatewayPluginProxyCacheAdvancedRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginProxyCacheAdvancedService:GatewayPluginProxyCacheAdvancedService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object"}},"konnect:index/gatewayPluginRateLimiting:GatewayPluginRateLimiting":{"description":"GatewayPluginRateLimiting Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myGatewaypluginratelimiting = new konnect.GatewayPluginRateLimiting(\"my_gatewaypluginratelimiting\", {\n    config: {\n        day: 2.06,\n        errorCode: 7.45,\n        errorMessage: \"...my_error_message...\",\n        faultTolerant: true,\n        headerName: \"...my_header_name...\",\n        hideClientHeaders: false,\n        hour: 0.92,\n        limitBy: \"ip\",\n        minute: 3.29,\n        month: 7.22,\n        path: \"...my_path...\",\n        policy: \"local\",\n        redis: {\n            cloudAuthentication: {\n                authProvider: \"gcp\",\n                awsAccessKeyId: \"...my_aws_access_key_id...\",\n                awsAssumeRoleArn: \"...my_aws_assume_role_arn...\",\n                awsCacheName: \"...my_aws_cache_name...\",\n                awsIsServerless: true,\n                awsRegion: \"...my_aws_region...\",\n                awsRoleSessionName: \"...my_aws_role_session_name...\",\n                awsSecretAccessKey: \"...my_aws_secret_access_key...\",\n                azureClientId: \"...my_azure_client_id...\",\n                azureClientSecret: \"...my_azure_client_secret...\",\n                azureTenantId: \"...my_azure_tenant_id...\",\n                gcpServiceAccountJson: \"...my_gcp_service_account_json...\",\n            },\n            database: 3,\n            host: \"...my_host...\",\n            password: \"...my_password...\",\n            port: 37089,\n            serverName: \"...my_server_name...\",\n            ssl: false,\n            sslVerify: true,\n            timeout: 14058328,\n            username: \"...my_username...\",\n        },\n        second: 1.89,\n        syncRate: 7.98,\n        year: 0.32,\n    },\n    consumer: {\n        id: \"...my_id...\",\n    },\n    consumerGroup: {\n        id: \"...my_id...\",\n    },\n    controlPlaneId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    createdAt: 9,\n    enabled: true,\n    gatewayPluginRateLimitingId: \"...my_id...\",\n    instanceName: \"...my_instance_name...\",\n    ordering: {\n        after: {\n            accesses: [\"...\"],\n        },\n        before: {\n            accesses: [\"...\"],\n        },\n    },\n    partials: [{\n        id: \"...my_id...\",\n        name: \"...my_name...\",\n        path: \"...my_path...\",\n    }],\n    protocols: [\"grpc\"],\n    route: {\n        id: \"...my_id...\",\n    },\n    service: {\n        id: \"...my_id...\",\n    },\n    tags: [\"...\"],\n    updatedAt: 4,\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_gatewaypluginratelimiting = konnect.GatewayPluginRateLimiting(\"my_gatewaypluginratelimiting\",\n    config={\n        \"day\": 2.06,\n        \"error_code\": 7.45,\n        \"error_message\": \"...my_error_message...\",\n        \"fault_tolerant\": True,\n        \"header_name\": \"...my_header_name...\",\n        \"hide_client_headers\": False,\n        \"hour\": 0.92,\n        \"limit_by\": \"ip\",\n        \"minute\": 3.29,\n        \"month\": 7.22,\n        \"path\": \"...my_path...\",\n        \"policy\": \"local\",\n        \"redis\": {\n            \"cloud_authentication\": {\n                \"auth_provider\": \"gcp\",\n                \"aws_access_key_id\": \"...my_aws_access_key_id...\",\n                \"aws_assume_role_arn\": \"...my_aws_assume_role_arn...\",\n                \"aws_cache_name\": \"...my_aws_cache_name...\",\n                \"aws_is_serverless\": True,\n                \"aws_region\": \"...my_aws_region...\",\n                \"aws_role_session_name\": \"...my_aws_role_session_name...\",\n                \"aws_secret_access_key\": \"...my_aws_secret_access_key...\",\n                \"azure_client_id\": \"...my_azure_client_id...\",\n                \"azure_client_secret\": \"...my_azure_client_secret...\",\n                \"azure_tenant_id\": \"...my_azure_tenant_id...\",\n                \"gcp_service_account_json\": \"...my_gcp_service_account_json...\",\n            },\n            \"database\": 3,\n            \"host\": \"...my_host...\",\n            \"password\": \"...my_password...\",\n            \"port\": 37089,\n            \"server_name\": \"...my_server_name...\",\n            \"ssl\": False,\n            \"ssl_verify\": True,\n            \"timeout\": 14058328,\n            \"username\": \"...my_username...\",\n        },\n        \"second\": 1.89,\n        \"sync_rate\": 7.98,\n        \"year\": 0.32,\n    },\n    consumer={\n        \"id\": \"...my_id...\",\n    },\n    consumer_group={\n        \"id\": \"...my_id...\",\n    },\n    control_plane_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    created_at=9,\n    enabled=True,\n    gateway_plugin_rate_limiting_id=\"...my_id...\",\n    instance_name=\"...my_instance_name...\",\n    ordering={\n        \"after\": {\n            \"accesses\": [\"...\"],\n        },\n        \"before\": {\n            \"accesses\": [\"...\"],\n        },\n    },\n    partials=[{\n        \"id\": \"...my_id...\",\n        \"name\": \"...my_name...\",\n        \"path\": \"...my_path...\",\n    }],\n    protocols=[\"grpc\"],\n    route={\n        \"id\": \"...my_id...\",\n    },\n    service={\n        \"id\": \"...my_id...\",\n    },\n    tags=[\"...\"],\n    updated_at=4)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myGatewaypluginratelimiting = new Konnect.GatewayPluginRateLimiting(\"my_gatewaypluginratelimiting\", new()\n    {\n        Config = new Konnect.Inputs.GatewayPluginRateLimitingConfigArgs\n        {\n            Day = 2.06,\n            ErrorCode = 7.45,\n            ErrorMessage = \"...my_error_message...\",\n            FaultTolerant = true,\n            HeaderName = \"...my_header_name...\",\n            HideClientHeaders = false,\n            Hour = 0.92,\n            LimitBy = \"ip\",\n            Minute = 3.29,\n            Month = 7.22,\n            Path = \"...my_path...\",\n            Policy = \"local\",\n            Redis = new Konnect.Inputs.GatewayPluginRateLimitingConfigRedisArgs\n            {\n                CloudAuthentication = new Konnect.Inputs.GatewayPluginRateLimitingConfigRedisCloudAuthenticationArgs\n                {\n                    AuthProvider = \"gcp\",\n                    AwsAccessKeyId = \"...my_aws_access_key_id...\",\n                    AwsAssumeRoleArn = \"...my_aws_assume_role_arn...\",\n                    AwsCacheName = \"...my_aws_cache_name...\",\n                    AwsIsServerless = true,\n                    AwsRegion = \"...my_aws_region...\",\n                    AwsRoleSessionName = \"...my_aws_role_session_name...\",\n                    AwsSecretAccessKey = \"...my_aws_secret_access_key...\",\n                    AzureClientId = \"...my_azure_client_id...\",\n                    AzureClientSecret = \"...my_azure_client_secret...\",\n                    AzureTenantId = \"...my_azure_tenant_id...\",\n                    GcpServiceAccountJson = \"...my_gcp_service_account_json...\",\n                },\n                Database = 3,\n                Host = \"...my_host...\",\n                Password = \"...my_password...\",\n                Port = 37089,\n                ServerName = \"...my_server_name...\",\n                Ssl = false,\n                SslVerify = true,\n                Timeout = 14058328,\n                Username = \"...my_username...\",\n            },\n            Second = 1.89,\n            SyncRate = 7.98,\n            Year = 0.32,\n        },\n        Consumer = new Konnect.Inputs.GatewayPluginRateLimitingConsumerArgs\n        {\n            Id = \"...my_id...\",\n        },\n        ConsumerGroup = new Konnect.Inputs.GatewayPluginRateLimitingConsumerGroupArgs\n        {\n            Id = \"...my_id...\",\n        },\n        ControlPlaneId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        CreatedAt = 9,\n        Enabled = true,\n        GatewayPluginRateLimitingId = \"...my_id...\",\n        InstanceName = \"...my_instance_name...\",\n        Ordering = new Konnect.Inputs.GatewayPluginRateLimitingOrderingArgs\n        {\n            After = new Konnect.Inputs.GatewayPluginRateLimitingOrderingAfterArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n            Before = new Konnect.Inputs.GatewayPluginRateLimitingOrderingBeforeArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n        },\n        Partials = new[]\n        {\n            new Konnect.Inputs.GatewayPluginRateLimitingPartialArgs\n            {\n                Id = \"...my_id...\",\n                Name = \"...my_name...\",\n                Path = \"...my_path...\",\n            },\n        },\n        Protocols = new[]\n        {\n            \"grpc\",\n        },\n        Route = new Konnect.Inputs.GatewayPluginRateLimitingRouteArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Service = new Konnect.Inputs.GatewayPluginRateLimitingServiceArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Tags = new[]\n        {\n            \"...\",\n        },\n        UpdatedAt = 4,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewGatewayPluginRateLimiting(ctx, \"my_gatewaypluginratelimiting\", \u0026konnect.GatewayPluginRateLimitingArgs{\n\t\t\tConfig: \u0026konnect.GatewayPluginRateLimitingConfigArgs{\n\t\t\t\tDay:               pulumi.Float64(2.06),\n\t\t\t\tErrorCode:         pulumi.Float64(7.45),\n\t\t\t\tErrorMessage:      pulumi.String(\"...my_error_message...\"),\n\t\t\t\tFaultTolerant:     pulumi.Bool(true),\n\t\t\t\tHeaderName:        pulumi.String(\"...my_header_name...\"),\n\t\t\t\tHideClientHeaders: pulumi.Bool(false),\n\t\t\t\tHour:              pulumi.Float64(0.92),\n\t\t\t\tLimitBy:           pulumi.String(\"ip\"),\n\t\t\t\tMinute:            pulumi.Float64(3.29),\n\t\t\t\tMonth:             pulumi.Float64(7.22),\n\t\t\t\tPath:              pulumi.String(\"...my_path...\"),\n\t\t\t\tPolicy:            pulumi.String(\"local\"),\n\t\t\t\tRedis: \u0026konnect.GatewayPluginRateLimitingConfigRedisArgs{\n\t\t\t\t\tCloudAuthentication: \u0026konnect.GatewayPluginRateLimitingConfigRedisCloudAuthenticationArgs{\n\t\t\t\t\t\tAuthProvider:          pulumi.String(\"gcp\"),\n\t\t\t\t\t\tAwsAccessKeyId:        pulumi.String(\"...my_aws_access_key_id...\"),\n\t\t\t\t\t\tAwsAssumeRoleArn:      pulumi.String(\"...my_aws_assume_role_arn...\"),\n\t\t\t\t\t\tAwsCacheName:          pulumi.String(\"...my_aws_cache_name...\"),\n\t\t\t\t\t\tAwsIsServerless:       pulumi.Bool(true),\n\t\t\t\t\t\tAwsRegion:             pulumi.String(\"...my_aws_region...\"),\n\t\t\t\t\t\tAwsRoleSessionName:    pulumi.String(\"...my_aws_role_session_name...\"),\n\t\t\t\t\t\tAwsSecretAccessKey:    pulumi.String(\"...my_aws_secret_access_key...\"),\n\t\t\t\t\t\tAzureClientId:         pulumi.String(\"...my_azure_client_id...\"),\n\t\t\t\t\t\tAzureClientSecret:     pulumi.String(\"...my_azure_client_secret...\"),\n\t\t\t\t\t\tAzureTenantId:         pulumi.String(\"...my_azure_tenant_id...\"),\n\t\t\t\t\t\tGcpServiceAccountJson: pulumi.String(\"...my_gcp_service_account_json...\"),\n\t\t\t\t\t},\n\t\t\t\t\tDatabase:   pulumi.Float64(3),\n\t\t\t\t\tHost:       pulumi.String(\"...my_host...\"),\n\t\t\t\t\tPassword:   pulumi.String(\"...my_password...\"),\n\t\t\t\t\tPort:       pulumi.Float64(37089),\n\t\t\t\t\tServerName: pulumi.String(\"...my_server_name...\"),\n\t\t\t\t\tSsl:        pulumi.Bool(false),\n\t\t\t\t\tSslVerify:  pulumi.Bool(true),\n\t\t\t\t\tTimeout:    pulumi.Float64(14058328),\n\t\t\t\t\tUsername:   pulumi.String(\"...my_username...\"),\n\t\t\t\t},\n\t\t\t\tSecond:   pulumi.Float64(1.89),\n\t\t\t\tSyncRate: pulumi.Float64(7.98),\n\t\t\t\tYear:     pulumi.Float64(0.32),\n\t\t\t},\n\t\t\tConsumer: \u0026konnect.GatewayPluginRateLimitingConsumerArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tConsumerGroup: \u0026konnect.GatewayPluginRateLimitingConsumerGroupArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tControlPlaneId:              pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tCreatedAt:                   pulumi.Float64(9),\n\t\t\tEnabled:                     pulumi.Bool(true),\n\t\t\tGatewayPluginRateLimitingId: pulumi.String(\"...my_id...\"),\n\t\t\tInstanceName:                pulumi.String(\"...my_instance_name...\"),\n\t\t\tOrdering: \u0026konnect.GatewayPluginRateLimitingOrderingArgs{\n\t\t\t\tAfter: \u0026konnect.GatewayPluginRateLimitingOrderingAfterArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tBefore: \u0026konnect.GatewayPluginRateLimitingOrderingBeforeArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tPartials: konnect.GatewayPluginRateLimitingPartialArray{\n\t\t\t\t\u0026konnect.GatewayPluginRateLimitingPartialArgs{\n\t\t\t\t\tId:   pulumi.String(\"...my_id...\"),\n\t\t\t\t\tName: pulumi.String(\"...my_name...\"),\n\t\t\t\t\tPath: pulumi.String(\"...my_path...\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tProtocols: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"grpc\"),\n\t\t\t},\n\t\t\tRoute: \u0026konnect.GatewayPluginRateLimitingRouteArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tService: \u0026konnect.GatewayPluginRateLimitingServiceArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"...\"),\n\t\t\t},\n\t\t\tUpdatedAt: pulumi.Float64(4),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.GatewayPluginRateLimiting;\nimport com.pulumi.konnect.GatewayPluginRateLimitingArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginRateLimitingConfigArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginRateLimitingConfigRedisArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginRateLimitingConfigRedisCloudAuthenticationArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginRateLimitingConsumerArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginRateLimitingConsumerGroupArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginRateLimitingOrderingArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginRateLimitingOrderingAfterArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginRateLimitingOrderingBeforeArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginRateLimitingPartialArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginRateLimitingRouteArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginRateLimitingServiceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myGatewaypluginratelimiting = new GatewayPluginRateLimiting(\"myGatewaypluginratelimiting\", GatewayPluginRateLimitingArgs.builder()\n            .config(GatewayPluginRateLimitingConfigArgs.builder()\n                .day(2.06)\n                .errorCode(7.45)\n                .errorMessage(\"...my_error_message...\")\n                .faultTolerant(true)\n                .headerName(\"...my_header_name...\")\n                .hideClientHeaders(false)\n                .hour(0.92)\n                .limitBy(\"ip\")\n                .minute(3.29)\n                .month(7.22)\n                .path(\"...my_path...\")\n                .policy(\"local\")\n                .redis(GatewayPluginRateLimitingConfigRedisArgs.builder()\n                    .cloudAuthentication(GatewayPluginRateLimitingConfigRedisCloudAuthenticationArgs.builder()\n                        .authProvider(\"gcp\")\n                        .awsAccessKeyId(\"...my_aws_access_key_id...\")\n                        .awsAssumeRoleArn(\"...my_aws_assume_role_arn...\")\n                        .awsCacheName(\"...my_aws_cache_name...\")\n                        .awsIsServerless(true)\n                        .awsRegion(\"...my_aws_region...\")\n                        .awsRoleSessionName(\"...my_aws_role_session_name...\")\n                        .awsSecretAccessKey(\"...my_aws_secret_access_key...\")\n                        .azureClientId(\"...my_azure_client_id...\")\n                        .azureClientSecret(\"...my_azure_client_secret...\")\n                        .azureTenantId(\"...my_azure_tenant_id...\")\n                        .gcpServiceAccountJson(\"...my_gcp_service_account_json...\")\n                        .build())\n                    .database(3.0)\n                    .host(\"...my_host...\")\n                    .password(\"...my_password...\")\n                    .port(37089.0)\n                    .serverName(\"...my_server_name...\")\n                    .ssl(false)\n                    .sslVerify(true)\n                    .timeout(14058328.0)\n                    .username(\"...my_username...\")\n                    .build())\n                .second(1.89)\n                .syncRate(7.98)\n                .year(0.32)\n                .build())\n            .consumer(GatewayPluginRateLimitingConsumerArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .consumerGroup(GatewayPluginRateLimitingConsumerGroupArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .controlPlaneId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .createdAt(9.0)\n            .enabled(true)\n            .gatewayPluginRateLimitingId(\"...my_id...\")\n            .instanceName(\"...my_instance_name...\")\n            .ordering(GatewayPluginRateLimitingOrderingArgs.builder()\n                .after(GatewayPluginRateLimitingOrderingAfterArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .before(GatewayPluginRateLimitingOrderingBeforeArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .build())\n            .partials(GatewayPluginRateLimitingPartialArgs.builder()\n                .id(\"...my_id...\")\n                .name(\"...my_name...\")\n                .path(\"...my_path...\")\n                .build())\n            .protocols(\"grpc\")\n            .route(GatewayPluginRateLimitingRouteArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .service(GatewayPluginRateLimitingServiceArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .tags(\"...\")\n            .updatedAt(4.0)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myGatewaypluginratelimiting:\n    type: konnect:GatewayPluginRateLimiting\n    name: my_gatewaypluginratelimiting\n    properties:\n      config:\n        day: 2.06\n        errorCode: 7.45\n        errorMessage: '...my_error_message...'\n        faultTolerant: true\n        headerName: '...my_header_name...'\n        hideClientHeaders: false\n        hour: 0.92\n        limitBy: ip\n        minute: 3.29\n        month: 7.22\n        path: '...my_path...'\n        policy: local\n        redis:\n          cloudAuthentication:\n            authProvider: gcp\n            awsAccessKeyId: '...my_aws_access_key_id...'\n            awsAssumeRoleArn: '...my_aws_assume_role_arn...'\n            awsCacheName: '...my_aws_cache_name...'\n            awsIsServerless: true\n            awsRegion: '...my_aws_region...'\n            awsRoleSessionName: '...my_aws_role_session_name...'\n            awsSecretAccessKey: '...my_aws_secret_access_key...'\n            azureClientId: '...my_azure_client_id...'\n            azureClientSecret: '...my_azure_client_secret...'\n            azureTenantId: '...my_azure_tenant_id...'\n            gcpServiceAccountJson: '...my_gcp_service_account_json...'\n          database: 3\n          host: '...my_host...'\n          password: '...my_password...'\n          port: 37089\n          serverName: '...my_server_name...'\n          ssl: false\n          sslVerify: true\n          timeout: 1.4058328e+07\n          username: '...my_username...'\n        second: 1.89\n        syncRate: 7.98\n        year: 0.32\n      consumer:\n        id: '...my_id...'\n      consumerGroup:\n        id: '...my_id...'\n      controlPlaneId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      createdAt: 9\n      enabled: true\n      gatewayPluginRateLimitingId: '...my_id...'\n      instanceName: '...my_instance_name...'\n      ordering:\n        after:\n          accesses:\n            - '...'\n        before:\n          accesses:\n            - '...'\n      partials:\n        - id: '...my_id...'\n          name: '...my_name...'\n          path: '...my_path...'\n      protocols:\n        - grpc\n      route:\n        id: '...my_id...'\n      service:\n        id: '...my_id...'\n      tags:\n        - '...'\n      updatedAt: 4\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_gateway_plugin_rate_limiting.my_konnect_gateway_plugin_rate_limiting\n\n  id = jsonencode({\n\n    control_plane_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/gatewayPluginRateLimiting:GatewayPluginRateLimiting my_konnect_gateway_plugin_rate_limiting '{\"control_plane_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"}'\n```\n\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginRateLimitingConfig:GatewayPluginRateLimitingConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginRateLimitingConsumer:GatewayPluginRateLimitingConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"consumerGroup":{"$ref":"#/types/konnect:index%2FGatewayPluginRateLimitingConsumerGroup:GatewayPluginRateLimitingConsumerGroup","description":"If set, the plugin will activate only for requests where the specified consumer group has been authenticated. (Note that some plugins can not be restricted to consumers groups this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer Groups\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginRateLimitingId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginRateLimitingOrdering:GatewayPluginRateLimitingOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginRateLimitingPartial:GatewayPluginRateLimitingPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginRateLimitingRoute:GatewayPluginRateLimitingRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginRateLimitingService:GatewayPluginRateLimitingService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object","required":["config","consumer","consumerGroup","controlPlaneId","createdAt","enabled","gatewayPluginRateLimitingId","ordering","protocols","route","service","updatedAt"],"inputProperties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginRateLimitingConfig:GatewayPluginRateLimitingConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginRateLimitingConsumer:GatewayPluginRateLimitingConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"consumerGroup":{"$ref":"#/types/konnect:index%2FGatewayPluginRateLimitingConsumerGroup:GatewayPluginRateLimitingConsumerGroup","description":"If set, the plugin will activate only for requests where the specified consumer group has been authenticated. (Note that some plugins can not be restricted to consumers groups this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer Groups\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginRateLimitingId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginRateLimitingOrdering:GatewayPluginRateLimitingOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginRateLimitingPartial:GatewayPluginRateLimitingPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginRateLimitingRoute:GatewayPluginRateLimitingRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginRateLimitingService:GatewayPluginRateLimitingService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"requiredInputs":["controlPlaneId"],"stateInputs":{"description":"Input properties used for looking up and filtering GatewayPluginRateLimiting resources.\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginRateLimitingConfig:GatewayPluginRateLimitingConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginRateLimitingConsumer:GatewayPluginRateLimitingConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"consumerGroup":{"$ref":"#/types/konnect:index%2FGatewayPluginRateLimitingConsumerGroup:GatewayPluginRateLimitingConsumerGroup","description":"If set, the plugin will activate only for requests where the specified consumer group has been authenticated. (Note that some plugins can not be restricted to consumers groups this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer Groups\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginRateLimitingId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginRateLimitingOrdering:GatewayPluginRateLimitingOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginRateLimitingPartial:GatewayPluginRateLimitingPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginRateLimitingRoute:GatewayPluginRateLimitingRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginRateLimitingService:GatewayPluginRateLimitingService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object"}},"konnect:index/gatewayPluginRateLimitingAdvanced:GatewayPluginRateLimitingAdvanced":{"description":"GatewayPluginRateLimitingAdvanced Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myGatewaypluginratelimitingadvanced = new konnect.GatewayPluginRateLimitingAdvanced(\"my_gatewaypluginratelimitingadvanced\", {\n    config: {\n        compoundIdentifiers: [\"header\"],\n        consumerGroups: [\"...\"],\n        dictionaryName: \"...my_dictionary_name...\",\n        disablePenalty: false,\n        enforceConsumerGroups: false,\n        errorCode: 3.07,\n        errorMessage: \"...my_error_message...\",\n        headerName: \"...my_header_name...\",\n        hideClientHeaders: true,\n        identifier: \"consumer\",\n        limits: [4.52],\n        lockDictionaryName: \"...my_lock_dictionary_name...\",\n        namespace: \"...my_namespace...\",\n        path: \"...my_path...\",\n        redis: {\n            cloudAuthentication: {\n                authProvider: \"azure\",\n                awsAccessKeyId: \"...my_aws_access_key_id...\",\n                awsAssumeRoleArn: \"...my_aws_assume_role_arn...\",\n                awsCacheName: \"...my_aws_cache_name...\",\n                awsIsServerless: true,\n                awsRegion: \"...my_aws_region...\",\n                awsRoleSessionName: \"...my_aws_role_session_name...\",\n                awsSecretAccessKey: \"...my_aws_secret_access_key...\",\n                azureClientId: \"...my_azure_client_id...\",\n                azureClientSecret: \"...my_azure_client_secret...\",\n                azureTenantId: \"...my_azure_tenant_id...\",\n                gcpServiceAccountJson: \"...my_gcp_service_account_json...\",\n            },\n            clusterMaxRedirections: 7,\n            clusterNodes: [{\n                ip: \"...my_ip...\",\n                port: 54354,\n            }],\n            connectTimeout: 374037696,\n            connectionIsProxied: false,\n            database: 3,\n            host: \"...my_host...\",\n            keepaliveBacklog: 788639936,\n            keepalivePoolSize: 1875079515,\n            password: \"...my_password...\",\n            port: 63483,\n            readTimeout: 382621324,\n            redisProxyType: \"envoy_v1.31\",\n            sendTimeout: 1710404950,\n            sentinelMaster: \"...my_sentinel_master...\",\n            sentinelNodes: [{\n                host: \"...my_host...\",\n                port: 57176,\n            }],\n            sentinelPassword: \"...my_sentinel_password...\",\n            sentinelRole: \"any\",\n            sentinelUsername: \"...my_sentinel_username...\",\n            serverName: \"...my_server_name...\",\n            ssl: true,\n            sslVerify: true,\n            username: \"...my_username...\",\n        },\n        retryAfterJitterMax: 9.23,\n        strategy: \"cluster\",\n        syncRate: 4.11,\n        throttling: {\n            enabled: false,\n            interval: 248813.69,\n            queueLimit: 503655.16,\n            retryTimes: 989778.57,\n        },\n        windowSizes: [4.61],\n        windowType: \"sliding\",\n    },\n    consumer: {\n        id: \"...my_id...\",\n    },\n    consumerGroup: {\n        id: \"...my_id...\",\n    },\n    controlPlaneId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    createdAt: 4,\n    enabled: true,\n    gatewayPluginRateLimitingAdvancedId: \"...my_id...\",\n    instanceName: \"...my_instance_name...\",\n    ordering: {\n        after: {\n            accesses: [\"...\"],\n        },\n        before: {\n            accesses: [\"...\"],\n        },\n    },\n    partials: [{\n        id: \"...my_id...\",\n        name: \"...my_name...\",\n        path: \"...my_path...\",\n    }],\n    protocols: [\"grpcs\"],\n    route: {\n        id: \"...my_id...\",\n    },\n    service: {\n        id: \"...my_id...\",\n    },\n    tags: [\"...\"],\n    updatedAt: 9,\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_gatewaypluginratelimitingadvanced = konnect.GatewayPluginRateLimitingAdvanced(\"my_gatewaypluginratelimitingadvanced\",\n    config={\n        \"compound_identifiers\": [\"header\"],\n        \"consumer_groups\": [\"...\"],\n        \"dictionary_name\": \"...my_dictionary_name...\",\n        \"disable_penalty\": False,\n        \"enforce_consumer_groups\": False,\n        \"error_code\": 3.07,\n        \"error_message\": \"...my_error_message...\",\n        \"header_name\": \"...my_header_name...\",\n        \"hide_client_headers\": True,\n        \"identifier\": \"consumer\",\n        \"limits\": [4.52],\n        \"lock_dictionary_name\": \"...my_lock_dictionary_name...\",\n        \"namespace\": \"...my_namespace...\",\n        \"path\": \"...my_path...\",\n        \"redis\": {\n            \"cloud_authentication\": {\n                \"auth_provider\": \"azure\",\n                \"aws_access_key_id\": \"...my_aws_access_key_id...\",\n                \"aws_assume_role_arn\": \"...my_aws_assume_role_arn...\",\n                \"aws_cache_name\": \"...my_aws_cache_name...\",\n                \"aws_is_serverless\": True,\n                \"aws_region\": \"...my_aws_region...\",\n                \"aws_role_session_name\": \"...my_aws_role_session_name...\",\n                \"aws_secret_access_key\": \"...my_aws_secret_access_key...\",\n                \"azure_client_id\": \"...my_azure_client_id...\",\n                \"azure_client_secret\": \"...my_azure_client_secret...\",\n                \"azure_tenant_id\": \"...my_azure_tenant_id...\",\n                \"gcp_service_account_json\": \"...my_gcp_service_account_json...\",\n            },\n            \"cluster_max_redirections\": 7,\n            \"cluster_nodes\": [{\n                \"ip\": \"...my_ip...\",\n                \"port\": 54354,\n            }],\n            \"connect_timeout\": 374037696,\n            \"connection_is_proxied\": False,\n            \"database\": 3,\n            \"host\": \"...my_host...\",\n            \"keepalive_backlog\": 788639936,\n            \"keepalive_pool_size\": 1875079515,\n            \"password\": \"...my_password...\",\n            \"port\": 63483,\n            \"read_timeout\": 382621324,\n            \"redis_proxy_type\": \"envoy_v1.31\",\n            \"send_timeout\": 1710404950,\n            \"sentinel_master\": \"...my_sentinel_master...\",\n            \"sentinel_nodes\": [{\n                \"host\": \"...my_host...\",\n                \"port\": 57176,\n            }],\n            \"sentinel_password\": \"...my_sentinel_password...\",\n            \"sentinel_role\": \"any\",\n            \"sentinel_username\": \"...my_sentinel_username...\",\n            \"server_name\": \"...my_server_name...\",\n            \"ssl\": True,\n            \"ssl_verify\": True,\n            \"username\": \"...my_username...\",\n        },\n        \"retry_after_jitter_max\": 9.23,\n        \"strategy\": \"cluster\",\n        \"sync_rate\": 4.11,\n        \"throttling\": {\n            \"enabled\": False,\n            \"interval\": 248813.69,\n            \"queue_limit\": 503655.16,\n            \"retry_times\": 989778.57,\n        },\n        \"window_sizes\": [4.61],\n        \"window_type\": \"sliding\",\n    },\n    consumer={\n        \"id\": \"...my_id...\",\n    },\n    consumer_group={\n        \"id\": \"...my_id...\",\n    },\n    control_plane_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    created_at=4,\n    enabled=True,\n    gateway_plugin_rate_limiting_advanced_id=\"...my_id...\",\n    instance_name=\"...my_instance_name...\",\n    ordering={\n        \"after\": {\n            \"accesses\": [\"...\"],\n        },\n        \"before\": {\n            \"accesses\": [\"...\"],\n        },\n    },\n    partials=[{\n        \"id\": \"...my_id...\",\n        \"name\": \"...my_name...\",\n        \"path\": \"...my_path...\",\n    }],\n    protocols=[\"grpcs\"],\n    route={\n        \"id\": \"...my_id...\",\n    },\n    service={\n        \"id\": \"...my_id...\",\n    },\n    tags=[\"...\"],\n    updated_at=9)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myGatewaypluginratelimitingadvanced = new Konnect.GatewayPluginRateLimitingAdvanced(\"my_gatewaypluginratelimitingadvanced\", new()\n    {\n        Config = new Konnect.Inputs.GatewayPluginRateLimitingAdvancedConfigArgs\n        {\n            CompoundIdentifiers = new[]\n            {\n                \"header\",\n            },\n            ConsumerGroups = new[]\n            {\n                \"...\",\n            },\n            DictionaryName = \"...my_dictionary_name...\",\n            DisablePenalty = false,\n            EnforceConsumerGroups = false,\n            ErrorCode = 3.07,\n            ErrorMessage = \"...my_error_message...\",\n            HeaderName = \"...my_header_name...\",\n            HideClientHeaders = true,\n            Identifier = \"consumer\",\n            Limits = new[]\n            {\n                4.52,\n            },\n            LockDictionaryName = \"...my_lock_dictionary_name...\",\n            Namespace = \"...my_namespace...\",\n            Path = \"...my_path...\",\n            Redis = new Konnect.Inputs.GatewayPluginRateLimitingAdvancedConfigRedisArgs\n            {\n                CloudAuthentication = new Konnect.Inputs.GatewayPluginRateLimitingAdvancedConfigRedisCloudAuthenticationArgs\n                {\n                    AuthProvider = \"azure\",\n                    AwsAccessKeyId = \"...my_aws_access_key_id...\",\n                    AwsAssumeRoleArn = \"...my_aws_assume_role_arn...\",\n                    AwsCacheName = \"...my_aws_cache_name...\",\n                    AwsIsServerless = true,\n                    AwsRegion = \"...my_aws_region...\",\n                    AwsRoleSessionName = \"...my_aws_role_session_name...\",\n                    AwsSecretAccessKey = \"...my_aws_secret_access_key...\",\n                    AzureClientId = \"...my_azure_client_id...\",\n                    AzureClientSecret = \"...my_azure_client_secret...\",\n                    AzureTenantId = \"...my_azure_tenant_id...\",\n                    GcpServiceAccountJson = \"...my_gcp_service_account_json...\",\n                },\n                ClusterMaxRedirections = 7,\n                ClusterNodes = new[]\n                {\n                    new Konnect.Inputs.GatewayPluginRateLimitingAdvancedConfigRedisClusterNodeArgs\n                    {\n                        Ip = \"...my_ip...\",\n                        Port = 54354,\n                    },\n                },\n                ConnectTimeout = 374037696,\n                ConnectionIsProxied = false,\n                Database = 3,\n                Host = \"...my_host...\",\n                KeepaliveBacklog = 788639936,\n                KeepalivePoolSize = 1875079515,\n                Password = \"...my_password...\",\n                Port = 63483,\n                ReadTimeout = 382621324,\n                RedisProxyType = \"envoy_v1.31\",\n                SendTimeout = 1710404950,\n                SentinelMaster = \"...my_sentinel_master...\",\n                SentinelNodes = new[]\n                {\n                    new Konnect.Inputs.GatewayPluginRateLimitingAdvancedConfigRedisSentinelNodeArgs\n                    {\n                        Host = \"...my_host...\",\n                        Port = 57176,\n                    },\n                },\n                SentinelPassword = \"...my_sentinel_password...\",\n                SentinelRole = \"any\",\n                SentinelUsername = \"...my_sentinel_username...\",\n                ServerName = \"...my_server_name...\",\n                Ssl = true,\n                SslVerify = true,\n                Username = \"...my_username...\",\n            },\n            RetryAfterJitterMax = 9.23,\n            Strategy = \"cluster\",\n            SyncRate = 4.11,\n            Throttling = new Konnect.Inputs.GatewayPluginRateLimitingAdvancedConfigThrottlingArgs\n            {\n                Enabled = false,\n                Interval = 248813.69,\n                QueueLimit = 503655.16,\n                RetryTimes = 989778.57,\n            },\n            WindowSizes = new[]\n            {\n                4.61,\n            },\n            WindowType = \"sliding\",\n        },\n        Consumer = new Konnect.Inputs.GatewayPluginRateLimitingAdvancedConsumerArgs\n        {\n            Id = \"...my_id...\",\n        },\n        ConsumerGroup = new Konnect.Inputs.GatewayPluginRateLimitingAdvancedConsumerGroupArgs\n        {\n            Id = \"...my_id...\",\n        },\n        ControlPlaneId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        CreatedAt = 4,\n        Enabled = true,\n        GatewayPluginRateLimitingAdvancedId = \"...my_id...\",\n        InstanceName = \"...my_instance_name...\",\n        Ordering = new Konnect.Inputs.GatewayPluginRateLimitingAdvancedOrderingArgs\n        {\n            After = new Konnect.Inputs.GatewayPluginRateLimitingAdvancedOrderingAfterArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n            Before = new Konnect.Inputs.GatewayPluginRateLimitingAdvancedOrderingBeforeArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n        },\n        Partials = new[]\n        {\n            new Konnect.Inputs.GatewayPluginRateLimitingAdvancedPartialArgs\n            {\n                Id = \"...my_id...\",\n                Name = \"...my_name...\",\n                Path = \"...my_path...\",\n            },\n        },\n        Protocols = new[]\n        {\n            \"grpcs\",\n        },\n        Route = new Konnect.Inputs.GatewayPluginRateLimitingAdvancedRouteArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Service = new Konnect.Inputs.GatewayPluginRateLimitingAdvancedServiceArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Tags = new[]\n        {\n            \"...\",\n        },\n        UpdatedAt = 9,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewGatewayPluginRateLimitingAdvanced(ctx, \"my_gatewaypluginratelimitingadvanced\", \u0026konnect.GatewayPluginRateLimitingAdvancedArgs{\n\t\t\tConfig: \u0026konnect.GatewayPluginRateLimitingAdvancedConfigArgs{\n\t\t\t\tCompoundIdentifiers: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"header\"),\n\t\t\t\t},\n\t\t\t\tConsumerGroups: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tDictionaryName:        pulumi.String(\"...my_dictionary_name...\"),\n\t\t\t\tDisablePenalty:        pulumi.Bool(false),\n\t\t\t\tEnforceConsumerGroups: pulumi.Bool(false),\n\t\t\t\tErrorCode:             pulumi.Float64(3.07),\n\t\t\t\tErrorMessage:          pulumi.String(\"...my_error_message...\"),\n\t\t\t\tHeaderName:            pulumi.String(\"...my_header_name...\"),\n\t\t\t\tHideClientHeaders:     pulumi.Bool(true),\n\t\t\t\tIdentifier:            pulumi.String(\"consumer\"),\n\t\t\t\tLimits: pulumi.Float64Array{\n\t\t\t\t\tpulumi.Float64(4.52),\n\t\t\t\t},\n\t\t\t\tLockDictionaryName: pulumi.String(\"...my_lock_dictionary_name...\"),\n\t\t\t\tNamespace:          pulumi.String(\"...my_namespace...\"),\n\t\t\t\tPath:               pulumi.String(\"...my_path...\"),\n\t\t\t\tRedis: \u0026konnect.GatewayPluginRateLimitingAdvancedConfigRedisArgs{\n\t\t\t\t\tCloudAuthentication: \u0026konnect.GatewayPluginRateLimitingAdvancedConfigRedisCloudAuthenticationArgs{\n\t\t\t\t\t\tAuthProvider:          pulumi.String(\"azure\"),\n\t\t\t\t\t\tAwsAccessKeyId:        pulumi.String(\"...my_aws_access_key_id...\"),\n\t\t\t\t\t\tAwsAssumeRoleArn:      pulumi.String(\"...my_aws_assume_role_arn...\"),\n\t\t\t\t\t\tAwsCacheName:          pulumi.String(\"...my_aws_cache_name...\"),\n\t\t\t\t\t\tAwsIsServerless:       pulumi.Bool(true),\n\t\t\t\t\t\tAwsRegion:             pulumi.String(\"...my_aws_region...\"),\n\t\t\t\t\t\tAwsRoleSessionName:    pulumi.String(\"...my_aws_role_session_name...\"),\n\t\t\t\t\t\tAwsSecretAccessKey:    pulumi.String(\"...my_aws_secret_access_key...\"),\n\t\t\t\t\t\tAzureClientId:         pulumi.String(\"...my_azure_client_id...\"),\n\t\t\t\t\t\tAzureClientSecret:     pulumi.String(\"...my_azure_client_secret...\"),\n\t\t\t\t\t\tAzureTenantId:         pulumi.String(\"...my_azure_tenant_id...\"),\n\t\t\t\t\t\tGcpServiceAccountJson: pulumi.String(\"...my_gcp_service_account_json...\"),\n\t\t\t\t\t},\n\t\t\t\t\tClusterMaxRedirections: pulumi.Float64(7),\n\t\t\t\t\tClusterNodes: konnect.GatewayPluginRateLimitingAdvancedConfigRedisClusterNodeArray{\n\t\t\t\t\t\t\u0026konnect.GatewayPluginRateLimitingAdvancedConfigRedisClusterNodeArgs{\n\t\t\t\t\t\t\tIp:   pulumi.String(\"...my_ip...\"),\n\t\t\t\t\t\t\tPort: pulumi.Float64(54354),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tConnectTimeout:      pulumi.Float64(374037696),\n\t\t\t\t\tConnectionIsProxied: pulumi.Bool(false),\n\t\t\t\t\tDatabase:            pulumi.Float64(3),\n\t\t\t\t\tHost:                pulumi.String(\"...my_host...\"),\n\t\t\t\t\tKeepaliveBacklog:    pulumi.Float64(788639936),\n\t\t\t\t\tKeepalivePoolSize:   pulumi.Float64(1875079515),\n\t\t\t\t\tPassword:            pulumi.String(\"...my_password...\"),\n\t\t\t\t\tPort:                pulumi.Float64(63483),\n\t\t\t\t\tReadTimeout:         pulumi.Float64(382621324),\n\t\t\t\t\tRedisProxyType:      pulumi.String(\"envoy_v1.31\"),\n\t\t\t\t\tSendTimeout:         pulumi.Float64(1710404950),\n\t\t\t\t\tSentinelMaster:      pulumi.String(\"...my_sentinel_master...\"),\n\t\t\t\t\tSentinelNodes: konnect.GatewayPluginRateLimitingAdvancedConfigRedisSentinelNodeArray{\n\t\t\t\t\t\t\u0026konnect.GatewayPluginRateLimitingAdvancedConfigRedisSentinelNodeArgs{\n\t\t\t\t\t\t\tHost: pulumi.String(\"...my_host...\"),\n\t\t\t\t\t\t\tPort: pulumi.Float64(57176),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tSentinelPassword: pulumi.String(\"...my_sentinel_password...\"),\n\t\t\t\t\tSentinelRole:     pulumi.String(\"any\"),\n\t\t\t\t\tSentinelUsername: pulumi.String(\"...my_sentinel_username...\"),\n\t\t\t\t\tServerName:       pulumi.String(\"...my_server_name...\"),\n\t\t\t\t\tSsl:              pulumi.Bool(true),\n\t\t\t\t\tSslVerify:        pulumi.Bool(true),\n\t\t\t\t\tUsername:         pulumi.String(\"...my_username...\"),\n\t\t\t\t},\n\t\t\t\tRetryAfterJitterMax: pulumi.Float64(9.23),\n\t\t\t\tStrategy:            pulumi.String(\"cluster\"),\n\t\t\t\tSyncRate:            pulumi.Float64(4.11),\n\t\t\t\tThrottling: \u0026konnect.GatewayPluginRateLimitingAdvancedConfigThrottlingArgs{\n\t\t\t\t\tEnabled:    pulumi.Bool(false),\n\t\t\t\t\tInterval:   pulumi.Float64(248813.69),\n\t\t\t\t\tQueueLimit: pulumi.Float64(503655.16),\n\t\t\t\t\tRetryTimes: pulumi.Float64(989778.57),\n\t\t\t\t},\n\t\t\t\tWindowSizes: pulumi.Float64Array{\n\t\t\t\t\tpulumi.Float64(4.61),\n\t\t\t\t},\n\t\t\t\tWindowType: pulumi.String(\"sliding\"),\n\t\t\t},\n\t\t\tConsumer: \u0026konnect.GatewayPluginRateLimitingAdvancedConsumerArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tConsumerGroup: \u0026konnect.GatewayPluginRateLimitingAdvancedConsumerGroupArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tControlPlaneId:                      pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tCreatedAt:                           pulumi.Float64(4),\n\t\t\tEnabled:                             pulumi.Bool(true),\n\t\t\tGatewayPluginRateLimitingAdvancedId: pulumi.String(\"...my_id...\"),\n\t\t\tInstanceName:                        pulumi.String(\"...my_instance_name...\"),\n\t\t\tOrdering: \u0026konnect.GatewayPluginRateLimitingAdvancedOrderingArgs{\n\t\t\t\tAfter: \u0026konnect.GatewayPluginRateLimitingAdvancedOrderingAfterArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tBefore: \u0026konnect.GatewayPluginRateLimitingAdvancedOrderingBeforeArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tPartials: konnect.GatewayPluginRateLimitingAdvancedPartialArray{\n\t\t\t\t\u0026konnect.GatewayPluginRateLimitingAdvancedPartialArgs{\n\t\t\t\t\tId:   pulumi.String(\"...my_id...\"),\n\t\t\t\t\tName: pulumi.String(\"...my_name...\"),\n\t\t\t\t\tPath: pulumi.String(\"...my_path...\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tProtocols: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"grpcs\"),\n\t\t\t},\n\t\t\tRoute: \u0026konnect.GatewayPluginRateLimitingAdvancedRouteArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tService: \u0026konnect.GatewayPluginRateLimitingAdvancedServiceArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"...\"),\n\t\t\t},\n\t\t\tUpdatedAt: pulumi.Float64(9),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.GatewayPluginRateLimitingAdvanced;\nimport com.pulumi.konnect.GatewayPluginRateLimitingAdvancedArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginRateLimitingAdvancedConfigArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginRateLimitingAdvancedConfigRedisArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginRateLimitingAdvancedConfigRedisCloudAuthenticationArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginRateLimitingAdvancedConfigThrottlingArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginRateLimitingAdvancedConsumerArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginRateLimitingAdvancedConsumerGroupArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginRateLimitingAdvancedOrderingArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginRateLimitingAdvancedOrderingAfterArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginRateLimitingAdvancedOrderingBeforeArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginRateLimitingAdvancedPartialArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginRateLimitingAdvancedRouteArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginRateLimitingAdvancedServiceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myGatewaypluginratelimitingadvanced = new GatewayPluginRateLimitingAdvanced(\"myGatewaypluginratelimitingadvanced\", GatewayPluginRateLimitingAdvancedArgs.builder()\n            .config(GatewayPluginRateLimitingAdvancedConfigArgs.builder()\n                .compoundIdentifiers(\"header\")\n                .consumerGroups(\"...\")\n                .dictionaryName(\"...my_dictionary_name...\")\n                .disablePenalty(false)\n                .enforceConsumerGroups(false)\n                .errorCode(3.07)\n                .errorMessage(\"...my_error_message...\")\n                .headerName(\"...my_header_name...\")\n                .hideClientHeaders(true)\n                .identifier(\"consumer\")\n                .limits(4.52)\n                .lockDictionaryName(\"...my_lock_dictionary_name...\")\n                .namespace(\"...my_namespace...\")\n                .path(\"...my_path...\")\n                .redis(GatewayPluginRateLimitingAdvancedConfigRedisArgs.builder()\n                    .cloudAuthentication(GatewayPluginRateLimitingAdvancedConfigRedisCloudAuthenticationArgs.builder()\n                        .authProvider(\"azure\")\n                        .awsAccessKeyId(\"...my_aws_access_key_id...\")\n                        .awsAssumeRoleArn(\"...my_aws_assume_role_arn...\")\n                        .awsCacheName(\"...my_aws_cache_name...\")\n                        .awsIsServerless(true)\n                        .awsRegion(\"...my_aws_region...\")\n                        .awsRoleSessionName(\"...my_aws_role_session_name...\")\n                        .awsSecretAccessKey(\"...my_aws_secret_access_key...\")\n                        .azureClientId(\"...my_azure_client_id...\")\n                        .azureClientSecret(\"...my_azure_client_secret...\")\n                        .azureTenantId(\"...my_azure_tenant_id...\")\n                        .gcpServiceAccountJson(\"...my_gcp_service_account_json...\")\n                        .build())\n                    .clusterMaxRedirections(7.0)\n                    .clusterNodes(GatewayPluginRateLimitingAdvancedConfigRedisClusterNodeArgs.builder()\n                        .ip(\"...my_ip...\")\n                        .port(54354.0)\n                        .build())\n                    .connectTimeout(374037696.0)\n                    .connectionIsProxied(false)\n                    .database(3.0)\n                    .host(\"...my_host...\")\n                    .keepaliveBacklog(788639936.0)\n                    .keepalivePoolSize(1875079515.0)\n                    .password(\"...my_password...\")\n                    .port(63483.0)\n                    .readTimeout(382621324.0)\n                    .redisProxyType(\"envoy_v1.31\")\n                    .sendTimeout(1710404950.0)\n                    .sentinelMaster(\"...my_sentinel_master...\")\n                    .sentinelNodes(GatewayPluginRateLimitingAdvancedConfigRedisSentinelNodeArgs.builder()\n                        .host(\"...my_host...\")\n                        .port(57176.0)\n                        .build())\n                    .sentinelPassword(\"...my_sentinel_password...\")\n                    .sentinelRole(\"any\")\n                    .sentinelUsername(\"...my_sentinel_username...\")\n                    .serverName(\"...my_server_name...\")\n                    .ssl(true)\n                    .sslVerify(true)\n                    .username(\"...my_username...\")\n                    .build())\n                .retryAfterJitterMax(9.23)\n                .strategy(\"cluster\")\n                .syncRate(4.11)\n                .throttling(GatewayPluginRateLimitingAdvancedConfigThrottlingArgs.builder()\n                    .enabled(false)\n                    .interval(248813.69)\n                    .queueLimit(503655.16)\n                    .retryTimes(989778.57)\n                    .build())\n                .windowSizes(4.61)\n                .windowType(\"sliding\")\n                .build())\n            .consumer(GatewayPluginRateLimitingAdvancedConsumerArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .consumerGroup(GatewayPluginRateLimitingAdvancedConsumerGroupArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .controlPlaneId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .createdAt(4.0)\n            .enabled(true)\n            .gatewayPluginRateLimitingAdvancedId(\"...my_id...\")\n            .instanceName(\"...my_instance_name...\")\n            .ordering(GatewayPluginRateLimitingAdvancedOrderingArgs.builder()\n                .after(GatewayPluginRateLimitingAdvancedOrderingAfterArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .before(GatewayPluginRateLimitingAdvancedOrderingBeforeArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .build())\n            .partials(GatewayPluginRateLimitingAdvancedPartialArgs.builder()\n                .id(\"...my_id...\")\n                .name(\"...my_name...\")\n                .path(\"...my_path...\")\n                .build())\n            .protocols(\"grpcs\")\n            .route(GatewayPluginRateLimitingAdvancedRouteArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .service(GatewayPluginRateLimitingAdvancedServiceArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .tags(\"...\")\n            .updatedAt(9.0)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myGatewaypluginratelimitingadvanced:\n    type: konnect:GatewayPluginRateLimitingAdvanced\n    name: my_gatewaypluginratelimitingadvanced\n    properties:\n      config:\n        compoundIdentifiers:\n          - header\n        consumerGroups:\n          - '...'\n        dictionaryName: '...my_dictionary_name...'\n        disablePenalty: false\n        enforceConsumerGroups: false\n        errorCode: 3.07\n        errorMessage: '...my_error_message...'\n        headerName: '...my_header_name...'\n        hideClientHeaders: true\n        identifier: consumer\n        limits:\n          - 4.52\n        lockDictionaryName: '...my_lock_dictionary_name...'\n        namespace: '...my_namespace...'\n        path: '...my_path...'\n        redis:\n          cloudAuthentication:\n            authProvider: azure\n            awsAccessKeyId: '...my_aws_access_key_id...'\n            awsAssumeRoleArn: '...my_aws_assume_role_arn...'\n            awsCacheName: '...my_aws_cache_name...'\n            awsIsServerless: true\n            awsRegion: '...my_aws_region...'\n            awsRoleSessionName: '...my_aws_role_session_name...'\n            awsSecretAccessKey: '...my_aws_secret_access_key...'\n            azureClientId: '...my_azure_client_id...'\n            azureClientSecret: '...my_azure_client_secret...'\n            azureTenantId: '...my_azure_tenant_id...'\n            gcpServiceAccountJson: '...my_gcp_service_account_json...'\n          clusterMaxRedirections: 7\n          clusterNodes:\n            - ip: '...my_ip...'\n              port: 54354\n          connectTimeout: 3.74037696e+08\n          connectionIsProxied: false\n          database: 3\n          host: '...my_host...'\n          keepaliveBacklog: 7.88639936e+08\n          keepalivePoolSize: 1.875079515e+09\n          password: '...my_password...'\n          port: 63483\n          readTimeout: 3.82621324e+08\n          redisProxyType: envoy_v1.31\n          sendTimeout: 1.71040495e+09\n          sentinelMaster: '...my_sentinel_master...'\n          sentinelNodes:\n            - host: '...my_host...'\n              port: 57176\n          sentinelPassword: '...my_sentinel_password...'\n          sentinelRole: any\n          sentinelUsername: '...my_sentinel_username...'\n          serverName: '...my_server_name...'\n          ssl: true\n          sslVerify: true\n          username: '...my_username...'\n        retryAfterJitterMax: 9.23\n        strategy: cluster\n        syncRate: 4.11\n        throttling:\n          enabled: false\n          interval: 248813.69\n          queueLimit: 503655.16\n          retryTimes: 989778.57\n        windowSizes:\n          - 4.61\n        windowType: sliding\n      consumer:\n        id: '...my_id...'\n      consumerGroup:\n        id: '...my_id...'\n      controlPlaneId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      createdAt: 4\n      enabled: true\n      gatewayPluginRateLimitingAdvancedId: '...my_id...'\n      instanceName: '...my_instance_name...'\n      ordering:\n        after:\n          accesses:\n            - '...'\n        before:\n          accesses:\n            - '...'\n      partials:\n        - id: '...my_id...'\n          name: '...my_name...'\n          path: '...my_path...'\n      protocols:\n        - grpcs\n      route:\n        id: '...my_id...'\n      service:\n        id: '...my_id...'\n      tags:\n        - '...'\n      updatedAt: 9\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_gateway_plugin_rate_limiting_advanced.my_konnect_gateway_plugin_rate_limiting_advanced\n\n  id = jsonencode({\n\n    control_plane_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/gatewayPluginRateLimitingAdvanced:GatewayPluginRateLimitingAdvanced my_konnect_gateway_plugin_rate_limiting_advanced '{\"control_plane_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"}'\n```\n\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginRateLimitingAdvancedConfig:GatewayPluginRateLimitingAdvancedConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginRateLimitingAdvancedConsumer:GatewayPluginRateLimitingAdvancedConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"consumerGroup":{"$ref":"#/types/konnect:index%2FGatewayPluginRateLimitingAdvancedConsumerGroup:GatewayPluginRateLimitingAdvancedConsumerGroup","description":"If set, the plugin will activate only for requests where the specified consumer group has been authenticated. (Note that some plugins can not be restricted to consumers groups this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer Groups\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginRateLimitingAdvancedId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginRateLimitingAdvancedOrdering:GatewayPluginRateLimitingAdvancedOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginRateLimitingAdvancedPartial:GatewayPluginRateLimitingAdvancedPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginRateLimitingAdvancedRoute:GatewayPluginRateLimitingAdvancedRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginRateLimitingAdvancedService:GatewayPluginRateLimitingAdvancedService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object","required":["config","consumer","consumerGroup","controlPlaneId","createdAt","enabled","gatewayPluginRateLimitingAdvancedId","ordering","protocols","route","service","updatedAt"],"inputProperties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginRateLimitingAdvancedConfig:GatewayPluginRateLimitingAdvancedConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginRateLimitingAdvancedConsumer:GatewayPluginRateLimitingAdvancedConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"consumerGroup":{"$ref":"#/types/konnect:index%2FGatewayPluginRateLimitingAdvancedConsumerGroup:GatewayPluginRateLimitingAdvancedConsumerGroup","description":"If set, the plugin will activate only for requests where the specified consumer group has been authenticated. (Note that some plugins can not be restricted to consumers groups this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer Groups\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginRateLimitingAdvancedId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginRateLimitingAdvancedOrdering:GatewayPluginRateLimitingAdvancedOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginRateLimitingAdvancedPartial:GatewayPluginRateLimitingAdvancedPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginRateLimitingAdvancedRoute:GatewayPluginRateLimitingAdvancedRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginRateLimitingAdvancedService:GatewayPluginRateLimitingAdvancedService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"requiredInputs":["config","controlPlaneId"],"stateInputs":{"description":"Input properties used for looking up and filtering GatewayPluginRateLimitingAdvanced resources.\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginRateLimitingAdvancedConfig:GatewayPluginRateLimitingAdvancedConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginRateLimitingAdvancedConsumer:GatewayPluginRateLimitingAdvancedConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"consumerGroup":{"$ref":"#/types/konnect:index%2FGatewayPluginRateLimitingAdvancedConsumerGroup:GatewayPluginRateLimitingAdvancedConsumerGroup","description":"If set, the plugin will activate only for requests where the specified consumer group has been authenticated. (Note that some plugins can not be restricted to consumers groups this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer Groups\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginRateLimitingAdvancedId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginRateLimitingAdvancedOrdering:GatewayPluginRateLimitingAdvancedOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginRateLimitingAdvancedPartial:GatewayPluginRateLimitingAdvancedPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginRateLimitingAdvancedRoute:GatewayPluginRateLimitingAdvancedRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginRateLimitingAdvancedService:GatewayPluginRateLimitingAdvancedService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object"}},"konnect:index/gatewayPluginRedirect:GatewayPluginRedirect":{"description":"GatewayPluginRedirect Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myGatewaypluginredirect = new konnect.GatewayPluginRedirect(\"my_gatewaypluginredirect\", {\n    config: {\n        keepIncomingPath: true,\n        location: \"...my_location...\",\n        statusCode: 448,\n    },\n    consumer: {\n        id: \"...my_id...\",\n    },\n    consumerGroup: {\n        id: \"...my_id...\",\n    },\n    controlPlaneId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    createdAt: 6,\n    enabled: false,\n    gatewayPluginRedirectId: \"...my_id...\",\n    instanceName: \"...my_instance_name...\",\n    ordering: {\n        after: {\n            accesses: [\"...\"],\n        },\n        before: {\n            accesses: [\"...\"],\n        },\n    },\n    partials: [{\n        id: \"...my_id...\",\n        name: \"...my_name...\",\n        path: \"...my_path...\",\n    }],\n    protocols: [\"grpc\"],\n    route: {\n        id: \"...my_id...\",\n    },\n    service: {\n        id: \"...my_id...\",\n    },\n    tags: [\"...\"],\n    updatedAt: 7,\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_gatewaypluginredirect = konnect.GatewayPluginRedirect(\"my_gatewaypluginredirect\",\n    config={\n        \"keep_incoming_path\": True,\n        \"location\": \"...my_location...\",\n        \"status_code\": 448,\n    },\n    consumer={\n        \"id\": \"...my_id...\",\n    },\n    consumer_group={\n        \"id\": \"...my_id...\",\n    },\n    control_plane_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    created_at=6,\n    enabled=False,\n    gateway_plugin_redirect_id=\"...my_id...\",\n    instance_name=\"...my_instance_name...\",\n    ordering={\n        \"after\": {\n            \"accesses\": [\"...\"],\n        },\n        \"before\": {\n            \"accesses\": [\"...\"],\n        },\n    },\n    partials=[{\n        \"id\": \"...my_id...\",\n        \"name\": \"...my_name...\",\n        \"path\": \"...my_path...\",\n    }],\n    protocols=[\"grpc\"],\n    route={\n        \"id\": \"...my_id...\",\n    },\n    service={\n        \"id\": \"...my_id...\",\n    },\n    tags=[\"...\"],\n    updated_at=7)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myGatewaypluginredirect = new Konnect.GatewayPluginRedirect(\"my_gatewaypluginredirect\", new()\n    {\n        Config = new Konnect.Inputs.GatewayPluginRedirectConfigArgs\n        {\n            KeepIncomingPath = true,\n            Location = \"...my_location...\",\n            StatusCode = 448,\n        },\n        Consumer = new Konnect.Inputs.GatewayPluginRedirectConsumerArgs\n        {\n            Id = \"...my_id...\",\n        },\n        ConsumerGroup = new Konnect.Inputs.GatewayPluginRedirectConsumerGroupArgs\n        {\n            Id = \"...my_id...\",\n        },\n        ControlPlaneId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        CreatedAt = 6,\n        Enabled = false,\n        GatewayPluginRedirectId = \"...my_id...\",\n        InstanceName = \"...my_instance_name...\",\n        Ordering = new Konnect.Inputs.GatewayPluginRedirectOrderingArgs\n        {\n            After = new Konnect.Inputs.GatewayPluginRedirectOrderingAfterArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n            Before = new Konnect.Inputs.GatewayPluginRedirectOrderingBeforeArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n        },\n        Partials = new[]\n        {\n            new Konnect.Inputs.GatewayPluginRedirectPartialArgs\n            {\n                Id = \"...my_id...\",\n                Name = \"...my_name...\",\n                Path = \"...my_path...\",\n            },\n        },\n        Protocols = new[]\n        {\n            \"grpc\",\n        },\n        Route = new Konnect.Inputs.GatewayPluginRedirectRouteArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Service = new Konnect.Inputs.GatewayPluginRedirectServiceArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Tags = new[]\n        {\n            \"...\",\n        },\n        UpdatedAt = 7,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewGatewayPluginRedirect(ctx, \"my_gatewaypluginredirect\", \u0026konnect.GatewayPluginRedirectArgs{\n\t\t\tConfig: \u0026konnect.GatewayPluginRedirectConfigArgs{\n\t\t\t\tKeepIncomingPath: pulumi.Bool(true),\n\t\t\t\tLocation:         pulumi.String(\"...my_location...\"),\n\t\t\t\tStatusCode:       pulumi.Float64(448),\n\t\t\t},\n\t\t\tConsumer: \u0026konnect.GatewayPluginRedirectConsumerArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tConsumerGroup: \u0026konnect.GatewayPluginRedirectConsumerGroupArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tControlPlaneId:          pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tCreatedAt:               pulumi.Float64(6),\n\t\t\tEnabled:                 pulumi.Bool(false),\n\t\t\tGatewayPluginRedirectId: pulumi.String(\"...my_id...\"),\n\t\t\tInstanceName:            pulumi.String(\"...my_instance_name...\"),\n\t\t\tOrdering: \u0026konnect.GatewayPluginRedirectOrderingArgs{\n\t\t\t\tAfter: \u0026konnect.GatewayPluginRedirectOrderingAfterArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tBefore: \u0026konnect.GatewayPluginRedirectOrderingBeforeArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tPartials: konnect.GatewayPluginRedirectPartialArray{\n\t\t\t\t\u0026konnect.GatewayPluginRedirectPartialArgs{\n\t\t\t\t\tId:   pulumi.String(\"...my_id...\"),\n\t\t\t\t\tName: pulumi.String(\"...my_name...\"),\n\t\t\t\t\tPath: pulumi.String(\"...my_path...\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tProtocols: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"grpc\"),\n\t\t\t},\n\t\t\tRoute: \u0026konnect.GatewayPluginRedirectRouteArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tService: \u0026konnect.GatewayPluginRedirectServiceArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"...\"),\n\t\t\t},\n\t\t\tUpdatedAt: pulumi.Float64(7),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.GatewayPluginRedirect;\nimport com.pulumi.konnect.GatewayPluginRedirectArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginRedirectConfigArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginRedirectConsumerArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginRedirectConsumerGroupArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginRedirectOrderingArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginRedirectOrderingAfterArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginRedirectOrderingBeforeArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginRedirectPartialArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginRedirectRouteArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginRedirectServiceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myGatewaypluginredirect = new GatewayPluginRedirect(\"myGatewaypluginredirect\", GatewayPluginRedirectArgs.builder()\n            .config(GatewayPluginRedirectConfigArgs.builder()\n                .keepIncomingPath(true)\n                .location(\"...my_location...\")\n                .statusCode(448.0)\n                .build())\n            .consumer(GatewayPluginRedirectConsumerArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .consumerGroup(GatewayPluginRedirectConsumerGroupArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .controlPlaneId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .createdAt(6.0)\n            .enabled(false)\n            .gatewayPluginRedirectId(\"...my_id...\")\n            .instanceName(\"...my_instance_name...\")\n            .ordering(GatewayPluginRedirectOrderingArgs.builder()\n                .after(GatewayPluginRedirectOrderingAfterArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .before(GatewayPluginRedirectOrderingBeforeArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .build())\n            .partials(GatewayPluginRedirectPartialArgs.builder()\n                .id(\"...my_id...\")\n                .name(\"...my_name...\")\n                .path(\"...my_path...\")\n                .build())\n            .protocols(\"grpc\")\n            .route(GatewayPluginRedirectRouteArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .service(GatewayPluginRedirectServiceArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .tags(\"...\")\n            .updatedAt(7.0)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myGatewaypluginredirect:\n    type: konnect:GatewayPluginRedirect\n    name: my_gatewaypluginredirect\n    properties:\n      config:\n        keepIncomingPath: true\n        location: '...my_location...'\n        statusCode: 448\n      consumer:\n        id: '...my_id...'\n      consumerGroup:\n        id: '...my_id...'\n      controlPlaneId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      createdAt: 6\n      enabled: false\n      gatewayPluginRedirectId: '...my_id...'\n      instanceName: '...my_instance_name...'\n      ordering:\n        after:\n          accesses:\n            - '...'\n        before:\n          accesses:\n            - '...'\n      partials:\n        - id: '...my_id...'\n          name: '...my_name...'\n          path: '...my_path...'\n      protocols:\n        - grpc\n      route:\n        id: '...my_id...'\n      service:\n        id: '...my_id...'\n      tags:\n        - '...'\n      updatedAt: 7\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_gateway_plugin_redirect.my_konnect_gateway_plugin_redirect\n\n  id = jsonencode({\n\n    control_plane_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/gatewayPluginRedirect:GatewayPluginRedirect my_konnect_gateway_plugin_redirect '{\"control_plane_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"}'\n```\n\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginRedirectConfig:GatewayPluginRedirectConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginRedirectConsumer:GatewayPluginRedirectConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"consumerGroup":{"$ref":"#/types/konnect:index%2FGatewayPluginRedirectConsumerGroup:GatewayPluginRedirectConsumerGroup","description":"If set, the plugin will activate only for requests where the specified consumer group has been authenticated. (Note that some plugins can not be restricted to consumers groups this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer Groups\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginRedirectId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginRedirectOrdering:GatewayPluginRedirectOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginRedirectPartial:GatewayPluginRedirectPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginRedirectRoute:GatewayPluginRedirectRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginRedirectService:GatewayPluginRedirectService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object","required":["config","consumer","consumerGroup","controlPlaneId","createdAt","enabled","gatewayPluginRedirectId","ordering","protocols","route","service","updatedAt"],"inputProperties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginRedirectConfig:GatewayPluginRedirectConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginRedirectConsumer:GatewayPluginRedirectConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"consumerGroup":{"$ref":"#/types/konnect:index%2FGatewayPluginRedirectConsumerGroup:GatewayPluginRedirectConsumerGroup","description":"If set, the plugin will activate only for requests where the specified consumer group has been authenticated. (Note that some plugins can not be restricted to consumers groups this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer Groups\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginRedirectId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginRedirectOrdering:GatewayPluginRedirectOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginRedirectPartial:GatewayPluginRedirectPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginRedirectRoute:GatewayPluginRedirectRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginRedirectService:GatewayPluginRedirectService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"requiredInputs":["config","controlPlaneId"],"stateInputs":{"description":"Input properties used for looking up and filtering GatewayPluginRedirect resources.\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginRedirectConfig:GatewayPluginRedirectConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginRedirectConsumer:GatewayPluginRedirectConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"consumerGroup":{"$ref":"#/types/konnect:index%2FGatewayPluginRedirectConsumerGroup:GatewayPluginRedirectConsumerGroup","description":"If set, the plugin will activate only for requests where the specified consumer group has been authenticated. (Note that some plugins can not be restricted to consumers groups this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer Groups\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginRedirectId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginRedirectOrdering:GatewayPluginRedirectOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginRedirectPartial:GatewayPluginRedirectPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginRedirectRoute:GatewayPluginRedirectRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginRedirectService:GatewayPluginRedirectService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object"}},"konnect:index/gatewayPluginRequestCallout:GatewayPluginRequestCallout":{"description":"GatewayPluginRequestCallout Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myGatewaypluginrequestcallout = new konnect.GatewayPluginRequestCallout(\"my_gatewaypluginrequestcallout\", {\n    config: {\n        cache: {\n            cacheTtl: 7,\n            memory: {\n                dictionaryName: \"...my_dictionary_name...\",\n            },\n            redis: {\n                cloudAuthentication: {\n                    authProvider: \"gcp\",\n                    awsAccessKeyId: \"...my_aws_access_key_id...\",\n                    awsAssumeRoleArn: \"...my_aws_assume_role_arn...\",\n                    awsCacheName: \"...my_aws_cache_name...\",\n                    awsIsServerless: true,\n                    awsRegion: \"...my_aws_region...\",\n                    awsRoleSessionName: \"...my_aws_role_session_name...\",\n                    awsSecretAccessKey: \"...my_aws_secret_access_key...\",\n                    azureClientId: \"...my_azure_client_id...\",\n                    azureClientSecret: \"...my_azure_client_secret...\",\n                    azureTenantId: \"...my_azure_tenant_id...\",\n                    gcpServiceAccountJson: \"...my_gcp_service_account_json...\",\n                },\n                clusterMaxRedirections: 10,\n                clusterNodes: [{\n                    ip: \"...my_ip...\",\n                    port: 12116,\n                }],\n                connectTimeout: 221492024,\n                connectionIsProxied: false,\n                database: 0,\n                host: \"...my_host...\",\n                keepaliveBacklog: 2070085081,\n                keepalivePoolSize: 254346691,\n                password: \"...my_password...\",\n                port: 2887,\n                readTimeout: 1913162680,\n                sendTimeout: 27958014,\n                sentinelMaster: \"...my_sentinel_master...\",\n                sentinelNodes: [{\n                    host: \"...my_host...\",\n                    port: 48331,\n                }],\n                sentinelPassword: \"...my_sentinel_password...\",\n                sentinelRole: \"master\",\n                sentinelUsername: \"...my_sentinel_username...\",\n                serverName: \"...my_server_name...\",\n                ssl: true,\n                sslVerify: false,\n                username: \"...my_username...\",\n            },\n            strategy: \"redis\",\n        },\n        callouts: [{\n            cache: {\n                bypass: true,\n            },\n            dependsOns: [\"...\"],\n            name: \"...my_name...\",\n            request: {\n                body: {\n                    custom: {\n                        key: \"value\",\n                    },\n                    decode: true,\n                    forward: false,\n                },\n                byLua: \"...my_by_lua...\",\n                error: {\n                    errorResponseCode: 5,\n                    errorResponseMsg: \"...my_error_response_msg...\",\n                    httpStatuses: [791],\n                    onError: \"fail\",\n                    retries: 4,\n                },\n                headers: {\n                    custom: {\n                        key: \"value\",\n                    },\n                    forward: false,\n                },\n                httpOpts: {\n                    proxy: {\n                        authPassword: \"...my_auth_password...\",\n                        authUsername: \"...my_auth_username...\",\n                        httpProxy: \"...my_http_proxy...\",\n                        httpsProxy: \"...my_https_proxy...\",\n                    },\n                    sslServerName: \"...my_ssl_server_name...\",\n                    sslVerify: true,\n                    timeouts: {\n                        connect: 396369045,\n                        read: 2097982023,\n                        write: 1346258560,\n                    },\n                },\n                method: \"...my_method...\",\n                query: {\n                    custom: {\n                        key: \"value\",\n                    },\n                    forward: true,\n                },\n                url: \"...my_url...\",\n            },\n            response: {\n                body: {\n                    decode: false,\n                    store: true,\n                },\n                byLua: \"...my_by_lua...\",\n                headers: {\n                    store: false,\n                },\n            },\n        }],\n        upstream: {\n            body: {\n                custom: {\n                    key: \"value\",\n                },\n                decode: true,\n                forward: false,\n            },\n            byLua: \"...my_by_lua...\",\n            headers: {\n                custom: {\n                    key: \"value\",\n                },\n                forward: true,\n            },\n            query: {\n                custom: {\n                    key: \"value\",\n                },\n                forward: false,\n            },\n        },\n    },\n    consumer: {\n        id: \"...my_id...\",\n    },\n    consumerGroup: {\n        id: \"...my_id...\",\n    },\n    controlPlaneId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    createdAt: 4,\n    enabled: true,\n    gatewayPluginRequestCalloutId: \"...my_id...\",\n    instanceName: \"...my_instance_name...\",\n    ordering: {\n        after: {\n            accesses: [\"...\"],\n        },\n        before: {\n            accesses: [\"...\"],\n        },\n    },\n    partials: [{\n        id: \"...my_id...\",\n        name: \"...my_name...\",\n        path: \"...my_path...\",\n    }],\n    protocols: [\"grpcs\"],\n    route: {\n        id: \"...my_id...\",\n    },\n    service: {\n        id: \"...my_id...\",\n    },\n    tags: [\"...\"],\n    updatedAt: 1,\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_gatewaypluginrequestcallout = konnect.GatewayPluginRequestCallout(\"my_gatewaypluginrequestcallout\",\n    config={\n        \"cache\": {\n            \"cache_ttl\": 7,\n            \"memory\": {\n                \"dictionary_name\": \"...my_dictionary_name...\",\n            },\n            \"redis\": {\n                \"cloud_authentication\": {\n                    \"auth_provider\": \"gcp\",\n                    \"aws_access_key_id\": \"...my_aws_access_key_id...\",\n                    \"aws_assume_role_arn\": \"...my_aws_assume_role_arn...\",\n                    \"aws_cache_name\": \"...my_aws_cache_name...\",\n                    \"aws_is_serverless\": True,\n                    \"aws_region\": \"...my_aws_region...\",\n                    \"aws_role_session_name\": \"...my_aws_role_session_name...\",\n                    \"aws_secret_access_key\": \"...my_aws_secret_access_key...\",\n                    \"azure_client_id\": \"...my_azure_client_id...\",\n                    \"azure_client_secret\": \"...my_azure_client_secret...\",\n                    \"azure_tenant_id\": \"...my_azure_tenant_id...\",\n                    \"gcp_service_account_json\": \"...my_gcp_service_account_json...\",\n                },\n                \"cluster_max_redirections\": 10,\n                \"cluster_nodes\": [{\n                    \"ip\": \"...my_ip...\",\n                    \"port\": 12116,\n                }],\n                \"connect_timeout\": 221492024,\n                \"connection_is_proxied\": False,\n                \"database\": 0,\n                \"host\": \"...my_host...\",\n                \"keepalive_backlog\": 2070085081,\n                \"keepalive_pool_size\": 254346691,\n                \"password\": \"...my_password...\",\n                \"port\": 2887,\n                \"read_timeout\": 1913162680,\n                \"send_timeout\": 27958014,\n                \"sentinel_master\": \"...my_sentinel_master...\",\n                \"sentinel_nodes\": [{\n                    \"host\": \"...my_host...\",\n                    \"port\": 48331,\n                }],\n                \"sentinel_password\": \"...my_sentinel_password...\",\n                \"sentinel_role\": \"master\",\n                \"sentinel_username\": \"...my_sentinel_username...\",\n                \"server_name\": \"...my_server_name...\",\n                \"ssl\": True,\n                \"ssl_verify\": False,\n                \"username\": \"...my_username...\",\n            },\n            \"strategy\": \"redis\",\n        },\n        \"callouts\": [{\n            \"cache\": {\n                \"bypass\": True,\n            },\n            \"depends_ons\": [\"...\"],\n            \"name\": \"...my_name...\",\n            \"request\": {\n                \"body\": {\n                    \"custom\": {\n                        \"key\": \"value\",\n                    },\n                    \"decode\": True,\n                    \"forward\": False,\n                },\n                \"by_lua\": \"...my_by_lua...\",\n                \"error\": {\n                    \"error_response_code\": 5,\n                    \"error_response_msg\": \"...my_error_response_msg...\",\n                    \"http_statuses\": [791],\n                    \"on_error\": \"fail\",\n                    \"retries\": 4,\n                },\n                \"headers\": {\n                    \"custom\": {\n                        \"key\": \"value\",\n                    },\n                    \"forward\": False,\n                },\n                \"http_opts\": {\n                    \"proxy\": {\n                        \"auth_password\": \"...my_auth_password...\",\n                        \"auth_username\": \"...my_auth_username...\",\n                        \"http_proxy\": \"...my_http_proxy...\",\n                        \"https_proxy\": \"...my_https_proxy...\",\n                    },\n                    \"ssl_server_name\": \"...my_ssl_server_name...\",\n                    \"ssl_verify\": True,\n                    \"timeouts\": {\n                        \"connect\": 396369045,\n                        \"read\": 2097982023,\n                        \"write\": 1346258560,\n                    },\n                },\n                \"method\": \"...my_method...\",\n                \"query\": {\n                    \"custom\": {\n                        \"key\": \"value\",\n                    },\n                    \"forward\": True,\n                },\n                \"url\": \"...my_url...\",\n            },\n            \"response\": {\n                \"body\": {\n                    \"decode\": False,\n                    \"store\": True,\n                },\n                \"by_lua\": \"...my_by_lua...\",\n                \"headers\": {\n                    \"store\": False,\n                },\n            },\n        }],\n        \"upstream\": {\n            \"body\": {\n                \"custom\": {\n                    \"key\": \"value\",\n                },\n                \"decode\": True,\n                \"forward\": False,\n            },\n            \"by_lua\": \"...my_by_lua...\",\n            \"headers\": {\n                \"custom\": {\n                    \"key\": \"value\",\n                },\n                \"forward\": True,\n            },\n            \"query\": {\n                \"custom\": {\n                    \"key\": \"value\",\n                },\n                \"forward\": False,\n            },\n        },\n    },\n    consumer={\n        \"id\": \"...my_id...\",\n    },\n    consumer_group={\n        \"id\": \"...my_id...\",\n    },\n    control_plane_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    created_at=4,\n    enabled=True,\n    gateway_plugin_request_callout_id=\"...my_id...\",\n    instance_name=\"...my_instance_name...\",\n    ordering={\n        \"after\": {\n            \"accesses\": [\"...\"],\n        },\n        \"before\": {\n            \"accesses\": [\"...\"],\n        },\n    },\n    partials=[{\n        \"id\": \"...my_id...\",\n        \"name\": \"...my_name...\",\n        \"path\": \"...my_path...\",\n    }],\n    protocols=[\"grpcs\"],\n    route={\n        \"id\": \"...my_id...\",\n    },\n    service={\n        \"id\": \"...my_id...\",\n    },\n    tags=[\"...\"],\n    updated_at=1)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myGatewaypluginrequestcallout = new Konnect.GatewayPluginRequestCallout(\"my_gatewaypluginrequestcallout\", new()\n    {\n        Config = new Konnect.Inputs.GatewayPluginRequestCalloutConfigArgs\n        {\n            Cache = new Konnect.Inputs.GatewayPluginRequestCalloutConfigCacheArgs\n            {\n                CacheTtl = 7,\n                Memory = new Konnect.Inputs.GatewayPluginRequestCalloutConfigCacheMemoryArgs\n                {\n                    DictionaryName = \"...my_dictionary_name...\",\n                },\n                Redis = new Konnect.Inputs.GatewayPluginRequestCalloutConfigCacheRedisArgs\n                {\n                    CloudAuthentication = new Konnect.Inputs.GatewayPluginRequestCalloutConfigCacheRedisCloudAuthenticationArgs\n                    {\n                        AuthProvider = \"gcp\",\n                        AwsAccessKeyId = \"...my_aws_access_key_id...\",\n                        AwsAssumeRoleArn = \"...my_aws_assume_role_arn...\",\n                        AwsCacheName = \"...my_aws_cache_name...\",\n                        AwsIsServerless = true,\n                        AwsRegion = \"...my_aws_region...\",\n                        AwsRoleSessionName = \"...my_aws_role_session_name...\",\n                        AwsSecretAccessKey = \"...my_aws_secret_access_key...\",\n                        AzureClientId = \"...my_azure_client_id...\",\n                        AzureClientSecret = \"...my_azure_client_secret...\",\n                        AzureTenantId = \"...my_azure_tenant_id...\",\n                        GcpServiceAccountJson = \"...my_gcp_service_account_json...\",\n                    },\n                    ClusterMaxRedirections = 10,\n                    ClusterNodes = new[]\n                    {\n                        new Konnect.Inputs.GatewayPluginRequestCalloutConfigCacheRedisClusterNodeArgs\n                        {\n                            Ip = \"...my_ip...\",\n                            Port = 12116,\n                        },\n                    },\n                    ConnectTimeout = 221492024,\n                    ConnectionIsProxied = false,\n                    Database = 0,\n                    Host = \"...my_host...\",\n                    KeepaliveBacklog = 2070085081,\n                    KeepalivePoolSize = 254346691,\n                    Password = \"...my_password...\",\n                    Port = 2887,\n                    ReadTimeout = 1913162680,\n                    SendTimeout = 27958014,\n                    SentinelMaster = \"...my_sentinel_master...\",\n                    SentinelNodes = new[]\n                    {\n                        new Konnect.Inputs.GatewayPluginRequestCalloutConfigCacheRedisSentinelNodeArgs\n                        {\n                            Host = \"...my_host...\",\n                            Port = 48331,\n                        },\n                    },\n                    SentinelPassword = \"...my_sentinel_password...\",\n                    SentinelRole = \"master\",\n                    SentinelUsername = \"...my_sentinel_username...\",\n                    ServerName = \"...my_server_name...\",\n                    Ssl = true,\n                    SslVerify = false,\n                    Username = \"...my_username...\",\n                },\n                Strategy = \"redis\",\n            },\n            Callouts = new[]\n            {\n                new Konnect.Inputs.GatewayPluginRequestCalloutConfigCalloutArgs\n                {\n                    Cache = new Konnect.Inputs.GatewayPluginRequestCalloutConfigCalloutCacheArgs\n                    {\n                        Bypass = true,\n                    },\n                    DependsOns = new[]\n                    {\n                        \"...\",\n                    },\n                    Name = \"...my_name...\",\n                    Request = new Konnect.Inputs.GatewayPluginRequestCalloutConfigCalloutRequestArgs\n                    {\n                        Body = new Konnect.Inputs.GatewayPluginRequestCalloutConfigCalloutRequestBodyArgs\n                        {\n                            Custom = \n                            {\n                                { \"key\", \"value\" },\n                            },\n                            Decode = true,\n                            Forward = false,\n                        },\n                        ByLua = \"...my_by_lua...\",\n                        Error = new Konnect.Inputs.GatewayPluginRequestCalloutConfigCalloutRequestErrorArgs\n                        {\n                            ErrorResponseCode = 5,\n                            ErrorResponseMsg = \"...my_error_response_msg...\",\n                            HttpStatuses = new[]\n                            {\n                                791,\n                            },\n                            OnError = \"fail\",\n                            Retries = 4,\n                        },\n                        Headers = new Konnect.Inputs.GatewayPluginRequestCalloutConfigCalloutRequestHeadersArgs\n                        {\n                            Custom = \n                            {\n                                { \"key\", \"value\" },\n                            },\n                            Forward = false,\n                        },\n                        HttpOpts = new Konnect.Inputs.GatewayPluginRequestCalloutConfigCalloutRequestHttpOptsArgs\n                        {\n                            Proxy = new Konnect.Inputs.GatewayPluginRequestCalloutConfigCalloutRequestHttpOptsProxyArgs\n                            {\n                                AuthPassword = \"...my_auth_password...\",\n                                AuthUsername = \"...my_auth_username...\",\n                                HttpProxy = \"...my_http_proxy...\",\n                                HttpsProxy = \"...my_https_proxy...\",\n                            },\n                            SslServerName = \"...my_ssl_server_name...\",\n                            SslVerify = true,\n                            Timeouts = new Konnect.Inputs.GatewayPluginRequestCalloutConfigCalloutRequestHttpOptsTimeoutsArgs\n                            {\n                                Connect = 396369045,\n                                Read = 2097982023,\n                                Write = 1346258560,\n                            },\n                        },\n                        Method = \"...my_method...\",\n                        Query = new Konnect.Inputs.GatewayPluginRequestCalloutConfigCalloutRequestQueryArgs\n                        {\n                            Custom = \n                            {\n                                { \"key\", \"value\" },\n                            },\n                            Forward = true,\n                        },\n                        Url = \"...my_url...\",\n                    },\n                    Response = new Konnect.Inputs.GatewayPluginRequestCalloutConfigCalloutResponseArgs\n                    {\n                        Body = new Konnect.Inputs.GatewayPluginRequestCalloutConfigCalloutResponseBodyArgs\n                        {\n                            Decode = false,\n                            Store = true,\n                        },\n                        ByLua = \"...my_by_lua...\",\n                        Headers = new Konnect.Inputs.GatewayPluginRequestCalloutConfigCalloutResponseHeadersArgs\n                        {\n                            Store = false,\n                        },\n                    },\n                },\n            },\n            Upstream = new Konnect.Inputs.GatewayPluginRequestCalloutConfigUpstreamArgs\n            {\n                Body = new Konnect.Inputs.GatewayPluginRequestCalloutConfigUpstreamBodyArgs\n                {\n                    Custom = \n                    {\n                        { \"key\", \"value\" },\n                    },\n                    Decode = true,\n                    Forward = false,\n                },\n                ByLua = \"...my_by_lua...\",\n                Headers = new Konnect.Inputs.GatewayPluginRequestCalloutConfigUpstreamHeadersArgs\n                {\n                    Custom = \n                    {\n                        { \"key\", \"value\" },\n                    },\n                    Forward = true,\n                },\n                Query = new Konnect.Inputs.GatewayPluginRequestCalloutConfigUpstreamQueryArgs\n                {\n                    Custom = \n                    {\n                        { \"key\", \"value\" },\n                    },\n                    Forward = false,\n                },\n            },\n        },\n        Consumer = new Konnect.Inputs.GatewayPluginRequestCalloutConsumerArgs\n        {\n            Id = \"...my_id...\",\n        },\n        ConsumerGroup = new Konnect.Inputs.GatewayPluginRequestCalloutConsumerGroupArgs\n        {\n            Id = \"...my_id...\",\n        },\n        ControlPlaneId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        CreatedAt = 4,\n        Enabled = true,\n        GatewayPluginRequestCalloutId = \"...my_id...\",\n        InstanceName = \"...my_instance_name...\",\n        Ordering = new Konnect.Inputs.GatewayPluginRequestCalloutOrderingArgs\n        {\n            After = new Konnect.Inputs.GatewayPluginRequestCalloutOrderingAfterArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n            Before = new Konnect.Inputs.GatewayPluginRequestCalloutOrderingBeforeArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n        },\n        Partials = new[]\n        {\n            new Konnect.Inputs.GatewayPluginRequestCalloutPartialArgs\n            {\n                Id = \"...my_id...\",\n                Name = \"...my_name...\",\n                Path = \"...my_path...\",\n            },\n        },\n        Protocols = new[]\n        {\n            \"grpcs\",\n        },\n        Route = new Konnect.Inputs.GatewayPluginRequestCalloutRouteArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Service = new Konnect.Inputs.GatewayPluginRequestCalloutServiceArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Tags = new[]\n        {\n            \"...\",\n        },\n        UpdatedAt = 1,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewGatewayPluginRequestCallout(ctx, \"my_gatewaypluginrequestcallout\", \u0026konnect.GatewayPluginRequestCalloutArgs{\n\t\t\tConfig: \u0026konnect.GatewayPluginRequestCalloutConfigArgs{\n\t\t\t\tCache: \u0026konnect.GatewayPluginRequestCalloutConfigCacheArgs{\n\t\t\t\t\tCacheTtl: pulumi.Float64(7),\n\t\t\t\t\tMemory: \u0026konnect.GatewayPluginRequestCalloutConfigCacheMemoryArgs{\n\t\t\t\t\t\tDictionaryName: pulumi.String(\"...my_dictionary_name...\"),\n\t\t\t\t\t},\n\t\t\t\t\tRedis: \u0026konnect.GatewayPluginRequestCalloutConfigCacheRedisArgs{\n\t\t\t\t\t\tCloudAuthentication: \u0026konnect.GatewayPluginRequestCalloutConfigCacheRedisCloudAuthenticationArgs{\n\t\t\t\t\t\t\tAuthProvider:          pulumi.String(\"gcp\"),\n\t\t\t\t\t\t\tAwsAccessKeyId:        pulumi.String(\"...my_aws_access_key_id...\"),\n\t\t\t\t\t\t\tAwsAssumeRoleArn:      pulumi.String(\"...my_aws_assume_role_arn...\"),\n\t\t\t\t\t\t\tAwsCacheName:          pulumi.String(\"...my_aws_cache_name...\"),\n\t\t\t\t\t\t\tAwsIsServerless:       pulumi.Bool(true),\n\t\t\t\t\t\t\tAwsRegion:             pulumi.String(\"...my_aws_region...\"),\n\t\t\t\t\t\t\tAwsRoleSessionName:    pulumi.String(\"...my_aws_role_session_name...\"),\n\t\t\t\t\t\t\tAwsSecretAccessKey:    pulumi.String(\"...my_aws_secret_access_key...\"),\n\t\t\t\t\t\t\tAzureClientId:         pulumi.String(\"...my_azure_client_id...\"),\n\t\t\t\t\t\t\tAzureClientSecret:     pulumi.String(\"...my_azure_client_secret...\"),\n\t\t\t\t\t\t\tAzureTenantId:         pulumi.String(\"...my_azure_tenant_id...\"),\n\t\t\t\t\t\t\tGcpServiceAccountJson: pulumi.String(\"...my_gcp_service_account_json...\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\tClusterMaxRedirections: pulumi.Float64(10),\n\t\t\t\t\t\tClusterNodes: konnect.GatewayPluginRequestCalloutConfigCacheRedisClusterNodeArray{\n\t\t\t\t\t\t\t\u0026konnect.GatewayPluginRequestCalloutConfigCacheRedisClusterNodeArgs{\n\t\t\t\t\t\t\t\tIp:   pulumi.String(\"...my_ip...\"),\n\t\t\t\t\t\t\t\tPort: pulumi.Float64(12116),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t\tConnectTimeout:      pulumi.Float64(221492024),\n\t\t\t\t\t\tConnectionIsProxied: pulumi.Bool(false),\n\t\t\t\t\t\tDatabase:            pulumi.Float64(0),\n\t\t\t\t\t\tHost:                pulumi.String(\"...my_host...\"),\n\t\t\t\t\t\tKeepaliveBacklog:    pulumi.Float64(2070085081),\n\t\t\t\t\t\tKeepalivePoolSize:   pulumi.Float64(254346691),\n\t\t\t\t\t\tPassword:            pulumi.String(\"...my_password...\"),\n\t\t\t\t\t\tPort:                pulumi.Float64(2887),\n\t\t\t\t\t\tReadTimeout:         pulumi.Float64(1913162680),\n\t\t\t\t\t\tSendTimeout:         pulumi.Float64(27958014),\n\t\t\t\t\t\tSentinelMaster:      pulumi.String(\"...my_sentinel_master...\"),\n\t\t\t\t\t\tSentinelNodes: konnect.GatewayPluginRequestCalloutConfigCacheRedisSentinelNodeArray{\n\t\t\t\t\t\t\t\u0026konnect.GatewayPluginRequestCalloutConfigCacheRedisSentinelNodeArgs{\n\t\t\t\t\t\t\t\tHost: pulumi.String(\"...my_host...\"),\n\t\t\t\t\t\t\t\tPort: pulumi.Float64(48331),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t\tSentinelPassword: pulumi.String(\"...my_sentinel_password...\"),\n\t\t\t\t\t\tSentinelRole:     pulumi.String(\"master\"),\n\t\t\t\t\t\tSentinelUsername: pulumi.String(\"...my_sentinel_username...\"),\n\t\t\t\t\t\tServerName:       pulumi.String(\"...my_server_name...\"),\n\t\t\t\t\t\tSsl:              pulumi.Bool(true),\n\t\t\t\t\t\tSslVerify:        pulumi.Bool(false),\n\t\t\t\t\t\tUsername:         pulumi.String(\"...my_username...\"),\n\t\t\t\t\t},\n\t\t\t\t\tStrategy: pulumi.String(\"redis\"),\n\t\t\t\t},\n\t\t\t\tCallouts: konnect.GatewayPluginRequestCalloutConfigCalloutArray{\n\t\t\t\t\t\u0026konnect.GatewayPluginRequestCalloutConfigCalloutArgs{\n\t\t\t\t\t\tCache: \u0026konnect.GatewayPluginRequestCalloutConfigCalloutCacheArgs{\n\t\t\t\t\t\t\tBypass: pulumi.Bool(true),\n\t\t\t\t\t\t},\n\t\t\t\t\t\tDependsOns: pulumi.StringArray{\n\t\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\tName: pulumi.String(\"...my_name...\"),\n\t\t\t\t\t\tRequest: \u0026konnect.GatewayPluginRequestCalloutConfigCalloutRequestArgs{\n\t\t\t\t\t\t\tBody: \u0026konnect.GatewayPluginRequestCalloutConfigCalloutRequestBodyArgs{\n\t\t\t\t\t\t\t\tCustom: pulumi.StringMap{\n\t\t\t\t\t\t\t\t\t\"key\": pulumi.String(\"value\"),\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\tDecode:  pulumi.Bool(true),\n\t\t\t\t\t\t\t\tForward: pulumi.Bool(false),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tByLua: pulumi.String(\"...my_by_lua...\"),\n\t\t\t\t\t\t\tError: \u0026konnect.GatewayPluginRequestCalloutConfigCalloutRequestErrorArgs{\n\t\t\t\t\t\t\t\tErrorResponseCode: pulumi.Float64(5),\n\t\t\t\t\t\t\t\tErrorResponseMsg:  pulumi.String(\"...my_error_response_msg...\"),\n\t\t\t\t\t\t\t\tHttpStatuses: pulumi.Float64Array{\n\t\t\t\t\t\t\t\t\tpulumi.Float64(791),\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\tOnError: pulumi.String(\"fail\"),\n\t\t\t\t\t\t\t\tRetries: pulumi.Float64(4),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tHeaders: \u0026konnect.GatewayPluginRequestCalloutConfigCalloutRequestHeadersArgs{\n\t\t\t\t\t\t\t\tCustom: pulumi.StringMap{\n\t\t\t\t\t\t\t\t\t\"key\": pulumi.String(\"value\"),\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\tForward: pulumi.Bool(false),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tHttpOpts: \u0026konnect.GatewayPluginRequestCalloutConfigCalloutRequestHttpOptsArgs{\n\t\t\t\t\t\t\t\tProxy: \u0026konnect.GatewayPluginRequestCalloutConfigCalloutRequestHttpOptsProxyArgs{\n\t\t\t\t\t\t\t\t\tAuthPassword: pulumi.String(\"...my_auth_password...\"),\n\t\t\t\t\t\t\t\t\tAuthUsername: pulumi.String(\"...my_auth_username...\"),\n\t\t\t\t\t\t\t\t\tHttpProxy:    pulumi.String(\"...my_http_proxy...\"),\n\t\t\t\t\t\t\t\t\tHttpsProxy:   pulumi.String(\"...my_https_proxy...\"),\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\tSslServerName: pulumi.String(\"...my_ssl_server_name...\"),\n\t\t\t\t\t\t\t\tSslVerify:     pulumi.Bool(true),\n\t\t\t\t\t\t\t\tTimeouts: \u0026konnect.GatewayPluginRequestCalloutConfigCalloutRequestHttpOptsTimeoutsArgs{\n\t\t\t\t\t\t\t\t\tConnect: pulumi.Float64(396369045),\n\t\t\t\t\t\t\t\t\tRead:    pulumi.Float64(2097982023),\n\t\t\t\t\t\t\t\t\tWrite:   pulumi.Float64(1346258560),\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tMethod: pulumi.String(\"...my_method...\"),\n\t\t\t\t\t\t\tQuery: \u0026konnect.GatewayPluginRequestCalloutConfigCalloutRequestQueryArgs{\n\t\t\t\t\t\t\t\tCustom: pulumi.StringMap{\n\t\t\t\t\t\t\t\t\t\"key\": pulumi.String(\"value\"),\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\tForward: pulumi.Bool(true),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tUrl: pulumi.String(\"...my_url...\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\tResponse: \u0026konnect.GatewayPluginRequestCalloutConfigCalloutResponseArgs{\n\t\t\t\t\t\t\tBody: \u0026konnect.GatewayPluginRequestCalloutConfigCalloutResponseBodyArgs{\n\t\t\t\t\t\t\t\tDecode: pulumi.Bool(false),\n\t\t\t\t\t\t\t\tStore:  pulumi.Bool(true),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tByLua: pulumi.String(\"...my_by_lua...\"),\n\t\t\t\t\t\t\tHeaders: \u0026konnect.GatewayPluginRequestCalloutConfigCalloutResponseHeadersArgs{\n\t\t\t\t\t\t\t\tStore: pulumi.Bool(false),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tUpstream: \u0026konnect.GatewayPluginRequestCalloutConfigUpstreamArgs{\n\t\t\t\t\tBody: \u0026konnect.GatewayPluginRequestCalloutConfigUpstreamBodyArgs{\n\t\t\t\t\t\tCustom: pulumi.StringMap{\n\t\t\t\t\t\t\t\"key\": pulumi.String(\"value\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\tDecode:  pulumi.Bool(true),\n\t\t\t\t\t\tForward: pulumi.Bool(false),\n\t\t\t\t\t},\n\t\t\t\t\tByLua: pulumi.String(\"...my_by_lua...\"),\n\t\t\t\t\tHeaders: \u0026konnect.GatewayPluginRequestCalloutConfigUpstreamHeadersArgs{\n\t\t\t\t\t\tCustom: pulumi.StringMap{\n\t\t\t\t\t\t\t\"key\": pulumi.String(\"value\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\tForward: pulumi.Bool(true),\n\t\t\t\t\t},\n\t\t\t\t\tQuery: \u0026konnect.GatewayPluginRequestCalloutConfigUpstreamQueryArgs{\n\t\t\t\t\t\tCustom: pulumi.StringMap{\n\t\t\t\t\t\t\t\"key\": pulumi.String(\"value\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\tForward: pulumi.Bool(false),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tConsumer: \u0026konnect.GatewayPluginRequestCalloutConsumerArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tConsumerGroup: \u0026konnect.GatewayPluginRequestCalloutConsumerGroupArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tControlPlaneId:                pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tCreatedAt:                     pulumi.Float64(4),\n\t\t\tEnabled:                       pulumi.Bool(true),\n\t\t\tGatewayPluginRequestCalloutId: pulumi.String(\"...my_id...\"),\n\t\t\tInstanceName:                  pulumi.String(\"...my_instance_name...\"),\n\t\t\tOrdering: \u0026konnect.GatewayPluginRequestCalloutOrderingArgs{\n\t\t\t\tAfter: \u0026konnect.GatewayPluginRequestCalloutOrderingAfterArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tBefore: \u0026konnect.GatewayPluginRequestCalloutOrderingBeforeArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tPartials: konnect.GatewayPluginRequestCalloutPartialArray{\n\t\t\t\t\u0026konnect.GatewayPluginRequestCalloutPartialArgs{\n\t\t\t\t\tId:   pulumi.String(\"...my_id...\"),\n\t\t\t\t\tName: pulumi.String(\"...my_name...\"),\n\t\t\t\t\tPath: pulumi.String(\"...my_path...\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tProtocols: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"grpcs\"),\n\t\t\t},\n\t\t\tRoute: \u0026konnect.GatewayPluginRequestCalloutRouteArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tService: \u0026konnect.GatewayPluginRequestCalloutServiceArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"...\"),\n\t\t\t},\n\t\t\tUpdatedAt: pulumi.Float64(1),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.GatewayPluginRequestCallout;\nimport com.pulumi.konnect.GatewayPluginRequestCalloutArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginRequestCalloutConfigArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginRequestCalloutConfigCacheArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginRequestCalloutConfigCacheMemoryArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginRequestCalloutConfigCacheRedisArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginRequestCalloutConfigCacheRedisCloudAuthenticationArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginRequestCalloutConfigUpstreamArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginRequestCalloutConfigUpstreamBodyArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginRequestCalloutConfigUpstreamHeadersArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginRequestCalloutConfigUpstreamQueryArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginRequestCalloutConsumerArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginRequestCalloutConsumerGroupArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginRequestCalloutOrderingArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginRequestCalloutOrderingAfterArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginRequestCalloutOrderingBeforeArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginRequestCalloutPartialArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginRequestCalloutRouteArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginRequestCalloutServiceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myGatewaypluginrequestcallout = new GatewayPluginRequestCallout(\"myGatewaypluginrequestcallout\", GatewayPluginRequestCalloutArgs.builder()\n            .config(GatewayPluginRequestCalloutConfigArgs.builder()\n                .cache(GatewayPluginRequestCalloutConfigCacheArgs.builder()\n                    .cacheTtl(7.0)\n                    .memory(GatewayPluginRequestCalloutConfigCacheMemoryArgs.builder()\n                        .dictionaryName(\"...my_dictionary_name...\")\n                        .build())\n                    .redis(GatewayPluginRequestCalloutConfigCacheRedisArgs.builder()\n                        .cloudAuthentication(GatewayPluginRequestCalloutConfigCacheRedisCloudAuthenticationArgs.builder()\n                            .authProvider(\"gcp\")\n                            .awsAccessKeyId(\"...my_aws_access_key_id...\")\n                            .awsAssumeRoleArn(\"...my_aws_assume_role_arn...\")\n                            .awsCacheName(\"...my_aws_cache_name...\")\n                            .awsIsServerless(true)\n                            .awsRegion(\"...my_aws_region...\")\n                            .awsRoleSessionName(\"...my_aws_role_session_name...\")\n                            .awsSecretAccessKey(\"...my_aws_secret_access_key...\")\n                            .azureClientId(\"...my_azure_client_id...\")\n                            .azureClientSecret(\"...my_azure_client_secret...\")\n                            .azureTenantId(\"...my_azure_tenant_id...\")\n                            .gcpServiceAccountJson(\"...my_gcp_service_account_json...\")\n                            .build())\n                        .clusterMaxRedirections(10.0)\n                        .clusterNodes(GatewayPluginRequestCalloutConfigCacheRedisClusterNodeArgs.builder()\n                            .ip(\"...my_ip...\")\n                            .port(12116.0)\n                            .build())\n                        .connectTimeout(221492024.0)\n                        .connectionIsProxied(false)\n                        .database(0.0)\n                        .host(\"...my_host...\")\n                        .keepaliveBacklog(2070085081.0)\n                        .keepalivePoolSize(254346691.0)\n                        .password(\"...my_password...\")\n                        .port(2887.0)\n                        .readTimeout(1913162680.0)\n                        .sendTimeout(27958014.0)\n                        .sentinelMaster(\"...my_sentinel_master...\")\n                        .sentinelNodes(GatewayPluginRequestCalloutConfigCacheRedisSentinelNodeArgs.builder()\n                            .host(\"...my_host...\")\n                            .port(48331.0)\n                            .build())\n                        .sentinelPassword(\"...my_sentinel_password...\")\n                        .sentinelRole(\"master\")\n                        .sentinelUsername(\"...my_sentinel_username...\")\n                        .serverName(\"...my_server_name...\")\n                        .ssl(true)\n                        .sslVerify(false)\n                        .username(\"...my_username...\")\n                        .build())\n                    .strategy(\"redis\")\n                    .build())\n                .callouts(GatewayPluginRequestCalloutConfigCalloutArgs.builder()\n                    .cache(GatewayPluginRequestCalloutConfigCalloutCacheArgs.builder()\n                        .bypass(true)\n                        .build())\n                    .dependsOns(\"...\")\n                    .name(\"...my_name...\")\n                    .request(GatewayPluginRequestCalloutConfigCalloutRequestArgs.builder()\n                        .body(GatewayPluginRequestCalloutConfigCalloutRequestBodyArgs.builder()\n                            .custom(Map.of(\"key\", \"value\"))\n                            .decode(true)\n                            .forward(false)\n                            .build())\n                        .byLua(\"...my_by_lua...\")\n                        .error(GatewayPluginRequestCalloutConfigCalloutRequestErrorArgs.builder()\n                            .errorResponseCode(5.0)\n                            .errorResponseMsg(\"...my_error_response_msg...\")\n                            .httpStatuses(791.0)\n                            .onError(\"fail\")\n                            .retries(4.0)\n                            .build())\n                        .headers(GatewayPluginRequestCalloutConfigCalloutRequestHeadersArgs.builder()\n                            .custom(Map.of(\"key\", \"value\"))\n                            .forward(false)\n                            .build())\n                        .httpOpts(GatewayPluginRequestCalloutConfigCalloutRequestHttpOptsArgs.builder()\n                            .proxy(GatewayPluginRequestCalloutConfigCalloutRequestHttpOptsProxyArgs.builder()\n                                .authPassword(\"...my_auth_password...\")\n                                .authUsername(\"...my_auth_username...\")\n                                .httpProxy(\"...my_http_proxy...\")\n                                .httpsProxy(\"...my_https_proxy...\")\n                                .build())\n                            .sslServerName(\"...my_ssl_server_name...\")\n                            .sslVerify(true)\n                            .timeouts(GatewayPluginRequestCalloutConfigCalloutRequestHttpOptsTimeoutsArgs.builder()\n                                .connect(396369045.0)\n                                .read(2097982023.0)\n                                .write(1346258560.0)\n                                .build())\n                            .build())\n                        .method(\"...my_method...\")\n                        .query(GatewayPluginRequestCalloutConfigCalloutRequestQueryArgs.builder()\n                            .custom(Map.of(\"key\", \"value\"))\n                            .forward(true)\n                            .build())\n                        .url(\"...my_url...\")\n                        .build())\n                    .response(GatewayPluginRequestCalloutConfigCalloutResponseArgs.builder()\n                        .body(GatewayPluginRequestCalloutConfigCalloutResponseBodyArgs.builder()\n                            .decode(false)\n                            .store(true)\n                            .build())\n                        .byLua(\"...my_by_lua...\")\n                        .headers(GatewayPluginRequestCalloutConfigCalloutResponseHeadersArgs.builder()\n                            .store(false)\n                            .build())\n                        .build())\n                    .build())\n                .upstream(GatewayPluginRequestCalloutConfigUpstreamArgs.builder()\n                    .body(GatewayPluginRequestCalloutConfigUpstreamBodyArgs.builder()\n                        .custom(Map.of(\"key\", \"value\"))\n                        .decode(true)\n                        .forward(false)\n                        .build())\n                    .byLua(\"...my_by_lua...\")\n                    .headers(GatewayPluginRequestCalloutConfigUpstreamHeadersArgs.builder()\n                        .custom(Map.of(\"key\", \"value\"))\n                        .forward(true)\n                        .build())\n                    .query(GatewayPluginRequestCalloutConfigUpstreamQueryArgs.builder()\n                        .custom(Map.of(\"key\", \"value\"))\n                        .forward(false)\n                        .build())\n                    .build())\n                .build())\n            .consumer(GatewayPluginRequestCalloutConsumerArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .consumerGroup(GatewayPluginRequestCalloutConsumerGroupArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .controlPlaneId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .createdAt(4.0)\n            .enabled(true)\n            .gatewayPluginRequestCalloutId(\"...my_id...\")\n            .instanceName(\"...my_instance_name...\")\n            .ordering(GatewayPluginRequestCalloutOrderingArgs.builder()\n                .after(GatewayPluginRequestCalloutOrderingAfterArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .before(GatewayPluginRequestCalloutOrderingBeforeArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .build())\n            .partials(GatewayPluginRequestCalloutPartialArgs.builder()\n                .id(\"...my_id...\")\n                .name(\"...my_name...\")\n                .path(\"...my_path...\")\n                .build())\n            .protocols(\"grpcs\")\n            .route(GatewayPluginRequestCalloutRouteArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .service(GatewayPluginRequestCalloutServiceArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .tags(\"...\")\n            .updatedAt(1.0)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myGatewaypluginrequestcallout:\n    type: konnect:GatewayPluginRequestCallout\n    name: my_gatewaypluginrequestcallout\n    properties:\n      config:\n        cache:\n          cacheTtl: 7\n          memory:\n            dictionaryName: '...my_dictionary_name...'\n          redis:\n            cloudAuthentication:\n              authProvider: gcp\n              awsAccessKeyId: '...my_aws_access_key_id...'\n              awsAssumeRoleArn: '...my_aws_assume_role_arn...'\n              awsCacheName: '...my_aws_cache_name...'\n              awsIsServerless: true\n              awsRegion: '...my_aws_region...'\n              awsRoleSessionName: '...my_aws_role_session_name...'\n              awsSecretAccessKey: '...my_aws_secret_access_key...'\n              azureClientId: '...my_azure_client_id...'\n              azureClientSecret: '...my_azure_client_secret...'\n              azureTenantId: '...my_azure_tenant_id...'\n              gcpServiceAccountJson: '...my_gcp_service_account_json...'\n            clusterMaxRedirections: 10\n            clusterNodes:\n              - ip: '...my_ip...'\n                port: 12116\n            connectTimeout: 2.21492024e+08\n            connectionIsProxied: false\n            database: 0\n            host: '...my_host...'\n            keepaliveBacklog: 2.070085081e+09\n            keepalivePoolSize: 2.54346691e+08\n            password: '...my_password...'\n            port: 2887\n            readTimeout: 1.91316268e+09\n            sendTimeout: 2.7958014e+07\n            sentinelMaster: '...my_sentinel_master...'\n            sentinelNodes:\n              - host: '...my_host...'\n                port: 48331\n            sentinelPassword: '...my_sentinel_password...'\n            sentinelRole: master\n            sentinelUsername: '...my_sentinel_username...'\n            serverName: '...my_server_name...'\n            ssl: true\n            sslVerify: false\n            username: '...my_username...'\n          strategy: redis\n        callouts:\n          - cache:\n              bypass: true\n            dependsOns:\n              - '...'\n            name: '...my_name...'\n            request:\n              body:\n                custom:\n                  key: value\n                decode: true\n                forward: false\n              byLua: '...my_by_lua...'\n              error:\n                errorResponseCode: 5\n                errorResponseMsg: '...my_error_response_msg...'\n                httpStatuses:\n                  - 791\n                onError: fail\n                retries: 4\n              headers:\n                custom:\n                  key: value\n                forward: false\n              httpOpts:\n                proxy:\n                  authPassword: '...my_auth_password...'\n                  authUsername: '...my_auth_username...'\n                  httpProxy: '...my_http_proxy...'\n                  httpsProxy: '...my_https_proxy...'\n                sslServerName: '...my_ssl_server_name...'\n                sslVerify: true\n                timeouts:\n                  connect: 3.96369045e+08\n                  read: 2.097982023e+09\n                  write: 1.34625856e+09\n              method: '...my_method...'\n              query:\n                custom:\n                  key: value\n                forward: true\n              url: '...my_url...'\n            response:\n              body:\n                decode: false\n                store: true\n              byLua: '...my_by_lua...'\n              headers:\n                store: false\n        upstream:\n          body:\n            custom:\n              key: value\n            decode: true\n            forward: false\n          byLua: '...my_by_lua...'\n          headers:\n            custom:\n              key: value\n            forward: true\n          query:\n            custom:\n              key: value\n            forward: false\n      consumer:\n        id: '...my_id...'\n      consumerGroup:\n        id: '...my_id...'\n      controlPlaneId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      createdAt: 4\n      enabled: true\n      gatewayPluginRequestCalloutId: '...my_id...'\n      instanceName: '...my_instance_name...'\n      ordering:\n        after:\n          accesses:\n            - '...'\n        before:\n          accesses:\n            - '...'\n      partials:\n        - id: '...my_id...'\n          name: '...my_name...'\n          path: '...my_path...'\n      protocols:\n        - grpcs\n      route:\n        id: '...my_id...'\n      service:\n        id: '...my_id...'\n      tags:\n        - '...'\n      updatedAt: 1\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_gateway_plugin_request_callout.my_konnect_gateway_plugin_request_callout\n\n  id = jsonencode({\n\n    control_plane_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/gatewayPluginRequestCallout:GatewayPluginRequestCallout my_konnect_gateway_plugin_request_callout '{\"control_plane_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"}'\n```\n\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestCalloutConfig:GatewayPluginRequestCalloutConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestCalloutConsumer:GatewayPluginRequestCalloutConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"consumerGroup":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestCalloutConsumerGroup:GatewayPluginRequestCalloutConsumerGroup","description":"If set, the plugin will activate only for requests where the specified consumer group has been authenticated. (Note that some plugins can not be restricted to consumers groups this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer Groups\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginRequestCalloutId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestCalloutOrdering:GatewayPluginRequestCalloutOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestCalloutPartial:GatewayPluginRequestCalloutPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestCalloutRoute:GatewayPluginRequestCalloutRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestCalloutService:GatewayPluginRequestCalloutService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object","required":["config","consumer","consumerGroup","controlPlaneId","createdAt","enabled","gatewayPluginRequestCalloutId","ordering","protocols","route","service","updatedAt"],"inputProperties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestCalloutConfig:GatewayPluginRequestCalloutConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestCalloutConsumer:GatewayPluginRequestCalloutConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"consumerGroup":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestCalloutConsumerGroup:GatewayPluginRequestCalloutConsumerGroup","description":"If set, the plugin will activate only for requests where the specified consumer group has been authenticated. (Note that some plugins can not be restricted to consumers groups this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer Groups\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginRequestCalloutId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestCalloutOrdering:GatewayPluginRequestCalloutOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestCalloutPartial:GatewayPluginRequestCalloutPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestCalloutRoute:GatewayPluginRequestCalloutRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestCalloutService:GatewayPluginRequestCalloutService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"requiredInputs":["config","controlPlaneId"],"stateInputs":{"description":"Input properties used for looking up and filtering GatewayPluginRequestCallout resources.\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestCalloutConfig:GatewayPluginRequestCalloutConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestCalloutConsumer:GatewayPluginRequestCalloutConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"consumerGroup":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestCalloutConsumerGroup:GatewayPluginRequestCalloutConsumerGroup","description":"If set, the plugin will activate only for requests where the specified consumer group has been authenticated. (Note that some plugins can not be restricted to consumers groups this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer Groups\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginRequestCalloutId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestCalloutOrdering:GatewayPluginRequestCalloutOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestCalloutPartial:GatewayPluginRequestCalloutPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestCalloutRoute:GatewayPluginRequestCalloutRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestCalloutService:GatewayPluginRequestCalloutService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object"}},"konnect:index/gatewayPluginRequestSizeLimiting:GatewayPluginRequestSizeLimiting":{"description":"GatewayPluginRequestSizeLimiting Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myGatewaypluginrequestsizelimiting = new konnect.GatewayPluginRequestSizeLimiting(\"my_gatewaypluginrequestsizelimiting\", {\n    config: {\n        allowedPayloadSize: 7,\n        requireContentLength: true,\n        sizeUnit: \"megabytes\",\n    },\n    consumer: {\n        id: \"...my_id...\",\n    },\n    controlPlaneId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    createdAt: 0,\n    enabled: false,\n    gatewayPluginRequestSizeLimitingId: \"...my_id...\",\n    instanceName: \"...my_instance_name...\",\n    ordering: {\n        after: {\n            accesses: [\"...\"],\n        },\n        before: {\n            accesses: [\"...\"],\n        },\n    },\n    partials: [{\n        id: \"...my_id...\",\n        name: \"...my_name...\",\n        path: \"...my_path...\",\n    }],\n    protocols: [\"http\"],\n    route: {\n        id: \"...my_id...\",\n    },\n    service: {\n        id: \"...my_id...\",\n    },\n    tags: [\"...\"],\n    updatedAt: 5,\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_gatewaypluginrequestsizelimiting = konnect.GatewayPluginRequestSizeLimiting(\"my_gatewaypluginrequestsizelimiting\",\n    config={\n        \"allowed_payload_size\": 7,\n        \"require_content_length\": True,\n        \"size_unit\": \"megabytes\",\n    },\n    consumer={\n        \"id\": \"...my_id...\",\n    },\n    control_plane_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    created_at=0,\n    enabled=False,\n    gateway_plugin_request_size_limiting_id=\"...my_id...\",\n    instance_name=\"...my_instance_name...\",\n    ordering={\n        \"after\": {\n            \"accesses\": [\"...\"],\n        },\n        \"before\": {\n            \"accesses\": [\"...\"],\n        },\n    },\n    partials=[{\n        \"id\": \"...my_id...\",\n        \"name\": \"...my_name...\",\n        \"path\": \"...my_path...\",\n    }],\n    protocols=[\"http\"],\n    route={\n        \"id\": \"...my_id...\",\n    },\n    service={\n        \"id\": \"...my_id...\",\n    },\n    tags=[\"...\"],\n    updated_at=5)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myGatewaypluginrequestsizelimiting = new Konnect.GatewayPluginRequestSizeLimiting(\"my_gatewaypluginrequestsizelimiting\", new()\n    {\n        Config = new Konnect.Inputs.GatewayPluginRequestSizeLimitingConfigArgs\n        {\n            AllowedPayloadSize = 7,\n            RequireContentLength = true,\n            SizeUnit = \"megabytes\",\n        },\n        Consumer = new Konnect.Inputs.GatewayPluginRequestSizeLimitingConsumerArgs\n        {\n            Id = \"...my_id...\",\n        },\n        ControlPlaneId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        CreatedAt = 0,\n        Enabled = false,\n        GatewayPluginRequestSizeLimitingId = \"...my_id...\",\n        InstanceName = \"...my_instance_name...\",\n        Ordering = new Konnect.Inputs.GatewayPluginRequestSizeLimitingOrderingArgs\n        {\n            After = new Konnect.Inputs.GatewayPluginRequestSizeLimitingOrderingAfterArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n            Before = new Konnect.Inputs.GatewayPluginRequestSizeLimitingOrderingBeforeArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n        },\n        Partials = new[]\n        {\n            new Konnect.Inputs.GatewayPluginRequestSizeLimitingPartialArgs\n            {\n                Id = \"...my_id...\",\n                Name = \"...my_name...\",\n                Path = \"...my_path...\",\n            },\n        },\n        Protocols = new[]\n        {\n            \"http\",\n        },\n        Route = new Konnect.Inputs.GatewayPluginRequestSizeLimitingRouteArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Service = new Konnect.Inputs.GatewayPluginRequestSizeLimitingServiceArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Tags = new[]\n        {\n            \"...\",\n        },\n        UpdatedAt = 5,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewGatewayPluginRequestSizeLimiting(ctx, \"my_gatewaypluginrequestsizelimiting\", \u0026konnect.GatewayPluginRequestSizeLimitingArgs{\n\t\t\tConfig: \u0026konnect.GatewayPluginRequestSizeLimitingConfigArgs{\n\t\t\t\tAllowedPayloadSize:   pulumi.Float64(7),\n\t\t\t\tRequireContentLength: pulumi.Bool(true),\n\t\t\t\tSizeUnit:             pulumi.String(\"megabytes\"),\n\t\t\t},\n\t\t\tConsumer: \u0026konnect.GatewayPluginRequestSizeLimitingConsumerArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tControlPlaneId:                     pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tCreatedAt:                          pulumi.Float64(0),\n\t\t\tEnabled:                            pulumi.Bool(false),\n\t\t\tGatewayPluginRequestSizeLimitingId: pulumi.String(\"...my_id...\"),\n\t\t\tInstanceName:                       pulumi.String(\"...my_instance_name...\"),\n\t\t\tOrdering: \u0026konnect.GatewayPluginRequestSizeLimitingOrderingArgs{\n\t\t\t\tAfter: \u0026konnect.GatewayPluginRequestSizeLimitingOrderingAfterArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tBefore: \u0026konnect.GatewayPluginRequestSizeLimitingOrderingBeforeArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tPartials: konnect.GatewayPluginRequestSizeLimitingPartialArray{\n\t\t\t\t\u0026konnect.GatewayPluginRequestSizeLimitingPartialArgs{\n\t\t\t\t\tId:   pulumi.String(\"...my_id...\"),\n\t\t\t\t\tName: pulumi.String(\"...my_name...\"),\n\t\t\t\t\tPath: pulumi.String(\"...my_path...\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tProtocols: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"http\"),\n\t\t\t},\n\t\t\tRoute: \u0026konnect.GatewayPluginRequestSizeLimitingRouteArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tService: \u0026konnect.GatewayPluginRequestSizeLimitingServiceArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"...\"),\n\t\t\t},\n\t\t\tUpdatedAt: pulumi.Float64(5),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.GatewayPluginRequestSizeLimiting;\nimport com.pulumi.konnect.GatewayPluginRequestSizeLimitingArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginRequestSizeLimitingConfigArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginRequestSizeLimitingConsumerArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginRequestSizeLimitingOrderingArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginRequestSizeLimitingOrderingAfterArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginRequestSizeLimitingOrderingBeforeArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginRequestSizeLimitingPartialArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginRequestSizeLimitingRouteArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginRequestSizeLimitingServiceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myGatewaypluginrequestsizelimiting = new GatewayPluginRequestSizeLimiting(\"myGatewaypluginrequestsizelimiting\", GatewayPluginRequestSizeLimitingArgs.builder()\n            .config(GatewayPluginRequestSizeLimitingConfigArgs.builder()\n                .allowedPayloadSize(7.0)\n                .requireContentLength(true)\n                .sizeUnit(\"megabytes\")\n                .build())\n            .consumer(GatewayPluginRequestSizeLimitingConsumerArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .controlPlaneId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .createdAt(0.0)\n            .enabled(false)\n            .gatewayPluginRequestSizeLimitingId(\"...my_id...\")\n            .instanceName(\"...my_instance_name...\")\n            .ordering(GatewayPluginRequestSizeLimitingOrderingArgs.builder()\n                .after(GatewayPluginRequestSizeLimitingOrderingAfterArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .before(GatewayPluginRequestSizeLimitingOrderingBeforeArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .build())\n            .partials(GatewayPluginRequestSizeLimitingPartialArgs.builder()\n                .id(\"...my_id...\")\n                .name(\"...my_name...\")\n                .path(\"...my_path...\")\n                .build())\n            .protocols(\"http\")\n            .route(GatewayPluginRequestSizeLimitingRouteArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .service(GatewayPluginRequestSizeLimitingServiceArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .tags(\"...\")\n            .updatedAt(5.0)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myGatewaypluginrequestsizelimiting:\n    type: konnect:GatewayPluginRequestSizeLimiting\n    name: my_gatewaypluginrequestsizelimiting\n    properties:\n      config:\n        allowedPayloadSize: 7\n        requireContentLength: true\n        sizeUnit: megabytes\n      consumer:\n        id: '...my_id...'\n      controlPlaneId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      createdAt: 0\n      enabled: false\n      gatewayPluginRequestSizeLimitingId: '...my_id...'\n      instanceName: '...my_instance_name...'\n      ordering:\n        after:\n          accesses:\n            - '...'\n        before:\n          accesses:\n            - '...'\n      partials:\n        - id: '...my_id...'\n          name: '...my_name...'\n          path: '...my_path...'\n      protocols:\n        - http\n      route:\n        id: '...my_id...'\n      service:\n        id: '...my_id...'\n      tags:\n        - '...'\n      updatedAt: 5\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_gateway_plugin_request_size_limiting.my_konnect_gateway_plugin_request_size_limiting\n\n  id = jsonencode({\n\n    control_plane_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/gatewayPluginRequestSizeLimiting:GatewayPluginRequestSizeLimiting my_konnect_gateway_plugin_request_size_limiting '{\"control_plane_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"}'\n```\n\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestSizeLimitingConfig:GatewayPluginRequestSizeLimitingConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestSizeLimitingConsumer:GatewayPluginRequestSizeLimitingConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginRequestSizeLimitingId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestSizeLimitingOrdering:GatewayPluginRequestSizeLimitingOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestSizeLimitingPartial:GatewayPluginRequestSizeLimitingPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestSizeLimitingRoute:GatewayPluginRequestSizeLimitingRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestSizeLimitingService:GatewayPluginRequestSizeLimitingService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object","required":["config","consumer","controlPlaneId","createdAt","enabled","gatewayPluginRequestSizeLimitingId","ordering","protocols","route","service","updatedAt"],"inputProperties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestSizeLimitingConfig:GatewayPluginRequestSizeLimitingConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestSizeLimitingConsumer:GatewayPluginRequestSizeLimitingConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginRequestSizeLimitingId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestSizeLimitingOrdering:GatewayPluginRequestSizeLimitingOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestSizeLimitingPartial:GatewayPluginRequestSizeLimitingPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestSizeLimitingRoute:GatewayPluginRequestSizeLimitingRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestSizeLimitingService:GatewayPluginRequestSizeLimitingService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"requiredInputs":["controlPlaneId"],"stateInputs":{"description":"Input properties used for looking up and filtering GatewayPluginRequestSizeLimiting resources.\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestSizeLimitingConfig:GatewayPluginRequestSizeLimitingConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestSizeLimitingConsumer:GatewayPluginRequestSizeLimitingConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginRequestSizeLimitingId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestSizeLimitingOrdering:GatewayPluginRequestSizeLimitingOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestSizeLimitingPartial:GatewayPluginRequestSizeLimitingPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestSizeLimitingRoute:GatewayPluginRequestSizeLimitingRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestSizeLimitingService:GatewayPluginRequestSizeLimitingService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object"}},"konnect:index/gatewayPluginRequestTermination:GatewayPluginRequestTermination":{"description":"GatewayPluginRequestTermination Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myGatewaypluginrequesttermination = new konnect.GatewayPluginRequestTermination(\"my_gatewaypluginrequesttermination\", {\n    config: {\n        body: \"...my_body...\",\n        contentType: \"...my_content_type...\",\n        echo: true,\n        message: \"...my_message...\",\n        statusCode: 536,\n        trigger: \"...my_trigger...\",\n    },\n    consumer: {\n        id: \"...my_id...\",\n    },\n    consumerGroup: {\n        id: \"...my_id...\",\n    },\n    controlPlaneId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    createdAt: 3,\n    enabled: false,\n    gatewayPluginRequestTerminationId: \"...my_id...\",\n    instanceName: \"...my_instance_name...\",\n    ordering: {\n        after: {\n            accesses: [\"...\"],\n        },\n        before: {\n            accesses: [\"...\"],\n        },\n    },\n    partials: [{\n        id: \"...my_id...\",\n        name: \"...my_name...\",\n        path: \"...my_path...\",\n    }],\n    protocols: [\"https\"],\n    route: {\n        id: \"...my_id...\",\n    },\n    service: {\n        id: \"...my_id...\",\n    },\n    tags: [\"...\"],\n    updatedAt: 3,\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_gatewaypluginrequesttermination = konnect.GatewayPluginRequestTermination(\"my_gatewaypluginrequesttermination\",\n    config={\n        \"body\": \"...my_body...\",\n        \"content_type\": \"...my_content_type...\",\n        \"echo\": True,\n        \"message\": \"...my_message...\",\n        \"status_code\": 536,\n        \"trigger\": \"...my_trigger...\",\n    },\n    consumer={\n        \"id\": \"...my_id...\",\n    },\n    consumer_group={\n        \"id\": \"...my_id...\",\n    },\n    control_plane_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    created_at=3,\n    enabled=False,\n    gateway_plugin_request_termination_id=\"...my_id...\",\n    instance_name=\"...my_instance_name...\",\n    ordering={\n        \"after\": {\n            \"accesses\": [\"...\"],\n        },\n        \"before\": {\n            \"accesses\": [\"...\"],\n        },\n    },\n    partials=[{\n        \"id\": \"...my_id...\",\n        \"name\": \"...my_name...\",\n        \"path\": \"...my_path...\",\n    }],\n    protocols=[\"https\"],\n    route={\n        \"id\": \"...my_id...\",\n    },\n    service={\n        \"id\": \"...my_id...\",\n    },\n    tags=[\"...\"],\n    updated_at=3)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myGatewaypluginrequesttermination = new Konnect.GatewayPluginRequestTermination(\"my_gatewaypluginrequesttermination\", new()\n    {\n        Config = new Konnect.Inputs.GatewayPluginRequestTerminationConfigArgs\n        {\n            Body = \"...my_body...\",\n            ContentType = \"...my_content_type...\",\n            Echo = true,\n            Message = \"...my_message...\",\n            StatusCode = 536,\n            Trigger = \"...my_trigger...\",\n        },\n        Consumer = new Konnect.Inputs.GatewayPluginRequestTerminationConsumerArgs\n        {\n            Id = \"...my_id...\",\n        },\n        ConsumerGroup = new Konnect.Inputs.GatewayPluginRequestTerminationConsumerGroupArgs\n        {\n            Id = \"...my_id...\",\n        },\n        ControlPlaneId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        CreatedAt = 3,\n        Enabled = false,\n        GatewayPluginRequestTerminationId = \"...my_id...\",\n        InstanceName = \"...my_instance_name...\",\n        Ordering = new Konnect.Inputs.GatewayPluginRequestTerminationOrderingArgs\n        {\n            After = new Konnect.Inputs.GatewayPluginRequestTerminationOrderingAfterArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n            Before = new Konnect.Inputs.GatewayPluginRequestTerminationOrderingBeforeArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n        },\n        Partials = new[]\n        {\n            new Konnect.Inputs.GatewayPluginRequestTerminationPartialArgs\n            {\n                Id = \"...my_id...\",\n                Name = \"...my_name...\",\n                Path = \"...my_path...\",\n            },\n        },\n        Protocols = new[]\n        {\n            \"https\",\n        },\n        Route = new Konnect.Inputs.GatewayPluginRequestTerminationRouteArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Service = new Konnect.Inputs.GatewayPluginRequestTerminationServiceArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Tags = new[]\n        {\n            \"...\",\n        },\n        UpdatedAt = 3,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewGatewayPluginRequestTermination(ctx, \"my_gatewaypluginrequesttermination\", \u0026konnect.GatewayPluginRequestTerminationArgs{\n\t\t\tConfig: \u0026konnect.GatewayPluginRequestTerminationConfigArgs{\n\t\t\t\tBody:        pulumi.String(\"...my_body...\"),\n\t\t\t\tContentType: pulumi.String(\"...my_content_type...\"),\n\t\t\t\tEcho:        pulumi.Bool(true),\n\t\t\t\tMessage:     pulumi.String(\"...my_message...\"),\n\t\t\t\tStatusCode:  pulumi.Float64(536),\n\t\t\t\tTrigger:     pulumi.String(\"...my_trigger...\"),\n\t\t\t},\n\t\t\tConsumer: \u0026konnect.GatewayPluginRequestTerminationConsumerArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tConsumerGroup: \u0026konnect.GatewayPluginRequestTerminationConsumerGroupArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tControlPlaneId:                    pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tCreatedAt:                         pulumi.Float64(3),\n\t\t\tEnabled:                           pulumi.Bool(false),\n\t\t\tGatewayPluginRequestTerminationId: pulumi.String(\"...my_id...\"),\n\t\t\tInstanceName:                      pulumi.String(\"...my_instance_name...\"),\n\t\t\tOrdering: \u0026konnect.GatewayPluginRequestTerminationOrderingArgs{\n\t\t\t\tAfter: \u0026konnect.GatewayPluginRequestTerminationOrderingAfterArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tBefore: \u0026konnect.GatewayPluginRequestTerminationOrderingBeforeArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tPartials: konnect.GatewayPluginRequestTerminationPartialArray{\n\t\t\t\t\u0026konnect.GatewayPluginRequestTerminationPartialArgs{\n\t\t\t\t\tId:   pulumi.String(\"...my_id...\"),\n\t\t\t\t\tName: pulumi.String(\"...my_name...\"),\n\t\t\t\t\tPath: pulumi.String(\"...my_path...\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tProtocols: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"https\"),\n\t\t\t},\n\t\t\tRoute: \u0026konnect.GatewayPluginRequestTerminationRouteArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tService: \u0026konnect.GatewayPluginRequestTerminationServiceArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"...\"),\n\t\t\t},\n\t\t\tUpdatedAt: pulumi.Float64(3),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.GatewayPluginRequestTermination;\nimport com.pulumi.konnect.GatewayPluginRequestTerminationArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginRequestTerminationConfigArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginRequestTerminationConsumerArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginRequestTerminationConsumerGroupArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginRequestTerminationOrderingArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginRequestTerminationOrderingAfterArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginRequestTerminationOrderingBeforeArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginRequestTerminationPartialArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginRequestTerminationRouteArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginRequestTerminationServiceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myGatewaypluginrequesttermination = new GatewayPluginRequestTermination(\"myGatewaypluginrequesttermination\", GatewayPluginRequestTerminationArgs.builder()\n            .config(GatewayPluginRequestTerminationConfigArgs.builder()\n                .body(\"...my_body...\")\n                .contentType(\"...my_content_type...\")\n                .echo(true)\n                .message(\"...my_message...\")\n                .statusCode(536.0)\n                .trigger(\"...my_trigger...\")\n                .build())\n            .consumer(GatewayPluginRequestTerminationConsumerArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .consumerGroup(GatewayPluginRequestTerminationConsumerGroupArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .controlPlaneId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .createdAt(3.0)\n            .enabled(false)\n            .gatewayPluginRequestTerminationId(\"...my_id...\")\n            .instanceName(\"...my_instance_name...\")\n            .ordering(GatewayPluginRequestTerminationOrderingArgs.builder()\n                .after(GatewayPluginRequestTerminationOrderingAfterArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .before(GatewayPluginRequestTerminationOrderingBeforeArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .build())\n            .partials(GatewayPluginRequestTerminationPartialArgs.builder()\n                .id(\"...my_id...\")\n                .name(\"...my_name...\")\n                .path(\"...my_path...\")\n                .build())\n            .protocols(\"https\")\n            .route(GatewayPluginRequestTerminationRouteArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .service(GatewayPluginRequestTerminationServiceArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .tags(\"...\")\n            .updatedAt(3.0)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myGatewaypluginrequesttermination:\n    type: konnect:GatewayPluginRequestTermination\n    name: my_gatewaypluginrequesttermination\n    properties:\n      config:\n        body: '...my_body...'\n        contentType: '...my_content_type...'\n        echo: true\n        message: '...my_message...'\n        statusCode: 536\n        trigger: '...my_trigger...'\n      consumer:\n        id: '...my_id...'\n      consumerGroup:\n        id: '...my_id...'\n      controlPlaneId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      createdAt: 3\n      enabled: false\n      gatewayPluginRequestTerminationId: '...my_id...'\n      instanceName: '...my_instance_name...'\n      ordering:\n        after:\n          accesses:\n            - '...'\n        before:\n          accesses:\n            - '...'\n      partials:\n        - id: '...my_id...'\n          name: '...my_name...'\n          path: '...my_path...'\n      protocols:\n        - https\n      route:\n        id: '...my_id...'\n      service:\n        id: '...my_id...'\n      tags:\n        - '...'\n      updatedAt: 3\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_gateway_plugin_request_termination.my_konnect_gateway_plugin_request_termination\n\n  id = jsonencode({\n\n    control_plane_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/gatewayPluginRequestTermination:GatewayPluginRequestTermination my_konnect_gateway_plugin_request_termination '{\"control_plane_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"}'\n```\n\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestTerminationConfig:GatewayPluginRequestTerminationConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestTerminationConsumer:GatewayPluginRequestTerminationConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"consumerGroup":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestTerminationConsumerGroup:GatewayPluginRequestTerminationConsumerGroup","description":"If set, the plugin will activate only for requests where the specified consumer group has been authenticated. (Note that some plugins can not be restricted to consumers groups this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer Groups\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginRequestTerminationId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestTerminationOrdering:GatewayPluginRequestTerminationOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestTerminationPartial:GatewayPluginRequestTerminationPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestTerminationRoute:GatewayPluginRequestTerminationRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestTerminationService:GatewayPluginRequestTerminationService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object","required":["config","consumer","consumerGroup","controlPlaneId","createdAt","enabled","gatewayPluginRequestTerminationId","ordering","protocols","route","service","updatedAt"],"inputProperties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestTerminationConfig:GatewayPluginRequestTerminationConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestTerminationConsumer:GatewayPluginRequestTerminationConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"consumerGroup":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestTerminationConsumerGroup:GatewayPluginRequestTerminationConsumerGroup","description":"If set, the plugin will activate only for requests where the specified consumer group has been authenticated. (Note that some plugins can not be restricted to consumers groups this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer Groups\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginRequestTerminationId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestTerminationOrdering:GatewayPluginRequestTerminationOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestTerminationPartial:GatewayPluginRequestTerminationPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestTerminationRoute:GatewayPluginRequestTerminationRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestTerminationService:GatewayPluginRequestTerminationService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"requiredInputs":["controlPlaneId"],"stateInputs":{"description":"Input properties used for looking up and filtering GatewayPluginRequestTermination resources.\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestTerminationConfig:GatewayPluginRequestTerminationConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestTerminationConsumer:GatewayPluginRequestTerminationConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"consumerGroup":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestTerminationConsumerGroup:GatewayPluginRequestTerminationConsumerGroup","description":"If set, the plugin will activate only for requests where the specified consumer group has been authenticated. (Note that some plugins can not be restricted to consumers groups this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer Groups\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginRequestTerminationId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestTerminationOrdering:GatewayPluginRequestTerminationOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestTerminationPartial:GatewayPluginRequestTerminationPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestTerminationRoute:GatewayPluginRequestTerminationRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestTerminationService:GatewayPluginRequestTerminationService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object"}},"konnect:index/gatewayPluginRequestTransformer:GatewayPluginRequestTransformer":{"description":"GatewayPluginRequestTransformer Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myGatewaypluginrequesttransformer = new konnect.GatewayPluginRequestTransformer(\"my_gatewaypluginrequesttransformer\", {\n    config: {\n        add: {\n            bodies: [\"...\"],\n            headers: [\"...\"],\n            querystrings: [\"...\"],\n        },\n        append: {\n            bodies: [\"...\"],\n            headers: [\"...\"],\n            querystrings: [\"...\"],\n        },\n        httpMethod: \"...my_http_method...\",\n        remove: {\n            bodies: [\"...\"],\n            headers: [\"...\"],\n            querystrings: [\"...\"],\n        },\n        rename: {\n            bodies: [\"...\"],\n            headers: [\"...\"],\n            querystrings: [\"...\"],\n        },\n        replace: {\n            bodies: [\"...\"],\n            headers: [\"...\"],\n            querystrings: [\"...\"],\n            uri: \"...my_uri...\",\n        },\n    },\n    consumer: {\n        id: \"...my_id...\",\n    },\n    consumerGroup: {\n        id: \"...my_id...\",\n    },\n    controlPlaneId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    createdAt: 7,\n    enabled: true,\n    gatewayPluginRequestTransformerId: \"...my_id...\",\n    instanceName: \"...my_instance_name...\",\n    ordering: {\n        after: {\n            accesses: [\"...\"],\n        },\n        before: {\n            accesses: [\"...\"],\n        },\n    },\n    partials: [{\n        id: \"...my_id...\",\n        name: \"...my_name...\",\n        path: \"...my_path...\",\n    }],\n    protocols: [\"https\"],\n    route: {\n        id: \"...my_id...\",\n    },\n    service: {\n        id: \"...my_id...\",\n    },\n    tags: [\"...\"],\n    updatedAt: 6,\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_gatewaypluginrequesttransformer = konnect.GatewayPluginRequestTransformer(\"my_gatewaypluginrequesttransformer\",\n    config={\n        \"add\": {\n            \"bodies\": [\"...\"],\n            \"headers\": [\"...\"],\n            \"querystrings\": [\"...\"],\n        },\n        \"append\": {\n            \"bodies\": [\"...\"],\n            \"headers\": [\"...\"],\n            \"querystrings\": [\"...\"],\n        },\n        \"http_method\": \"...my_http_method...\",\n        \"remove\": {\n            \"bodies\": [\"...\"],\n            \"headers\": [\"...\"],\n            \"querystrings\": [\"...\"],\n        },\n        \"rename\": {\n            \"bodies\": [\"...\"],\n            \"headers\": [\"...\"],\n            \"querystrings\": [\"...\"],\n        },\n        \"replace\": {\n            \"bodies\": [\"...\"],\n            \"headers\": [\"...\"],\n            \"querystrings\": [\"...\"],\n            \"uri\": \"...my_uri...\",\n        },\n    },\n    consumer={\n        \"id\": \"...my_id...\",\n    },\n    consumer_group={\n        \"id\": \"...my_id...\",\n    },\n    control_plane_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    created_at=7,\n    enabled=True,\n    gateway_plugin_request_transformer_id=\"...my_id...\",\n    instance_name=\"...my_instance_name...\",\n    ordering={\n        \"after\": {\n            \"accesses\": [\"...\"],\n        },\n        \"before\": {\n            \"accesses\": [\"...\"],\n        },\n    },\n    partials=[{\n        \"id\": \"...my_id...\",\n        \"name\": \"...my_name...\",\n        \"path\": \"...my_path...\",\n    }],\n    protocols=[\"https\"],\n    route={\n        \"id\": \"...my_id...\",\n    },\n    service={\n        \"id\": \"...my_id...\",\n    },\n    tags=[\"...\"],\n    updated_at=6)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myGatewaypluginrequesttransformer = new Konnect.GatewayPluginRequestTransformer(\"my_gatewaypluginrequesttransformer\", new()\n    {\n        Config = new Konnect.Inputs.GatewayPluginRequestTransformerConfigArgs\n        {\n            Add = new Konnect.Inputs.GatewayPluginRequestTransformerConfigAddArgs\n            {\n                Bodies = new[]\n                {\n                    \"...\",\n                },\n                Headers = new[]\n                {\n                    \"...\",\n                },\n                Querystrings = new[]\n                {\n                    \"...\",\n                },\n            },\n            Append = new Konnect.Inputs.GatewayPluginRequestTransformerConfigAppendArgs\n            {\n                Bodies = new[]\n                {\n                    \"...\",\n                },\n                Headers = new[]\n                {\n                    \"...\",\n                },\n                Querystrings = new[]\n                {\n                    \"...\",\n                },\n            },\n            HttpMethod = \"...my_http_method...\",\n            Remove = new Konnect.Inputs.GatewayPluginRequestTransformerConfigRemoveArgs\n            {\n                Bodies = new[]\n                {\n                    \"...\",\n                },\n                Headers = new[]\n                {\n                    \"...\",\n                },\n                Querystrings = new[]\n                {\n                    \"...\",\n                },\n            },\n            Rename = new Konnect.Inputs.GatewayPluginRequestTransformerConfigRenameArgs\n            {\n                Bodies = new[]\n                {\n                    \"...\",\n                },\n                Headers = new[]\n                {\n                    \"...\",\n                },\n                Querystrings = new[]\n                {\n                    \"...\",\n                },\n            },\n            Replace = new Konnect.Inputs.GatewayPluginRequestTransformerConfigReplaceArgs\n            {\n                Bodies = new[]\n                {\n                    \"...\",\n                },\n                Headers = new[]\n                {\n                    \"...\",\n                },\n                Querystrings = new[]\n                {\n                    \"...\",\n                },\n                Uri = \"...my_uri...\",\n            },\n        },\n        Consumer = new Konnect.Inputs.GatewayPluginRequestTransformerConsumerArgs\n        {\n            Id = \"...my_id...\",\n        },\n        ConsumerGroup = new Konnect.Inputs.GatewayPluginRequestTransformerConsumerGroupArgs\n        {\n            Id = \"...my_id...\",\n        },\n        ControlPlaneId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        CreatedAt = 7,\n        Enabled = true,\n        GatewayPluginRequestTransformerId = \"...my_id...\",\n        InstanceName = \"...my_instance_name...\",\n        Ordering = new Konnect.Inputs.GatewayPluginRequestTransformerOrderingArgs\n        {\n            After = new Konnect.Inputs.GatewayPluginRequestTransformerOrderingAfterArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n            Before = new Konnect.Inputs.GatewayPluginRequestTransformerOrderingBeforeArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n        },\n        Partials = new[]\n        {\n            new Konnect.Inputs.GatewayPluginRequestTransformerPartialArgs\n            {\n                Id = \"...my_id...\",\n                Name = \"...my_name...\",\n                Path = \"...my_path...\",\n            },\n        },\n        Protocols = new[]\n        {\n            \"https\",\n        },\n        Route = new Konnect.Inputs.GatewayPluginRequestTransformerRouteArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Service = new Konnect.Inputs.GatewayPluginRequestTransformerServiceArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Tags = new[]\n        {\n            \"...\",\n        },\n        UpdatedAt = 6,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewGatewayPluginRequestTransformer(ctx, \"my_gatewaypluginrequesttransformer\", \u0026konnect.GatewayPluginRequestTransformerArgs{\n\t\t\tConfig: \u0026konnect.GatewayPluginRequestTransformerConfigArgs{\n\t\t\t\tAdd: \u0026konnect.GatewayPluginRequestTransformerConfigAddArgs{\n\t\t\t\t\tBodies: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t\tHeaders: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t\tQuerystrings: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tAppend: \u0026konnect.GatewayPluginRequestTransformerConfigAppendArgs{\n\t\t\t\t\tBodies: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t\tHeaders: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t\tQuerystrings: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tHttpMethod: pulumi.String(\"...my_http_method...\"),\n\t\t\t\tRemove: \u0026konnect.GatewayPluginRequestTransformerConfigRemoveArgs{\n\t\t\t\t\tBodies: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t\tHeaders: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t\tQuerystrings: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tRename: \u0026konnect.GatewayPluginRequestTransformerConfigRenameArgs{\n\t\t\t\t\tBodies: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t\tHeaders: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t\tQuerystrings: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tReplace: \u0026konnect.GatewayPluginRequestTransformerConfigReplaceArgs{\n\t\t\t\t\tBodies: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t\tHeaders: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t\tQuerystrings: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t\tUri: pulumi.String(\"...my_uri...\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tConsumer: \u0026konnect.GatewayPluginRequestTransformerConsumerArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tConsumerGroup: \u0026konnect.GatewayPluginRequestTransformerConsumerGroupArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tControlPlaneId:                    pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tCreatedAt:                         pulumi.Float64(7),\n\t\t\tEnabled:                           pulumi.Bool(true),\n\t\t\tGatewayPluginRequestTransformerId: pulumi.String(\"...my_id...\"),\n\t\t\tInstanceName:                      pulumi.String(\"...my_instance_name...\"),\n\t\t\tOrdering: \u0026konnect.GatewayPluginRequestTransformerOrderingArgs{\n\t\t\t\tAfter: \u0026konnect.GatewayPluginRequestTransformerOrderingAfterArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tBefore: \u0026konnect.GatewayPluginRequestTransformerOrderingBeforeArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tPartials: konnect.GatewayPluginRequestTransformerPartialArray{\n\t\t\t\t\u0026konnect.GatewayPluginRequestTransformerPartialArgs{\n\t\t\t\t\tId:   pulumi.String(\"...my_id...\"),\n\t\t\t\t\tName: pulumi.String(\"...my_name...\"),\n\t\t\t\t\tPath: pulumi.String(\"...my_path...\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tProtocols: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"https\"),\n\t\t\t},\n\t\t\tRoute: \u0026konnect.GatewayPluginRequestTransformerRouteArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tService: \u0026konnect.GatewayPluginRequestTransformerServiceArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"...\"),\n\t\t\t},\n\t\t\tUpdatedAt: pulumi.Float64(6),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.GatewayPluginRequestTransformer;\nimport com.pulumi.konnect.GatewayPluginRequestTransformerArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginRequestTransformerConfigArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginRequestTransformerConfigAddArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginRequestTransformerConfigAppendArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginRequestTransformerConfigRemoveArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginRequestTransformerConfigRenameArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginRequestTransformerConfigReplaceArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginRequestTransformerConsumerArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginRequestTransformerConsumerGroupArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginRequestTransformerOrderingArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginRequestTransformerOrderingAfterArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginRequestTransformerOrderingBeforeArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginRequestTransformerPartialArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginRequestTransformerRouteArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginRequestTransformerServiceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myGatewaypluginrequesttransformer = new GatewayPluginRequestTransformer(\"myGatewaypluginrequesttransformer\", GatewayPluginRequestTransformerArgs.builder()\n            .config(GatewayPluginRequestTransformerConfigArgs.builder()\n                .add(GatewayPluginRequestTransformerConfigAddArgs.builder()\n                    .bodies(\"...\")\n                    .headers(\"...\")\n                    .querystrings(\"...\")\n                    .build())\n                .append(GatewayPluginRequestTransformerConfigAppendArgs.builder()\n                    .bodies(\"...\")\n                    .headers(\"...\")\n                    .querystrings(\"...\")\n                    .build())\n                .httpMethod(\"...my_http_method...\")\n                .remove(GatewayPluginRequestTransformerConfigRemoveArgs.builder()\n                    .bodies(\"...\")\n                    .headers(\"...\")\n                    .querystrings(\"...\")\n                    .build())\n                .rename(GatewayPluginRequestTransformerConfigRenameArgs.builder()\n                    .bodies(\"...\")\n                    .headers(\"...\")\n                    .querystrings(\"...\")\n                    .build())\n                .replace(GatewayPluginRequestTransformerConfigReplaceArgs.builder()\n                    .bodies(\"...\")\n                    .headers(\"...\")\n                    .querystrings(\"...\")\n                    .uri(\"...my_uri...\")\n                    .build())\n                .build())\n            .consumer(GatewayPluginRequestTransformerConsumerArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .consumerGroup(GatewayPluginRequestTransformerConsumerGroupArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .controlPlaneId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .createdAt(7.0)\n            .enabled(true)\n            .gatewayPluginRequestTransformerId(\"...my_id...\")\n            .instanceName(\"...my_instance_name...\")\n            .ordering(GatewayPluginRequestTransformerOrderingArgs.builder()\n                .after(GatewayPluginRequestTransformerOrderingAfterArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .before(GatewayPluginRequestTransformerOrderingBeforeArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .build())\n            .partials(GatewayPluginRequestTransformerPartialArgs.builder()\n                .id(\"...my_id...\")\n                .name(\"...my_name...\")\n                .path(\"...my_path...\")\n                .build())\n            .protocols(\"https\")\n            .route(GatewayPluginRequestTransformerRouteArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .service(GatewayPluginRequestTransformerServiceArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .tags(\"...\")\n            .updatedAt(6.0)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myGatewaypluginrequesttransformer:\n    type: konnect:GatewayPluginRequestTransformer\n    name: my_gatewaypluginrequesttransformer\n    properties:\n      config:\n        add:\n          bodies:\n            - '...'\n          headers:\n            - '...'\n          querystrings:\n            - '...'\n        append:\n          bodies:\n            - '...'\n          headers:\n            - '...'\n          querystrings:\n            - '...'\n        httpMethod: '...my_http_method...'\n        remove:\n          bodies:\n            - '...'\n          headers:\n            - '...'\n          querystrings:\n            - '...'\n        rename:\n          bodies:\n            - '...'\n          headers:\n            - '...'\n          querystrings:\n            - '...'\n        replace:\n          bodies:\n            - '...'\n          headers:\n            - '...'\n          querystrings:\n            - '...'\n          uri: '...my_uri...'\n      consumer:\n        id: '...my_id...'\n      consumerGroup:\n        id: '...my_id...'\n      controlPlaneId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      createdAt: 7\n      enabled: true\n      gatewayPluginRequestTransformerId: '...my_id...'\n      instanceName: '...my_instance_name...'\n      ordering:\n        after:\n          accesses:\n            - '...'\n        before:\n          accesses:\n            - '...'\n      partials:\n        - id: '...my_id...'\n          name: '...my_name...'\n          path: '...my_path...'\n      protocols:\n        - https\n      route:\n        id: '...my_id...'\n      service:\n        id: '...my_id...'\n      tags:\n        - '...'\n      updatedAt: 6\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_gateway_plugin_request_transformer.my_konnect_gateway_plugin_request_transformer\n\n  id = jsonencode({\n\n    control_plane_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/gatewayPluginRequestTransformer:GatewayPluginRequestTransformer my_konnect_gateway_plugin_request_transformer '{\"control_plane_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"}'\n```\n\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestTransformerConfig:GatewayPluginRequestTransformerConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestTransformerConsumer:GatewayPluginRequestTransformerConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"consumerGroup":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestTransformerConsumerGroup:GatewayPluginRequestTransformerConsumerGroup","description":"If set, the plugin will activate only for requests where the specified consumer group has been authenticated. (Note that some plugins can not be restricted to consumers groups this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer Groups\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginRequestTransformerId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestTransformerOrdering:GatewayPluginRequestTransformerOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestTransformerPartial:GatewayPluginRequestTransformerPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestTransformerRoute:GatewayPluginRequestTransformerRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestTransformerService:GatewayPluginRequestTransformerService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object","required":["config","consumer","consumerGroup","controlPlaneId","createdAt","enabled","gatewayPluginRequestTransformerId","ordering","protocols","route","service","updatedAt"],"inputProperties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestTransformerConfig:GatewayPluginRequestTransformerConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestTransformerConsumer:GatewayPluginRequestTransformerConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"consumerGroup":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestTransformerConsumerGroup:GatewayPluginRequestTransformerConsumerGroup","description":"If set, the plugin will activate only for requests where the specified consumer group has been authenticated. (Note that some plugins can not be restricted to consumers groups this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer Groups\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginRequestTransformerId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestTransformerOrdering:GatewayPluginRequestTransformerOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestTransformerPartial:GatewayPluginRequestTransformerPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestTransformerRoute:GatewayPluginRequestTransformerRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestTransformerService:GatewayPluginRequestTransformerService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"requiredInputs":["controlPlaneId"],"stateInputs":{"description":"Input properties used for looking up and filtering GatewayPluginRequestTransformer resources.\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestTransformerConfig:GatewayPluginRequestTransformerConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestTransformerConsumer:GatewayPluginRequestTransformerConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"consumerGroup":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestTransformerConsumerGroup:GatewayPluginRequestTransformerConsumerGroup","description":"If set, the plugin will activate only for requests where the specified consumer group has been authenticated. (Note that some plugins can not be restricted to consumers groups this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer Groups\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginRequestTransformerId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestTransformerOrdering:GatewayPluginRequestTransformerOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestTransformerPartial:GatewayPluginRequestTransformerPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestTransformerRoute:GatewayPluginRequestTransformerRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestTransformerService:GatewayPluginRequestTransformerService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object"}},"konnect:index/gatewayPluginRequestTransformerAdvanced:GatewayPluginRequestTransformerAdvanced":{"description":"GatewayPluginRequestTransformerAdvanced Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myGatewaypluginrequesttransformeradvanced = new konnect.GatewayPluginRequestTransformerAdvanced(\"my_gatewaypluginrequesttransformeradvanced\", {\n    config: {\n        add: {\n            bodies: [\"...\"],\n            headers: [\"...\"],\n            jsonTypes: [\"number\"],\n            querystrings: [\"...\"],\n        },\n        allow: {\n            bodies: [\"...\"],\n        },\n        append: {\n            bodies: [\"...\"],\n            headers: [\"...\"],\n            jsonTypes: [\"string\"],\n            querystrings: [\"...\"],\n        },\n        dotsInKeys: true,\n        httpMethod: \"...my_http_method...\",\n        remove: {\n            bodies: [\"...\"],\n            headers: [\"...\"],\n            querystrings: [\"...\"],\n        },\n        rename: {\n            bodies: [\"...\"],\n            headers: [\"...\"],\n            querystrings: [\"...\"],\n        },\n        replace: {\n            bodies: [\"...\"],\n            headers: [\"...\"],\n            jsonTypes: [\"string\"],\n            querystrings: [\"...\"],\n            uri: \"...my_uri...\",\n        },\n    },\n    consumer: {\n        id: \"...my_id...\",\n    },\n    consumerGroup: {\n        id: \"...my_id...\",\n    },\n    controlPlaneId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    createdAt: 4,\n    enabled: true,\n    gatewayPluginRequestTransformerAdvancedId: \"...my_id...\",\n    instanceName: \"...my_instance_name...\",\n    ordering: {\n        after: {\n            accesses: [\"...\"],\n        },\n        before: {\n            accesses: [\"...\"],\n        },\n    },\n    partials: [{\n        id: \"...my_id...\",\n        name: \"...my_name...\",\n        path: \"...my_path...\",\n    }],\n    protocols: [\"grpcs\"],\n    route: {\n        id: \"...my_id...\",\n    },\n    service: {\n        id: \"...my_id...\",\n    },\n    tags: [\"...\"],\n    updatedAt: 8,\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_gatewaypluginrequesttransformeradvanced = konnect.GatewayPluginRequestTransformerAdvanced(\"my_gatewaypluginrequesttransformeradvanced\",\n    config={\n        \"add\": {\n            \"bodies\": [\"...\"],\n            \"headers\": [\"...\"],\n            \"json_types\": [\"number\"],\n            \"querystrings\": [\"...\"],\n        },\n        \"allow\": {\n            \"bodies\": [\"...\"],\n        },\n        \"append\": {\n            \"bodies\": [\"...\"],\n            \"headers\": [\"...\"],\n            \"json_types\": [\"string\"],\n            \"querystrings\": [\"...\"],\n        },\n        \"dots_in_keys\": True,\n        \"http_method\": \"...my_http_method...\",\n        \"remove\": {\n            \"bodies\": [\"...\"],\n            \"headers\": [\"...\"],\n            \"querystrings\": [\"...\"],\n        },\n        \"rename\": {\n            \"bodies\": [\"...\"],\n            \"headers\": [\"...\"],\n            \"querystrings\": [\"...\"],\n        },\n        \"replace\": {\n            \"bodies\": [\"...\"],\n            \"headers\": [\"...\"],\n            \"json_types\": [\"string\"],\n            \"querystrings\": [\"...\"],\n            \"uri\": \"...my_uri...\",\n        },\n    },\n    consumer={\n        \"id\": \"...my_id...\",\n    },\n    consumer_group={\n        \"id\": \"...my_id...\",\n    },\n    control_plane_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    created_at=4,\n    enabled=True,\n    gateway_plugin_request_transformer_advanced_id=\"...my_id...\",\n    instance_name=\"...my_instance_name...\",\n    ordering={\n        \"after\": {\n            \"accesses\": [\"...\"],\n        },\n        \"before\": {\n            \"accesses\": [\"...\"],\n        },\n    },\n    partials=[{\n        \"id\": \"...my_id...\",\n        \"name\": \"...my_name...\",\n        \"path\": \"...my_path...\",\n    }],\n    protocols=[\"grpcs\"],\n    route={\n        \"id\": \"...my_id...\",\n    },\n    service={\n        \"id\": \"...my_id...\",\n    },\n    tags=[\"...\"],\n    updated_at=8)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myGatewaypluginrequesttransformeradvanced = new Konnect.GatewayPluginRequestTransformerAdvanced(\"my_gatewaypluginrequesttransformeradvanced\", new()\n    {\n        Config = new Konnect.Inputs.GatewayPluginRequestTransformerAdvancedConfigArgs\n        {\n            Add = new Konnect.Inputs.GatewayPluginRequestTransformerAdvancedConfigAddArgs\n            {\n                Bodies = new[]\n                {\n                    \"...\",\n                },\n                Headers = new[]\n                {\n                    \"...\",\n                },\n                JsonTypes = new[]\n                {\n                    \"number\",\n                },\n                Querystrings = new[]\n                {\n                    \"...\",\n                },\n            },\n            Allow = new Konnect.Inputs.GatewayPluginRequestTransformerAdvancedConfigAllowArgs\n            {\n                Bodies = new[]\n                {\n                    \"...\",\n                },\n            },\n            Append = new Konnect.Inputs.GatewayPluginRequestTransformerAdvancedConfigAppendArgs\n            {\n                Bodies = new[]\n                {\n                    \"...\",\n                },\n                Headers = new[]\n                {\n                    \"...\",\n                },\n                JsonTypes = new[]\n                {\n                    \"string\",\n                },\n                Querystrings = new[]\n                {\n                    \"...\",\n                },\n            },\n            DotsInKeys = true,\n            HttpMethod = \"...my_http_method...\",\n            Remove = new Konnect.Inputs.GatewayPluginRequestTransformerAdvancedConfigRemoveArgs\n            {\n                Bodies = new[]\n                {\n                    \"...\",\n                },\n                Headers = new[]\n                {\n                    \"...\",\n                },\n                Querystrings = new[]\n                {\n                    \"...\",\n                },\n            },\n            Rename = new Konnect.Inputs.GatewayPluginRequestTransformerAdvancedConfigRenameArgs\n            {\n                Bodies = new[]\n                {\n                    \"...\",\n                },\n                Headers = new[]\n                {\n                    \"...\",\n                },\n                Querystrings = new[]\n                {\n                    \"...\",\n                },\n            },\n            Replace = new Konnect.Inputs.GatewayPluginRequestTransformerAdvancedConfigReplaceArgs\n            {\n                Bodies = new[]\n                {\n                    \"...\",\n                },\n                Headers = new[]\n                {\n                    \"...\",\n                },\n                JsonTypes = new[]\n                {\n                    \"string\",\n                },\n                Querystrings = new[]\n                {\n                    \"...\",\n                },\n                Uri = \"...my_uri...\",\n            },\n        },\n        Consumer = new Konnect.Inputs.GatewayPluginRequestTransformerAdvancedConsumerArgs\n        {\n            Id = \"...my_id...\",\n        },\n        ConsumerGroup = new Konnect.Inputs.GatewayPluginRequestTransformerAdvancedConsumerGroupArgs\n        {\n            Id = \"...my_id...\",\n        },\n        ControlPlaneId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        CreatedAt = 4,\n        Enabled = true,\n        GatewayPluginRequestTransformerAdvancedId = \"...my_id...\",\n        InstanceName = \"...my_instance_name...\",\n        Ordering = new Konnect.Inputs.GatewayPluginRequestTransformerAdvancedOrderingArgs\n        {\n            After = new Konnect.Inputs.GatewayPluginRequestTransformerAdvancedOrderingAfterArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n            Before = new Konnect.Inputs.GatewayPluginRequestTransformerAdvancedOrderingBeforeArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n        },\n        Partials = new[]\n        {\n            new Konnect.Inputs.GatewayPluginRequestTransformerAdvancedPartialArgs\n            {\n                Id = \"...my_id...\",\n                Name = \"...my_name...\",\n                Path = \"...my_path...\",\n            },\n        },\n        Protocols = new[]\n        {\n            \"grpcs\",\n        },\n        Route = new Konnect.Inputs.GatewayPluginRequestTransformerAdvancedRouteArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Service = new Konnect.Inputs.GatewayPluginRequestTransformerAdvancedServiceArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Tags = new[]\n        {\n            \"...\",\n        },\n        UpdatedAt = 8,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewGatewayPluginRequestTransformerAdvanced(ctx, \"my_gatewaypluginrequesttransformeradvanced\", \u0026konnect.GatewayPluginRequestTransformerAdvancedArgs{\n\t\t\tConfig: \u0026konnect.GatewayPluginRequestTransformerAdvancedConfigArgs{\n\t\t\t\tAdd: \u0026konnect.GatewayPluginRequestTransformerAdvancedConfigAddArgs{\n\t\t\t\t\tBodies: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t\tHeaders: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t\tJsonTypes: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"number\"),\n\t\t\t\t\t},\n\t\t\t\t\tQuerystrings: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tAllow: \u0026konnect.GatewayPluginRequestTransformerAdvancedConfigAllowArgs{\n\t\t\t\t\tBodies: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tAppend: \u0026konnect.GatewayPluginRequestTransformerAdvancedConfigAppendArgs{\n\t\t\t\t\tBodies: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t\tHeaders: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t\tJsonTypes: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"string\"),\n\t\t\t\t\t},\n\t\t\t\t\tQuerystrings: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tDotsInKeys: pulumi.Bool(true),\n\t\t\t\tHttpMethod: pulumi.String(\"...my_http_method...\"),\n\t\t\t\tRemove: \u0026konnect.GatewayPluginRequestTransformerAdvancedConfigRemoveArgs{\n\t\t\t\t\tBodies: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t\tHeaders: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t\tQuerystrings: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tRename: \u0026konnect.GatewayPluginRequestTransformerAdvancedConfigRenameArgs{\n\t\t\t\t\tBodies: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t\tHeaders: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t\tQuerystrings: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tReplace: \u0026konnect.GatewayPluginRequestTransformerAdvancedConfigReplaceArgs{\n\t\t\t\t\tBodies: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t\tHeaders: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t\tJsonTypes: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"string\"),\n\t\t\t\t\t},\n\t\t\t\t\tQuerystrings: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t\tUri: pulumi.String(\"...my_uri...\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tConsumer: \u0026konnect.GatewayPluginRequestTransformerAdvancedConsumerArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tConsumerGroup: \u0026konnect.GatewayPluginRequestTransformerAdvancedConsumerGroupArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tControlPlaneId: pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tCreatedAt:      pulumi.Float64(4),\n\t\t\tEnabled:        pulumi.Bool(true),\n\t\t\tGatewayPluginRequestTransformerAdvancedId: pulumi.String(\"...my_id...\"),\n\t\t\tInstanceName: pulumi.String(\"...my_instance_name...\"),\n\t\t\tOrdering: \u0026konnect.GatewayPluginRequestTransformerAdvancedOrderingArgs{\n\t\t\t\tAfter: \u0026konnect.GatewayPluginRequestTransformerAdvancedOrderingAfterArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tBefore: \u0026konnect.GatewayPluginRequestTransformerAdvancedOrderingBeforeArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tPartials: konnect.GatewayPluginRequestTransformerAdvancedPartialArray{\n\t\t\t\t\u0026konnect.GatewayPluginRequestTransformerAdvancedPartialArgs{\n\t\t\t\t\tId:   pulumi.String(\"...my_id...\"),\n\t\t\t\t\tName: pulumi.String(\"...my_name...\"),\n\t\t\t\t\tPath: pulumi.String(\"...my_path...\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tProtocols: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"grpcs\"),\n\t\t\t},\n\t\t\tRoute: \u0026konnect.GatewayPluginRequestTransformerAdvancedRouteArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tService: \u0026konnect.GatewayPluginRequestTransformerAdvancedServiceArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"...\"),\n\t\t\t},\n\t\t\tUpdatedAt: pulumi.Float64(8),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.GatewayPluginRequestTransformerAdvanced;\nimport com.pulumi.konnect.GatewayPluginRequestTransformerAdvancedArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginRequestTransformerAdvancedConfigArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginRequestTransformerAdvancedConfigAddArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginRequestTransformerAdvancedConfigAllowArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginRequestTransformerAdvancedConfigAppendArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginRequestTransformerAdvancedConfigRemoveArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginRequestTransformerAdvancedConfigRenameArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginRequestTransformerAdvancedConfigReplaceArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginRequestTransformerAdvancedConsumerArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginRequestTransformerAdvancedConsumerGroupArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginRequestTransformerAdvancedOrderingArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginRequestTransformerAdvancedOrderingAfterArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginRequestTransformerAdvancedOrderingBeforeArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginRequestTransformerAdvancedPartialArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginRequestTransformerAdvancedRouteArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginRequestTransformerAdvancedServiceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myGatewaypluginrequesttransformeradvanced = new GatewayPluginRequestTransformerAdvanced(\"myGatewaypluginrequesttransformeradvanced\", GatewayPluginRequestTransformerAdvancedArgs.builder()\n            .config(GatewayPluginRequestTransformerAdvancedConfigArgs.builder()\n                .add(GatewayPluginRequestTransformerAdvancedConfigAddArgs.builder()\n                    .bodies(\"...\")\n                    .headers(\"...\")\n                    .jsonTypes(\"number\")\n                    .querystrings(\"...\")\n                    .build())\n                .allow(GatewayPluginRequestTransformerAdvancedConfigAllowArgs.builder()\n                    .bodies(\"...\")\n                    .build())\n                .append(GatewayPluginRequestTransformerAdvancedConfigAppendArgs.builder()\n                    .bodies(\"...\")\n                    .headers(\"...\")\n                    .jsonTypes(\"string\")\n                    .querystrings(\"...\")\n                    .build())\n                .dotsInKeys(true)\n                .httpMethod(\"...my_http_method...\")\n                .remove(GatewayPluginRequestTransformerAdvancedConfigRemoveArgs.builder()\n                    .bodies(\"...\")\n                    .headers(\"...\")\n                    .querystrings(\"...\")\n                    .build())\n                .rename(GatewayPluginRequestTransformerAdvancedConfigRenameArgs.builder()\n                    .bodies(\"...\")\n                    .headers(\"...\")\n                    .querystrings(\"...\")\n                    .build())\n                .replace(GatewayPluginRequestTransformerAdvancedConfigReplaceArgs.builder()\n                    .bodies(\"...\")\n                    .headers(\"...\")\n                    .jsonTypes(\"string\")\n                    .querystrings(\"...\")\n                    .uri(\"...my_uri...\")\n                    .build())\n                .build())\n            .consumer(GatewayPluginRequestTransformerAdvancedConsumerArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .consumerGroup(GatewayPluginRequestTransformerAdvancedConsumerGroupArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .controlPlaneId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .createdAt(4.0)\n            .enabled(true)\n            .gatewayPluginRequestTransformerAdvancedId(\"...my_id...\")\n            .instanceName(\"...my_instance_name...\")\n            .ordering(GatewayPluginRequestTransformerAdvancedOrderingArgs.builder()\n                .after(GatewayPluginRequestTransformerAdvancedOrderingAfterArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .before(GatewayPluginRequestTransformerAdvancedOrderingBeforeArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .build())\n            .partials(GatewayPluginRequestTransformerAdvancedPartialArgs.builder()\n                .id(\"...my_id...\")\n                .name(\"...my_name...\")\n                .path(\"...my_path...\")\n                .build())\n            .protocols(\"grpcs\")\n            .route(GatewayPluginRequestTransformerAdvancedRouteArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .service(GatewayPluginRequestTransformerAdvancedServiceArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .tags(\"...\")\n            .updatedAt(8.0)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myGatewaypluginrequesttransformeradvanced:\n    type: konnect:GatewayPluginRequestTransformerAdvanced\n    name: my_gatewaypluginrequesttransformeradvanced\n    properties:\n      config:\n        add:\n          bodies:\n            - '...'\n          headers:\n            - '...'\n          jsonTypes:\n            - number\n          querystrings:\n            - '...'\n        allow:\n          bodies:\n            - '...'\n        append:\n          bodies:\n            - '...'\n          headers:\n            - '...'\n          jsonTypes:\n            - string\n          querystrings:\n            - '...'\n        dotsInKeys: true\n        httpMethod: '...my_http_method...'\n        remove:\n          bodies:\n            - '...'\n          headers:\n            - '...'\n          querystrings:\n            - '...'\n        rename:\n          bodies:\n            - '...'\n          headers:\n            - '...'\n          querystrings:\n            - '...'\n        replace:\n          bodies:\n            - '...'\n          headers:\n            - '...'\n          jsonTypes:\n            - string\n          querystrings:\n            - '...'\n          uri: '...my_uri...'\n      consumer:\n        id: '...my_id...'\n      consumerGroup:\n        id: '...my_id...'\n      controlPlaneId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      createdAt: 4\n      enabled: true\n      gatewayPluginRequestTransformerAdvancedId: '...my_id...'\n      instanceName: '...my_instance_name...'\n      ordering:\n        after:\n          accesses:\n            - '...'\n        before:\n          accesses:\n            - '...'\n      partials:\n        - id: '...my_id...'\n          name: '...my_name...'\n          path: '...my_path...'\n      protocols:\n        - grpcs\n      route:\n        id: '...my_id...'\n      service:\n        id: '...my_id...'\n      tags:\n        - '...'\n      updatedAt: 8\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_gateway_plugin_request_transformer_advanced.my_konnect_gateway_plugin_request_transformer_advanced\n\n  id = jsonencode({\n\n    control_plane_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/gatewayPluginRequestTransformerAdvanced:GatewayPluginRequestTransformerAdvanced my_konnect_gateway_plugin_request_transformer_advanced '{\"control_plane_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"}'\n```\n\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestTransformerAdvancedConfig:GatewayPluginRequestTransformerAdvancedConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestTransformerAdvancedConsumer:GatewayPluginRequestTransformerAdvancedConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"consumerGroup":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestTransformerAdvancedConsumerGroup:GatewayPluginRequestTransformerAdvancedConsumerGroup","description":"If set, the plugin will activate only for requests where the specified consumer group has been authenticated. (Note that some plugins can not be restricted to consumers groups this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer Groups\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginRequestTransformerAdvancedId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestTransformerAdvancedOrdering:GatewayPluginRequestTransformerAdvancedOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestTransformerAdvancedPartial:GatewayPluginRequestTransformerAdvancedPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestTransformerAdvancedRoute:GatewayPluginRequestTransformerAdvancedRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestTransformerAdvancedService:GatewayPluginRequestTransformerAdvancedService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object","required":["config","consumer","consumerGroup","controlPlaneId","createdAt","enabled","gatewayPluginRequestTransformerAdvancedId","ordering","protocols","route","service","updatedAt"],"inputProperties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestTransformerAdvancedConfig:GatewayPluginRequestTransformerAdvancedConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestTransformerAdvancedConsumer:GatewayPluginRequestTransformerAdvancedConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"consumerGroup":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestTransformerAdvancedConsumerGroup:GatewayPluginRequestTransformerAdvancedConsumerGroup","description":"If set, the plugin will activate only for requests where the specified consumer group has been authenticated. (Note that some plugins can not be restricted to consumers groups this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer Groups\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginRequestTransformerAdvancedId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestTransformerAdvancedOrdering:GatewayPluginRequestTransformerAdvancedOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestTransformerAdvancedPartial:GatewayPluginRequestTransformerAdvancedPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestTransformerAdvancedRoute:GatewayPluginRequestTransformerAdvancedRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestTransformerAdvancedService:GatewayPluginRequestTransformerAdvancedService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"requiredInputs":["controlPlaneId"],"stateInputs":{"description":"Input properties used for looking up and filtering GatewayPluginRequestTransformerAdvanced resources.\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestTransformerAdvancedConfig:GatewayPluginRequestTransformerAdvancedConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestTransformerAdvancedConsumer:GatewayPluginRequestTransformerAdvancedConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"consumerGroup":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestTransformerAdvancedConsumerGroup:GatewayPluginRequestTransformerAdvancedConsumerGroup","description":"If set, the plugin will activate only for requests where the specified consumer group has been authenticated. (Note that some plugins can not be restricted to consumers groups this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer Groups\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginRequestTransformerAdvancedId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestTransformerAdvancedOrdering:GatewayPluginRequestTransformerAdvancedOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestTransformerAdvancedPartial:GatewayPluginRequestTransformerAdvancedPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestTransformerAdvancedRoute:GatewayPluginRequestTransformerAdvancedRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestTransformerAdvancedService:GatewayPluginRequestTransformerAdvancedService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object"}},"konnect:index/gatewayPluginRequestValidator:GatewayPluginRequestValidator":{"description":"GatewayPluginRequestValidator Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myGatewaypluginrequestvalidator = new konnect.GatewayPluginRequestValidator(\"my_gatewaypluginrequestvalidator\", {\n    config: {\n        allowedContentTypes: [\"...\"],\n        bodySchema: \"...my_body_schema...\",\n        contentTypeParameterValidation: false,\n        parameterSchemas: [{\n            explode: true,\n            \"in\": \"query\",\n            name: \"...my_name...\",\n            required: false,\n            schema: \"...my_schema...\",\n            style: \"matrix\",\n        }],\n        verboseResponse: true,\n        version: \"draft6\",\n    },\n    consumer: {\n        id: \"...my_id...\",\n    },\n    controlPlaneId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    createdAt: 5,\n    enabled: false,\n    gatewayPluginRequestValidatorId: \"...my_id...\",\n    instanceName: \"...my_instance_name...\",\n    ordering: {\n        after: {\n            accesses: [\"...\"],\n        },\n        before: {\n            accesses: [\"...\"],\n        },\n    },\n    partials: [{\n        id: \"...my_id...\",\n        name: \"...my_name...\",\n        path: \"...my_path...\",\n    }],\n    protocols: [\"grpcs\"],\n    route: {\n        id: \"...my_id...\",\n    },\n    service: {\n        id: \"...my_id...\",\n    },\n    tags: [\"...\"],\n    updatedAt: 7,\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_gatewaypluginrequestvalidator = konnect.GatewayPluginRequestValidator(\"my_gatewaypluginrequestvalidator\",\n    config={\n        \"allowed_content_types\": [\"...\"],\n        \"body_schema\": \"...my_body_schema...\",\n        \"content_type_parameter_validation\": False,\n        \"parameter_schemas\": [{\n            \"explode\": True,\n            \"in_\": \"query\",\n            \"name\": \"...my_name...\",\n            \"required\": False,\n            \"schema\": \"...my_schema...\",\n            \"style\": \"matrix\",\n        }],\n        \"verbose_response\": True,\n        \"version\": \"draft6\",\n    },\n    consumer={\n        \"id\": \"...my_id...\",\n    },\n    control_plane_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    created_at=5,\n    enabled=False,\n    gateway_plugin_request_validator_id=\"...my_id...\",\n    instance_name=\"...my_instance_name...\",\n    ordering={\n        \"after\": {\n            \"accesses\": [\"...\"],\n        },\n        \"before\": {\n            \"accesses\": [\"...\"],\n        },\n    },\n    partials=[{\n        \"id\": \"...my_id...\",\n        \"name\": \"...my_name...\",\n        \"path\": \"...my_path...\",\n    }],\n    protocols=[\"grpcs\"],\n    route={\n        \"id\": \"...my_id...\",\n    },\n    service={\n        \"id\": \"...my_id...\",\n    },\n    tags=[\"...\"],\n    updated_at=7)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myGatewaypluginrequestvalidator = new Konnect.GatewayPluginRequestValidator(\"my_gatewaypluginrequestvalidator\", new()\n    {\n        Config = new Konnect.Inputs.GatewayPluginRequestValidatorConfigArgs\n        {\n            AllowedContentTypes = new[]\n            {\n                \"...\",\n            },\n            BodySchema = \"...my_body_schema...\",\n            ContentTypeParameterValidation = false,\n            ParameterSchemas = new[]\n            {\n                new Konnect.Inputs.GatewayPluginRequestValidatorConfigParameterSchemaArgs\n                {\n                    Explode = true,\n                    In = \"query\",\n                    Name = \"...my_name...\",\n                    Required = false,\n                    Schema = \"...my_schema...\",\n                    Style = \"matrix\",\n                },\n            },\n            VerboseResponse = true,\n            Version = \"draft6\",\n        },\n        Consumer = new Konnect.Inputs.GatewayPluginRequestValidatorConsumerArgs\n        {\n            Id = \"...my_id...\",\n        },\n        ControlPlaneId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        CreatedAt = 5,\n        Enabled = false,\n        GatewayPluginRequestValidatorId = \"...my_id...\",\n        InstanceName = \"...my_instance_name...\",\n        Ordering = new Konnect.Inputs.GatewayPluginRequestValidatorOrderingArgs\n        {\n            After = new Konnect.Inputs.GatewayPluginRequestValidatorOrderingAfterArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n            Before = new Konnect.Inputs.GatewayPluginRequestValidatorOrderingBeforeArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n        },\n        Partials = new[]\n        {\n            new Konnect.Inputs.GatewayPluginRequestValidatorPartialArgs\n            {\n                Id = \"...my_id...\",\n                Name = \"...my_name...\",\n                Path = \"...my_path...\",\n            },\n        },\n        Protocols = new[]\n        {\n            \"grpcs\",\n        },\n        Route = new Konnect.Inputs.GatewayPluginRequestValidatorRouteArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Service = new Konnect.Inputs.GatewayPluginRequestValidatorServiceArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Tags = new[]\n        {\n            \"...\",\n        },\n        UpdatedAt = 7,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewGatewayPluginRequestValidator(ctx, \"my_gatewaypluginrequestvalidator\", \u0026konnect.GatewayPluginRequestValidatorArgs{\n\t\t\tConfig: \u0026konnect.GatewayPluginRequestValidatorConfigArgs{\n\t\t\t\tAllowedContentTypes: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tBodySchema:                     pulumi.String(\"...my_body_schema...\"),\n\t\t\t\tContentTypeParameterValidation: pulumi.Bool(false),\n\t\t\t\tParameterSchemas: konnect.GatewayPluginRequestValidatorConfigParameterSchemaArray{\n\t\t\t\t\t\u0026konnect.GatewayPluginRequestValidatorConfigParameterSchemaArgs{\n\t\t\t\t\t\tExplode:  pulumi.Bool(true),\n\t\t\t\t\t\tIn:       pulumi.String(\"query\"),\n\t\t\t\t\t\tName:     pulumi.String(\"...my_name...\"),\n\t\t\t\t\t\tRequired: pulumi.Bool(false),\n\t\t\t\t\t\tSchema:   pulumi.String(\"...my_schema...\"),\n\t\t\t\t\t\tStyle:    pulumi.String(\"matrix\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tVerboseResponse: pulumi.Bool(true),\n\t\t\t\tVersion:         pulumi.String(\"draft6\"),\n\t\t\t},\n\t\t\tConsumer: \u0026konnect.GatewayPluginRequestValidatorConsumerArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tControlPlaneId:                  pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tCreatedAt:                       pulumi.Float64(5),\n\t\t\tEnabled:                         pulumi.Bool(false),\n\t\t\tGatewayPluginRequestValidatorId: pulumi.String(\"...my_id...\"),\n\t\t\tInstanceName:                    pulumi.String(\"...my_instance_name...\"),\n\t\t\tOrdering: \u0026konnect.GatewayPluginRequestValidatorOrderingArgs{\n\t\t\t\tAfter: \u0026konnect.GatewayPluginRequestValidatorOrderingAfterArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tBefore: \u0026konnect.GatewayPluginRequestValidatorOrderingBeforeArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tPartials: konnect.GatewayPluginRequestValidatorPartialArray{\n\t\t\t\t\u0026konnect.GatewayPluginRequestValidatorPartialArgs{\n\t\t\t\t\tId:   pulumi.String(\"...my_id...\"),\n\t\t\t\t\tName: pulumi.String(\"...my_name...\"),\n\t\t\t\t\tPath: pulumi.String(\"...my_path...\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tProtocols: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"grpcs\"),\n\t\t\t},\n\t\t\tRoute: \u0026konnect.GatewayPluginRequestValidatorRouteArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tService: \u0026konnect.GatewayPluginRequestValidatorServiceArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"...\"),\n\t\t\t},\n\t\t\tUpdatedAt: pulumi.Float64(7),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.GatewayPluginRequestValidator;\nimport com.pulumi.konnect.GatewayPluginRequestValidatorArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginRequestValidatorConfigArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginRequestValidatorConsumerArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginRequestValidatorOrderingArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginRequestValidatorOrderingAfterArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginRequestValidatorOrderingBeforeArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginRequestValidatorPartialArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginRequestValidatorRouteArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginRequestValidatorServiceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myGatewaypluginrequestvalidator = new GatewayPluginRequestValidator(\"myGatewaypluginrequestvalidator\", GatewayPluginRequestValidatorArgs.builder()\n            .config(GatewayPluginRequestValidatorConfigArgs.builder()\n                .allowedContentTypes(\"...\")\n                .bodySchema(\"...my_body_schema...\")\n                .contentTypeParameterValidation(false)\n                .parameterSchemas(GatewayPluginRequestValidatorConfigParameterSchemaArgs.builder()\n                    .explode(true)\n                    .in(\"query\")\n                    .name(\"...my_name...\")\n                    .required(false)\n                    .schema(\"...my_schema...\")\n                    .style(\"matrix\")\n                    .build())\n                .verboseResponse(true)\n                .version(\"draft6\")\n                .build())\n            .consumer(GatewayPluginRequestValidatorConsumerArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .controlPlaneId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .createdAt(5.0)\n            .enabled(false)\n            .gatewayPluginRequestValidatorId(\"...my_id...\")\n            .instanceName(\"...my_instance_name...\")\n            .ordering(GatewayPluginRequestValidatorOrderingArgs.builder()\n                .after(GatewayPluginRequestValidatorOrderingAfterArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .before(GatewayPluginRequestValidatorOrderingBeforeArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .build())\n            .partials(GatewayPluginRequestValidatorPartialArgs.builder()\n                .id(\"...my_id...\")\n                .name(\"...my_name...\")\n                .path(\"...my_path...\")\n                .build())\n            .protocols(\"grpcs\")\n            .route(GatewayPluginRequestValidatorRouteArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .service(GatewayPluginRequestValidatorServiceArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .tags(\"...\")\n            .updatedAt(7.0)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myGatewaypluginrequestvalidator:\n    type: konnect:GatewayPluginRequestValidator\n    name: my_gatewaypluginrequestvalidator\n    properties:\n      config:\n        allowedContentTypes:\n          - '...'\n        bodySchema: '...my_body_schema...'\n        contentTypeParameterValidation: false\n        parameterSchemas:\n          - explode: true\n            in: query\n            name: '...my_name...'\n            required: false\n            schema: '...my_schema...'\n            style: matrix\n        verboseResponse: true\n        version: draft6\n      consumer:\n        id: '...my_id...'\n      controlPlaneId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      createdAt: 5\n      enabled: false\n      gatewayPluginRequestValidatorId: '...my_id...'\n      instanceName: '...my_instance_name...'\n      ordering:\n        after:\n          accesses:\n            - '...'\n        before:\n          accesses:\n            - '...'\n      partials:\n        - id: '...my_id...'\n          name: '...my_name...'\n          path: '...my_path...'\n      protocols:\n        - grpcs\n      route:\n        id: '...my_id...'\n      service:\n        id: '...my_id...'\n      tags:\n        - '...'\n      updatedAt: 7\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_gateway_plugin_request_validator.my_konnect_gateway_plugin_request_validator\n\n  id = jsonencode({\n\n    control_plane_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/gatewayPluginRequestValidator:GatewayPluginRequestValidator my_konnect_gateway_plugin_request_validator '{\"control_plane_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"}'\n```\n\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestValidatorConfig:GatewayPluginRequestValidatorConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestValidatorConsumer:GatewayPluginRequestValidatorConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginRequestValidatorId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestValidatorOrdering:GatewayPluginRequestValidatorOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestValidatorPartial:GatewayPluginRequestValidatorPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestValidatorRoute:GatewayPluginRequestValidatorRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestValidatorService:GatewayPluginRequestValidatorService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object","required":["config","consumer","controlPlaneId","createdAt","enabled","gatewayPluginRequestValidatorId","ordering","protocols","route","service","updatedAt"],"inputProperties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestValidatorConfig:GatewayPluginRequestValidatorConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestValidatorConsumer:GatewayPluginRequestValidatorConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginRequestValidatorId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestValidatorOrdering:GatewayPluginRequestValidatorOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestValidatorPartial:GatewayPluginRequestValidatorPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestValidatorRoute:GatewayPluginRequestValidatorRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestValidatorService:GatewayPluginRequestValidatorService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"requiredInputs":["controlPlaneId"],"stateInputs":{"description":"Input properties used for looking up and filtering GatewayPluginRequestValidator resources.\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestValidatorConfig:GatewayPluginRequestValidatorConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestValidatorConsumer:GatewayPluginRequestValidatorConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginRequestValidatorId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestValidatorOrdering:GatewayPluginRequestValidatorOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestValidatorPartial:GatewayPluginRequestValidatorPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestValidatorRoute:GatewayPluginRequestValidatorRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginRequestValidatorService:GatewayPluginRequestValidatorService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object"}},"konnect:index/gatewayPluginResponseRatelimiting:GatewayPluginResponseRatelimiting":{"description":"GatewayPluginResponseRatelimiting Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myGatewaypluginresponseratelimiting = new konnect.GatewayPluginResponseRatelimiting(\"my_gatewaypluginresponseratelimiting\", {\n    config: {\n        blockOnFirstViolation: true,\n        faultTolerant: false,\n        headerName: \"...my_header_name...\",\n        hideClientHeaders: true,\n        limitBy: \"ip\",\n        limits: {\n            key: {\n                day: 6.02,\n                hour: 1.45,\n                minute: 3.9,\n                month: 1.45,\n                second: 8.28,\n                year: 4.52,\n            },\n        },\n        policy: \"cluster\",\n        redis: {\n            cloudAuthentication: {\n                authProvider: \"gcp\",\n                awsAccessKeyId: \"...my_aws_access_key_id...\",\n                awsAssumeRoleArn: \"...my_aws_assume_role_arn...\",\n                awsCacheName: \"...my_aws_cache_name...\",\n                awsIsServerless: true,\n                awsRegion: \"...my_aws_region...\",\n                awsRoleSessionName: \"...my_aws_role_session_name...\",\n                awsSecretAccessKey: \"...my_aws_secret_access_key...\",\n                azureClientId: \"...my_azure_client_id...\",\n                azureClientSecret: \"...my_azure_client_secret...\",\n                azureTenantId: \"...my_azure_tenant_id...\",\n                gcpServiceAccountJson: \"...my_gcp_service_account_json...\",\n            },\n            database: 9,\n            host: \"...my_host...\",\n            password: \"...my_password...\",\n            port: 32565,\n            serverName: \"...my_server_name...\",\n            ssl: true,\n            sslVerify: false,\n            timeout: 70842937,\n            username: \"...my_username...\",\n        },\n    },\n    consumer: {\n        id: \"...my_id...\",\n    },\n    controlPlaneId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    createdAt: 10,\n    enabled: true,\n    gatewayPluginResponseRatelimitingId: \"...my_id...\",\n    instanceName: \"...my_instance_name...\",\n    ordering: {\n        after: {\n            accesses: [\"...\"],\n        },\n        before: {\n            accesses: [\"...\"],\n        },\n    },\n    partials: [{\n        id: \"...my_id...\",\n        name: \"...my_name...\",\n        path: \"...my_path...\",\n    }],\n    protocols: [\"http\"],\n    route: {\n        id: \"...my_id...\",\n    },\n    service: {\n        id: \"...my_id...\",\n    },\n    tags: [\"...\"],\n    updatedAt: 5,\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_gatewaypluginresponseratelimiting = konnect.GatewayPluginResponseRatelimiting(\"my_gatewaypluginresponseratelimiting\",\n    config={\n        \"block_on_first_violation\": True,\n        \"fault_tolerant\": False,\n        \"header_name\": \"...my_header_name...\",\n        \"hide_client_headers\": True,\n        \"limit_by\": \"ip\",\n        \"limits\": {\n            \"key\": {\n                \"day\": 6.02,\n                \"hour\": 1.45,\n                \"minute\": 3.9,\n                \"month\": 1.45,\n                \"second\": 8.28,\n                \"year\": 4.52,\n            },\n        },\n        \"policy\": \"cluster\",\n        \"redis\": {\n            \"cloud_authentication\": {\n                \"auth_provider\": \"gcp\",\n                \"aws_access_key_id\": \"...my_aws_access_key_id...\",\n                \"aws_assume_role_arn\": \"...my_aws_assume_role_arn...\",\n                \"aws_cache_name\": \"...my_aws_cache_name...\",\n                \"aws_is_serverless\": True,\n                \"aws_region\": \"...my_aws_region...\",\n                \"aws_role_session_name\": \"...my_aws_role_session_name...\",\n                \"aws_secret_access_key\": \"...my_aws_secret_access_key...\",\n                \"azure_client_id\": \"...my_azure_client_id...\",\n                \"azure_client_secret\": \"...my_azure_client_secret...\",\n                \"azure_tenant_id\": \"...my_azure_tenant_id...\",\n                \"gcp_service_account_json\": \"...my_gcp_service_account_json...\",\n            },\n            \"database\": 9,\n            \"host\": \"...my_host...\",\n            \"password\": \"...my_password...\",\n            \"port\": 32565,\n            \"server_name\": \"...my_server_name...\",\n            \"ssl\": True,\n            \"ssl_verify\": False,\n            \"timeout\": 70842937,\n            \"username\": \"...my_username...\",\n        },\n    },\n    consumer={\n        \"id\": \"...my_id...\",\n    },\n    control_plane_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    created_at=10,\n    enabled=True,\n    gateway_plugin_response_ratelimiting_id=\"...my_id...\",\n    instance_name=\"...my_instance_name...\",\n    ordering={\n        \"after\": {\n            \"accesses\": [\"...\"],\n        },\n        \"before\": {\n            \"accesses\": [\"...\"],\n        },\n    },\n    partials=[{\n        \"id\": \"...my_id...\",\n        \"name\": \"...my_name...\",\n        \"path\": \"...my_path...\",\n    }],\n    protocols=[\"http\"],\n    route={\n        \"id\": \"...my_id...\",\n    },\n    service={\n        \"id\": \"...my_id...\",\n    },\n    tags=[\"...\"],\n    updated_at=5)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myGatewaypluginresponseratelimiting = new Konnect.GatewayPluginResponseRatelimiting(\"my_gatewaypluginresponseratelimiting\", new()\n    {\n        Config = new Konnect.Inputs.GatewayPluginResponseRatelimitingConfigArgs\n        {\n            BlockOnFirstViolation = true,\n            FaultTolerant = false,\n            HeaderName = \"...my_header_name...\",\n            HideClientHeaders = true,\n            LimitBy = \"ip\",\n            Limits = \n            {\n                { \"key\", new Konnect.Inputs.GatewayPluginResponseRatelimitingConfigLimitsArgs\n                {\n                    Day = 6.02,\n                    Hour = 1.45,\n                    Minute = 3.9,\n                    Month = 1.45,\n                    Second = 8.28,\n                    Year = 4.52,\n                } },\n            },\n            Policy = \"cluster\",\n            Redis = new Konnect.Inputs.GatewayPluginResponseRatelimitingConfigRedisArgs\n            {\n                CloudAuthentication = new Konnect.Inputs.GatewayPluginResponseRatelimitingConfigRedisCloudAuthenticationArgs\n                {\n                    AuthProvider = \"gcp\",\n                    AwsAccessKeyId = \"...my_aws_access_key_id...\",\n                    AwsAssumeRoleArn = \"...my_aws_assume_role_arn...\",\n                    AwsCacheName = \"...my_aws_cache_name...\",\n                    AwsIsServerless = true,\n                    AwsRegion = \"...my_aws_region...\",\n                    AwsRoleSessionName = \"...my_aws_role_session_name...\",\n                    AwsSecretAccessKey = \"...my_aws_secret_access_key...\",\n                    AzureClientId = \"...my_azure_client_id...\",\n                    AzureClientSecret = \"...my_azure_client_secret...\",\n                    AzureTenantId = \"...my_azure_tenant_id...\",\n                    GcpServiceAccountJson = \"...my_gcp_service_account_json...\",\n                },\n                Database = 9,\n                Host = \"...my_host...\",\n                Password = \"...my_password...\",\n                Port = 32565,\n                ServerName = \"...my_server_name...\",\n                Ssl = true,\n                SslVerify = false,\n                Timeout = 70842937,\n                Username = \"...my_username...\",\n            },\n        },\n        Consumer = new Konnect.Inputs.GatewayPluginResponseRatelimitingConsumerArgs\n        {\n            Id = \"...my_id...\",\n        },\n        ControlPlaneId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        CreatedAt = 10,\n        Enabled = true,\n        GatewayPluginResponseRatelimitingId = \"...my_id...\",\n        InstanceName = \"...my_instance_name...\",\n        Ordering = new Konnect.Inputs.GatewayPluginResponseRatelimitingOrderingArgs\n        {\n            After = new Konnect.Inputs.GatewayPluginResponseRatelimitingOrderingAfterArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n            Before = new Konnect.Inputs.GatewayPluginResponseRatelimitingOrderingBeforeArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n        },\n        Partials = new[]\n        {\n            new Konnect.Inputs.GatewayPluginResponseRatelimitingPartialArgs\n            {\n                Id = \"...my_id...\",\n                Name = \"...my_name...\",\n                Path = \"...my_path...\",\n            },\n        },\n        Protocols = new[]\n        {\n            \"http\",\n        },\n        Route = new Konnect.Inputs.GatewayPluginResponseRatelimitingRouteArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Service = new Konnect.Inputs.GatewayPluginResponseRatelimitingServiceArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Tags = new[]\n        {\n            \"...\",\n        },\n        UpdatedAt = 5,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewGatewayPluginResponseRatelimiting(ctx, \"my_gatewaypluginresponseratelimiting\", \u0026konnect.GatewayPluginResponseRatelimitingArgs{\n\t\t\tConfig: \u0026konnect.GatewayPluginResponseRatelimitingConfigArgs{\n\t\t\t\tBlockOnFirstViolation: pulumi.Bool(true),\n\t\t\t\tFaultTolerant:         pulumi.Bool(false),\n\t\t\t\tHeaderName:            pulumi.String(\"...my_header_name...\"),\n\t\t\t\tHideClientHeaders:     pulumi.Bool(true),\n\t\t\t\tLimitBy:               pulumi.String(\"ip\"),\n\t\t\t\tLimits: konnect.GatewayPluginResponseRatelimitingConfigLimitsMap{\n\t\t\t\t\t\"key\": \u0026konnect.GatewayPluginResponseRatelimitingConfigLimitsArgs{\n\t\t\t\t\t\tDay:    pulumi.Float64(6.02),\n\t\t\t\t\t\tHour:   pulumi.Float64(1.45),\n\t\t\t\t\t\tMinute: pulumi.Float64(3.9),\n\t\t\t\t\t\tMonth:  pulumi.Float64(1.45),\n\t\t\t\t\t\tSecond: pulumi.Float64(8.28),\n\t\t\t\t\t\tYear:   pulumi.Float64(4.52),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tPolicy: pulumi.String(\"cluster\"),\n\t\t\t\tRedis: \u0026konnect.GatewayPluginResponseRatelimitingConfigRedisArgs{\n\t\t\t\t\tCloudAuthentication: \u0026konnect.GatewayPluginResponseRatelimitingConfigRedisCloudAuthenticationArgs{\n\t\t\t\t\t\tAuthProvider:          pulumi.String(\"gcp\"),\n\t\t\t\t\t\tAwsAccessKeyId:        pulumi.String(\"...my_aws_access_key_id...\"),\n\t\t\t\t\t\tAwsAssumeRoleArn:      pulumi.String(\"...my_aws_assume_role_arn...\"),\n\t\t\t\t\t\tAwsCacheName:          pulumi.String(\"...my_aws_cache_name...\"),\n\t\t\t\t\t\tAwsIsServerless:       pulumi.Bool(true),\n\t\t\t\t\t\tAwsRegion:             pulumi.String(\"...my_aws_region...\"),\n\t\t\t\t\t\tAwsRoleSessionName:    pulumi.String(\"...my_aws_role_session_name...\"),\n\t\t\t\t\t\tAwsSecretAccessKey:    pulumi.String(\"...my_aws_secret_access_key...\"),\n\t\t\t\t\t\tAzureClientId:         pulumi.String(\"...my_azure_client_id...\"),\n\t\t\t\t\t\tAzureClientSecret:     pulumi.String(\"...my_azure_client_secret...\"),\n\t\t\t\t\t\tAzureTenantId:         pulumi.String(\"...my_azure_tenant_id...\"),\n\t\t\t\t\t\tGcpServiceAccountJson: pulumi.String(\"...my_gcp_service_account_json...\"),\n\t\t\t\t\t},\n\t\t\t\t\tDatabase:   pulumi.Float64(9),\n\t\t\t\t\tHost:       pulumi.String(\"...my_host...\"),\n\t\t\t\t\tPassword:   pulumi.String(\"...my_password...\"),\n\t\t\t\t\tPort:       pulumi.Float64(32565),\n\t\t\t\t\tServerName: pulumi.String(\"...my_server_name...\"),\n\t\t\t\t\tSsl:        pulumi.Bool(true),\n\t\t\t\t\tSslVerify:  pulumi.Bool(false),\n\t\t\t\t\tTimeout:    pulumi.Float64(70842937),\n\t\t\t\t\tUsername:   pulumi.String(\"...my_username...\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tConsumer: \u0026konnect.GatewayPluginResponseRatelimitingConsumerArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tControlPlaneId:                      pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tCreatedAt:                           pulumi.Float64(10),\n\t\t\tEnabled:                             pulumi.Bool(true),\n\t\t\tGatewayPluginResponseRatelimitingId: pulumi.String(\"...my_id...\"),\n\t\t\tInstanceName:                        pulumi.String(\"...my_instance_name...\"),\n\t\t\tOrdering: \u0026konnect.GatewayPluginResponseRatelimitingOrderingArgs{\n\t\t\t\tAfter: \u0026konnect.GatewayPluginResponseRatelimitingOrderingAfterArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tBefore: \u0026konnect.GatewayPluginResponseRatelimitingOrderingBeforeArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tPartials: konnect.GatewayPluginResponseRatelimitingPartialArray{\n\t\t\t\t\u0026konnect.GatewayPluginResponseRatelimitingPartialArgs{\n\t\t\t\t\tId:   pulumi.String(\"...my_id...\"),\n\t\t\t\t\tName: pulumi.String(\"...my_name...\"),\n\t\t\t\t\tPath: pulumi.String(\"...my_path...\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tProtocols: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"http\"),\n\t\t\t},\n\t\t\tRoute: \u0026konnect.GatewayPluginResponseRatelimitingRouteArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tService: \u0026konnect.GatewayPluginResponseRatelimitingServiceArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"...\"),\n\t\t\t},\n\t\t\tUpdatedAt: pulumi.Float64(5),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.GatewayPluginResponseRatelimiting;\nimport com.pulumi.konnect.GatewayPluginResponseRatelimitingArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginResponseRatelimitingConfigArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginResponseRatelimitingConfigRedisArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginResponseRatelimitingConfigRedisCloudAuthenticationArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginResponseRatelimitingConsumerArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginResponseRatelimitingOrderingArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginResponseRatelimitingOrderingAfterArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginResponseRatelimitingOrderingBeforeArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginResponseRatelimitingPartialArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginResponseRatelimitingRouteArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginResponseRatelimitingServiceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myGatewaypluginresponseratelimiting = new GatewayPluginResponseRatelimiting(\"myGatewaypluginresponseratelimiting\", GatewayPluginResponseRatelimitingArgs.builder()\n            .config(GatewayPluginResponseRatelimitingConfigArgs.builder()\n                .blockOnFirstViolation(true)\n                .faultTolerant(false)\n                .headerName(\"...my_header_name...\")\n                .hideClientHeaders(true)\n                .limitBy(\"ip\")\n                .limits(Map.of(\"key\", GatewayPluginResponseRatelimitingConfigLimitsArgs.builder()\n                    .day(6.02)\n                    .hour(1.45)\n                    .minute(3.9)\n                    .month(1.45)\n                    .second(8.28)\n                    .year(4.52)\n                    .build()))\n                .policy(\"cluster\")\n                .redis(GatewayPluginResponseRatelimitingConfigRedisArgs.builder()\n                    .cloudAuthentication(GatewayPluginResponseRatelimitingConfigRedisCloudAuthenticationArgs.builder()\n                        .authProvider(\"gcp\")\n                        .awsAccessKeyId(\"...my_aws_access_key_id...\")\n                        .awsAssumeRoleArn(\"...my_aws_assume_role_arn...\")\n                        .awsCacheName(\"...my_aws_cache_name...\")\n                        .awsIsServerless(true)\n                        .awsRegion(\"...my_aws_region...\")\n                        .awsRoleSessionName(\"...my_aws_role_session_name...\")\n                        .awsSecretAccessKey(\"...my_aws_secret_access_key...\")\n                        .azureClientId(\"...my_azure_client_id...\")\n                        .azureClientSecret(\"...my_azure_client_secret...\")\n                        .azureTenantId(\"...my_azure_tenant_id...\")\n                        .gcpServiceAccountJson(\"...my_gcp_service_account_json...\")\n                        .build())\n                    .database(9.0)\n                    .host(\"...my_host...\")\n                    .password(\"...my_password...\")\n                    .port(32565.0)\n                    .serverName(\"...my_server_name...\")\n                    .ssl(true)\n                    .sslVerify(false)\n                    .timeout(70842937.0)\n                    .username(\"...my_username...\")\n                    .build())\n                .build())\n            .consumer(GatewayPluginResponseRatelimitingConsumerArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .controlPlaneId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .createdAt(10.0)\n            .enabled(true)\n            .gatewayPluginResponseRatelimitingId(\"...my_id...\")\n            .instanceName(\"...my_instance_name...\")\n            .ordering(GatewayPluginResponseRatelimitingOrderingArgs.builder()\n                .after(GatewayPluginResponseRatelimitingOrderingAfterArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .before(GatewayPluginResponseRatelimitingOrderingBeforeArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .build())\n            .partials(GatewayPluginResponseRatelimitingPartialArgs.builder()\n                .id(\"...my_id...\")\n                .name(\"...my_name...\")\n                .path(\"...my_path...\")\n                .build())\n            .protocols(\"http\")\n            .route(GatewayPluginResponseRatelimitingRouteArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .service(GatewayPluginResponseRatelimitingServiceArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .tags(\"...\")\n            .updatedAt(5.0)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myGatewaypluginresponseratelimiting:\n    type: konnect:GatewayPluginResponseRatelimiting\n    name: my_gatewaypluginresponseratelimiting\n    properties:\n      config:\n        blockOnFirstViolation: true\n        faultTolerant: false\n        headerName: '...my_header_name...'\n        hideClientHeaders: true\n        limitBy: ip\n        limits:\n          key:\n            day: 6.02\n            hour: 1.45\n            minute: 3.9\n            month: 1.45\n            second: 8.28\n            year: 4.52\n        policy: cluster\n        redis:\n          cloudAuthentication:\n            authProvider: gcp\n            awsAccessKeyId: '...my_aws_access_key_id...'\n            awsAssumeRoleArn: '...my_aws_assume_role_arn...'\n            awsCacheName: '...my_aws_cache_name...'\n            awsIsServerless: true\n            awsRegion: '...my_aws_region...'\n            awsRoleSessionName: '...my_aws_role_session_name...'\n            awsSecretAccessKey: '...my_aws_secret_access_key...'\n            azureClientId: '...my_azure_client_id...'\n            azureClientSecret: '...my_azure_client_secret...'\n            azureTenantId: '...my_azure_tenant_id...'\n            gcpServiceAccountJson: '...my_gcp_service_account_json...'\n          database: 9\n          host: '...my_host...'\n          password: '...my_password...'\n          port: 32565\n          serverName: '...my_server_name...'\n          ssl: true\n          sslVerify: false\n          timeout: 7.0842937e+07\n          username: '...my_username...'\n      consumer:\n        id: '...my_id...'\n      controlPlaneId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      createdAt: 10\n      enabled: true\n      gatewayPluginResponseRatelimitingId: '...my_id...'\n      instanceName: '...my_instance_name...'\n      ordering:\n        after:\n          accesses:\n            - '...'\n        before:\n          accesses:\n            - '...'\n      partials:\n        - id: '...my_id...'\n          name: '...my_name...'\n          path: '...my_path...'\n      protocols:\n        - http\n      route:\n        id: '...my_id...'\n      service:\n        id: '...my_id...'\n      tags:\n        - '...'\n      updatedAt: 5\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_gateway_plugin_response_ratelimiting.my_konnect_gateway_plugin_response_ratelimiting\n\n  id = jsonencode({\n\n    control_plane_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/gatewayPluginResponseRatelimiting:GatewayPluginResponseRatelimiting my_konnect_gateway_plugin_response_ratelimiting '{\"control_plane_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"}'\n```\n\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginResponseRatelimitingConfig:GatewayPluginResponseRatelimitingConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginResponseRatelimitingConsumer:GatewayPluginResponseRatelimitingConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginResponseRatelimitingId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginResponseRatelimitingOrdering:GatewayPluginResponseRatelimitingOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginResponseRatelimitingPartial:GatewayPluginResponseRatelimitingPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginResponseRatelimitingRoute:GatewayPluginResponseRatelimitingRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginResponseRatelimitingService:GatewayPluginResponseRatelimitingService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object","required":["config","consumer","controlPlaneId","createdAt","enabled","gatewayPluginResponseRatelimitingId","ordering","protocols","route","service","updatedAt"],"inputProperties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginResponseRatelimitingConfig:GatewayPluginResponseRatelimitingConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginResponseRatelimitingConsumer:GatewayPluginResponseRatelimitingConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginResponseRatelimitingId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginResponseRatelimitingOrdering:GatewayPluginResponseRatelimitingOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginResponseRatelimitingPartial:GatewayPluginResponseRatelimitingPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginResponseRatelimitingRoute:GatewayPluginResponseRatelimitingRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginResponseRatelimitingService:GatewayPluginResponseRatelimitingService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"requiredInputs":["controlPlaneId"],"stateInputs":{"description":"Input properties used for looking up and filtering GatewayPluginResponseRatelimiting resources.\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginResponseRatelimitingConfig:GatewayPluginResponseRatelimitingConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginResponseRatelimitingConsumer:GatewayPluginResponseRatelimitingConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginResponseRatelimitingId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginResponseRatelimitingOrdering:GatewayPluginResponseRatelimitingOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginResponseRatelimitingPartial:GatewayPluginResponseRatelimitingPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginResponseRatelimitingRoute:GatewayPluginResponseRatelimitingRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginResponseRatelimitingService:GatewayPluginResponseRatelimitingService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object"}},"konnect:index/gatewayPluginResponseTransformer:GatewayPluginResponseTransformer":{"description":"GatewayPluginResponseTransformer Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myGatewaypluginresponsetransformer = new konnect.GatewayPluginResponseTransformer(\"my_gatewaypluginresponsetransformer\", {\n    config: {\n        add: {\n            headers: [\"...\"],\n            jsons: [\"...\"],\n            jsonTypes: [\"number\"],\n        },\n        append: {\n            headers: [\"...\"],\n            jsons: [\"...\"],\n            jsonTypes: [\"number\"],\n        },\n        remove: {\n            headers: [\"...\"],\n            jsons: [\"...\"],\n        },\n        rename: {\n            headers: [\"...\"],\n            jsons: [\"...\"],\n        },\n        replace: {\n            headers: [\"...\"],\n            jsons: [\"...\"],\n            jsonTypes: [\"string\"],\n        },\n    },\n    consumer: {\n        id: \"...my_id...\",\n    },\n    consumerGroup: {\n        id: \"...my_id...\",\n    },\n    controlPlaneId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    createdAt: 4,\n    enabled: false,\n    gatewayPluginResponseTransformerId: \"...my_id...\",\n    instanceName: \"...my_instance_name...\",\n    ordering: {\n        after: {\n            accesses: [\"...\"],\n        },\n        before: {\n            accesses: [\"...\"],\n        },\n    },\n    partials: [{\n        id: \"...my_id...\",\n        name: \"...my_name...\",\n        path: \"...my_path...\",\n    }],\n    protocols: [\"https\"],\n    route: {\n        id: \"...my_id...\",\n    },\n    service: {\n        id: \"...my_id...\",\n    },\n    tags: [\"...\"],\n    updatedAt: 6,\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_gatewaypluginresponsetransformer = konnect.GatewayPluginResponseTransformer(\"my_gatewaypluginresponsetransformer\",\n    config={\n        \"add\": {\n            \"headers\": [\"...\"],\n            \"jsons\": [\"...\"],\n            \"json_types\": [\"number\"],\n        },\n        \"append\": {\n            \"headers\": [\"...\"],\n            \"jsons\": [\"...\"],\n            \"json_types\": [\"number\"],\n        },\n        \"remove\": {\n            \"headers\": [\"...\"],\n            \"jsons\": [\"...\"],\n        },\n        \"rename\": {\n            \"headers\": [\"...\"],\n            \"jsons\": [\"...\"],\n        },\n        \"replace\": {\n            \"headers\": [\"...\"],\n            \"jsons\": [\"...\"],\n            \"json_types\": [\"string\"],\n        },\n    },\n    consumer={\n        \"id\": \"...my_id...\",\n    },\n    consumer_group={\n        \"id\": \"...my_id...\",\n    },\n    control_plane_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    created_at=4,\n    enabled=False,\n    gateway_plugin_response_transformer_id=\"...my_id...\",\n    instance_name=\"...my_instance_name...\",\n    ordering={\n        \"after\": {\n            \"accesses\": [\"...\"],\n        },\n        \"before\": {\n            \"accesses\": [\"...\"],\n        },\n    },\n    partials=[{\n        \"id\": \"...my_id...\",\n        \"name\": \"...my_name...\",\n        \"path\": \"...my_path...\",\n    }],\n    protocols=[\"https\"],\n    route={\n        \"id\": \"...my_id...\",\n    },\n    service={\n        \"id\": \"...my_id...\",\n    },\n    tags=[\"...\"],\n    updated_at=6)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myGatewaypluginresponsetransformer = new Konnect.GatewayPluginResponseTransformer(\"my_gatewaypluginresponsetransformer\", new()\n    {\n        Config = new Konnect.Inputs.GatewayPluginResponseTransformerConfigArgs\n        {\n            Add = new Konnect.Inputs.GatewayPluginResponseTransformerConfigAddArgs\n            {\n                Headers = new[]\n                {\n                    \"...\",\n                },\n                Jsons = new[]\n                {\n                    \"...\",\n                },\n                JsonTypes = new[]\n                {\n                    \"number\",\n                },\n            },\n            Append = new Konnect.Inputs.GatewayPluginResponseTransformerConfigAppendArgs\n            {\n                Headers = new[]\n                {\n                    \"...\",\n                },\n                Jsons = new[]\n                {\n                    \"...\",\n                },\n                JsonTypes = new[]\n                {\n                    \"number\",\n                },\n            },\n            Remove = new Konnect.Inputs.GatewayPluginResponseTransformerConfigRemoveArgs\n            {\n                Headers = new[]\n                {\n                    \"...\",\n                },\n                Jsons = new[]\n                {\n                    \"...\",\n                },\n            },\n            Rename = new Konnect.Inputs.GatewayPluginResponseTransformerConfigRenameArgs\n            {\n                Headers = new[]\n                {\n                    \"...\",\n                },\n                Jsons = new[]\n                {\n                    \"...\",\n                },\n            },\n            Replace = new Konnect.Inputs.GatewayPluginResponseTransformerConfigReplaceArgs\n            {\n                Headers = new[]\n                {\n                    \"...\",\n                },\n                Jsons = new[]\n                {\n                    \"...\",\n                },\n                JsonTypes = new[]\n                {\n                    \"string\",\n                },\n            },\n        },\n        Consumer = new Konnect.Inputs.GatewayPluginResponseTransformerConsumerArgs\n        {\n            Id = \"...my_id...\",\n        },\n        ConsumerGroup = new Konnect.Inputs.GatewayPluginResponseTransformerConsumerGroupArgs\n        {\n            Id = \"...my_id...\",\n        },\n        ControlPlaneId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        CreatedAt = 4,\n        Enabled = false,\n        GatewayPluginResponseTransformerId = \"...my_id...\",\n        InstanceName = \"...my_instance_name...\",\n        Ordering = new Konnect.Inputs.GatewayPluginResponseTransformerOrderingArgs\n        {\n            After = new Konnect.Inputs.GatewayPluginResponseTransformerOrderingAfterArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n            Before = new Konnect.Inputs.GatewayPluginResponseTransformerOrderingBeforeArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n        },\n        Partials = new[]\n        {\n            new Konnect.Inputs.GatewayPluginResponseTransformerPartialArgs\n            {\n                Id = \"...my_id...\",\n                Name = \"...my_name...\",\n                Path = \"...my_path...\",\n            },\n        },\n        Protocols = new[]\n        {\n            \"https\",\n        },\n        Route = new Konnect.Inputs.GatewayPluginResponseTransformerRouteArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Service = new Konnect.Inputs.GatewayPluginResponseTransformerServiceArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Tags = new[]\n        {\n            \"...\",\n        },\n        UpdatedAt = 6,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewGatewayPluginResponseTransformer(ctx, \"my_gatewaypluginresponsetransformer\", \u0026konnect.GatewayPluginResponseTransformerArgs{\n\t\t\tConfig: \u0026konnect.GatewayPluginResponseTransformerConfigArgs{\n\t\t\t\tAdd: \u0026konnect.GatewayPluginResponseTransformerConfigAddArgs{\n\t\t\t\t\tHeaders: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t\tJsons: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t\tJsonTypes: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"number\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tAppend: \u0026konnect.GatewayPluginResponseTransformerConfigAppendArgs{\n\t\t\t\t\tHeaders: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t\tJsons: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t\tJsonTypes: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"number\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tRemove: \u0026konnect.GatewayPluginResponseTransformerConfigRemoveArgs{\n\t\t\t\t\tHeaders: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t\tJsons: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tRename: \u0026konnect.GatewayPluginResponseTransformerConfigRenameArgs{\n\t\t\t\t\tHeaders: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t\tJsons: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tReplace: \u0026konnect.GatewayPluginResponseTransformerConfigReplaceArgs{\n\t\t\t\t\tHeaders: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t\tJsons: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t\tJsonTypes: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"string\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tConsumer: \u0026konnect.GatewayPluginResponseTransformerConsumerArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tConsumerGroup: \u0026konnect.GatewayPluginResponseTransformerConsumerGroupArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tControlPlaneId:                     pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tCreatedAt:                          pulumi.Float64(4),\n\t\t\tEnabled:                            pulumi.Bool(false),\n\t\t\tGatewayPluginResponseTransformerId: pulumi.String(\"...my_id...\"),\n\t\t\tInstanceName:                       pulumi.String(\"...my_instance_name...\"),\n\t\t\tOrdering: \u0026konnect.GatewayPluginResponseTransformerOrderingArgs{\n\t\t\t\tAfter: \u0026konnect.GatewayPluginResponseTransformerOrderingAfterArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tBefore: \u0026konnect.GatewayPluginResponseTransformerOrderingBeforeArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tPartials: konnect.GatewayPluginResponseTransformerPartialArray{\n\t\t\t\t\u0026konnect.GatewayPluginResponseTransformerPartialArgs{\n\t\t\t\t\tId:   pulumi.String(\"...my_id...\"),\n\t\t\t\t\tName: pulumi.String(\"...my_name...\"),\n\t\t\t\t\tPath: pulumi.String(\"...my_path...\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tProtocols: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"https\"),\n\t\t\t},\n\t\t\tRoute: \u0026konnect.GatewayPluginResponseTransformerRouteArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tService: \u0026konnect.GatewayPluginResponseTransformerServiceArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"...\"),\n\t\t\t},\n\t\t\tUpdatedAt: pulumi.Float64(6),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.GatewayPluginResponseTransformer;\nimport com.pulumi.konnect.GatewayPluginResponseTransformerArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginResponseTransformerConfigArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginResponseTransformerConfigAddArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginResponseTransformerConfigAppendArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginResponseTransformerConfigRemoveArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginResponseTransformerConfigRenameArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginResponseTransformerConfigReplaceArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginResponseTransformerConsumerArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginResponseTransformerConsumerGroupArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginResponseTransformerOrderingArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginResponseTransformerOrderingAfterArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginResponseTransformerOrderingBeforeArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginResponseTransformerPartialArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginResponseTransformerRouteArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginResponseTransformerServiceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myGatewaypluginresponsetransformer = new GatewayPluginResponseTransformer(\"myGatewaypluginresponsetransformer\", GatewayPluginResponseTransformerArgs.builder()\n            .config(GatewayPluginResponseTransformerConfigArgs.builder()\n                .add(GatewayPluginResponseTransformerConfigAddArgs.builder()\n                    .headers(\"...\")\n                    .jsons(\"...\")\n                    .jsonTypes(\"number\")\n                    .build())\n                .append(GatewayPluginResponseTransformerConfigAppendArgs.builder()\n                    .headers(\"...\")\n                    .jsons(\"...\")\n                    .jsonTypes(\"number\")\n                    .build())\n                .remove(GatewayPluginResponseTransformerConfigRemoveArgs.builder()\n                    .headers(\"...\")\n                    .jsons(\"...\")\n                    .build())\n                .rename(GatewayPluginResponseTransformerConfigRenameArgs.builder()\n                    .headers(\"...\")\n                    .jsons(\"...\")\n                    .build())\n                .replace(GatewayPluginResponseTransformerConfigReplaceArgs.builder()\n                    .headers(\"...\")\n                    .jsons(\"...\")\n                    .jsonTypes(\"string\")\n                    .build())\n                .build())\n            .consumer(GatewayPluginResponseTransformerConsumerArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .consumerGroup(GatewayPluginResponseTransformerConsumerGroupArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .controlPlaneId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .createdAt(4.0)\n            .enabled(false)\n            .gatewayPluginResponseTransformerId(\"...my_id...\")\n            .instanceName(\"...my_instance_name...\")\n            .ordering(GatewayPluginResponseTransformerOrderingArgs.builder()\n                .after(GatewayPluginResponseTransformerOrderingAfterArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .before(GatewayPluginResponseTransformerOrderingBeforeArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .build())\n            .partials(GatewayPluginResponseTransformerPartialArgs.builder()\n                .id(\"...my_id...\")\n                .name(\"...my_name...\")\n                .path(\"...my_path...\")\n                .build())\n            .protocols(\"https\")\n            .route(GatewayPluginResponseTransformerRouteArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .service(GatewayPluginResponseTransformerServiceArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .tags(\"...\")\n            .updatedAt(6.0)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myGatewaypluginresponsetransformer:\n    type: konnect:GatewayPluginResponseTransformer\n    name: my_gatewaypluginresponsetransformer\n    properties:\n      config:\n        add:\n          headers:\n            - '...'\n          jsons:\n            - '...'\n          jsonTypes:\n            - number\n        append:\n          headers:\n            - '...'\n          jsons:\n            - '...'\n          jsonTypes:\n            - number\n        remove:\n          headers:\n            - '...'\n          jsons:\n            - '...'\n        rename:\n          headers:\n            - '...'\n          jsons:\n            - '...'\n        replace:\n          headers:\n            - '...'\n          jsons:\n            - '...'\n          jsonTypes:\n            - string\n      consumer:\n        id: '...my_id...'\n      consumerGroup:\n        id: '...my_id...'\n      controlPlaneId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      createdAt: 4\n      enabled: false\n      gatewayPluginResponseTransformerId: '...my_id...'\n      instanceName: '...my_instance_name...'\n      ordering:\n        after:\n          accesses:\n            - '...'\n        before:\n          accesses:\n            - '...'\n      partials:\n        - id: '...my_id...'\n          name: '...my_name...'\n          path: '...my_path...'\n      protocols:\n        - https\n      route:\n        id: '...my_id...'\n      service:\n        id: '...my_id...'\n      tags:\n        - '...'\n      updatedAt: 6\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_gateway_plugin_response_transformer.my_konnect_gateway_plugin_response_transformer\n\n  id = jsonencode({\n\n    control_plane_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/gatewayPluginResponseTransformer:GatewayPluginResponseTransformer my_konnect_gateway_plugin_response_transformer '{\"control_plane_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"}'\n```\n\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginResponseTransformerConfig:GatewayPluginResponseTransformerConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginResponseTransformerConsumer:GatewayPluginResponseTransformerConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"consumerGroup":{"$ref":"#/types/konnect:index%2FGatewayPluginResponseTransformerConsumerGroup:GatewayPluginResponseTransformerConsumerGroup","description":"If set, the plugin will activate only for requests where the specified consumer group has been authenticated. (Note that some plugins can not be restricted to consumers groups this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer Groups\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginResponseTransformerId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginResponseTransformerOrdering:GatewayPluginResponseTransformerOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginResponseTransformerPartial:GatewayPluginResponseTransformerPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginResponseTransformerRoute:GatewayPluginResponseTransformerRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginResponseTransformerService:GatewayPluginResponseTransformerService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object","required":["config","consumer","consumerGroup","controlPlaneId","createdAt","enabled","gatewayPluginResponseTransformerId","ordering","protocols","route","service","updatedAt"],"inputProperties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginResponseTransformerConfig:GatewayPluginResponseTransformerConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginResponseTransformerConsumer:GatewayPluginResponseTransformerConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"consumerGroup":{"$ref":"#/types/konnect:index%2FGatewayPluginResponseTransformerConsumerGroup:GatewayPluginResponseTransformerConsumerGroup","description":"If set, the plugin will activate only for requests where the specified consumer group has been authenticated. (Note that some plugins can not be restricted to consumers groups this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer Groups\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginResponseTransformerId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginResponseTransformerOrdering:GatewayPluginResponseTransformerOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginResponseTransformerPartial:GatewayPluginResponseTransformerPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginResponseTransformerRoute:GatewayPluginResponseTransformerRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginResponseTransformerService:GatewayPluginResponseTransformerService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"requiredInputs":["controlPlaneId"],"stateInputs":{"description":"Input properties used for looking up and filtering GatewayPluginResponseTransformer resources.\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginResponseTransformerConfig:GatewayPluginResponseTransformerConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginResponseTransformerConsumer:GatewayPluginResponseTransformerConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"consumerGroup":{"$ref":"#/types/konnect:index%2FGatewayPluginResponseTransformerConsumerGroup:GatewayPluginResponseTransformerConsumerGroup","description":"If set, the plugin will activate only for requests where the specified consumer group has been authenticated. (Note that some plugins can not be restricted to consumers groups this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer Groups\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginResponseTransformerId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginResponseTransformerOrdering:GatewayPluginResponseTransformerOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginResponseTransformerPartial:GatewayPluginResponseTransformerPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginResponseTransformerRoute:GatewayPluginResponseTransformerRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginResponseTransformerService:GatewayPluginResponseTransformerService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object"}},"konnect:index/gatewayPluginResponseTransformerAdvanced:GatewayPluginResponseTransformerAdvanced":{"description":"GatewayPluginResponseTransformerAdvanced Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myGatewaypluginresponsetransformeradvanced = new konnect.GatewayPluginResponseTransformerAdvanced(\"my_gatewaypluginresponsetransformeradvanced\", {\n    config: {\n        add: {\n            headers: [\"...\"],\n            ifStatuses: [\"...\"],\n            jsons: [\"...\"],\n            jsonTypes: [\"number\"],\n        },\n        allow: {\n            jsons: [\"...\"],\n        },\n        append: {\n            headers: [\"...\"],\n            ifStatuses: [\"...\"],\n            jsons: [\"...\"],\n            jsonTypes: [\"number\"],\n        },\n        dotsInKeys: true,\n        remove: {\n            headers: [\"...\"],\n            ifStatuses: [\"...\"],\n            jsons: [\"...\"],\n        },\n        rename: {\n            headers: [\"...\"],\n            ifStatuses: [\"...\"],\n        },\n        replace: {\n            body: \"...my_body...\",\n            headers: [\"...\"],\n            ifStatuses: [\"...\"],\n            jsons: [\"...\"],\n            jsonTypes: [\"number\"],\n        },\n        transform: {\n            functions: [\"...\"],\n            ifStatuses: [\"...\"],\n            jsons: [\"...\"],\n        },\n    },\n    consumer: {\n        id: \"...my_id...\",\n    },\n    consumerGroup: {\n        id: \"...my_id...\",\n    },\n    controlPlaneId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    createdAt: 2,\n    enabled: true,\n    gatewayPluginResponseTransformerAdvancedId: \"...my_id...\",\n    instanceName: \"...my_instance_name...\",\n    ordering: {\n        after: {\n            accesses: [\"...\"],\n        },\n        before: {\n            accesses: [\"...\"],\n        },\n    },\n    partials: [{\n        id: \"...my_id...\",\n        name: \"...my_name...\",\n        path: \"...my_path...\",\n    }],\n    protocols: [\"grpc\"],\n    route: {\n        id: \"...my_id...\",\n    },\n    service: {\n        id: \"...my_id...\",\n    },\n    tags: [\"...\"],\n    updatedAt: 9,\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_gatewaypluginresponsetransformeradvanced = konnect.GatewayPluginResponseTransformerAdvanced(\"my_gatewaypluginresponsetransformeradvanced\",\n    config={\n        \"add\": {\n            \"headers\": [\"...\"],\n            \"if_statuses\": [\"...\"],\n            \"jsons\": [\"...\"],\n            \"json_types\": [\"number\"],\n        },\n        \"allow\": {\n            \"jsons\": [\"...\"],\n        },\n        \"append\": {\n            \"headers\": [\"...\"],\n            \"if_statuses\": [\"...\"],\n            \"jsons\": [\"...\"],\n            \"json_types\": [\"number\"],\n        },\n        \"dots_in_keys\": True,\n        \"remove\": {\n            \"headers\": [\"...\"],\n            \"if_statuses\": [\"...\"],\n            \"jsons\": [\"...\"],\n        },\n        \"rename\": {\n            \"headers\": [\"...\"],\n            \"if_statuses\": [\"...\"],\n        },\n        \"replace\": {\n            \"body\": \"...my_body...\",\n            \"headers\": [\"...\"],\n            \"if_statuses\": [\"...\"],\n            \"jsons\": [\"...\"],\n            \"json_types\": [\"number\"],\n        },\n        \"transform\": {\n            \"functions\": [\"...\"],\n            \"if_statuses\": [\"...\"],\n            \"jsons\": [\"...\"],\n        },\n    },\n    consumer={\n        \"id\": \"...my_id...\",\n    },\n    consumer_group={\n        \"id\": \"...my_id...\",\n    },\n    control_plane_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    created_at=2,\n    enabled=True,\n    gateway_plugin_response_transformer_advanced_id=\"...my_id...\",\n    instance_name=\"...my_instance_name...\",\n    ordering={\n        \"after\": {\n            \"accesses\": [\"...\"],\n        },\n        \"before\": {\n            \"accesses\": [\"...\"],\n        },\n    },\n    partials=[{\n        \"id\": \"...my_id...\",\n        \"name\": \"...my_name...\",\n        \"path\": \"...my_path...\",\n    }],\n    protocols=[\"grpc\"],\n    route={\n        \"id\": \"...my_id...\",\n    },\n    service={\n        \"id\": \"...my_id...\",\n    },\n    tags=[\"...\"],\n    updated_at=9)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myGatewaypluginresponsetransformeradvanced = new Konnect.GatewayPluginResponseTransformerAdvanced(\"my_gatewaypluginresponsetransformeradvanced\", new()\n    {\n        Config = new Konnect.Inputs.GatewayPluginResponseTransformerAdvancedConfigArgs\n        {\n            Add = new Konnect.Inputs.GatewayPluginResponseTransformerAdvancedConfigAddArgs\n            {\n                Headers = new[]\n                {\n                    \"...\",\n                },\n                IfStatuses = new[]\n                {\n                    \"...\",\n                },\n                Jsons = new[]\n                {\n                    \"...\",\n                },\n                JsonTypes = new[]\n                {\n                    \"number\",\n                },\n            },\n            Allow = new Konnect.Inputs.GatewayPluginResponseTransformerAdvancedConfigAllowArgs\n            {\n                Jsons = new[]\n                {\n                    \"...\",\n                },\n            },\n            Append = new Konnect.Inputs.GatewayPluginResponseTransformerAdvancedConfigAppendArgs\n            {\n                Headers = new[]\n                {\n                    \"...\",\n                },\n                IfStatuses = new[]\n                {\n                    \"...\",\n                },\n                Jsons = new[]\n                {\n                    \"...\",\n                },\n                JsonTypes = new[]\n                {\n                    \"number\",\n                },\n            },\n            DotsInKeys = true,\n            Remove = new Konnect.Inputs.GatewayPluginResponseTransformerAdvancedConfigRemoveArgs\n            {\n                Headers = new[]\n                {\n                    \"...\",\n                },\n                IfStatuses = new[]\n                {\n                    \"...\",\n                },\n                Jsons = new[]\n                {\n                    \"...\",\n                },\n            },\n            Rename = new Konnect.Inputs.GatewayPluginResponseTransformerAdvancedConfigRenameArgs\n            {\n                Headers = new[]\n                {\n                    \"...\",\n                },\n                IfStatuses = new[]\n                {\n                    \"...\",\n                },\n            },\n            Replace = new Konnect.Inputs.GatewayPluginResponseTransformerAdvancedConfigReplaceArgs\n            {\n                Body = \"...my_body...\",\n                Headers = new[]\n                {\n                    \"...\",\n                },\n                IfStatuses = new[]\n                {\n                    \"...\",\n                },\n                Jsons = new[]\n                {\n                    \"...\",\n                },\n                JsonTypes = new[]\n                {\n                    \"number\",\n                },\n            },\n            Transform = new Konnect.Inputs.GatewayPluginResponseTransformerAdvancedConfigTransformArgs\n            {\n                Functions = new[]\n                {\n                    \"...\",\n                },\n                IfStatuses = new[]\n                {\n                    \"...\",\n                },\n                Jsons = new[]\n                {\n                    \"...\",\n                },\n            },\n        },\n        Consumer = new Konnect.Inputs.GatewayPluginResponseTransformerAdvancedConsumerArgs\n        {\n            Id = \"...my_id...\",\n        },\n        ConsumerGroup = new Konnect.Inputs.GatewayPluginResponseTransformerAdvancedConsumerGroupArgs\n        {\n            Id = \"...my_id...\",\n        },\n        ControlPlaneId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        CreatedAt = 2,\n        Enabled = true,\n        GatewayPluginResponseTransformerAdvancedId = \"...my_id...\",\n        InstanceName = \"...my_instance_name...\",\n        Ordering = new Konnect.Inputs.GatewayPluginResponseTransformerAdvancedOrderingArgs\n        {\n            After = new Konnect.Inputs.GatewayPluginResponseTransformerAdvancedOrderingAfterArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n            Before = new Konnect.Inputs.GatewayPluginResponseTransformerAdvancedOrderingBeforeArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n        },\n        Partials = new[]\n        {\n            new Konnect.Inputs.GatewayPluginResponseTransformerAdvancedPartialArgs\n            {\n                Id = \"...my_id...\",\n                Name = \"...my_name...\",\n                Path = \"...my_path...\",\n            },\n        },\n        Protocols = new[]\n        {\n            \"grpc\",\n        },\n        Route = new Konnect.Inputs.GatewayPluginResponseTransformerAdvancedRouteArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Service = new Konnect.Inputs.GatewayPluginResponseTransformerAdvancedServiceArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Tags = new[]\n        {\n            \"...\",\n        },\n        UpdatedAt = 9,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewGatewayPluginResponseTransformerAdvanced(ctx, \"my_gatewaypluginresponsetransformeradvanced\", \u0026konnect.GatewayPluginResponseTransformerAdvancedArgs{\n\t\t\tConfig: \u0026konnect.GatewayPluginResponseTransformerAdvancedConfigArgs{\n\t\t\t\tAdd: \u0026konnect.GatewayPluginResponseTransformerAdvancedConfigAddArgs{\n\t\t\t\t\tHeaders: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t\tIfStatuses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t\tJsons: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t\tJsonTypes: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"number\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tAllow: \u0026konnect.GatewayPluginResponseTransformerAdvancedConfigAllowArgs{\n\t\t\t\t\tJsons: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tAppend: \u0026konnect.GatewayPluginResponseTransformerAdvancedConfigAppendArgs{\n\t\t\t\t\tHeaders: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t\tIfStatuses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t\tJsons: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t\tJsonTypes: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"number\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tDotsInKeys: pulumi.Bool(true),\n\t\t\t\tRemove: \u0026konnect.GatewayPluginResponseTransformerAdvancedConfigRemoveArgs{\n\t\t\t\t\tHeaders: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t\tIfStatuses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t\tJsons: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tRename: \u0026konnect.GatewayPluginResponseTransformerAdvancedConfigRenameArgs{\n\t\t\t\t\tHeaders: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t\tIfStatuses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tReplace: \u0026konnect.GatewayPluginResponseTransformerAdvancedConfigReplaceArgs{\n\t\t\t\t\tBody: pulumi.String(\"...my_body...\"),\n\t\t\t\t\tHeaders: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t\tIfStatuses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t\tJsons: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t\tJsonTypes: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"number\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tTransform: \u0026konnect.GatewayPluginResponseTransformerAdvancedConfigTransformArgs{\n\t\t\t\t\tFunctions: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t\tIfStatuses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t\tJsons: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tConsumer: \u0026konnect.GatewayPluginResponseTransformerAdvancedConsumerArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tConsumerGroup: \u0026konnect.GatewayPluginResponseTransformerAdvancedConsumerGroupArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tControlPlaneId: pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tCreatedAt:      pulumi.Float64(2),\n\t\t\tEnabled:        pulumi.Bool(true),\n\t\t\tGatewayPluginResponseTransformerAdvancedId: pulumi.String(\"...my_id...\"),\n\t\t\tInstanceName: pulumi.String(\"...my_instance_name...\"),\n\t\t\tOrdering: \u0026konnect.GatewayPluginResponseTransformerAdvancedOrderingArgs{\n\t\t\t\tAfter: \u0026konnect.GatewayPluginResponseTransformerAdvancedOrderingAfterArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tBefore: \u0026konnect.GatewayPluginResponseTransformerAdvancedOrderingBeforeArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tPartials: konnect.GatewayPluginResponseTransformerAdvancedPartialArray{\n\t\t\t\t\u0026konnect.GatewayPluginResponseTransformerAdvancedPartialArgs{\n\t\t\t\t\tId:   pulumi.String(\"...my_id...\"),\n\t\t\t\t\tName: pulumi.String(\"...my_name...\"),\n\t\t\t\t\tPath: pulumi.String(\"...my_path...\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tProtocols: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"grpc\"),\n\t\t\t},\n\t\t\tRoute: \u0026konnect.GatewayPluginResponseTransformerAdvancedRouteArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tService: \u0026konnect.GatewayPluginResponseTransformerAdvancedServiceArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"...\"),\n\t\t\t},\n\t\t\tUpdatedAt: pulumi.Float64(9),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.GatewayPluginResponseTransformerAdvanced;\nimport com.pulumi.konnect.GatewayPluginResponseTransformerAdvancedArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginResponseTransformerAdvancedConfigArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginResponseTransformerAdvancedConfigAddArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginResponseTransformerAdvancedConfigAllowArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginResponseTransformerAdvancedConfigAppendArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginResponseTransformerAdvancedConfigRemoveArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginResponseTransformerAdvancedConfigRenameArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginResponseTransformerAdvancedConfigReplaceArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginResponseTransformerAdvancedConfigTransformArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginResponseTransformerAdvancedConsumerArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginResponseTransformerAdvancedConsumerGroupArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginResponseTransformerAdvancedOrderingArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginResponseTransformerAdvancedOrderingAfterArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginResponseTransformerAdvancedOrderingBeforeArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginResponseTransformerAdvancedPartialArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginResponseTransformerAdvancedRouteArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginResponseTransformerAdvancedServiceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myGatewaypluginresponsetransformeradvanced = new GatewayPluginResponseTransformerAdvanced(\"myGatewaypluginresponsetransformeradvanced\", GatewayPluginResponseTransformerAdvancedArgs.builder()\n            .config(GatewayPluginResponseTransformerAdvancedConfigArgs.builder()\n                .add(GatewayPluginResponseTransformerAdvancedConfigAddArgs.builder()\n                    .headers(\"...\")\n                    .ifStatuses(\"...\")\n                    .jsons(\"...\")\n                    .jsonTypes(\"number\")\n                    .build())\n                .allow(GatewayPluginResponseTransformerAdvancedConfigAllowArgs.builder()\n                    .jsons(\"...\")\n                    .build())\n                .append(GatewayPluginResponseTransformerAdvancedConfigAppendArgs.builder()\n                    .headers(\"...\")\n                    .ifStatuses(\"...\")\n                    .jsons(\"...\")\n                    .jsonTypes(\"number\")\n                    .build())\n                .dotsInKeys(true)\n                .remove(GatewayPluginResponseTransformerAdvancedConfigRemoveArgs.builder()\n                    .headers(\"...\")\n                    .ifStatuses(\"...\")\n                    .jsons(\"...\")\n                    .build())\n                .rename(GatewayPluginResponseTransformerAdvancedConfigRenameArgs.builder()\n                    .headers(\"...\")\n                    .ifStatuses(\"...\")\n                    .build())\n                .replace(GatewayPluginResponseTransformerAdvancedConfigReplaceArgs.builder()\n                    .body(\"...my_body...\")\n                    .headers(\"...\")\n                    .ifStatuses(\"...\")\n                    .jsons(\"...\")\n                    .jsonTypes(\"number\")\n                    .build())\n                .transform(GatewayPluginResponseTransformerAdvancedConfigTransformArgs.builder()\n                    .functions(\"...\")\n                    .ifStatuses(\"...\")\n                    .jsons(\"...\")\n                    .build())\n                .build())\n            .consumer(GatewayPluginResponseTransformerAdvancedConsumerArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .consumerGroup(GatewayPluginResponseTransformerAdvancedConsumerGroupArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .controlPlaneId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .createdAt(2.0)\n            .enabled(true)\n            .gatewayPluginResponseTransformerAdvancedId(\"...my_id...\")\n            .instanceName(\"...my_instance_name...\")\n            .ordering(GatewayPluginResponseTransformerAdvancedOrderingArgs.builder()\n                .after(GatewayPluginResponseTransformerAdvancedOrderingAfterArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .before(GatewayPluginResponseTransformerAdvancedOrderingBeforeArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .build())\n            .partials(GatewayPluginResponseTransformerAdvancedPartialArgs.builder()\n                .id(\"...my_id...\")\n                .name(\"...my_name...\")\n                .path(\"...my_path...\")\n                .build())\n            .protocols(\"grpc\")\n            .route(GatewayPluginResponseTransformerAdvancedRouteArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .service(GatewayPluginResponseTransformerAdvancedServiceArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .tags(\"...\")\n            .updatedAt(9.0)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myGatewaypluginresponsetransformeradvanced:\n    type: konnect:GatewayPluginResponseTransformerAdvanced\n    name: my_gatewaypluginresponsetransformeradvanced\n    properties:\n      config:\n        add:\n          headers:\n            - '...'\n          ifStatuses:\n            - '...'\n          jsons:\n            - '...'\n          jsonTypes:\n            - number\n        allow:\n          jsons:\n            - '...'\n        append:\n          headers:\n            - '...'\n          ifStatuses:\n            - '...'\n          jsons:\n            - '...'\n          jsonTypes:\n            - number\n        dotsInKeys: true\n        remove:\n          headers:\n            - '...'\n          ifStatuses:\n            - '...'\n          jsons:\n            - '...'\n        rename:\n          headers:\n            - '...'\n          ifStatuses:\n            - '...'\n        replace:\n          body: '...my_body...'\n          headers:\n            - '...'\n          ifStatuses:\n            - '...'\n          jsons:\n            - '...'\n          jsonTypes:\n            - number\n        transform:\n          functions:\n            - '...'\n          ifStatuses:\n            - '...'\n          jsons:\n            - '...'\n      consumer:\n        id: '...my_id...'\n      consumerGroup:\n        id: '...my_id...'\n      controlPlaneId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      createdAt: 2\n      enabled: true\n      gatewayPluginResponseTransformerAdvancedId: '...my_id...'\n      instanceName: '...my_instance_name...'\n      ordering:\n        after:\n          accesses:\n            - '...'\n        before:\n          accesses:\n            - '...'\n      partials:\n        - id: '...my_id...'\n          name: '...my_name...'\n          path: '...my_path...'\n      protocols:\n        - grpc\n      route:\n        id: '...my_id...'\n      service:\n        id: '...my_id...'\n      tags:\n        - '...'\n      updatedAt: 9\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_gateway_plugin_response_transformer_advanced.my_konnect_gateway_plugin_response_transformer_advanced\n\n  id = jsonencode({\n\n    control_plane_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/gatewayPluginResponseTransformerAdvanced:GatewayPluginResponseTransformerAdvanced my_konnect_gateway_plugin_response_transformer_advanced '{\"control_plane_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"}'\n```\n\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginResponseTransformerAdvancedConfig:GatewayPluginResponseTransformerAdvancedConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginResponseTransformerAdvancedConsumer:GatewayPluginResponseTransformerAdvancedConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"consumerGroup":{"$ref":"#/types/konnect:index%2FGatewayPluginResponseTransformerAdvancedConsumerGroup:GatewayPluginResponseTransformerAdvancedConsumerGroup","description":"If set, the plugin will activate only for requests where the specified consumer group has been authenticated. (Note that some plugins can not be restricted to consumers groups this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer Groups\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginResponseTransformerAdvancedId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginResponseTransformerAdvancedOrdering:GatewayPluginResponseTransformerAdvancedOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginResponseTransformerAdvancedPartial:GatewayPluginResponseTransformerAdvancedPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginResponseTransformerAdvancedRoute:GatewayPluginResponseTransformerAdvancedRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginResponseTransformerAdvancedService:GatewayPluginResponseTransformerAdvancedService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object","required":["config","consumer","consumerGroup","controlPlaneId","createdAt","enabled","gatewayPluginResponseTransformerAdvancedId","ordering","protocols","route","service","updatedAt"],"inputProperties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginResponseTransformerAdvancedConfig:GatewayPluginResponseTransformerAdvancedConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginResponseTransformerAdvancedConsumer:GatewayPluginResponseTransformerAdvancedConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"consumerGroup":{"$ref":"#/types/konnect:index%2FGatewayPluginResponseTransformerAdvancedConsumerGroup:GatewayPluginResponseTransformerAdvancedConsumerGroup","description":"If set, the plugin will activate only for requests where the specified consumer group has been authenticated. (Note that some plugins can not be restricted to consumers groups this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer Groups\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginResponseTransformerAdvancedId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginResponseTransformerAdvancedOrdering:GatewayPluginResponseTransformerAdvancedOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginResponseTransformerAdvancedPartial:GatewayPluginResponseTransformerAdvancedPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginResponseTransformerAdvancedRoute:GatewayPluginResponseTransformerAdvancedRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginResponseTransformerAdvancedService:GatewayPluginResponseTransformerAdvancedService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"requiredInputs":["controlPlaneId"],"stateInputs":{"description":"Input properties used for looking up and filtering GatewayPluginResponseTransformerAdvanced resources.\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginResponseTransformerAdvancedConfig:GatewayPluginResponseTransformerAdvancedConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginResponseTransformerAdvancedConsumer:GatewayPluginResponseTransformerAdvancedConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"consumerGroup":{"$ref":"#/types/konnect:index%2FGatewayPluginResponseTransformerAdvancedConsumerGroup:GatewayPluginResponseTransformerAdvancedConsumerGroup","description":"If set, the plugin will activate only for requests where the specified consumer group has been authenticated. (Note that some plugins can not be restricted to consumers groups this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer Groups\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginResponseTransformerAdvancedId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginResponseTransformerAdvancedOrdering:GatewayPluginResponseTransformerAdvancedOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginResponseTransformerAdvancedPartial:GatewayPluginResponseTransformerAdvancedPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginResponseTransformerAdvancedRoute:GatewayPluginResponseTransformerAdvancedRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginResponseTransformerAdvancedService:GatewayPluginResponseTransformerAdvancedService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object"}},"konnect:index/gatewayPluginRouteByHeader:GatewayPluginRouteByHeader":{"description":"GatewayPluginRouteByHeader Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myGatewaypluginroutebyheader = new konnect.GatewayPluginRouteByHeader(\"my_gatewaypluginroutebyheader\", {\n    config: {\n        rules: [{\n            condition: {\n                key: \"value\",\n            },\n            upstreamName: \"...my_upstream_name...\",\n        }],\n    },\n    consumer: {\n        id: \"...my_id...\",\n    },\n    controlPlaneId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    createdAt: 0,\n    enabled: true,\n    gatewayPluginRouteByHeaderId: \"...my_id...\",\n    instanceName: \"...my_instance_name...\",\n    ordering: {\n        after: {\n            accesses: [\"...\"],\n        },\n        before: {\n            accesses: [\"...\"],\n        },\n    },\n    partials: [{\n        id: \"...my_id...\",\n        name: \"...my_name...\",\n        path: \"...my_path...\",\n    }],\n    protocols: [\"http\"],\n    route: {\n        id: \"...my_id...\",\n    },\n    service: {\n        id: \"...my_id...\",\n    },\n    tags: [\"...\"],\n    updatedAt: 8,\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_gatewaypluginroutebyheader = konnect.GatewayPluginRouteByHeader(\"my_gatewaypluginroutebyheader\",\n    config={\n        \"rules\": [{\n            \"condition\": {\n                \"key\": \"value\",\n            },\n            \"upstream_name\": \"...my_upstream_name...\",\n        }],\n    },\n    consumer={\n        \"id\": \"...my_id...\",\n    },\n    control_plane_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    created_at=0,\n    enabled=True,\n    gateway_plugin_route_by_header_id=\"...my_id...\",\n    instance_name=\"...my_instance_name...\",\n    ordering={\n        \"after\": {\n            \"accesses\": [\"...\"],\n        },\n        \"before\": {\n            \"accesses\": [\"...\"],\n        },\n    },\n    partials=[{\n        \"id\": \"...my_id...\",\n        \"name\": \"...my_name...\",\n        \"path\": \"...my_path...\",\n    }],\n    protocols=[\"http\"],\n    route={\n        \"id\": \"...my_id...\",\n    },\n    service={\n        \"id\": \"...my_id...\",\n    },\n    tags=[\"...\"],\n    updated_at=8)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myGatewaypluginroutebyheader = new Konnect.GatewayPluginRouteByHeader(\"my_gatewaypluginroutebyheader\", new()\n    {\n        Config = new Konnect.Inputs.GatewayPluginRouteByHeaderConfigArgs\n        {\n            Rules = new[]\n            {\n                new Konnect.Inputs.GatewayPluginRouteByHeaderConfigRuleArgs\n                {\n                    Condition = \n                    {\n                        { \"key\", \"value\" },\n                    },\n                    UpstreamName = \"...my_upstream_name...\",\n                },\n            },\n        },\n        Consumer = new Konnect.Inputs.GatewayPluginRouteByHeaderConsumerArgs\n        {\n            Id = \"...my_id...\",\n        },\n        ControlPlaneId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        CreatedAt = 0,\n        Enabled = true,\n        GatewayPluginRouteByHeaderId = \"...my_id...\",\n        InstanceName = \"...my_instance_name...\",\n        Ordering = new Konnect.Inputs.GatewayPluginRouteByHeaderOrderingArgs\n        {\n            After = new Konnect.Inputs.GatewayPluginRouteByHeaderOrderingAfterArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n            Before = new Konnect.Inputs.GatewayPluginRouteByHeaderOrderingBeforeArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n        },\n        Partials = new[]\n        {\n            new Konnect.Inputs.GatewayPluginRouteByHeaderPartialArgs\n            {\n                Id = \"...my_id...\",\n                Name = \"...my_name...\",\n                Path = \"...my_path...\",\n            },\n        },\n        Protocols = new[]\n        {\n            \"http\",\n        },\n        Route = new Konnect.Inputs.GatewayPluginRouteByHeaderRouteArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Service = new Konnect.Inputs.GatewayPluginRouteByHeaderServiceArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Tags = new[]\n        {\n            \"...\",\n        },\n        UpdatedAt = 8,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewGatewayPluginRouteByHeader(ctx, \"my_gatewaypluginroutebyheader\", \u0026konnect.GatewayPluginRouteByHeaderArgs{\n\t\t\tConfig: \u0026konnect.GatewayPluginRouteByHeaderConfigArgs{\n\t\t\t\tRules: konnect.GatewayPluginRouteByHeaderConfigRuleArray{\n\t\t\t\t\t\u0026konnect.GatewayPluginRouteByHeaderConfigRuleArgs{\n\t\t\t\t\t\tCondition: pulumi.StringMap{\n\t\t\t\t\t\t\t\"key\": pulumi.String(\"value\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\tUpstreamName: pulumi.String(\"...my_upstream_name...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tConsumer: \u0026konnect.GatewayPluginRouteByHeaderConsumerArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tControlPlaneId:               pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tCreatedAt:                    pulumi.Float64(0),\n\t\t\tEnabled:                      pulumi.Bool(true),\n\t\t\tGatewayPluginRouteByHeaderId: pulumi.String(\"...my_id...\"),\n\t\t\tInstanceName:                 pulumi.String(\"...my_instance_name...\"),\n\t\t\tOrdering: \u0026konnect.GatewayPluginRouteByHeaderOrderingArgs{\n\t\t\t\tAfter: \u0026konnect.GatewayPluginRouteByHeaderOrderingAfterArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tBefore: \u0026konnect.GatewayPluginRouteByHeaderOrderingBeforeArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tPartials: konnect.GatewayPluginRouteByHeaderPartialArray{\n\t\t\t\t\u0026konnect.GatewayPluginRouteByHeaderPartialArgs{\n\t\t\t\t\tId:   pulumi.String(\"...my_id...\"),\n\t\t\t\t\tName: pulumi.String(\"...my_name...\"),\n\t\t\t\t\tPath: pulumi.String(\"...my_path...\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tProtocols: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"http\"),\n\t\t\t},\n\t\t\tRoute: \u0026konnect.GatewayPluginRouteByHeaderRouteArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tService: \u0026konnect.GatewayPluginRouteByHeaderServiceArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"...\"),\n\t\t\t},\n\t\t\tUpdatedAt: pulumi.Float64(8),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.GatewayPluginRouteByHeader;\nimport com.pulumi.konnect.GatewayPluginRouteByHeaderArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginRouteByHeaderConfigArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginRouteByHeaderConsumerArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginRouteByHeaderOrderingArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginRouteByHeaderOrderingAfterArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginRouteByHeaderOrderingBeforeArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginRouteByHeaderPartialArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginRouteByHeaderRouteArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginRouteByHeaderServiceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myGatewaypluginroutebyheader = new GatewayPluginRouteByHeader(\"myGatewaypluginroutebyheader\", GatewayPluginRouteByHeaderArgs.builder()\n            .config(GatewayPluginRouteByHeaderConfigArgs.builder()\n                .rules(GatewayPluginRouteByHeaderConfigRuleArgs.builder()\n                    .condition(Map.of(\"key\", \"value\"))\n                    .upstreamName(\"...my_upstream_name...\")\n                    .build())\n                .build())\n            .consumer(GatewayPluginRouteByHeaderConsumerArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .controlPlaneId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .createdAt(0.0)\n            .enabled(true)\n            .gatewayPluginRouteByHeaderId(\"...my_id...\")\n            .instanceName(\"...my_instance_name...\")\n            .ordering(GatewayPluginRouteByHeaderOrderingArgs.builder()\n                .after(GatewayPluginRouteByHeaderOrderingAfterArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .before(GatewayPluginRouteByHeaderOrderingBeforeArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .build())\n            .partials(GatewayPluginRouteByHeaderPartialArgs.builder()\n                .id(\"...my_id...\")\n                .name(\"...my_name...\")\n                .path(\"...my_path...\")\n                .build())\n            .protocols(\"http\")\n            .route(GatewayPluginRouteByHeaderRouteArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .service(GatewayPluginRouteByHeaderServiceArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .tags(\"...\")\n            .updatedAt(8.0)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myGatewaypluginroutebyheader:\n    type: konnect:GatewayPluginRouteByHeader\n    name: my_gatewaypluginroutebyheader\n    properties:\n      config:\n        rules:\n          - condition:\n              key: value\n            upstreamName: '...my_upstream_name...'\n      consumer:\n        id: '...my_id...'\n      controlPlaneId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      createdAt: 0\n      enabled: true\n      gatewayPluginRouteByHeaderId: '...my_id...'\n      instanceName: '...my_instance_name...'\n      ordering:\n        after:\n          accesses:\n            - '...'\n        before:\n          accesses:\n            - '...'\n      partials:\n        - id: '...my_id...'\n          name: '...my_name...'\n          path: '...my_path...'\n      protocols:\n        - http\n      route:\n        id: '...my_id...'\n      service:\n        id: '...my_id...'\n      tags:\n        - '...'\n      updatedAt: 8\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_gateway_plugin_route_by_header.my_konnect_gateway_plugin_route_by_header\n\n  id = jsonencode({\n\n    control_plane_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/gatewayPluginRouteByHeader:GatewayPluginRouteByHeader my_konnect_gateway_plugin_route_by_header '{\"control_plane_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"}'\n```\n\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginRouteByHeaderConfig:GatewayPluginRouteByHeaderConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginRouteByHeaderConsumer:GatewayPluginRouteByHeaderConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginRouteByHeaderId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginRouteByHeaderOrdering:GatewayPluginRouteByHeaderOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginRouteByHeaderPartial:GatewayPluginRouteByHeaderPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginRouteByHeaderRoute:GatewayPluginRouteByHeaderRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginRouteByHeaderService:GatewayPluginRouteByHeaderService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object","required":["config","consumer","controlPlaneId","createdAt","enabled","gatewayPluginRouteByHeaderId","ordering","protocols","route","service","updatedAt"],"inputProperties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginRouteByHeaderConfig:GatewayPluginRouteByHeaderConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginRouteByHeaderConsumer:GatewayPluginRouteByHeaderConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginRouteByHeaderId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginRouteByHeaderOrdering:GatewayPluginRouteByHeaderOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginRouteByHeaderPartial:GatewayPluginRouteByHeaderPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginRouteByHeaderRoute:GatewayPluginRouteByHeaderRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginRouteByHeaderService:GatewayPluginRouteByHeaderService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"requiredInputs":["controlPlaneId"],"stateInputs":{"description":"Input properties used for looking up and filtering GatewayPluginRouteByHeader resources.\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginRouteByHeaderConfig:GatewayPluginRouteByHeaderConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginRouteByHeaderConsumer:GatewayPluginRouteByHeaderConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginRouteByHeaderId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginRouteByHeaderOrdering:GatewayPluginRouteByHeaderOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginRouteByHeaderPartial:GatewayPluginRouteByHeaderPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginRouteByHeaderRoute:GatewayPluginRouteByHeaderRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginRouteByHeaderService:GatewayPluginRouteByHeaderService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object"}},"konnect:index/gatewayPluginRouteTransformerAdvanced:GatewayPluginRouteTransformerAdvanced":{"description":"GatewayPluginRouteTransformerAdvanced Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myGatewaypluginroutetransformeradvanced = new konnect.GatewayPluginRouteTransformerAdvanced(\"my_gatewaypluginroutetransformeradvanced\", {\n    config: {\n        escapePath: false,\n        host: \"...my_host...\",\n        path: \"...my_path...\",\n        port: \"...my_port...\",\n    },\n    consumer: {\n        id: \"...my_id...\",\n    },\n    controlPlaneId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    createdAt: 0,\n    enabled: true,\n    gatewayPluginRouteTransformerAdvancedId: \"...my_id...\",\n    instanceName: \"...my_instance_name...\",\n    ordering: {\n        after: {\n            accesses: [\"...\"],\n        },\n        before: {\n            accesses: [\"...\"],\n        },\n    },\n    partials: [{\n        id: \"...my_id...\",\n        name: \"...my_name...\",\n        path: \"...my_path...\",\n    }],\n    protocols: [\"grpc\"],\n    route: {\n        id: \"...my_id...\",\n    },\n    service: {\n        id: \"...my_id...\",\n    },\n    tags: [\"...\"],\n    updatedAt: 5,\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_gatewaypluginroutetransformeradvanced = konnect.GatewayPluginRouteTransformerAdvanced(\"my_gatewaypluginroutetransformeradvanced\",\n    config={\n        \"escape_path\": False,\n        \"host\": \"...my_host...\",\n        \"path\": \"...my_path...\",\n        \"port\": \"...my_port...\",\n    },\n    consumer={\n        \"id\": \"...my_id...\",\n    },\n    control_plane_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    created_at=0,\n    enabled=True,\n    gateway_plugin_route_transformer_advanced_id=\"...my_id...\",\n    instance_name=\"...my_instance_name...\",\n    ordering={\n        \"after\": {\n            \"accesses\": [\"...\"],\n        },\n        \"before\": {\n            \"accesses\": [\"...\"],\n        },\n    },\n    partials=[{\n        \"id\": \"...my_id...\",\n        \"name\": \"...my_name...\",\n        \"path\": \"...my_path...\",\n    }],\n    protocols=[\"grpc\"],\n    route={\n        \"id\": \"...my_id...\",\n    },\n    service={\n        \"id\": \"...my_id...\",\n    },\n    tags=[\"...\"],\n    updated_at=5)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myGatewaypluginroutetransformeradvanced = new Konnect.GatewayPluginRouteTransformerAdvanced(\"my_gatewaypluginroutetransformeradvanced\", new()\n    {\n        Config = new Konnect.Inputs.GatewayPluginRouteTransformerAdvancedConfigArgs\n        {\n            EscapePath = false,\n            Host = \"...my_host...\",\n            Path = \"...my_path...\",\n            Port = \"...my_port...\",\n        },\n        Consumer = new Konnect.Inputs.GatewayPluginRouteTransformerAdvancedConsumerArgs\n        {\n            Id = \"...my_id...\",\n        },\n        ControlPlaneId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        CreatedAt = 0,\n        Enabled = true,\n        GatewayPluginRouteTransformerAdvancedId = \"...my_id...\",\n        InstanceName = \"...my_instance_name...\",\n        Ordering = new Konnect.Inputs.GatewayPluginRouteTransformerAdvancedOrderingArgs\n        {\n            After = new Konnect.Inputs.GatewayPluginRouteTransformerAdvancedOrderingAfterArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n            Before = new Konnect.Inputs.GatewayPluginRouteTransformerAdvancedOrderingBeforeArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n        },\n        Partials = new[]\n        {\n            new Konnect.Inputs.GatewayPluginRouteTransformerAdvancedPartialArgs\n            {\n                Id = \"...my_id...\",\n                Name = \"...my_name...\",\n                Path = \"...my_path...\",\n            },\n        },\n        Protocols = new[]\n        {\n            \"grpc\",\n        },\n        Route = new Konnect.Inputs.GatewayPluginRouteTransformerAdvancedRouteArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Service = new Konnect.Inputs.GatewayPluginRouteTransformerAdvancedServiceArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Tags = new[]\n        {\n            \"...\",\n        },\n        UpdatedAt = 5,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewGatewayPluginRouteTransformerAdvanced(ctx, \"my_gatewaypluginroutetransformeradvanced\", \u0026konnect.GatewayPluginRouteTransformerAdvancedArgs{\n\t\t\tConfig: \u0026konnect.GatewayPluginRouteTransformerAdvancedConfigArgs{\n\t\t\t\tEscapePath: pulumi.Bool(false),\n\t\t\t\tHost:       pulumi.String(\"...my_host...\"),\n\t\t\t\tPath:       pulumi.String(\"...my_path...\"),\n\t\t\t\tPort:       pulumi.String(\"...my_port...\"),\n\t\t\t},\n\t\t\tConsumer: \u0026konnect.GatewayPluginRouteTransformerAdvancedConsumerArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tControlPlaneId:                          pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tCreatedAt:                               pulumi.Float64(0),\n\t\t\tEnabled:                                 pulumi.Bool(true),\n\t\t\tGatewayPluginRouteTransformerAdvancedId: pulumi.String(\"...my_id...\"),\n\t\t\tInstanceName:                            pulumi.String(\"...my_instance_name...\"),\n\t\t\tOrdering: \u0026konnect.GatewayPluginRouteTransformerAdvancedOrderingArgs{\n\t\t\t\tAfter: \u0026konnect.GatewayPluginRouteTransformerAdvancedOrderingAfterArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tBefore: \u0026konnect.GatewayPluginRouteTransformerAdvancedOrderingBeforeArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tPartials: konnect.GatewayPluginRouteTransformerAdvancedPartialArray{\n\t\t\t\t\u0026konnect.GatewayPluginRouteTransformerAdvancedPartialArgs{\n\t\t\t\t\tId:   pulumi.String(\"...my_id...\"),\n\t\t\t\t\tName: pulumi.String(\"...my_name...\"),\n\t\t\t\t\tPath: pulumi.String(\"...my_path...\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tProtocols: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"grpc\"),\n\t\t\t},\n\t\t\tRoute: \u0026konnect.GatewayPluginRouteTransformerAdvancedRouteArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tService: \u0026konnect.GatewayPluginRouteTransformerAdvancedServiceArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"...\"),\n\t\t\t},\n\t\t\tUpdatedAt: pulumi.Float64(5),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.GatewayPluginRouteTransformerAdvanced;\nimport com.pulumi.konnect.GatewayPluginRouteTransformerAdvancedArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginRouteTransformerAdvancedConfigArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginRouteTransformerAdvancedConsumerArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginRouteTransformerAdvancedOrderingArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginRouteTransformerAdvancedOrderingAfterArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginRouteTransformerAdvancedOrderingBeforeArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginRouteTransformerAdvancedPartialArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginRouteTransformerAdvancedRouteArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginRouteTransformerAdvancedServiceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myGatewaypluginroutetransformeradvanced = new GatewayPluginRouteTransformerAdvanced(\"myGatewaypluginroutetransformeradvanced\", GatewayPluginRouteTransformerAdvancedArgs.builder()\n            .config(GatewayPluginRouteTransformerAdvancedConfigArgs.builder()\n                .escapePath(false)\n                .host(\"...my_host...\")\n                .path(\"...my_path...\")\n                .port(\"...my_port...\")\n                .build())\n            .consumer(GatewayPluginRouteTransformerAdvancedConsumerArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .controlPlaneId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .createdAt(0.0)\n            .enabled(true)\n            .gatewayPluginRouteTransformerAdvancedId(\"...my_id...\")\n            .instanceName(\"...my_instance_name...\")\n            .ordering(GatewayPluginRouteTransformerAdvancedOrderingArgs.builder()\n                .after(GatewayPluginRouteTransformerAdvancedOrderingAfterArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .before(GatewayPluginRouteTransformerAdvancedOrderingBeforeArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .build())\n            .partials(GatewayPluginRouteTransformerAdvancedPartialArgs.builder()\n                .id(\"...my_id...\")\n                .name(\"...my_name...\")\n                .path(\"...my_path...\")\n                .build())\n            .protocols(\"grpc\")\n            .route(GatewayPluginRouteTransformerAdvancedRouteArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .service(GatewayPluginRouteTransformerAdvancedServiceArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .tags(\"...\")\n            .updatedAt(5.0)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myGatewaypluginroutetransformeradvanced:\n    type: konnect:GatewayPluginRouteTransformerAdvanced\n    name: my_gatewaypluginroutetransformeradvanced\n    properties:\n      config:\n        escapePath: false\n        host: '...my_host...'\n        path: '...my_path...'\n        port: '...my_port...'\n      consumer:\n        id: '...my_id...'\n      controlPlaneId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      createdAt: 0\n      enabled: true\n      gatewayPluginRouteTransformerAdvancedId: '...my_id...'\n      instanceName: '...my_instance_name...'\n      ordering:\n        after:\n          accesses:\n            - '...'\n        before:\n          accesses:\n            - '...'\n      partials:\n        - id: '...my_id...'\n          name: '...my_name...'\n          path: '...my_path...'\n      protocols:\n        - grpc\n      route:\n        id: '...my_id...'\n      service:\n        id: '...my_id...'\n      tags:\n        - '...'\n      updatedAt: 5\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_gateway_plugin_route_transformer_advanced.my_konnect_gateway_plugin_route_transformer_advanced\n\n  id = jsonencode({\n\n    control_plane_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/gatewayPluginRouteTransformerAdvanced:GatewayPluginRouteTransformerAdvanced my_konnect_gateway_plugin_route_transformer_advanced '{\"control_plane_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"}'\n```\n\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginRouteTransformerAdvancedConfig:GatewayPluginRouteTransformerAdvancedConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginRouteTransformerAdvancedConsumer:GatewayPluginRouteTransformerAdvancedConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginRouteTransformerAdvancedId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginRouteTransformerAdvancedOrdering:GatewayPluginRouteTransformerAdvancedOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginRouteTransformerAdvancedPartial:GatewayPluginRouteTransformerAdvancedPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginRouteTransformerAdvancedRoute:GatewayPluginRouteTransformerAdvancedRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginRouteTransformerAdvancedService:GatewayPluginRouteTransformerAdvancedService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object","required":["config","consumer","controlPlaneId","createdAt","enabled","gatewayPluginRouteTransformerAdvancedId","ordering","protocols","route","service","updatedAt"],"inputProperties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginRouteTransformerAdvancedConfig:GatewayPluginRouteTransformerAdvancedConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginRouteTransformerAdvancedConsumer:GatewayPluginRouteTransformerAdvancedConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginRouteTransformerAdvancedId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginRouteTransformerAdvancedOrdering:GatewayPluginRouteTransformerAdvancedOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginRouteTransformerAdvancedPartial:GatewayPluginRouteTransformerAdvancedPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginRouteTransformerAdvancedRoute:GatewayPluginRouteTransformerAdvancedRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginRouteTransformerAdvancedService:GatewayPluginRouteTransformerAdvancedService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"requiredInputs":["controlPlaneId"],"stateInputs":{"description":"Input properties used for looking up and filtering GatewayPluginRouteTransformerAdvanced resources.\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginRouteTransformerAdvancedConfig:GatewayPluginRouteTransformerAdvancedConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginRouteTransformerAdvancedConsumer:GatewayPluginRouteTransformerAdvancedConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginRouteTransformerAdvancedId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginRouteTransformerAdvancedOrdering:GatewayPluginRouteTransformerAdvancedOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginRouteTransformerAdvancedPartial:GatewayPluginRouteTransformerAdvancedPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginRouteTransformerAdvancedRoute:GatewayPluginRouteTransformerAdvancedRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginRouteTransformerAdvancedService:GatewayPluginRouteTransformerAdvancedService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object"}},"konnect:index/gatewayPluginSaml:GatewayPluginSaml":{"description":"GatewayPluginSaml Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myGatewaypluginsaml = new konnect.GatewayPluginSaml(\"my_gatewaypluginsaml\", {\n    config: {\n        anonymous: \"...my_anonymous...\",\n        assertionConsumerPath: \"...my_assertion_consumer_path...\",\n        idpCertificate: \"...my_idp_certificate...\",\n        idpSsoUrl: \"...my_idp_sso_url...\",\n        issuer: \"...my_issuer...\",\n        nameidFormat: \"EmailAddress\",\n        redis: {\n            cloudAuthentication: {\n                authProvider: \"azure\",\n                awsAccessKeyId: \"...my_aws_access_key_id...\",\n                awsAssumeRoleArn: \"...my_aws_assume_role_arn...\",\n                awsCacheName: \"...my_aws_cache_name...\",\n                awsIsServerless: true,\n                awsRegion: \"...my_aws_region...\",\n                awsRoleSessionName: \"...my_aws_role_session_name...\",\n                awsSecretAccessKey: \"...my_aws_secret_access_key...\",\n                azureClientId: \"...my_azure_client_id...\",\n                azureClientSecret: \"...my_azure_client_secret...\",\n                azureTenantId: \"...my_azure_tenant_id...\",\n                gcpServiceAccountJson: \"...my_gcp_service_account_json...\",\n            },\n            clusterMaxRedirections: 0,\n            clusterNodes: [{\n                ip: \"...my_ip...\",\n                port: 21415,\n            }],\n            connectTimeout: 1914874679,\n            connectionIsProxied: true,\n            database: 7,\n            host: \"...my_host...\",\n            keepaliveBacklog: 2023529059,\n            keepalivePoolSize: 1633101853,\n            password: \"...my_password...\",\n            port: 6907,\n            prefix: \"...my_prefix...\",\n            readTimeout: 1468960257,\n            sendTimeout: 1619402496,\n            sentinelMaster: \"...my_sentinel_master...\",\n            sentinelNodes: [{\n                host: \"...my_host...\",\n                port: 44971,\n            }],\n            sentinelPassword: \"...my_sentinel_password...\",\n            sentinelRole: \"any\",\n            sentinelUsername: \"...my_sentinel_username...\",\n            serverName: \"...my_server_name...\",\n            socket: \"...my_socket...\",\n            ssl: true,\n            sslVerify: false,\n            username: \"...my_username...\",\n        },\n        requestDigestAlgorithm: \"SHA256\",\n        requestSignatureAlgorithm: \"SHA384\",\n        requestSigningCertificate: \"...my_request_signing_certificate...\",\n        requestSigningKey: \"...my_request_signing_key...\",\n        responseDigestAlgorithm: \"SHA256\",\n        responseEncryptionKey: \"...my_response_encryption_key...\",\n        responseSignatureAlgorithm: \"SHA384\",\n        sessionAbsoluteTimeout: 8.17,\n        sessionAudience: \"...my_session_audience...\",\n        sessionCookieDomain: \"...my_session_cookie_domain...\",\n        sessionCookieHttpOnly: true,\n        sessionCookieName: \"...my_session_cookie_name...\",\n        sessionCookiePath: \"...my_session_cookie_path...\",\n        sessionCookieSameSite: \"None\",\n        sessionCookieSecure: true,\n        sessionEnforceSameSubject: true,\n        sessionHashStorageKey: false,\n        sessionHashSubject: false,\n        sessionIdlingTimeout: 3.44,\n        sessionMemcachedHost: \"...my_session_memcached_host...\",\n        sessionMemcachedPort: 59429,\n        sessionMemcachedPrefix: \"...my_session_memcached_prefix...\",\n        sessionMemcachedSocket: \"...my_session_memcached_socket...\",\n        sessionRemember: false,\n        sessionRememberAbsoluteTimeout: 4.84,\n        sessionRememberCookieName: \"...my_session_remember_cookie_name...\",\n        sessionRememberRollingTimeout: 7.93,\n        sessionRequestHeaders: [\"absolute-timeout\"],\n        sessionResponseHeaders: [\"absolute-timeout\"],\n        sessionRollingTimeout: 5.35,\n        sessionSecret: \"...my_session_secret...\",\n        sessionStorage: \"cookie\",\n        sessionStoreMetadata: false,\n        validateAssertionSignature: true,\n    },\n    controlPlaneId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    createdAt: 8,\n    enabled: true,\n    gatewayPluginSamlId: \"...my_id...\",\n    instanceName: \"...my_instance_name...\",\n    ordering: {\n        after: {\n            accesses: [\"...\"],\n        },\n        before: {\n            accesses: [\"...\"],\n        },\n    },\n    partials: [{\n        id: \"...my_id...\",\n        name: \"...my_name...\",\n        path: \"...my_path...\",\n    }],\n    protocols: [\"grpc\"],\n    route: {\n        id: \"...my_id...\",\n    },\n    service: {\n        id: \"...my_id...\",\n    },\n    tags: [\"...\"],\n    updatedAt: 5,\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_gatewaypluginsaml = konnect.GatewayPluginSaml(\"my_gatewaypluginsaml\",\n    config={\n        \"anonymous\": \"...my_anonymous...\",\n        \"assertion_consumer_path\": \"...my_assertion_consumer_path...\",\n        \"idp_certificate\": \"...my_idp_certificate...\",\n        \"idp_sso_url\": \"...my_idp_sso_url...\",\n        \"issuer\": \"...my_issuer...\",\n        \"nameid_format\": \"EmailAddress\",\n        \"redis\": {\n            \"cloud_authentication\": {\n                \"auth_provider\": \"azure\",\n                \"aws_access_key_id\": \"...my_aws_access_key_id...\",\n                \"aws_assume_role_arn\": \"...my_aws_assume_role_arn...\",\n                \"aws_cache_name\": \"...my_aws_cache_name...\",\n                \"aws_is_serverless\": True,\n                \"aws_region\": \"...my_aws_region...\",\n                \"aws_role_session_name\": \"...my_aws_role_session_name...\",\n                \"aws_secret_access_key\": \"...my_aws_secret_access_key...\",\n                \"azure_client_id\": \"...my_azure_client_id...\",\n                \"azure_client_secret\": \"...my_azure_client_secret...\",\n                \"azure_tenant_id\": \"...my_azure_tenant_id...\",\n                \"gcp_service_account_json\": \"...my_gcp_service_account_json...\",\n            },\n            \"cluster_max_redirections\": 0,\n            \"cluster_nodes\": [{\n                \"ip\": \"...my_ip...\",\n                \"port\": 21415,\n            }],\n            \"connect_timeout\": 1914874679,\n            \"connection_is_proxied\": True,\n            \"database\": 7,\n            \"host\": \"...my_host...\",\n            \"keepalive_backlog\": 2023529059,\n            \"keepalive_pool_size\": 1633101853,\n            \"password\": \"...my_password...\",\n            \"port\": 6907,\n            \"prefix\": \"...my_prefix...\",\n            \"read_timeout\": 1468960257,\n            \"send_timeout\": 1619402496,\n            \"sentinel_master\": \"...my_sentinel_master...\",\n            \"sentinel_nodes\": [{\n                \"host\": \"...my_host...\",\n                \"port\": 44971,\n            }],\n            \"sentinel_password\": \"...my_sentinel_password...\",\n            \"sentinel_role\": \"any\",\n            \"sentinel_username\": \"...my_sentinel_username...\",\n            \"server_name\": \"...my_server_name...\",\n            \"socket\": \"...my_socket...\",\n            \"ssl\": True,\n            \"ssl_verify\": False,\n            \"username\": \"...my_username...\",\n        },\n        \"request_digest_algorithm\": \"SHA256\",\n        \"request_signature_algorithm\": \"SHA384\",\n        \"request_signing_certificate\": \"...my_request_signing_certificate...\",\n        \"request_signing_key\": \"...my_request_signing_key...\",\n        \"response_digest_algorithm\": \"SHA256\",\n        \"response_encryption_key\": \"...my_response_encryption_key...\",\n        \"response_signature_algorithm\": \"SHA384\",\n        \"session_absolute_timeout\": 8.17,\n        \"session_audience\": \"...my_session_audience...\",\n        \"session_cookie_domain\": \"...my_session_cookie_domain...\",\n        \"session_cookie_http_only\": True,\n        \"session_cookie_name\": \"...my_session_cookie_name...\",\n        \"session_cookie_path\": \"...my_session_cookie_path...\",\n        \"session_cookie_same_site\": \"None\",\n        \"session_cookie_secure\": True,\n        \"session_enforce_same_subject\": True,\n        \"session_hash_storage_key\": False,\n        \"session_hash_subject\": False,\n        \"session_idling_timeout\": 3.44,\n        \"session_memcached_host\": \"...my_session_memcached_host...\",\n        \"session_memcached_port\": 59429,\n        \"session_memcached_prefix\": \"...my_session_memcached_prefix...\",\n        \"session_memcached_socket\": \"...my_session_memcached_socket...\",\n        \"session_remember\": False,\n        \"session_remember_absolute_timeout\": 4.84,\n        \"session_remember_cookie_name\": \"...my_session_remember_cookie_name...\",\n        \"session_remember_rolling_timeout\": 7.93,\n        \"session_request_headers\": [\"absolute-timeout\"],\n        \"session_response_headers\": [\"absolute-timeout\"],\n        \"session_rolling_timeout\": 5.35,\n        \"session_secret\": \"...my_session_secret...\",\n        \"session_storage\": \"cookie\",\n        \"session_store_metadata\": False,\n        \"validate_assertion_signature\": True,\n    },\n    control_plane_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    created_at=8,\n    enabled=True,\n    gateway_plugin_saml_id=\"...my_id...\",\n    instance_name=\"...my_instance_name...\",\n    ordering={\n        \"after\": {\n            \"accesses\": [\"...\"],\n        },\n        \"before\": {\n            \"accesses\": [\"...\"],\n        },\n    },\n    partials=[{\n        \"id\": \"...my_id...\",\n        \"name\": \"...my_name...\",\n        \"path\": \"...my_path...\",\n    }],\n    protocols=[\"grpc\"],\n    route={\n        \"id\": \"...my_id...\",\n    },\n    service={\n        \"id\": \"...my_id...\",\n    },\n    tags=[\"...\"],\n    updated_at=5)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myGatewaypluginsaml = new Konnect.GatewayPluginSaml(\"my_gatewaypluginsaml\", new()\n    {\n        Config = new Konnect.Inputs.GatewayPluginSamlConfigArgs\n        {\n            Anonymous = \"...my_anonymous...\",\n            AssertionConsumerPath = \"...my_assertion_consumer_path...\",\n            IdpCertificate = \"...my_idp_certificate...\",\n            IdpSsoUrl = \"...my_idp_sso_url...\",\n            Issuer = \"...my_issuer...\",\n            NameidFormat = \"EmailAddress\",\n            Redis = new Konnect.Inputs.GatewayPluginSamlConfigRedisArgs\n            {\n                CloudAuthentication = new Konnect.Inputs.GatewayPluginSamlConfigRedisCloudAuthenticationArgs\n                {\n                    AuthProvider = \"azure\",\n                    AwsAccessKeyId = \"...my_aws_access_key_id...\",\n                    AwsAssumeRoleArn = \"...my_aws_assume_role_arn...\",\n                    AwsCacheName = \"...my_aws_cache_name...\",\n                    AwsIsServerless = true,\n                    AwsRegion = \"...my_aws_region...\",\n                    AwsRoleSessionName = \"...my_aws_role_session_name...\",\n                    AwsSecretAccessKey = \"...my_aws_secret_access_key...\",\n                    AzureClientId = \"...my_azure_client_id...\",\n                    AzureClientSecret = \"...my_azure_client_secret...\",\n                    AzureTenantId = \"...my_azure_tenant_id...\",\n                    GcpServiceAccountJson = \"...my_gcp_service_account_json...\",\n                },\n                ClusterMaxRedirections = 0,\n                ClusterNodes = new[]\n                {\n                    new Konnect.Inputs.GatewayPluginSamlConfigRedisClusterNodeArgs\n                    {\n                        Ip = \"...my_ip...\",\n                        Port = 21415,\n                    },\n                },\n                ConnectTimeout = 1914874679,\n                ConnectionIsProxied = true,\n                Database = 7,\n                Host = \"...my_host...\",\n                KeepaliveBacklog = 2023529059,\n                KeepalivePoolSize = 1633101853,\n                Password = \"...my_password...\",\n                Port = 6907,\n                Prefix = \"...my_prefix...\",\n                ReadTimeout = 1468960257,\n                SendTimeout = 1619402496,\n                SentinelMaster = \"...my_sentinel_master...\",\n                SentinelNodes = new[]\n                {\n                    new Konnect.Inputs.GatewayPluginSamlConfigRedisSentinelNodeArgs\n                    {\n                        Host = \"...my_host...\",\n                        Port = 44971,\n                    },\n                },\n                SentinelPassword = \"...my_sentinel_password...\",\n                SentinelRole = \"any\",\n                SentinelUsername = \"...my_sentinel_username...\",\n                ServerName = \"...my_server_name...\",\n                Socket = \"...my_socket...\",\n                Ssl = true,\n                SslVerify = false,\n                Username = \"...my_username...\",\n            },\n            RequestDigestAlgorithm = \"SHA256\",\n            RequestSignatureAlgorithm = \"SHA384\",\n            RequestSigningCertificate = \"...my_request_signing_certificate...\",\n            RequestSigningKey = \"...my_request_signing_key...\",\n            ResponseDigestAlgorithm = \"SHA256\",\n            ResponseEncryptionKey = \"...my_response_encryption_key...\",\n            ResponseSignatureAlgorithm = \"SHA384\",\n            SessionAbsoluteTimeout = 8.17,\n            SessionAudience = \"...my_session_audience...\",\n            SessionCookieDomain = \"...my_session_cookie_domain...\",\n            SessionCookieHttpOnly = true,\n            SessionCookieName = \"...my_session_cookie_name...\",\n            SessionCookiePath = \"...my_session_cookie_path...\",\n            SessionCookieSameSite = \"None\",\n            SessionCookieSecure = true,\n            SessionEnforceSameSubject = true,\n            SessionHashStorageKey = false,\n            SessionHashSubject = false,\n            SessionIdlingTimeout = 3.44,\n            SessionMemcachedHost = \"...my_session_memcached_host...\",\n            SessionMemcachedPort = 59429,\n            SessionMemcachedPrefix = \"...my_session_memcached_prefix...\",\n            SessionMemcachedSocket = \"...my_session_memcached_socket...\",\n            SessionRemember = false,\n            SessionRememberAbsoluteTimeout = 4.84,\n            SessionRememberCookieName = \"...my_session_remember_cookie_name...\",\n            SessionRememberRollingTimeout = 7.93,\n            SessionRequestHeaders = new[]\n            {\n                \"absolute-timeout\",\n            },\n            SessionResponseHeaders = new[]\n            {\n                \"absolute-timeout\",\n            },\n            SessionRollingTimeout = 5.35,\n            SessionSecret = \"...my_session_secret...\",\n            SessionStorage = \"cookie\",\n            SessionStoreMetadata = false,\n            ValidateAssertionSignature = true,\n        },\n        ControlPlaneId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        CreatedAt = 8,\n        Enabled = true,\n        GatewayPluginSamlId = \"...my_id...\",\n        InstanceName = \"...my_instance_name...\",\n        Ordering = new Konnect.Inputs.GatewayPluginSamlOrderingArgs\n        {\n            After = new Konnect.Inputs.GatewayPluginSamlOrderingAfterArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n            Before = new Konnect.Inputs.GatewayPluginSamlOrderingBeforeArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n        },\n        Partials = new[]\n        {\n            new Konnect.Inputs.GatewayPluginSamlPartialArgs\n            {\n                Id = \"...my_id...\",\n                Name = \"...my_name...\",\n                Path = \"...my_path...\",\n            },\n        },\n        Protocols = new[]\n        {\n            \"grpc\",\n        },\n        Route = new Konnect.Inputs.GatewayPluginSamlRouteArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Service = new Konnect.Inputs.GatewayPluginSamlServiceArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Tags = new[]\n        {\n            \"...\",\n        },\n        UpdatedAt = 5,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewGatewayPluginSaml(ctx, \"my_gatewaypluginsaml\", \u0026konnect.GatewayPluginSamlArgs{\n\t\t\tConfig: \u0026konnect.GatewayPluginSamlConfigArgs{\n\t\t\t\tAnonymous:             pulumi.String(\"...my_anonymous...\"),\n\t\t\t\tAssertionConsumerPath: pulumi.String(\"...my_assertion_consumer_path...\"),\n\t\t\t\tIdpCertificate:        pulumi.String(\"...my_idp_certificate...\"),\n\t\t\t\tIdpSsoUrl:             pulumi.String(\"...my_idp_sso_url...\"),\n\t\t\t\tIssuer:                pulumi.String(\"...my_issuer...\"),\n\t\t\t\tNameidFormat:          pulumi.String(\"EmailAddress\"),\n\t\t\t\tRedis: \u0026konnect.GatewayPluginSamlConfigRedisArgs{\n\t\t\t\t\tCloudAuthentication: \u0026konnect.GatewayPluginSamlConfigRedisCloudAuthenticationArgs{\n\t\t\t\t\t\tAuthProvider:          pulumi.String(\"azure\"),\n\t\t\t\t\t\tAwsAccessKeyId:        pulumi.String(\"...my_aws_access_key_id...\"),\n\t\t\t\t\t\tAwsAssumeRoleArn:      pulumi.String(\"...my_aws_assume_role_arn...\"),\n\t\t\t\t\t\tAwsCacheName:          pulumi.String(\"...my_aws_cache_name...\"),\n\t\t\t\t\t\tAwsIsServerless:       pulumi.Bool(true),\n\t\t\t\t\t\tAwsRegion:             pulumi.String(\"...my_aws_region...\"),\n\t\t\t\t\t\tAwsRoleSessionName:    pulumi.String(\"...my_aws_role_session_name...\"),\n\t\t\t\t\t\tAwsSecretAccessKey:    pulumi.String(\"...my_aws_secret_access_key...\"),\n\t\t\t\t\t\tAzureClientId:         pulumi.String(\"...my_azure_client_id...\"),\n\t\t\t\t\t\tAzureClientSecret:     pulumi.String(\"...my_azure_client_secret...\"),\n\t\t\t\t\t\tAzureTenantId:         pulumi.String(\"...my_azure_tenant_id...\"),\n\t\t\t\t\t\tGcpServiceAccountJson: pulumi.String(\"...my_gcp_service_account_json...\"),\n\t\t\t\t\t},\n\t\t\t\t\tClusterMaxRedirections: pulumi.Float64(0),\n\t\t\t\t\tClusterNodes: konnect.GatewayPluginSamlConfigRedisClusterNodeArray{\n\t\t\t\t\t\t\u0026konnect.GatewayPluginSamlConfigRedisClusterNodeArgs{\n\t\t\t\t\t\t\tIp:   pulumi.String(\"...my_ip...\"),\n\t\t\t\t\t\t\tPort: pulumi.Float64(21415),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tConnectTimeout:      pulumi.Float64(1914874679),\n\t\t\t\t\tConnectionIsProxied: pulumi.Bool(true),\n\t\t\t\t\tDatabase:            pulumi.Float64(7),\n\t\t\t\t\tHost:                pulumi.String(\"...my_host...\"),\n\t\t\t\t\tKeepaliveBacklog:    pulumi.Float64(2023529059),\n\t\t\t\t\tKeepalivePoolSize:   pulumi.Float64(1633101853),\n\t\t\t\t\tPassword:            pulumi.String(\"...my_password...\"),\n\t\t\t\t\tPort:                pulumi.Float64(6907),\n\t\t\t\t\tPrefix:              pulumi.String(\"...my_prefix...\"),\n\t\t\t\t\tReadTimeout:         pulumi.Float64(1468960257),\n\t\t\t\t\tSendTimeout:         pulumi.Float64(1619402496),\n\t\t\t\t\tSentinelMaster:      pulumi.String(\"...my_sentinel_master...\"),\n\t\t\t\t\tSentinelNodes: konnect.GatewayPluginSamlConfigRedisSentinelNodeArray{\n\t\t\t\t\t\t\u0026konnect.GatewayPluginSamlConfigRedisSentinelNodeArgs{\n\t\t\t\t\t\t\tHost: pulumi.String(\"...my_host...\"),\n\t\t\t\t\t\t\tPort: pulumi.Float64(44971),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tSentinelPassword: pulumi.String(\"...my_sentinel_password...\"),\n\t\t\t\t\tSentinelRole:     pulumi.String(\"any\"),\n\t\t\t\t\tSentinelUsername: pulumi.String(\"...my_sentinel_username...\"),\n\t\t\t\t\tServerName:       pulumi.String(\"...my_server_name...\"),\n\t\t\t\t\tSocket:           pulumi.String(\"...my_socket...\"),\n\t\t\t\t\tSsl:              pulumi.Bool(true),\n\t\t\t\t\tSslVerify:        pulumi.Bool(false),\n\t\t\t\t\tUsername:         pulumi.String(\"...my_username...\"),\n\t\t\t\t},\n\t\t\t\tRequestDigestAlgorithm:         pulumi.String(\"SHA256\"),\n\t\t\t\tRequestSignatureAlgorithm:      pulumi.String(\"SHA384\"),\n\t\t\t\tRequestSigningCertificate:      pulumi.String(\"...my_request_signing_certificate...\"),\n\t\t\t\tRequestSigningKey:              pulumi.String(\"...my_request_signing_key...\"),\n\t\t\t\tResponseDigestAlgorithm:        pulumi.String(\"SHA256\"),\n\t\t\t\tResponseEncryptionKey:          pulumi.String(\"...my_response_encryption_key...\"),\n\t\t\t\tResponseSignatureAlgorithm:     pulumi.String(\"SHA384\"),\n\t\t\t\tSessionAbsoluteTimeout:         pulumi.Float64(8.17),\n\t\t\t\tSessionAudience:                pulumi.String(\"...my_session_audience...\"),\n\t\t\t\tSessionCookieDomain:            pulumi.String(\"...my_session_cookie_domain...\"),\n\t\t\t\tSessionCookieHttpOnly:          pulumi.Bool(true),\n\t\t\t\tSessionCookieName:              pulumi.String(\"...my_session_cookie_name...\"),\n\t\t\t\tSessionCookiePath:              pulumi.String(\"...my_session_cookie_path...\"),\n\t\t\t\tSessionCookieSameSite:          pulumi.String(\"None\"),\n\t\t\t\tSessionCookieSecure:            pulumi.Bool(true),\n\t\t\t\tSessionEnforceSameSubject:      pulumi.Bool(true),\n\t\t\t\tSessionHashStorageKey:          pulumi.Bool(false),\n\t\t\t\tSessionHashSubject:             pulumi.Bool(false),\n\t\t\t\tSessionIdlingTimeout:           pulumi.Float64(3.44),\n\t\t\t\tSessionMemcachedHost:           pulumi.String(\"...my_session_memcached_host...\"),\n\t\t\t\tSessionMemcachedPort:           pulumi.Float64(59429),\n\t\t\t\tSessionMemcachedPrefix:         pulumi.String(\"...my_session_memcached_prefix...\"),\n\t\t\t\tSessionMemcachedSocket:         pulumi.String(\"...my_session_memcached_socket...\"),\n\t\t\t\tSessionRemember:                pulumi.Bool(false),\n\t\t\t\tSessionRememberAbsoluteTimeout: pulumi.Float64(4.84),\n\t\t\t\tSessionRememberCookieName:      pulumi.String(\"...my_session_remember_cookie_name...\"),\n\t\t\t\tSessionRememberRollingTimeout:  pulumi.Float64(7.93),\n\t\t\t\tSessionRequestHeaders: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"absolute-timeout\"),\n\t\t\t\t},\n\t\t\t\tSessionResponseHeaders: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"absolute-timeout\"),\n\t\t\t\t},\n\t\t\t\tSessionRollingTimeout:      pulumi.Float64(5.35),\n\t\t\t\tSessionSecret:              pulumi.String(\"...my_session_secret...\"),\n\t\t\t\tSessionStorage:             pulumi.String(\"cookie\"),\n\t\t\t\tSessionStoreMetadata:       pulumi.Bool(false),\n\t\t\t\tValidateAssertionSignature: pulumi.Bool(true),\n\t\t\t},\n\t\t\tControlPlaneId:      pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tCreatedAt:           pulumi.Float64(8),\n\t\t\tEnabled:             pulumi.Bool(true),\n\t\t\tGatewayPluginSamlId: pulumi.String(\"...my_id...\"),\n\t\t\tInstanceName:        pulumi.String(\"...my_instance_name...\"),\n\t\t\tOrdering: \u0026konnect.GatewayPluginSamlOrderingArgs{\n\t\t\t\tAfter: \u0026konnect.GatewayPluginSamlOrderingAfterArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tBefore: \u0026konnect.GatewayPluginSamlOrderingBeforeArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tPartials: konnect.GatewayPluginSamlPartialArray{\n\t\t\t\t\u0026konnect.GatewayPluginSamlPartialArgs{\n\t\t\t\t\tId:   pulumi.String(\"...my_id...\"),\n\t\t\t\t\tName: pulumi.String(\"...my_name...\"),\n\t\t\t\t\tPath: pulumi.String(\"...my_path...\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tProtocols: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"grpc\"),\n\t\t\t},\n\t\t\tRoute: \u0026konnect.GatewayPluginSamlRouteArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tService: \u0026konnect.GatewayPluginSamlServiceArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"...\"),\n\t\t\t},\n\t\t\tUpdatedAt: pulumi.Float64(5),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.GatewayPluginSaml;\nimport com.pulumi.konnect.GatewayPluginSamlArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginSamlConfigArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginSamlConfigRedisArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginSamlConfigRedisCloudAuthenticationArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginSamlOrderingArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginSamlOrderingAfterArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginSamlOrderingBeforeArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginSamlPartialArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginSamlRouteArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginSamlServiceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myGatewaypluginsaml = new GatewayPluginSaml(\"myGatewaypluginsaml\", GatewayPluginSamlArgs.builder()\n            .config(GatewayPluginSamlConfigArgs.builder()\n                .anonymous(\"...my_anonymous...\")\n                .assertionConsumerPath(\"...my_assertion_consumer_path...\")\n                .idpCertificate(\"...my_idp_certificate...\")\n                .idpSsoUrl(\"...my_idp_sso_url...\")\n                .issuer(\"...my_issuer...\")\n                .nameidFormat(\"EmailAddress\")\n                .redis(GatewayPluginSamlConfigRedisArgs.builder()\n                    .cloudAuthentication(GatewayPluginSamlConfigRedisCloudAuthenticationArgs.builder()\n                        .authProvider(\"azure\")\n                        .awsAccessKeyId(\"...my_aws_access_key_id...\")\n                        .awsAssumeRoleArn(\"...my_aws_assume_role_arn...\")\n                        .awsCacheName(\"...my_aws_cache_name...\")\n                        .awsIsServerless(true)\n                        .awsRegion(\"...my_aws_region...\")\n                        .awsRoleSessionName(\"...my_aws_role_session_name...\")\n                        .awsSecretAccessKey(\"...my_aws_secret_access_key...\")\n                        .azureClientId(\"...my_azure_client_id...\")\n                        .azureClientSecret(\"...my_azure_client_secret...\")\n                        .azureTenantId(\"...my_azure_tenant_id...\")\n                        .gcpServiceAccountJson(\"...my_gcp_service_account_json...\")\n                        .build())\n                    .clusterMaxRedirections(0.0)\n                    .clusterNodes(GatewayPluginSamlConfigRedisClusterNodeArgs.builder()\n                        .ip(\"...my_ip...\")\n                        .port(21415.0)\n                        .build())\n                    .connectTimeout(1914874679.0)\n                    .connectionIsProxied(true)\n                    .database(7.0)\n                    .host(\"...my_host...\")\n                    .keepaliveBacklog(2023529059.0)\n                    .keepalivePoolSize(1633101853.0)\n                    .password(\"...my_password...\")\n                    .port(6907.0)\n                    .prefix(\"...my_prefix...\")\n                    .readTimeout(1468960257.0)\n                    .sendTimeout(1619402496.0)\n                    .sentinelMaster(\"...my_sentinel_master...\")\n                    .sentinelNodes(GatewayPluginSamlConfigRedisSentinelNodeArgs.builder()\n                        .host(\"...my_host...\")\n                        .port(44971.0)\n                        .build())\n                    .sentinelPassword(\"...my_sentinel_password...\")\n                    .sentinelRole(\"any\")\n                    .sentinelUsername(\"...my_sentinel_username...\")\n                    .serverName(\"...my_server_name...\")\n                    .socket(\"...my_socket...\")\n                    .ssl(true)\n                    .sslVerify(false)\n                    .username(\"...my_username...\")\n                    .build())\n                .requestDigestAlgorithm(\"SHA256\")\n                .requestSignatureAlgorithm(\"SHA384\")\n                .requestSigningCertificate(\"...my_request_signing_certificate...\")\n                .requestSigningKey(\"...my_request_signing_key...\")\n                .responseDigestAlgorithm(\"SHA256\")\n                .responseEncryptionKey(\"...my_response_encryption_key...\")\n                .responseSignatureAlgorithm(\"SHA384\")\n                .sessionAbsoluteTimeout(8.17)\n                .sessionAudience(\"...my_session_audience...\")\n                .sessionCookieDomain(\"...my_session_cookie_domain...\")\n                .sessionCookieHttpOnly(true)\n                .sessionCookieName(\"...my_session_cookie_name...\")\n                .sessionCookiePath(\"...my_session_cookie_path...\")\n                .sessionCookieSameSite(\"None\")\n                .sessionCookieSecure(true)\n                .sessionEnforceSameSubject(true)\n                .sessionHashStorageKey(false)\n                .sessionHashSubject(false)\n                .sessionIdlingTimeout(3.44)\n                .sessionMemcachedHost(\"...my_session_memcached_host...\")\n                .sessionMemcachedPort(59429.0)\n                .sessionMemcachedPrefix(\"...my_session_memcached_prefix...\")\n                .sessionMemcachedSocket(\"...my_session_memcached_socket...\")\n                .sessionRemember(false)\n                .sessionRememberAbsoluteTimeout(4.84)\n                .sessionRememberCookieName(\"...my_session_remember_cookie_name...\")\n                .sessionRememberRollingTimeout(7.93)\n                .sessionRequestHeaders(\"absolute-timeout\")\n                .sessionResponseHeaders(\"absolute-timeout\")\n                .sessionRollingTimeout(5.35)\n                .sessionSecret(\"...my_session_secret...\")\n                .sessionStorage(\"cookie\")\n                .sessionStoreMetadata(false)\n                .validateAssertionSignature(true)\n                .build())\n            .controlPlaneId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .createdAt(8.0)\n            .enabled(true)\n            .gatewayPluginSamlId(\"...my_id...\")\n            .instanceName(\"...my_instance_name...\")\n            .ordering(GatewayPluginSamlOrderingArgs.builder()\n                .after(GatewayPluginSamlOrderingAfterArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .before(GatewayPluginSamlOrderingBeforeArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .build())\n            .partials(GatewayPluginSamlPartialArgs.builder()\n                .id(\"...my_id...\")\n                .name(\"...my_name...\")\n                .path(\"...my_path...\")\n                .build())\n            .protocols(\"grpc\")\n            .route(GatewayPluginSamlRouteArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .service(GatewayPluginSamlServiceArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .tags(\"...\")\n            .updatedAt(5.0)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myGatewaypluginsaml:\n    type: konnect:GatewayPluginSaml\n    name: my_gatewaypluginsaml\n    properties:\n      config:\n        anonymous: '...my_anonymous...'\n        assertionConsumerPath: '...my_assertion_consumer_path...'\n        idpCertificate: '...my_idp_certificate...'\n        idpSsoUrl: '...my_idp_sso_url...'\n        issuer: '...my_issuer...'\n        nameidFormat: EmailAddress\n        redis:\n          cloudAuthentication:\n            authProvider: azure\n            awsAccessKeyId: '...my_aws_access_key_id...'\n            awsAssumeRoleArn: '...my_aws_assume_role_arn...'\n            awsCacheName: '...my_aws_cache_name...'\n            awsIsServerless: true\n            awsRegion: '...my_aws_region...'\n            awsRoleSessionName: '...my_aws_role_session_name...'\n            awsSecretAccessKey: '...my_aws_secret_access_key...'\n            azureClientId: '...my_azure_client_id...'\n            azureClientSecret: '...my_azure_client_secret...'\n            azureTenantId: '...my_azure_tenant_id...'\n            gcpServiceAccountJson: '...my_gcp_service_account_json...'\n          clusterMaxRedirections: 0\n          clusterNodes:\n            - ip: '...my_ip...'\n              port: 21415\n          connectTimeout: 1.914874679e+09\n          connectionIsProxied: true\n          database: 7\n          host: '...my_host...'\n          keepaliveBacklog: 2.023529059e+09\n          keepalivePoolSize: 1.633101853e+09\n          password: '...my_password...'\n          port: 6907\n          prefix: '...my_prefix...'\n          readTimeout: 1.468960257e+09\n          sendTimeout: 1.619402496e+09\n          sentinelMaster: '...my_sentinel_master...'\n          sentinelNodes:\n            - host: '...my_host...'\n              port: 44971\n          sentinelPassword: '...my_sentinel_password...'\n          sentinelRole: any\n          sentinelUsername: '...my_sentinel_username...'\n          serverName: '...my_server_name...'\n          socket: '...my_socket...'\n          ssl: true\n          sslVerify: false\n          username: '...my_username...'\n        requestDigestAlgorithm: SHA256\n        requestSignatureAlgorithm: SHA384\n        requestSigningCertificate: '...my_request_signing_certificate...'\n        requestSigningKey: '...my_request_signing_key...'\n        responseDigestAlgorithm: SHA256\n        responseEncryptionKey: '...my_response_encryption_key...'\n        responseSignatureAlgorithm: SHA384\n        sessionAbsoluteTimeout: 8.17\n        sessionAudience: '...my_session_audience...'\n        sessionCookieDomain: '...my_session_cookie_domain...'\n        sessionCookieHttpOnly: true\n        sessionCookieName: '...my_session_cookie_name...'\n        sessionCookiePath: '...my_session_cookie_path...'\n        sessionCookieSameSite: None\n        sessionCookieSecure: true\n        sessionEnforceSameSubject: true\n        sessionHashStorageKey: false\n        sessionHashSubject: false\n        sessionIdlingTimeout: 3.44\n        sessionMemcachedHost: '...my_session_memcached_host...'\n        sessionMemcachedPort: 59429\n        sessionMemcachedPrefix: '...my_session_memcached_prefix...'\n        sessionMemcachedSocket: '...my_session_memcached_socket...'\n        sessionRemember: false\n        sessionRememberAbsoluteTimeout: 4.84\n        sessionRememberCookieName: '...my_session_remember_cookie_name...'\n        sessionRememberRollingTimeout: 7.93\n        sessionRequestHeaders:\n          - absolute-timeout\n        sessionResponseHeaders:\n          - absolute-timeout\n        sessionRollingTimeout: 5.35\n        sessionSecret: '...my_session_secret...'\n        sessionStorage: cookie\n        sessionStoreMetadata: false\n        validateAssertionSignature: true\n      controlPlaneId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      createdAt: 8\n      enabled: true\n      gatewayPluginSamlId: '...my_id...'\n      instanceName: '...my_instance_name...'\n      ordering:\n        after:\n          accesses:\n            - '...'\n        before:\n          accesses:\n            - '...'\n      partials:\n        - id: '...my_id...'\n          name: '...my_name...'\n          path: '...my_path...'\n      protocols:\n        - grpc\n      route:\n        id: '...my_id...'\n      service:\n        id: '...my_id...'\n      tags:\n        - '...'\n      updatedAt: 5\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_gateway_plugin_saml.my_konnect_gateway_plugin_saml\n\n  id = jsonencode({\n\n    control_plane_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/gatewayPluginSaml:GatewayPluginSaml my_konnect_gateway_plugin_saml '{\"control_plane_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"}'\n```\n\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginSamlConfig:GatewayPluginSamlConfig"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginSamlId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginSamlOrdering:GatewayPluginSamlOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginSamlPartial:GatewayPluginSamlPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginSamlRoute:GatewayPluginSamlRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginSamlService:GatewayPluginSamlService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object","required":["config","controlPlaneId","createdAt","enabled","gatewayPluginSamlId","ordering","protocols","route","service","updatedAt"],"inputProperties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginSamlConfig:GatewayPluginSamlConfig"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginSamlId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginSamlOrdering:GatewayPluginSamlOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginSamlPartial:GatewayPluginSamlPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginSamlRoute:GatewayPluginSamlRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginSamlService:GatewayPluginSamlService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"requiredInputs":["config","controlPlaneId"],"stateInputs":{"description":"Input properties used for looking up and filtering GatewayPluginSaml resources.\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginSamlConfig:GatewayPluginSamlConfig"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginSamlId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginSamlOrdering:GatewayPluginSamlOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginSamlPartial:GatewayPluginSamlPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginSamlRoute:GatewayPluginSamlRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginSamlService:GatewayPluginSamlService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object"}},"konnect:index/gatewayPluginServiceProtection:GatewayPluginServiceProtection":{"description":"GatewayPluginServiceProtection Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myGatewaypluginserviceprotection = new konnect.GatewayPluginServiceProtection(\"my_gatewaypluginserviceprotection\", {\n    config: {\n        dictionaryName: \"...my_dictionary_name...\",\n        disablePenalty: true,\n        errorCode: 2.21,\n        errorMessage: \"...my_error_message...\",\n        hideClientHeaders: false,\n        limits: [3.19],\n        lockDictionaryName: \"...my_lock_dictionary_name...\",\n        namespace: \"...my_namespace...\",\n        redis: {\n            cloudAuthentication: {\n                authProvider: \"aws\",\n                awsAccessKeyId: \"...my_aws_access_key_id...\",\n                awsAssumeRoleArn: \"...my_aws_assume_role_arn...\",\n                awsCacheName: \"...my_aws_cache_name...\",\n                awsIsServerless: false,\n                awsRegion: \"...my_aws_region...\",\n                awsRoleSessionName: \"...my_aws_role_session_name...\",\n                awsSecretAccessKey: \"...my_aws_secret_access_key...\",\n                azureClientId: \"...my_azure_client_id...\",\n                azureClientSecret: \"...my_azure_client_secret...\",\n                azureTenantId: \"...my_azure_tenant_id...\",\n                gcpServiceAccountJson: \"...my_gcp_service_account_json...\",\n            },\n            clusterMaxRedirections: 3,\n            clusterNodes: [{\n                ip: \"...my_ip...\",\n                port: 33693,\n            }],\n            connectTimeout: 498772011,\n            connectionIsProxied: false,\n            database: 3,\n            host: \"...my_host...\",\n            keepaliveBacklog: 312843254,\n            keepalivePoolSize: 1451118259,\n            password: \"...my_password...\",\n            port: 56514,\n            readTimeout: 206958009,\n            sendTimeout: 408106576,\n            sentinelMaster: \"...my_sentinel_master...\",\n            sentinelNodes: [{\n                host: \"...my_host...\",\n                port: 32122,\n            }],\n            sentinelPassword: \"...my_sentinel_password...\",\n            sentinelRole: \"any\",\n            sentinelUsername: \"...my_sentinel_username...\",\n            serverName: \"...my_server_name...\",\n            ssl: false,\n            sslVerify: true,\n            username: \"...my_username...\",\n        },\n        retryAfterJitterMax: 4.23,\n        strategy: \"redis\",\n        syncRate: 5.69,\n        windowSizes: [5.81],\n        windowType: \"sliding\",\n    },\n    controlPlaneId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    createdAt: 7,\n    enabled: true,\n    gatewayPluginServiceProtectionId: \"...my_id...\",\n    instanceName: \"...my_instance_name...\",\n    ordering: {\n        after: {\n            accesses: [\"...\"],\n        },\n        before: {\n            accesses: [\"...\"],\n        },\n    },\n    partials: [{\n        id: \"...my_id...\",\n        name: \"...my_name...\",\n        path: \"...my_path...\",\n    }],\n    protocols: [\"http\"],\n    service: {\n        id: \"...my_id...\",\n    },\n    tags: [\"...\"],\n    updatedAt: 5,\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_gatewaypluginserviceprotection = konnect.GatewayPluginServiceProtection(\"my_gatewaypluginserviceprotection\",\n    config={\n        \"dictionary_name\": \"...my_dictionary_name...\",\n        \"disable_penalty\": True,\n        \"error_code\": 2.21,\n        \"error_message\": \"...my_error_message...\",\n        \"hide_client_headers\": False,\n        \"limits\": [3.19],\n        \"lock_dictionary_name\": \"...my_lock_dictionary_name...\",\n        \"namespace\": \"...my_namespace...\",\n        \"redis\": {\n            \"cloud_authentication\": {\n                \"auth_provider\": \"aws\",\n                \"aws_access_key_id\": \"...my_aws_access_key_id...\",\n                \"aws_assume_role_arn\": \"...my_aws_assume_role_arn...\",\n                \"aws_cache_name\": \"...my_aws_cache_name...\",\n                \"aws_is_serverless\": False,\n                \"aws_region\": \"...my_aws_region...\",\n                \"aws_role_session_name\": \"...my_aws_role_session_name...\",\n                \"aws_secret_access_key\": \"...my_aws_secret_access_key...\",\n                \"azure_client_id\": \"...my_azure_client_id...\",\n                \"azure_client_secret\": \"...my_azure_client_secret...\",\n                \"azure_tenant_id\": \"...my_azure_tenant_id...\",\n                \"gcp_service_account_json\": \"...my_gcp_service_account_json...\",\n            },\n            \"cluster_max_redirections\": 3,\n            \"cluster_nodes\": [{\n                \"ip\": \"...my_ip...\",\n                \"port\": 33693,\n            }],\n            \"connect_timeout\": 498772011,\n            \"connection_is_proxied\": False,\n            \"database\": 3,\n            \"host\": \"...my_host...\",\n            \"keepalive_backlog\": 312843254,\n            \"keepalive_pool_size\": 1451118259,\n            \"password\": \"...my_password...\",\n            \"port\": 56514,\n            \"read_timeout\": 206958009,\n            \"send_timeout\": 408106576,\n            \"sentinel_master\": \"...my_sentinel_master...\",\n            \"sentinel_nodes\": [{\n                \"host\": \"...my_host...\",\n                \"port\": 32122,\n            }],\n            \"sentinel_password\": \"...my_sentinel_password...\",\n            \"sentinel_role\": \"any\",\n            \"sentinel_username\": \"...my_sentinel_username...\",\n            \"server_name\": \"...my_server_name...\",\n            \"ssl\": False,\n            \"ssl_verify\": True,\n            \"username\": \"...my_username...\",\n        },\n        \"retry_after_jitter_max\": 4.23,\n        \"strategy\": \"redis\",\n        \"sync_rate\": 5.69,\n        \"window_sizes\": [5.81],\n        \"window_type\": \"sliding\",\n    },\n    control_plane_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    created_at=7,\n    enabled=True,\n    gateway_plugin_service_protection_id=\"...my_id...\",\n    instance_name=\"...my_instance_name...\",\n    ordering={\n        \"after\": {\n            \"accesses\": [\"...\"],\n        },\n        \"before\": {\n            \"accesses\": [\"...\"],\n        },\n    },\n    partials=[{\n        \"id\": \"...my_id...\",\n        \"name\": \"...my_name...\",\n        \"path\": \"...my_path...\",\n    }],\n    protocols=[\"http\"],\n    service={\n        \"id\": \"...my_id...\",\n    },\n    tags=[\"...\"],\n    updated_at=5)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myGatewaypluginserviceprotection = new Konnect.GatewayPluginServiceProtection(\"my_gatewaypluginserviceprotection\", new()\n    {\n        Config = new Konnect.Inputs.GatewayPluginServiceProtectionConfigArgs\n        {\n            DictionaryName = \"...my_dictionary_name...\",\n            DisablePenalty = true,\n            ErrorCode = 2.21,\n            ErrorMessage = \"...my_error_message...\",\n            HideClientHeaders = false,\n            Limits = new[]\n            {\n                3.19,\n            },\n            LockDictionaryName = \"...my_lock_dictionary_name...\",\n            Namespace = \"...my_namespace...\",\n            Redis = new Konnect.Inputs.GatewayPluginServiceProtectionConfigRedisArgs\n            {\n                CloudAuthentication = new Konnect.Inputs.GatewayPluginServiceProtectionConfigRedisCloudAuthenticationArgs\n                {\n                    AuthProvider = \"aws\",\n                    AwsAccessKeyId = \"...my_aws_access_key_id...\",\n                    AwsAssumeRoleArn = \"...my_aws_assume_role_arn...\",\n                    AwsCacheName = \"...my_aws_cache_name...\",\n                    AwsIsServerless = false,\n                    AwsRegion = \"...my_aws_region...\",\n                    AwsRoleSessionName = \"...my_aws_role_session_name...\",\n                    AwsSecretAccessKey = \"...my_aws_secret_access_key...\",\n                    AzureClientId = \"...my_azure_client_id...\",\n                    AzureClientSecret = \"...my_azure_client_secret...\",\n                    AzureTenantId = \"...my_azure_tenant_id...\",\n                    GcpServiceAccountJson = \"...my_gcp_service_account_json...\",\n                },\n                ClusterMaxRedirections = 3,\n                ClusterNodes = new[]\n                {\n                    new Konnect.Inputs.GatewayPluginServiceProtectionConfigRedisClusterNodeArgs\n                    {\n                        Ip = \"...my_ip...\",\n                        Port = 33693,\n                    },\n                },\n                ConnectTimeout = 498772011,\n                ConnectionIsProxied = false,\n                Database = 3,\n                Host = \"...my_host...\",\n                KeepaliveBacklog = 312843254,\n                KeepalivePoolSize = 1451118259,\n                Password = \"...my_password...\",\n                Port = 56514,\n                ReadTimeout = 206958009,\n                SendTimeout = 408106576,\n                SentinelMaster = \"...my_sentinel_master...\",\n                SentinelNodes = new[]\n                {\n                    new Konnect.Inputs.GatewayPluginServiceProtectionConfigRedisSentinelNodeArgs\n                    {\n                        Host = \"...my_host...\",\n                        Port = 32122,\n                    },\n                },\n                SentinelPassword = \"...my_sentinel_password...\",\n                SentinelRole = \"any\",\n                SentinelUsername = \"...my_sentinel_username...\",\n                ServerName = \"...my_server_name...\",\n                Ssl = false,\n                SslVerify = true,\n                Username = \"...my_username...\",\n            },\n            RetryAfterJitterMax = 4.23,\n            Strategy = \"redis\",\n            SyncRate = 5.69,\n            WindowSizes = new[]\n            {\n                5.81,\n            },\n            WindowType = \"sliding\",\n        },\n        ControlPlaneId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        CreatedAt = 7,\n        Enabled = true,\n        GatewayPluginServiceProtectionId = \"...my_id...\",\n        InstanceName = \"...my_instance_name...\",\n        Ordering = new Konnect.Inputs.GatewayPluginServiceProtectionOrderingArgs\n        {\n            After = new Konnect.Inputs.GatewayPluginServiceProtectionOrderingAfterArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n            Before = new Konnect.Inputs.GatewayPluginServiceProtectionOrderingBeforeArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n        },\n        Partials = new[]\n        {\n            new Konnect.Inputs.GatewayPluginServiceProtectionPartialArgs\n            {\n                Id = \"...my_id...\",\n                Name = \"...my_name...\",\n                Path = \"...my_path...\",\n            },\n        },\n        Protocols = new[]\n        {\n            \"http\",\n        },\n        Service = new Konnect.Inputs.GatewayPluginServiceProtectionServiceArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Tags = new[]\n        {\n            \"...\",\n        },\n        UpdatedAt = 5,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewGatewayPluginServiceProtection(ctx, \"my_gatewaypluginserviceprotection\", \u0026konnect.GatewayPluginServiceProtectionArgs{\n\t\t\tConfig: \u0026konnect.GatewayPluginServiceProtectionConfigArgs{\n\t\t\t\tDictionaryName:    pulumi.String(\"...my_dictionary_name...\"),\n\t\t\t\tDisablePenalty:    pulumi.Bool(true),\n\t\t\t\tErrorCode:         pulumi.Float64(2.21),\n\t\t\t\tErrorMessage:      pulumi.String(\"...my_error_message...\"),\n\t\t\t\tHideClientHeaders: pulumi.Bool(false),\n\t\t\t\tLimits: pulumi.Float64Array{\n\t\t\t\t\tpulumi.Float64(3.19),\n\t\t\t\t},\n\t\t\t\tLockDictionaryName: pulumi.String(\"...my_lock_dictionary_name...\"),\n\t\t\t\tNamespace:          pulumi.String(\"...my_namespace...\"),\n\t\t\t\tRedis: \u0026konnect.GatewayPluginServiceProtectionConfigRedisArgs{\n\t\t\t\t\tCloudAuthentication: \u0026konnect.GatewayPluginServiceProtectionConfigRedisCloudAuthenticationArgs{\n\t\t\t\t\t\tAuthProvider:          pulumi.String(\"aws\"),\n\t\t\t\t\t\tAwsAccessKeyId:        pulumi.String(\"...my_aws_access_key_id...\"),\n\t\t\t\t\t\tAwsAssumeRoleArn:      pulumi.String(\"...my_aws_assume_role_arn...\"),\n\t\t\t\t\t\tAwsCacheName:          pulumi.String(\"...my_aws_cache_name...\"),\n\t\t\t\t\t\tAwsIsServerless:       pulumi.Bool(false),\n\t\t\t\t\t\tAwsRegion:             pulumi.String(\"...my_aws_region...\"),\n\t\t\t\t\t\tAwsRoleSessionName:    pulumi.String(\"...my_aws_role_session_name...\"),\n\t\t\t\t\t\tAwsSecretAccessKey:    pulumi.String(\"...my_aws_secret_access_key...\"),\n\t\t\t\t\t\tAzureClientId:         pulumi.String(\"...my_azure_client_id...\"),\n\t\t\t\t\t\tAzureClientSecret:     pulumi.String(\"...my_azure_client_secret...\"),\n\t\t\t\t\t\tAzureTenantId:         pulumi.String(\"...my_azure_tenant_id...\"),\n\t\t\t\t\t\tGcpServiceAccountJson: pulumi.String(\"...my_gcp_service_account_json...\"),\n\t\t\t\t\t},\n\t\t\t\t\tClusterMaxRedirections: pulumi.Float64(3),\n\t\t\t\t\tClusterNodes: konnect.GatewayPluginServiceProtectionConfigRedisClusterNodeArray{\n\t\t\t\t\t\t\u0026konnect.GatewayPluginServiceProtectionConfigRedisClusterNodeArgs{\n\t\t\t\t\t\t\tIp:   pulumi.String(\"...my_ip...\"),\n\t\t\t\t\t\t\tPort: pulumi.Float64(33693),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tConnectTimeout:      pulumi.Float64(498772011),\n\t\t\t\t\tConnectionIsProxied: pulumi.Bool(false),\n\t\t\t\t\tDatabase:            pulumi.Float64(3),\n\t\t\t\t\tHost:                pulumi.String(\"...my_host...\"),\n\t\t\t\t\tKeepaliveBacklog:    pulumi.Float64(312843254),\n\t\t\t\t\tKeepalivePoolSize:   pulumi.Float64(1451118259),\n\t\t\t\t\tPassword:            pulumi.String(\"...my_password...\"),\n\t\t\t\t\tPort:                pulumi.Float64(56514),\n\t\t\t\t\tReadTimeout:         pulumi.Float64(206958009),\n\t\t\t\t\tSendTimeout:         pulumi.Float64(408106576),\n\t\t\t\t\tSentinelMaster:      pulumi.String(\"...my_sentinel_master...\"),\n\t\t\t\t\tSentinelNodes: konnect.GatewayPluginServiceProtectionConfigRedisSentinelNodeArray{\n\t\t\t\t\t\t\u0026konnect.GatewayPluginServiceProtectionConfigRedisSentinelNodeArgs{\n\t\t\t\t\t\t\tHost: pulumi.String(\"...my_host...\"),\n\t\t\t\t\t\t\tPort: pulumi.Float64(32122),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tSentinelPassword: pulumi.String(\"...my_sentinel_password...\"),\n\t\t\t\t\tSentinelRole:     pulumi.String(\"any\"),\n\t\t\t\t\tSentinelUsername: pulumi.String(\"...my_sentinel_username...\"),\n\t\t\t\t\tServerName:       pulumi.String(\"...my_server_name...\"),\n\t\t\t\t\tSsl:              pulumi.Bool(false),\n\t\t\t\t\tSslVerify:        pulumi.Bool(true),\n\t\t\t\t\tUsername:         pulumi.String(\"...my_username...\"),\n\t\t\t\t},\n\t\t\t\tRetryAfterJitterMax: pulumi.Float64(4.23),\n\t\t\t\tStrategy:            pulumi.String(\"redis\"),\n\t\t\t\tSyncRate:            pulumi.Float64(5.69),\n\t\t\t\tWindowSizes: pulumi.Float64Array{\n\t\t\t\t\tpulumi.Float64(5.81),\n\t\t\t\t},\n\t\t\t\tWindowType: pulumi.String(\"sliding\"),\n\t\t\t},\n\t\t\tControlPlaneId:                   pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tCreatedAt:                        pulumi.Float64(7),\n\t\t\tEnabled:                          pulumi.Bool(true),\n\t\t\tGatewayPluginServiceProtectionId: pulumi.String(\"...my_id...\"),\n\t\t\tInstanceName:                     pulumi.String(\"...my_instance_name...\"),\n\t\t\tOrdering: \u0026konnect.GatewayPluginServiceProtectionOrderingArgs{\n\t\t\t\tAfter: \u0026konnect.GatewayPluginServiceProtectionOrderingAfterArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tBefore: \u0026konnect.GatewayPluginServiceProtectionOrderingBeforeArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tPartials: konnect.GatewayPluginServiceProtectionPartialArray{\n\t\t\t\t\u0026konnect.GatewayPluginServiceProtectionPartialArgs{\n\t\t\t\t\tId:   pulumi.String(\"...my_id...\"),\n\t\t\t\t\tName: pulumi.String(\"...my_name...\"),\n\t\t\t\t\tPath: pulumi.String(\"...my_path...\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tProtocols: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"http\"),\n\t\t\t},\n\t\t\tService: \u0026konnect.GatewayPluginServiceProtectionServiceArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"...\"),\n\t\t\t},\n\t\t\tUpdatedAt: pulumi.Float64(5),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.GatewayPluginServiceProtection;\nimport com.pulumi.konnect.GatewayPluginServiceProtectionArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginServiceProtectionConfigArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginServiceProtectionConfigRedisArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginServiceProtectionConfigRedisCloudAuthenticationArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginServiceProtectionOrderingArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginServiceProtectionOrderingAfterArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginServiceProtectionOrderingBeforeArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginServiceProtectionPartialArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginServiceProtectionServiceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myGatewaypluginserviceprotection = new GatewayPluginServiceProtection(\"myGatewaypluginserviceprotection\", GatewayPluginServiceProtectionArgs.builder()\n            .config(GatewayPluginServiceProtectionConfigArgs.builder()\n                .dictionaryName(\"...my_dictionary_name...\")\n                .disablePenalty(true)\n                .errorCode(2.21)\n                .errorMessage(\"...my_error_message...\")\n                .hideClientHeaders(false)\n                .limits(3.19)\n                .lockDictionaryName(\"...my_lock_dictionary_name...\")\n                .namespace(\"...my_namespace...\")\n                .redis(GatewayPluginServiceProtectionConfigRedisArgs.builder()\n                    .cloudAuthentication(GatewayPluginServiceProtectionConfigRedisCloudAuthenticationArgs.builder()\n                        .authProvider(\"aws\")\n                        .awsAccessKeyId(\"...my_aws_access_key_id...\")\n                        .awsAssumeRoleArn(\"...my_aws_assume_role_arn...\")\n                        .awsCacheName(\"...my_aws_cache_name...\")\n                        .awsIsServerless(false)\n                        .awsRegion(\"...my_aws_region...\")\n                        .awsRoleSessionName(\"...my_aws_role_session_name...\")\n                        .awsSecretAccessKey(\"...my_aws_secret_access_key...\")\n                        .azureClientId(\"...my_azure_client_id...\")\n                        .azureClientSecret(\"...my_azure_client_secret...\")\n                        .azureTenantId(\"...my_azure_tenant_id...\")\n                        .gcpServiceAccountJson(\"...my_gcp_service_account_json...\")\n                        .build())\n                    .clusterMaxRedirections(3.0)\n                    .clusterNodes(GatewayPluginServiceProtectionConfigRedisClusterNodeArgs.builder()\n                        .ip(\"...my_ip...\")\n                        .port(33693.0)\n                        .build())\n                    .connectTimeout(498772011.0)\n                    .connectionIsProxied(false)\n                    .database(3.0)\n                    .host(\"...my_host...\")\n                    .keepaliveBacklog(312843254.0)\n                    .keepalivePoolSize(1451118259.0)\n                    .password(\"...my_password...\")\n                    .port(56514.0)\n                    .readTimeout(206958009.0)\n                    .sendTimeout(408106576.0)\n                    .sentinelMaster(\"...my_sentinel_master...\")\n                    .sentinelNodes(GatewayPluginServiceProtectionConfigRedisSentinelNodeArgs.builder()\n                        .host(\"...my_host...\")\n                        .port(32122.0)\n                        .build())\n                    .sentinelPassword(\"...my_sentinel_password...\")\n                    .sentinelRole(\"any\")\n                    .sentinelUsername(\"...my_sentinel_username...\")\n                    .serverName(\"...my_server_name...\")\n                    .ssl(false)\n                    .sslVerify(true)\n                    .username(\"...my_username...\")\n                    .build())\n                .retryAfterJitterMax(4.23)\n                .strategy(\"redis\")\n                .syncRate(5.69)\n                .windowSizes(5.81)\n                .windowType(\"sliding\")\n                .build())\n            .controlPlaneId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .createdAt(7.0)\n            .enabled(true)\n            .gatewayPluginServiceProtectionId(\"...my_id...\")\n            .instanceName(\"...my_instance_name...\")\n            .ordering(GatewayPluginServiceProtectionOrderingArgs.builder()\n                .after(GatewayPluginServiceProtectionOrderingAfterArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .before(GatewayPluginServiceProtectionOrderingBeforeArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .build())\n            .partials(GatewayPluginServiceProtectionPartialArgs.builder()\n                .id(\"...my_id...\")\n                .name(\"...my_name...\")\n                .path(\"...my_path...\")\n                .build())\n            .protocols(\"http\")\n            .service(GatewayPluginServiceProtectionServiceArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .tags(\"...\")\n            .updatedAt(5.0)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myGatewaypluginserviceprotection:\n    type: konnect:GatewayPluginServiceProtection\n    name: my_gatewaypluginserviceprotection\n    properties:\n      config:\n        dictionaryName: '...my_dictionary_name...'\n        disablePenalty: true\n        errorCode: 2.21\n        errorMessage: '...my_error_message...'\n        hideClientHeaders: false\n        limits:\n          - 3.19\n        lockDictionaryName: '...my_lock_dictionary_name...'\n        namespace: '...my_namespace...'\n        redis:\n          cloudAuthentication:\n            authProvider: aws\n            awsAccessKeyId: '...my_aws_access_key_id...'\n            awsAssumeRoleArn: '...my_aws_assume_role_arn...'\n            awsCacheName: '...my_aws_cache_name...'\n            awsIsServerless: false\n            awsRegion: '...my_aws_region...'\n            awsRoleSessionName: '...my_aws_role_session_name...'\n            awsSecretAccessKey: '...my_aws_secret_access_key...'\n            azureClientId: '...my_azure_client_id...'\n            azureClientSecret: '...my_azure_client_secret...'\n            azureTenantId: '...my_azure_tenant_id...'\n            gcpServiceAccountJson: '...my_gcp_service_account_json...'\n          clusterMaxRedirections: 3\n          clusterNodes:\n            - ip: '...my_ip...'\n              port: 33693\n          connectTimeout: 4.98772011e+08\n          connectionIsProxied: false\n          database: 3\n          host: '...my_host...'\n          keepaliveBacklog: 3.12843254e+08\n          keepalivePoolSize: 1.451118259e+09\n          password: '...my_password...'\n          port: 56514\n          readTimeout: 2.06958009e+08\n          sendTimeout: 4.08106576e+08\n          sentinelMaster: '...my_sentinel_master...'\n          sentinelNodes:\n            - host: '...my_host...'\n              port: 32122\n          sentinelPassword: '...my_sentinel_password...'\n          sentinelRole: any\n          sentinelUsername: '...my_sentinel_username...'\n          serverName: '...my_server_name...'\n          ssl: false\n          sslVerify: true\n          username: '...my_username...'\n        retryAfterJitterMax: 4.23\n        strategy: redis\n        syncRate: 5.69\n        windowSizes:\n          - 5.81\n        windowType: sliding\n      controlPlaneId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      createdAt: 7\n      enabled: true\n      gatewayPluginServiceProtectionId: '...my_id...'\n      instanceName: '...my_instance_name...'\n      ordering:\n        after:\n          accesses:\n            - '...'\n        before:\n          accesses:\n            - '...'\n      partials:\n        - id: '...my_id...'\n          name: '...my_name...'\n          path: '...my_path...'\n      protocols:\n        - http\n      service:\n        id: '...my_id...'\n      tags:\n        - '...'\n      updatedAt: 5\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_gateway_plugin_service_protection.my_konnect_gateway_plugin_service_protection\n\n  id = jsonencode({\n\n    control_plane_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/gatewayPluginServiceProtection:GatewayPluginServiceProtection my_konnect_gateway_plugin_service_protection '{\"control_plane_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"}'\n```\n\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginServiceProtectionConfig:GatewayPluginServiceProtectionConfig"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginServiceProtectionId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginServiceProtectionOrdering:GatewayPluginServiceProtectionOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginServiceProtectionPartial:GatewayPluginServiceProtectionPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginServiceProtectionService:GatewayPluginServiceProtectionService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object","required":["config","controlPlaneId","createdAt","enabled","gatewayPluginServiceProtectionId","ordering","protocols","service","updatedAt"],"inputProperties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginServiceProtectionConfig:GatewayPluginServiceProtectionConfig"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginServiceProtectionId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginServiceProtectionOrdering:GatewayPluginServiceProtectionOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginServiceProtectionPartial:GatewayPluginServiceProtectionPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginServiceProtectionService:GatewayPluginServiceProtectionService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"requiredInputs":["config","controlPlaneId"],"stateInputs":{"description":"Input properties used for looking up and filtering GatewayPluginServiceProtection resources.\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginServiceProtectionConfig:GatewayPluginServiceProtectionConfig"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginServiceProtectionId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginServiceProtectionOrdering:GatewayPluginServiceProtectionOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginServiceProtectionPartial:GatewayPluginServiceProtectionPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginServiceProtectionService:GatewayPluginServiceProtectionService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object"}},"konnect:index/gatewayPluginSession:GatewayPluginSession":{"description":"GatewayPluginSession Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myGatewaypluginsession = new konnect.GatewayPluginSession(\"my_gatewaypluginsession\", {\n    config: {\n        absoluteTimeout: 1.93,\n        audience: \"...my_audience...\",\n        binds: [\"user-agent\"],\n        cookieDomain: \"...my_cookie_domain...\",\n        cookieHttpOnly: true,\n        cookieName: \"...my_cookie_name...\",\n        cookiePath: \"...my_cookie_path...\",\n        cookieSameSite: \"Strict\",\n        cookieSecure: true,\n        hashSubject: false,\n        idlingTimeout: 6.27,\n        logoutMethods: [\"GET\"],\n        logoutPostArg: \"...my_logout_post_arg...\",\n        logoutQueryArg: \"...my_logout_query_arg...\",\n        readBodyForLogout: true,\n        remember: false,\n        rememberAbsoluteTimeout: 7.47,\n        rememberCookieName: \"...my_remember_cookie_name...\",\n        rememberRollingTimeout: 6.77,\n        requestHeaders: [\"idling-timeout\"],\n        responseHeaders: [\"audience\"],\n        rollingTimeout: 9.29,\n        secret: \"...my_secret...\",\n        staleTtl: 3.88,\n        storage: \"cookie\",\n        storeMetadata: true,\n    },\n    controlPlaneId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    createdAt: 4,\n    enabled: false,\n    gatewayPluginSessionId: \"...my_id...\",\n    instanceName: \"...my_instance_name...\",\n    ordering: {\n        after: {\n            accesses: [\"...\"],\n        },\n        before: {\n            accesses: [\"...\"],\n        },\n    },\n    partials: [{\n        id: \"...my_id...\",\n        name: \"...my_name...\",\n        path: \"...my_path...\",\n    }],\n    protocols: [\"wss\"],\n    route: {\n        id: \"...my_id...\",\n    },\n    service: {\n        id: \"...my_id...\",\n    },\n    tags: [\"...\"],\n    updatedAt: 0,\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_gatewaypluginsession = konnect.GatewayPluginSession(\"my_gatewaypluginsession\",\n    config={\n        \"absolute_timeout\": 1.93,\n        \"audience\": \"...my_audience...\",\n        \"binds\": [\"user-agent\"],\n        \"cookie_domain\": \"...my_cookie_domain...\",\n        \"cookie_http_only\": True,\n        \"cookie_name\": \"...my_cookie_name...\",\n        \"cookie_path\": \"...my_cookie_path...\",\n        \"cookie_same_site\": \"Strict\",\n        \"cookie_secure\": True,\n        \"hash_subject\": False,\n        \"idling_timeout\": 6.27,\n        \"logout_methods\": [\"GET\"],\n        \"logout_post_arg\": \"...my_logout_post_arg...\",\n        \"logout_query_arg\": \"...my_logout_query_arg...\",\n        \"read_body_for_logout\": True,\n        \"remember\": False,\n        \"remember_absolute_timeout\": 7.47,\n        \"remember_cookie_name\": \"...my_remember_cookie_name...\",\n        \"remember_rolling_timeout\": 6.77,\n        \"request_headers\": [\"idling-timeout\"],\n        \"response_headers\": [\"audience\"],\n        \"rolling_timeout\": 9.29,\n        \"secret\": \"...my_secret...\",\n        \"stale_ttl\": 3.88,\n        \"storage\": \"cookie\",\n        \"store_metadata\": True,\n    },\n    control_plane_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    created_at=4,\n    enabled=False,\n    gateway_plugin_session_id=\"...my_id...\",\n    instance_name=\"...my_instance_name...\",\n    ordering={\n        \"after\": {\n            \"accesses\": [\"...\"],\n        },\n        \"before\": {\n            \"accesses\": [\"...\"],\n        },\n    },\n    partials=[{\n        \"id\": \"...my_id...\",\n        \"name\": \"...my_name...\",\n        \"path\": \"...my_path...\",\n    }],\n    protocols=[\"wss\"],\n    route={\n        \"id\": \"...my_id...\",\n    },\n    service={\n        \"id\": \"...my_id...\",\n    },\n    tags=[\"...\"],\n    updated_at=0)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myGatewaypluginsession = new Konnect.GatewayPluginSession(\"my_gatewaypluginsession\", new()\n    {\n        Config = new Konnect.Inputs.GatewayPluginSessionConfigArgs\n        {\n            AbsoluteTimeout = 1.93,\n            Audience = \"...my_audience...\",\n            Binds = new[]\n            {\n                \"user-agent\",\n            },\n            CookieDomain = \"...my_cookie_domain...\",\n            CookieHttpOnly = true,\n            CookieName = \"...my_cookie_name...\",\n            CookiePath = \"...my_cookie_path...\",\n            CookieSameSite = \"Strict\",\n            CookieSecure = true,\n            HashSubject = false,\n            IdlingTimeout = 6.27,\n            LogoutMethods = new[]\n            {\n                \"GET\",\n            },\n            LogoutPostArg = \"...my_logout_post_arg...\",\n            LogoutQueryArg = \"...my_logout_query_arg...\",\n            ReadBodyForLogout = true,\n            Remember = false,\n            RememberAbsoluteTimeout = 7.47,\n            RememberCookieName = \"...my_remember_cookie_name...\",\n            RememberRollingTimeout = 6.77,\n            RequestHeaders = new[]\n            {\n                \"idling-timeout\",\n            },\n            ResponseHeaders = new[]\n            {\n                \"audience\",\n            },\n            RollingTimeout = 9.29,\n            Secret = \"...my_secret...\",\n            StaleTtl = 3.88,\n            Storage = \"cookie\",\n            StoreMetadata = true,\n        },\n        ControlPlaneId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        CreatedAt = 4,\n        Enabled = false,\n        GatewayPluginSessionId = \"...my_id...\",\n        InstanceName = \"...my_instance_name...\",\n        Ordering = new Konnect.Inputs.GatewayPluginSessionOrderingArgs\n        {\n            After = new Konnect.Inputs.GatewayPluginSessionOrderingAfterArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n            Before = new Konnect.Inputs.GatewayPluginSessionOrderingBeforeArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n        },\n        Partials = new[]\n        {\n            new Konnect.Inputs.GatewayPluginSessionPartialArgs\n            {\n                Id = \"...my_id...\",\n                Name = \"...my_name...\",\n                Path = \"...my_path...\",\n            },\n        },\n        Protocols = new[]\n        {\n            \"wss\",\n        },\n        Route = new Konnect.Inputs.GatewayPluginSessionRouteArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Service = new Konnect.Inputs.GatewayPluginSessionServiceArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Tags = new[]\n        {\n            \"...\",\n        },\n        UpdatedAt = 0,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewGatewayPluginSession(ctx, \"my_gatewaypluginsession\", \u0026konnect.GatewayPluginSessionArgs{\n\t\t\tConfig: \u0026konnect.GatewayPluginSessionConfigArgs{\n\t\t\t\tAbsoluteTimeout: pulumi.Float64(1.93),\n\t\t\t\tAudience:        pulumi.String(\"...my_audience...\"),\n\t\t\t\tBinds: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"user-agent\"),\n\t\t\t\t},\n\t\t\t\tCookieDomain:   pulumi.String(\"...my_cookie_domain...\"),\n\t\t\t\tCookieHttpOnly: pulumi.Bool(true),\n\t\t\t\tCookieName:     pulumi.String(\"...my_cookie_name...\"),\n\t\t\t\tCookiePath:     pulumi.String(\"...my_cookie_path...\"),\n\t\t\t\tCookieSameSite: pulumi.String(\"Strict\"),\n\t\t\t\tCookieSecure:   pulumi.Bool(true),\n\t\t\t\tHashSubject:    pulumi.Bool(false),\n\t\t\t\tIdlingTimeout:  pulumi.Float64(6.27),\n\t\t\t\tLogoutMethods: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"GET\"),\n\t\t\t\t},\n\t\t\t\tLogoutPostArg:           pulumi.String(\"...my_logout_post_arg...\"),\n\t\t\t\tLogoutQueryArg:          pulumi.String(\"...my_logout_query_arg...\"),\n\t\t\t\tReadBodyForLogout:       pulumi.Bool(true),\n\t\t\t\tRemember:                pulumi.Bool(false),\n\t\t\t\tRememberAbsoluteTimeout: pulumi.Float64(7.47),\n\t\t\t\tRememberCookieName:      pulumi.String(\"...my_remember_cookie_name...\"),\n\t\t\t\tRememberRollingTimeout:  pulumi.Float64(6.77),\n\t\t\t\tRequestHeaders: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"idling-timeout\"),\n\t\t\t\t},\n\t\t\t\tResponseHeaders: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"audience\"),\n\t\t\t\t},\n\t\t\t\tRollingTimeout: pulumi.Float64(9.29),\n\t\t\t\tSecret:         pulumi.String(\"...my_secret...\"),\n\t\t\t\tStaleTtl:       pulumi.Float64(3.88),\n\t\t\t\tStorage:        pulumi.String(\"cookie\"),\n\t\t\t\tStoreMetadata:  pulumi.Bool(true),\n\t\t\t},\n\t\t\tControlPlaneId:         pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tCreatedAt:              pulumi.Float64(4),\n\t\t\tEnabled:                pulumi.Bool(false),\n\t\t\tGatewayPluginSessionId: pulumi.String(\"...my_id...\"),\n\t\t\tInstanceName:           pulumi.String(\"...my_instance_name...\"),\n\t\t\tOrdering: \u0026konnect.GatewayPluginSessionOrderingArgs{\n\t\t\t\tAfter: \u0026konnect.GatewayPluginSessionOrderingAfterArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tBefore: \u0026konnect.GatewayPluginSessionOrderingBeforeArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tPartials: konnect.GatewayPluginSessionPartialArray{\n\t\t\t\t\u0026konnect.GatewayPluginSessionPartialArgs{\n\t\t\t\t\tId:   pulumi.String(\"...my_id...\"),\n\t\t\t\t\tName: pulumi.String(\"...my_name...\"),\n\t\t\t\t\tPath: pulumi.String(\"...my_path...\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tProtocols: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"wss\"),\n\t\t\t},\n\t\t\tRoute: \u0026konnect.GatewayPluginSessionRouteArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tService: \u0026konnect.GatewayPluginSessionServiceArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"...\"),\n\t\t\t},\n\t\t\tUpdatedAt: pulumi.Float64(0),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.GatewayPluginSession;\nimport com.pulumi.konnect.GatewayPluginSessionArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginSessionConfigArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginSessionOrderingArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginSessionOrderingAfterArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginSessionOrderingBeforeArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginSessionPartialArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginSessionRouteArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginSessionServiceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myGatewaypluginsession = new GatewayPluginSession(\"myGatewaypluginsession\", GatewayPluginSessionArgs.builder()\n            .config(GatewayPluginSessionConfigArgs.builder()\n                .absoluteTimeout(1.93)\n                .audience(\"...my_audience...\")\n                .binds(\"user-agent\")\n                .cookieDomain(\"...my_cookie_domain...\")\n                .cookieHttpOnly(true)\n                .cookieName(\"...my_cookie_name...\")\n                .cookiePath(\"...my_cookie_path...\")\n                .cookieSameSite(\"Strict\")\n                .cookieSecure(true)\n                .hashSubject(false)\n                .idlingTimeout(6.27)\n                .logoutMethods(\"GET\")\n                .logoutPostArg(\"...my_logout_post_arg...\")\n                .logoutQueryArg(\"...my_logout_query_arg...\")\n                .readBodyForLogout(true)\n                .remember(false)\n                .rememberAbsoluteTimeout(7.47)\n                .rememberCookieName(\"...my_remember_cookie_name...\")\n                .rememberRollingTimeout(6.77)\n                .requestHeaders(\"idling-timeout\")\n                .responseHeaders(\"audience\")\n                .rollingTimeout(9.29)\n                .secret(\"...my_secret...\")\n                .staleTtl(3.88)\n                .storage(\"cookie\")\n                .storeMetadata(true)\n                .build())\n            .controlPlaneId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .createdAt(4.0)\n            .enabled(false)\n            .gatewayPluginSessionId(\"...my_id...\")\n            .instanceName(\"...my_instance_name...\")\n            .ordering(GatewayPluginSessionOrderingArgs.builder()\n                .after(GatewayPluginSessionOrderingAfterArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .before(GatewayPluginSessionOrderingBeforeArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .build())\n            .partials(GatewayPluginSessionPartialArgs.builder()\n                .id(\"...my_id...\")\n                .name(\"...my_name...\")\n                .path(\"...my_path...\")\n                .build())\n            .protocols(\"wss\")\n            .route(GatewayPluginSessionRouteArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .service(GatewayPluginSessionServiceArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .tags(\"...\")\n            .updatedAt(0.0)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myGatewaypluginsession:\n    type: konnect:GatewayPluginSession\n    name: my_gatewaypluginsession\n    properties:\n      config:\n        absoluteTimeout: 1.93\n        audience: '...my_audience...'\n        binds:\n          - user-agent\n        cookieDomain: '...my_cookie_domain...'\n        cookieHttpOnly: true\n        cookieName: '...my_cookie_name...'\n        cookiePath: '...my_cookie_path...'\n        cookieSameSite: Strict\n        cookieSecure: true\n        hashSubject: false\n        idlingTimeout: 6.27\n        logoutMethods:\n          - GET\n        logoutPostArg: '...my_logout_post_arg...'\n        logoutQueryArg: '...my_logout_query_arg...'\n        readBodyForLogout: true\n        remember: false\n        rememberAbsoluteTimeout: 7.47\n        rememberCookieName: '...my_remember_cookie_name...'\n        rememberRollingTimeout: 6.77\n        requestHeaders:\n          - idling-timeout\n        responseHeaders:\n          - audience\n        rollingTimeout: 9.29\n        secret: '...my_secret...'\n        staleTtl: 3.88\n        storage: cookie\n        storeMetadata: true\n      controlPlaneId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      createdAt: 4\n      enabled: false\n      gatewayPluginSessionId: '...my_id...'\n      instanceName: '...my_instance_name...'\n      ordering:\n        after:\n          accesses:\n            - '...'\n        before:\n          accesses:\n            - '...'\n      partials:\n        - id: '...my_id...'\n          name: '...my_name...'\n          path: '...my_path...'\n      protocols:\n        - wss\n      route:\n        id: '...my_id...'\n      service:\n        id: '...my_id...'\n      tags:\n        - '...'\n      updatedAt: 0\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_gateway_plugin_session.my_konnect_gateway_plugin_session\n\n  id = jsonencode({\n\n    control_plane_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/gatewayPluginSession:GatewayPluginSession my_konnect_gateway_plugin_session '{\"control_plane_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"}'\n```\n\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginSessionConfig:GatewayPluginSessionConfig"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginSessionId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginSessionOrdering:GatewayPluginSessionOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginSessionPartial:GatewayPluginSessionPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginSessionRoute:GatewayPluginSessionRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginSessionService:GatewayPluginSessionService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object","required":["config","controlPlaneId","createdAt","enabled","gatewayPluginSessionId","ordering","protocols","route","service","updatedAt"],"inputProperties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginSessionConfig:GatewayPluginSessionConfig"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginSessionId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginSessionOrdering:GatewayPluginSessionOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginSessionPartial:GatewayPluginSessionPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginSessionRoute:GatewayPluginSessionRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginSessionService:GatewayPluginSessionService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"requiredInputs":["controlPlaneId"],"stateInputs":{"description":"Input properties used for looking up and filtering GatewayPluginSession resources.\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginSessionConfig:GatewayPluginSessionConfig"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginSessionId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginSessionOrdering:GatewayPluginSessionOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginSessionPartial:GatewayPluginSessionPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginSessionRoute:GatewayPluginSessionRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginSessionService:GatewayPluginSessionService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object"}},"konnect:index/gatewayPluginSolaceConsume:GatewayPluginSolaceConsume":{"description":"GatewayPluginSolaceConsume Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myGatewaypluginsolaceconsume = new konnect.GatewayPluginSolaceConsume(\"my_gatewaypluginsolaceconsume\", {\n    config: {\n        flow: {\n            ackMode: \"CLIENT\",\n            binds: [{\n                name: \"...my_name...\",\n                type: \"QUEUE\",\n            }],\n            functions: [\"...\"],\n            maxUnackedMessages: 5,\n            properties: {\n                key: \"value\",\n            },\n            selector: \"...my_selector...\",\n            waitTimeout: 2591,\n            windowSize: 141,\n        },\n        mode: \"WEBSOCKET\",\n        polling: {\n            timeout: 287082,\n        },\n        session: {\n            authentication: {\n                accessToken: \"...my_access_token...\",\n                accessTokenHeader: \"...my_access_token_header...\",\n                basicAuthHeader: \"...my_basic_auth_header...\",\n                idToken: \"...my_id_token...\",\n                idTokenHeader: \"...my_id_token_header...\",\n                password: \"...my_password...\",\n                scheme: \"BASIC\",\n                username: \"...my_username...\",\n            },\n            calculateMessageExpiry: false,\n            connectTimeout: 27609,\n            generateRcvTimestamps: true,\n            generateSendTimestamps: true,\n            generateSenderId: false,\n            generateSequenceNumber: true,\n            host: \"...my_host...\",\n            properties: {\n                key: \"value\",\n            },\n            sslValidateCertificate: true,\n            vpnName: \"...my_vpn_name...\",\n        },\n        websocket: {\n            maxRecvLen: 5,\n            maxSendLen: 10,\n            timeout: 44172,\n        },\n    },\n    controlPlaneId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    createdAt: 8,\n    enabled: false,\n    gatewayPluginSolaceConsumeId: \"...my_id...\",\n    instanceName: \"...my_instance_name...\",\n    ordering: {\n        after: {\n            accesses: [\"...\"],\n        },\n        before: {\n            accesses: [\"...\"],\n        },\n    },\n    partials: [{\n        id: \"...my_id...\",\n        name: \"...my_name...\",\n        path: \"...my_path...\",\n    }],\n    protocols: [\"grpc\"],\n    route: {\n        id: \"...my_id...\",\n    },\n    service: {\n        id: \"...my_id...\",\n    },\n    tags: [\"...\"],\n    updatedAt: 4,\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_gatewaypluginsolaceconsume = konnect.GatewayPluginSolaceConsume(\"my_gatewaypluginsolaceconsume\",\n    config={\n        \"flow\": {\n            \"ack_mode\": \"CLIENT\",\n            \"binds\": [{\n                \"name\": \"...my_name...\",\n                \"type\": \"QUEUE\",\n            }],\n            \"functions\": [\"...\"],\n            \"max_unacked_messages\": 5,\n            \"properties\": {\n                \"key\": \"value\",\n            },\n            \"selector\": \"...my_selector...\",\n            \"wait_timeout\": 2591,\n            \"window_size\": 141,\n        },\n        \"mode\": \"WEBSOCKET\",\n        \"polling\": {\n            \"timeout\": 287082,\n        },\n        \"session\": {\n            \"authentication\": {\n                \"access_token\": \"...my_access_token...\",\n                \"access_token_header\": \"...my_access_token_header...\",\n                \"basic_auth_header\": \"...my_basic_auth_header...\",\n                \"id_token\": \"...my_id_token...\",\n                \"id_token_header\": \"...my_id_token_header...\",\n                \"password\": \"...my_password...\",\n                \"scheme\": \"BASIC\",\n                \"username\": \"...my_username...\",\n            },\n            \"calculate_message_expiry\": False,\n            \"connect_timeout\": 27609,\n            \"generate_rcv_timestamps\": True,\n            \"generate_send_timestamps\": True,\n            \"generate_sender_id\": False,\n            \"generate_sequence_number\": True,\n            \"host\": \"...my_host...\",\n            \"properties\": {\n                \"key\": \"value\",\n            },\n            \"ssl_validate_certificate\": True,\n            \"vpn_name\": \"...my_vpn_name...\",\n        },\n        \"websocket\": {\n            \"max_recv_len\": 5,\n            \"max_send_len\": 10,\n            \"timeout\": 44172,\n        },\n    },\n    control_plane_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    created_at=8,\n    enabled=False,\n    gateway_plugin_solace_consume_id=\"...my_id...\",\n    instance_name=\"...my_instance_name...\",\n    ordering={\n        \"after\": {\n            \"accesses\": [\"...\"],\n        },\n        \"before\": {\n            \"accesses\": [\"...\"],\n        },\n    },\n    partials=[{\n        \"id\": \"...my_id...\",\n        \"name\": \"...my_name...\",\n        \"path\": \"...my_path...\",\n    }],\n    protocols=[\"grpc\"],\n    route={\n        \"id\": \"...my_id...\",\n    },\n    service={\n        \"id\": \"...my_id...\",\n    },\n    tags=[\"...\"],\n    updated_at=4)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myGatewaypluginsolaceconsume = new Konnect.GatewayPluginSolaceConsume(\"my_gatewaypluginsolaceconsume\", new()\n    {\n        Config = new Konnect.Inputs.GatewayPluginSolaceConsumeConfigArgs\n        {\n            Flow = new Konnect.Inputs.GatewayPluginSolaceConsumeConfigFlowArgs\n            {\n                AckMode = \"CLIENT\",\n                Binds = new[]\n                {\n                    new Konnect.Inputs.GatewayPluginSolaceConsumeConfigFlowBindArgs\n                    {\n                        Name = \"...my_name...\",\n                        Type = \"QUEUE\",\n                    },\n                },\n                Functions = new[]\n                {\n                    \"...\",\n                },\n                MaxUnackedMessages = 5,\n                Properties = \n                {\n                    { \"key\", \"value\" },\n                },\n                Selector = \"...my_selector...\",\n                WaitTimeout = 2591,\n                WindowSize = 141,\n            },\n            Mode = \"WEBSOCKET\",\n            Polling = new Konnect.Inputs.GatewayPluginSolaceConsumeConfigPollingArgs\n            {\n                Timeout = 287082,\n            },\n            Session = new Konnect.Inputs.GatewayPluginSolaceConsumeConfigSessionArgs\n            {\n                Authentication = new Konnect.Inputs.GatewayPluginSolaceConsumeConfigSessionAuthenticationArgs\n                {\n                    AccessToken = \"...my_access_token...\",\n                    AccessTokenHeader = \"...my_access_token_header...\",\n                    BasicAuthHeader = \"...my_basic_auth_header...\",\n                    IdToken = \"...my_id_token...\",\n                    IdTokenHeader = \"...my_id_token_header...\",\n                    Password = \"...my_password...\",\n                    Scheme = \"BASIC\",\n                    Username = \"...my_username...\",\n                },\n                CalculateMessageExpiry = false,\n                ConnectTimeout = 27609,\n                GenerateRcvTimestamps = true,\n                GenerateSendTimestamps = true,\n                GenerateSenderId = false,\n                GenerateSequenceNumber = true,\n                Host = \"...my_host...\",\n                Properties = \n                {\n                    { \"key\", \"value\" },\n                },\n                SslValidateCertificate = true,\n                VpnName = \"...my_vpn_name...\",\n            },\n            Websocket = new Konnect.Inputs.GatewayPluginSolaceConsumeConfigWebsocketArgs\n            {\n                MaxRecvLen = 5,\n                MaxSendLen = 10,\n                Timeout = 44172,\n            },\n        },\n        ControlPlaneId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        CreatedAt = 8,\n        Enabled = false,\n        GatewayPluginSolaceConsumeId = \"...my_id...\",\n        InstanceName = \"...my_instance_name...\",\n        Ordering = new Konnect.Inputs.GatewayPluginSolaceConsumeOrderingArgs\n        {\n            After = new Konnect.Inputs.GatewayPluginSolaceConsumeOrderingAfterArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n            Before = new Konnect.Inputs.GatewayPluginSolaceConsumeOrderingBeforeArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n        },\n        Partials = new[]\n        {\n            new Konnect.Inputs.GatewayPluginSolaceConsumePartialArgs\n            {\n                Id = \"...my_id...\",\n                Name = \"...my_name...\",\n                Path = \"...my_path...\",\n            },\n        },\n        Protocols = new[]\n        {\n            \"grpc\",\n        },\n        Route = new Konnect.Inputs.GatewayPluginSolaceConsumeRouteArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Service = new Konnect.Inputs.GatewayPluginSolaceConsumeServiceArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Tags = new[]\n        {\n            \"...\",\n        },\n        UpdatedAt = 4,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewGatewayPluginSolaceConsume(ctx, \"my_gatewaypluginsolaceconsume\", \u0026konnect.GatewayPluginSolaceConsumeArgs{\n\t\t\tConfig: \u0026konnect.GatewayPluginSolaceConsumeConfigArgs{\n\t\t\t\tFlow: \u0026konnect.GatewayPluginSolaceConsumeConfigFlowArgs{\n\t\t\t\t\tAckMode: pulumi.String(\"CLIENT\"),\n\t\t\t\t\tBinds: konnect.GatewayPluginSolaceConsumeConfigFlowBindArray{\n\t\t\t\t\t\t\u0026konnect.GatewayPluginSolaceConsumeConfigFlowBindArgs{\n\t\t\t\t\t\t\tName: pulumi.String(\"...my_name...\"),\n\t\t\t\t\t\t\tType: pulumi.String(\"QUEUE\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tFunctions: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t\tMaxUnackedMessages: pulumi.Float64(5),\n\t\t\t\t\tProperties: pulumi.StringMap{\n\t\t\t\t\t\t\"key\": pulumi.String(\"value\"),\n\t\t\t\t\t},\n\t\t\t\t\tSelector:    pulumi.String(\"...my_selector...\"),\n\t\t\t\t\tWaitTimeout: pulumi.Float64(2591),\n\t\t\t\t\tWindowSize:  pulumi.Float64(141),\n\t\t\t\t},\n\t\t\t\tMode: pulumi.String(\"WEBSOCKET\"),\n\t\t\t\tPolling: \u0026konnect.GatewayPluginSolaceConsumeConfigPollingArgs{\n\t\t\t\t\tTimeout: pulumi.Float64(287082),\n\t\t\t\t},\n\t\t\t\tSession: \u0026konnect.GatewayPluginSolaceConsumeConfigSessionArgs{\n\t\t\t\t\tAuthentication: \u0026konnect.GatewayPluginSolaceConsumeConfigSessionAuthenticationArgs{\n\t\t\t\t\t\tAccessToken:       pulumi.String(\"...my_access_token...\"),\n\t\t\t\t\t\tAccessTokenHeader: pulumi.String(\"...my_access_token_header...\"),\n\t\t\t\t\t\tBasicAuthHeader:   pulumi.String(\"...my_basic_auth_header...\"),\n\t\t\t\t\t\tIdToken:           pulumi.String(\"...my_id_token...\"),\n\t\t\t\t\t\tIdTokenHeader:     pulumi.String(\"...my_id_token_header...\"),\n\t\t\t\t\t\tPassword:          pulumi.String(\"...my_password...\"),\n\t\t\t\t\t\tScheme:            pulumi.String(\"BASIC\"),\n\t\t\t\t\t\tUsername:          pulumi.String(\"...my_username...\"),\n\t\t\t\t\t},\n\t\t\t\t\tCalculateMessageExpiry: pulumi.Bool(false),\n\t\t\t\t\tConnectTimeout:         pulumi.Float64(27609),\n\t\t\t\t\tGenerateRcvTimestamps:  pulumi.Bool(true),\n\t\t\t\t\tGenerateSendTimestamps: pulumi.Bool(true),\n\t\t\t\t\tGenerateSenderId:       pulumi.Bool(false),\n\t\t\t\t\tGenerateSequenceNumber: pulumi.Bool(true),\n\t\t\t\t\tHost:                   pulumi.String(\"...my_host...\"),\n\t\t\t\t\tProperties: pulumi.StringMap{\n\t\t\t\t\t\t\"key\": pulumi.String(\"value\"),\n\t\t\t\t\t},\n\t\t\t\t\tSslValidateCertificate: pulumi.Bool(true),\n\t\t\t\t\tVpnName:                pulumi.String(\"...my_vpn_name...\"),\n\t\t\t\t},\n\t\t\t\tWebsocket: \u0026konnect.GatewayPluginSolaceConsumeConfigWebsocketArgs{\n\t\t\t\t\tMaxRecvLen: pulumi.Float64(5),\n\t\t\t\t\tMaxSendLen: pulumi.Float64(10),\n\t\t\t\t\tTimeout:    pulumi.Float64(44172),\n\t\t\t\t},\n\t\t\t},\n\t\t\tControlPlaneId:               pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tCreatedAt:                    pulumi.Float64(8),\n\t\t\tEnabled:                      pulumi.Bool(false),\n\t\t\tGatewayPluginSolaceConsumeId: pulumi.String(\"...my_id...\"),\n\t\t\tInstanceName:                 pulumi.String(\"...my_instance_name...\"),\n\t\t\tOrdering: \u0026konnect.GatewayPluginSolaceConsumeOrderingArgs{\n\t\t\t\tAfter: \u0026konnect.GatewayPluginSolaceConsumeOrderingAfterArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tBefore: \u0026konnect.GatewayPluginSolaceConsumeOrderingBeforeArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tPartials: konnect.GatewayPluginSolaceConsumePartialArray{\n\t\t\t\t\u0026konnect.GatewayPluginSolaceConsumePartialArgs{\n\t\t\t\t\tId:   pulumi.String(\"...my_id...\"),\n\t\t\t\t\tName: pulumi.String(\"...my_name...\"),\n\t\t\t\t\tPath: pulumi.String(\"...my_path...\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tProtocols: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"grpc\"),\n\t\t\t},\n\t\t\tRoute: \u0026konnect.GatewayPluginSolaceConsumeRouteArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tService: \u0026konnect.GatewayPluginSolaceConsumeServiceArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"...\"),\n\t\t\t},\n\t\t\tUpdatedAt: pulumi.Float64(4),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.GatewayPluginSolaceConsume;\nimport com.pulumi.konnect.GatewayPluginSolaceConsumeArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginSolaceConsumeConfigArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginSolaceConsumeConfigFlowArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginSolaceConsumeConfigPollingArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginSolaceConsumeConfigSessionArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginSolaceConsumeConfigSessionAuthenticationArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginSolaceConsumeConfigWebsocketArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginSolaceConsumeOrderingArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginSolaceConsumeOrderingAfterArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginSolaceConsumeOrderingBeforeArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginSolaceConsumePartialArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginSolaceConsumeRouteArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginSolaceConsumeServiceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myGatewaypluginsolaceconsume = new GatewayPluginSolaceConsume(\"myGatewaypluginsolaceconsume\", GatewayPluginSolaceConsumeArgs.builder()\n            .config(GatewayPluginSolaceConsumeConfigArgs.builder()\n                .flow(GatewayPluginSolaceConsumeConfigFlowArgs.builder()\n                    .ackMode(\"CLIENT\")\n                    .binds(GatewayPluginSolaceConsumeConfigFlowBindArgs.builder()\n                        .name(\"...my_name...\")\n                        .type(\"QUEUE\")\n                        .build())\n                    .functions(\"...\")\n                    .maxUnackedMessages(5.0)\n                    .properties(Map.of(\"key\", \"value\"))\n                    .selector(\"...my_selector...\")\n                    .waitTimeout(2591.0)\n                    .windowSize(141.0)\n                    .build())\n                .mode(\"WEBSOCKET\")\n                .polling(GatewayPluginSolaceConsumeConfigPollingArgs.builder()\n                    .timeout(287082.0)\n                    .build())\n                .session(GatewayPluginSolaceConsumeConfigSessionArgs.builder()\n                    .authentication(GatewayPluginSolaceConsumeConfigSessionAuthenticationArgs.builder()\n                        .accessToken(\"...my_access_token...\")\n                        .accessTokenHeader(\"...my_access_token_header...\")\n                        .basicAuthHeader(\"...my_basic_auth_header...\")\n                        .idToken(\"...my_id_token...\")\n                        .idTokenHeader(\"...my_id_token_header...\")\n                        .password(\"...my_password...\")\n                        .scheme(\"BASIC\")\n                        .username(\"...my_username...\")\n                        .build())\n                    .calculateMessageExpiry(false)\n                    .connectTimeout(27609.0)\n                    .generateRcvTimestamps(true)\n                    .generateSendTimestamps(true)\n                    .generateSenderId(false)\n                    .generateSequenceNumber(true)\n                    .host(\"...my_host...\")\n                    .properties(Map.of(\"key\", \"value\"))\n                    .sslValidateCertificate(true)\n                    .vpnName(\"...my_vpn_name...\")\n                    .build())\n                .websocket(GatewayPluginSolaceConsumeConfigWebsocketArgs.builder()\n                    .maxRecvLen(5.0)\n                    .maxSendLen(10.0)\n                    .timeout(44172.0)\n                    .build())\n                .build())\n            .controlPlaneId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .createdAt(8.0)\n            .enabled(false)\n            .gatewayPluginSolaceConsumeId(\"...my_id...\")\n            .instanceName(\"...my_instance_name...\")\n            .ordering(GatewayPluginSolaceConsumeOrderingArgs.builder()\n                .after(GatewayPluginSolaceConsumeOrderingAfterArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .before(GatewayPluginSolaceConsumeOrderingBeforeArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .build())\n            .partials(GatewayPluginSolaceConsumePartialArgs.builder()\n                .id(\"...my_id...\")\n                .name(\"...my_name...\")\n                .path(\"...my_path...\")\n                .build())\n            .protocols(\"grpc\")\n            .route(GatewayPluginSolaceConsumeRouteArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .service(GatewayPluginSolaceConsumeServiceArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .tags(\"...\")\n            .updatedAt(4.0)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myGatewaypluginsolaceconsume:\n    type: konnect:GatewayPluginSolaceConsume\n    name: my_gatewaypluginsolaceconsume\n    properties:\n      config:\n        flow:\n          ackMode: CLIENT\n          binds:\n            - name: '...my_name...'\n              type: QUEUE\n          functions:\n            - '...'\n          maxUnackedMessages: 5\n          properties:\n            key: value\n          selector: '...my_selector...'\n          waitTimeout: 2591\n          windowSize: 141\n        mode: WEBSOCKET\n        polling:\n          timeout: 287082\n        session:\n          authentication:\n            accessToken: '...my_access_token...'\n            accessTokenHeader: '...my_access_token_header...'\n            basicAuthHeader: '...my_basic_auth_header...'\n            idToken: '...my_id_token...'\n            idTokenHeader: '...my_id_token_header...'\n            password: '...my_password...'\n            scheme: BASIC\n            username: '...my_username...'\n          calculateMessageExpiry: false\n          connectTimeout: 27609\n          generateRcvTimestamps: true\n          generateSendTimestamps: true\n          generateSenderId: false\n          generateSequenceNumber: true\n          host: '...my_host...'\n          properties:\n            key: value\n          sslValidateCertificate: true\n          vpnName: '...my_vpn_name...'\n        websocket:\n          maxRecvLen: 5\n          maxSendLen: 10\n          timeout: 44172\n      controlPlaneId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      createdAt: 8\n      enabled: false\n      gatewayPluginSolaceConsumeId: '...my_id...'\n      instanceName: '...my_instance_name...'\n      ordering:\n        after:\n          accesses:\n            - '...'\n        before:\n          accesses:\n            - '...'\n      partials:\n        - id: '...my_id...'\n          name: '...my_name...'\n          path: '...my_path...'\n      protocols:\n        - grpc\n      route:\n        id: '...my_id...'\n      service:\n        id: '...my_id...'\n      tags:\n        - '...'\n      updatedAt: 4\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_gateway_plugin_solace_consume.my_konnect_gateway_plugin_solace_consume\n\n  id = jsonencode({\n\n    control_plane_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/gatewayPluginSolaceConsume:GatewayPluginSolaceConsume my_konnect_gateway_plugin_solace_consume '{\"control_plane_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"}'\n```\n\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginSolaceConsumeConfig:GatewayPluginSolaceConsumeConfig"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginSolaceConsumeId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginSolaceConsumeOrdering:GatewayPluginSolaceConsumeOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginSolaceConsumePartial:GatewayPluginSolaceConsumePartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginSolaceConsumeRoute:GatewayPluginSolaceConsumeRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginSolaceConsumeService:GatewayPluginSolaceConsumeService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object","required":["config","controlPlaneId","createdAt","enabled","gatewayPluginSolaceConsumeId","ordering","protocols","route","service","updatedAt"],"inputProperties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginSolaceConsumeConfig:GatewayPluginSolaceConsumeConfig"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginSolaceConsumeId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginSolaceConsumeOrdering:GatewayPluginSolaceConsumeOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginSolaceConsumePartial:GatewayPluginSolaceConsumePartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginSolaceConsumeRoute:GatewayPluginSolaceConsumeRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginSolaceConsumeService:GatewayPluginSolaceConsumeService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"requiredInputs":["config","controlPlaneId"],"stateInputs":{"description":"Input properties used for looking up and filtering GatewayPluginSolaceConsume resources.\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginSolaceConsumeConfig:GatewayPluginSolaceConsumeConfig"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginSolaceConsumeId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginSolaceConsumeOrdering:GatewayPluginSolaceConsumeOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginSolaceConsumePartial:GatewayPluginSolaceConsumePartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginSolaceConsumeRoute:GatewayPluginSolaceConsumeRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginSolaceConsumeService:GatewayPluginSolaceConsumeService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object"}},"konnect:index/gatewayPluginSolaceLog:GatewayPluginSolaceLog":{"description":"GatewayPluginSolaceLog Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myGatewaypluginsolacelog = new konnect.GatewayPluginSolaceLog(\"my_gatewaypluginsolacelog\", {\n    config: {\n        message: {\n            ackTimeout: 49183,\n            customFieldsByLua: {\n                key: \"value\",\n            },\n            deliveryMode: \"PERSISTENT\",\n            destinations: [{\n                name: \"...my_name...\",\n                type: \"QUEUE\",\n            }],\n            dmqEligible: false,\n            priority: 228,\n            senderId: \"...my_sender_id...\",\n            tracing: false,\n            tracingSampled: false,\n            ttl: 10,\n        },\n        session: {\n            authentication: {\n                accessToken: \"...my_access_token...\",\n                accessTokenHeader: \"...my_access_token_header...\",\n                basicAuthHeader: \"...my_basic_auth_header...\",\n                idToken: \"...my_id_token...\",\n                idTokenHeader: \"...my_id_token_header...\",\n                password: \"...my_password...\",\n                scheme: \"NONE\",\n                username: \"...my_username...\",\n            },\n            calculateMessageExpiry: false,\n            connectTimeout: 98544,\n            generateRcvTimestamps: false,\n            generateSendTimestamps: false,\n            generateSenderId: true,\n            generateSequenceNumber: false,\n            host: \"...my_host...\",\n            properties: {\n                key: \"value\",\n            },\n            sslValidateCertificate: true,\n            vpnName: \"...my_vpn_name...\",\n        },\n    },\n    controlPlaneId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    createdAt: 2,\n    enabled: true,\n    gatewayPluginSolaceLogId: \"...my_id...\",\n    instanceName: \"...my_instance_name...\",\n    ordering: {\n        after: {\n            accesses: [\"...\"],\n        },\n        before: {\n            accesses: [\"...\"],\n        },\n    },\n    partials: [{\n        id: \"...my_id...\",\n        name: \"...my_name...\",\n        path: \"...my_path...\",\n    }],\n    protocols: [\"http\"],\n    route: {\n        id: \"...my_id...\",\n    },\n    service: {\n        id: \"...my_id...\",\n    },\n    tags: [\"...\"],\n    updatedAt: 4,\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_gatewaypluginsolacelog = konnect.GatewayPluginSolaceLog(\"my_gatewaypluginsolacelog\",\n    config={\n        \"message\": {\n            \"ack_timeout\": 49183,\n            \"custom_fields_by_lua\": {\n                \"key\": \"value\",\n            },\n            \"delivery_mode\": \"PERSISTENT\",\n            \"destinations\": [{\n                \"name\": \"...my_name...\",\n                \"type\": \"QUEUE\",\n            }],\n            \"dmq_eligible\": False,\n            \"priority\": 228,\n            \"sender_id\": \"...my_sender_id...\",\n            \"tracing\": False,\n            \"tracing_sampled\": False,\n            \"ttl\": 10,\n        },\n        \"session\": {\n            \"authentication\": {\n                \"access_token\": \"...my_access_token...\",\n                \"access_token_header\": \"...my_access_token_header...\",\n                \"basic_auth_header\": \"...my_basic_auth_header...\",\n                \"id_token\": \"...my_id_token...\",\n                \"id_token_header\": \"...my_id_token_header...\",\n                \"password\": \"...my_password...\",\n                \"scheme\": \"NONE\",\n                \"username\": \"...my_username...\",\n            },\n            \"calculate_message_expiry\": False,\n            \"connect_timeout\": 98544,\n            \"generate_rcv_timestamps\": False,\n            \"generate_send_timestamps\": False,\n            \"generate_sender_id\": True,\n            \"generate_sequence_number\": False,\n            \"host\": \"...my_host...\",\n            \"properties\": {\n                \"key\": \"value\",\n            },\n            \"ssl_validate_certificate\": True,\n            \"vpn_name\": \"...my_vpn_name...\",\n        },\n    },\n    control_plane_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    created_at=2,\n    enabled=True,\n    gateway_plugin_solace_log_id=\"...my_id...\",\n    instance_name=\"...my_instance_name...\",\n    ordering={\n        \"after\": {\n            \"accesses\": [\"...\"],\n        },\n        \"before\": {\n            \"accesses\": [\"...\"],\n        },\n    },\n    partials=[{\n        \"id\": \"...my_id...\",\n        \"name\": \"...my_name...\",\n        \"path\": \"...my_path...\",\n    }],\n    protocols=[\"http\"],\n    route={\n        \"id\": \"...my_id...\",\n    },\n    service={\n        \"id\": \"...my_id...\",\n    },\n    tags=[\"...\"],\n    updated_at=4)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myGatewaypluginsolacelog = new Konnect.GatewayPluginSolaceLog(\"my_gatewaypluginsolacelog\", new()\n    {\n        Config = new Konnect.Inputs.GatewayPluginSolaceLogConfigArgs\n        {\n            Message = new Konnect.Inputs.GatewayPluginSolaceLogConfigMessageArgs\n            {\n                AckTimeout = 49183,\n                CustomFieldsByLua = \n                {\n                    { \"key\", \"value\" },\n                },\n                DeliveryMode = \"PERSISTENT\",\n                Destinations = new[]\n                {\n                    new Konnect.Inputs.GatewayPluginSolaceLogConfigMessageDestinationArgs\n                    {\n                        Name = \"...my_name...\",\n                        Type = \"QUEUE\",\n                    },\n                },\n                DmqEligible = false,\n                Priority = 228,\n                SenderId = \"...my_sender_id...\",\n                Tracing = false,\n                TracingSampled = false,\n                Ttl = 10,\n            },\n            Session = new Konnect.Inputs.GatewayPluginSolaceLogConfigSessionArgs\n            {\n                Authentication = new Konnect.Inputs.GatewayPluginSolaceLogConfigSessionAuthenticationArgs\n                {\n                    AccessToken = \"...my_access_token...\",\n                    AccessTokenHeader = \"...my_access_token_header...\",\n                    BasicAuthHeader = \"...my_basic_auth_header...\",\n                    IdToken = \"...my_id_token...\",\n                    IdTokenHeader = \"...my_id_token_header...\",\n                    Password = \"...my_password...\",\n                    Scheme = \"NONE\",\n                    Username = \"...my_username...\",\n                },\n                CalculateMessageExpiry = false,\n                ConnectTimeout = 98544,\n                GenerateRcvTimestamps = false,\n                GenerateSendTimestamps = false,\n                GenerateSenderId = true,\n                GenerateSequenceNumber = false,\n                Host = \"...my_host...\",\n                Properties = \n                {\n                    { \"key\", \"value\" },\n                },\n                SslValidateCertificate = true,\n                VpnName = \"...my_vpn_name...\",\n            },\n        },\n        ControlPlaneId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        CreatedAt = 2,\n        Enabled = true,\n        GatewayPluginSolaceLogId = \"...my_id...\",\n        InstanceName = \"...my_instance_name...\",\n        Ordering = new Konnect.Inputs.GatewayPluginSolaceLogOrderingArgs\n        {\n            After = new Konnect.Inputs.GatewayPluginSolaceLogOrderingAfterArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n            Before = new Konnect.Inputs.GatewayPluginSolaceLogOrderingBeforeArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n        },\n        Partials = new[]\n        {\n            new Konnect.Inputs.GatewayPluginSolaceLogPartialArgs\n            {\n                Id = \"...my_id...\",\n                Name = \"...my_name...\",\n                Path = \"...my_path...\",\n            },\n        },\n        Protocols = new[]\n        {\n            \"http\",\n        },\n        Route = new Konnect.Inputs.GatewayPluginSolaceLogRouteArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Service = new Konnect.Inputs.GatewayPluginSolaceLogServiceArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Tags = new[]\n        {\n            \"...\",\n        },\n        UpdatedAt = 4,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewGatewayPluginSolaceLog(ctx, \"my_gatewaypluginsolacelog\", \u0026konnect.GatewayPluginSolaceLogArgs{\n\t\t\tConfig: \u0026konnect.GatewayPluginSolaceLogConfigArgs{\n\t\t\t\tMessage: \u0026konnect.GatewayPluginSolaceLogConfigMessageArgs{\n\t\t\t\t\tAckTimeout: pulumi.Float64(49183),\n\t\t\t\t\tCustomFieldsByLua: pulumi.StringMap{\n\t\t\t\t\t\t\"key\": pulumi.String(\"value\"),\n\t\t\t\t\t},\n\t\t\t\t\tDeliveryMode: pulumi.String(\"PERSISTENT\"),\n\t\t\t\t\tDestinations: konnect.GatewayPluginSolaceLogConfigMessageDestinationArray{\n\t\t\t\t\t\t\u0026konnect.GatewayPluginSolaceLogConfigMessageDestinationArgs{\n\t\t\t\t\t\t\tName: pulumi.String(\"...my_name...\"),\n\t\t\t\t\t\t\tType: pulumi.String(\"QUEUE\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tDmqEligible:    pulumi.Bool(false),\n\t\t\t\t\tPriority:       pulumi.Float64(228),\n\t\t\t\t\tSenderId:       pulumi.String(\"...my_sender_id...\"),\n\t\t\t\t\tTracing:        pulumi.Bool(false),\n\t\t\t\t\tTracingSampled: pulumi.Bool(false),\n\t\t\t\t\tTtl:            pulumi.Float64(10),\n\t\t\t\t},\n\t\t\t\tSession: \u0026konnect.GatewayPluginSolaceLogConfigSessionArgs{\n\t\t\t\t\tAuthentication: \u0026konnect.GatewayPluginSolaceLogConfigSessionAuthenticationArgs{\n\t\t\t\t\t\tAccessToken:       pulumi.String(\"...my_access_token...\"),\n\t\t\t\t\t\tAccessTokenHeader: pulumi.String(\"...my_access_token_header...\"),\n\t\t\t\t\t\tBasicAuthHeader:   pulumi.String(\"...my_basic_auth_header...\"),\n\t\t\t\t\t\tIdToken:           pulumi.String(\"...my_id_token...\"),\n\t\t\t\t\t\tIdTokenHeader:     pulumi.String(\"...my_id_token_header...\"),\n\t\t\t\t\t\tPassword:          pulumi.String(\"...my_password...\"),\n\t\t\t\t\t\tScheme:            pulumi.String(\"NONE\"),\n\t\t\t\t\t\tUsername:          pulumi.String(\"...my_username...\"),\n\t\t\t\t\t},\n\t\t\t\t\tCalculateMessageExpiry: pulumi.Bool(false),\n\t\t\t\t\tConnectTimeout:         pulumi.Float64(98544),\n\t\t\t\t\tGenerateRcvTimestamps:  pulumi.Bool(false),\n\t\t\t\t\tGenerateSendTimestamps: pulumi.Bool(false),\n\t\t\t\t\tGenerateSenderId:       pulumi.Bool(true),\n\t\t\t\t\tGenerateSequenceNumber: pulumi.Bool(false),\n\t\t\t\t\tHost:                   pulumi.String(\"...my_host...\"),\n\t\t\t\t\tProperties: pulumi.StringMap{\n\t\t\t\t\t\t\"key\": pulumi.String(\"value\"),\n\t\t\t\t\t},\n\t\t\t\t\tSslValidateCertificate: pulumi.Bool(true),\n\t\t\t\t\tVpnName:                pulumi.String(\"...my_vpn_name...\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tControlPlaneId:           pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tCreatedAt:                pulumi.Float64(2),\n\t\t\tEnabled:                  pulumi.Bool(true),\n\t\t\tGatewayPluginSolaceLogId: pulumi.String(\"...my_id...\"),\n\t\t\tInstanceName:             pulumi.String(\"...my_instance_name...\"),\n\t\t\tOrdering: \u0026konnect.GatewayPluginSolaceLogOrderingArgs{\n\t\t\t\tAfter: \u0026konnect.GatewayPluginSolaceLogOrderingAfterArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tBefore: \u0026konnect.GatewayPluginSolaceLogOrderingBeforeArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tPartials: konnect.GatewayPluginSolaceLogPartialArray{\n\t\t\t\t\u0026konnect.GatewayPluginSolaceLogPartialArgs{\n\t\t\t\t\tId:   pulumi.String(\"...my_id...\"),\n\t\t\t\t\tName: pulumi.String(\"...my_name...\"),\n\t\t\t\t\tPath: pulumi.String(\"...my_path...\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tProtocols: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"http\"),\n\t\t\t},\n\t\t\tRoute: \u0026konnect.GatewayPluginSolaceLogRouteArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tService: \u0026konnect.GatewayPluginSolaceLogServiceArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"...\"),\n\t\t\t},\n\t\t\tUpdatedAt: pulumi.Float64(4),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.GatewayPluginSolaceLog;\nimport com.pulumi.konnect.GatewayPluginSolaceLogArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginSolaceLogConfigArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginSolaceLogConfigMessageArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginSolaceLogConfigSessionArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginSolaceLogConfigSessionAuthenticationArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginSolaceLogOrderingArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginSolaceLogOrderingAfterArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginSolaceLogOrderingBeforeArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginSolaceLogPartialArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginSolaceLogRouteArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginSolaceLogServiceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myGatewaypluginsolacelog = new GatewayPluginSolaceLog(\"myGatewaypluginsolacelog\", GatewayPluginSolaceLogArgs.builder()\n            .config(GatewayPluginSolaceLogConfigArgs.builder()\n                .message(GatewayPluginSolaceLogConfigMessageArgs.builder()\n                    .ackTimeout(49183.0)\n                    .customFieldsByLua(Map.of(\"key\", \"value\"))\n                    .deliveryMode(\"PERSISTENT\")\n                    .destinations(GatewayPluginSolaceLogConfigMessageDestinationArgs.builder()\n                        .name(\"...my_name...\")\n                        .type(\"QUEUE\")\n                        .build())\n                    .dmqEligible(false)\n                    .priority(228.0)\n                    .senderId(\"...my_sender_id...\")\n                    .tracing(false)\n                    .tracingSampled(false)\n                    .ttl(10.0)\n                    .build())\n                .session(GatewayPluginSolaceLogConfigSessionArgs.builder()\n                    .authentication(GatewayPluginSolaceLogConfigSessionAuthenticationArgs.builder()\n                        .accessToken(\"...my_access_token...\")\n                        .accessTokenHeader(\"...my_access_token_header...\")\n                        .basicAuthHeader(\"...my_basic_auth_header...\")\n                        .idToken(\"...my_id_token...\")\n                        .idTokenHeader(\"...my_id_token_header...\")\n                        .password(\"...my_password...\")\n                        .scheme(\"NONE\")\n                        .username(\"...my_username...\")\n                        .build())\n                    .calculateMessageExpiry(false)\n                    .connectTimeout(98544.0)\n                    .generateRcvTimestamps(false)\n                    .generateSendTimestamps(false)\n                    .generateSenderId(true)\n                    .generateSequenceNumber(false)\n                    .host(\"...my_host...\")\n                    .properties(Map.of(\"key\", \"value\"))\n                    .sslValidateCertificate(true)\n                    .vpnName(\"...my_vpn_name...\")\n                    .build())\n                .build())\n            .controlPlaneId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .createdAt(2.0)\n            .enabled(true)\n            .gatewayPluginSolaceLogId(\"...my_id...\")\n            .instanceName(\"...my_instance_name...\")\n            .ordering(GatewayPluginSolaceLogOrderingArgs.builder()\n                .after(GatewayPluginSolaceLogOrderingAfterArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .before(GatewayPluginSolaceLogOrderingBeforeArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .build())\n            .partials(GatewayPluginSolaceLogPartialArgs.builder()\n                .id(\"...my_id...\")\n                .name(\"...my_name...\")\n                .path(\"...my_path...\")\n                .build())\n            .protocols(\"http\")\n            .route(GatewayPluginSolaceLogRouteArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .service(GatewayPluginSolaceLogServiceArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .tags(\"...\")\n            .updatedAt(4.0)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myGatewaypluginsolacelog:\n    type: konnect:GatewayPluginSolaceLog\n    name: my_gatewaypluginsolacelog\n    properties:\n      config:\n        message:\n          ackTimeout: 49183\n          customFieldsByLua:\n            key: value\n          deliveryMode: PERSISTENT\n          destinations:\n            - name: '...my_name...'\n              type: QUEUE\n          dmqEligible: false\n          priority: 228\n          senderId: '...my_sender_id...'\n          tracing: false\n          tracingSampled: false\n          ttl: 10\n        session:\n          authentication:\n            accessToken: '...my_access_token...'\n            accessTokenHeader: '...my_access_token_header...'\n            basicAuthHeader: '...my_basic_auth_header...'\n            idToken: '...my_id_token...'\n            idTokenHeader: '...my_id_token_header...'\n            password: '...my_password...'\n            scheme: NONE\n            username: '...my_username...'\n          calculateMessageExpiry: false\n          connectTimeout: 98544\n          generateRcvTimestamps: false\n          generateSendTimestamps: false\n          generateSenderId: true\n          generateSequenceNumber: false\n          host: '...my_host...'\n          properties:\n            key: value\n          sslValidateCertificate: true\n          vpnName: '...my_vpn_name...'\n      controlPlaneId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      createdAt: 2\n      enabled: true\n      gatewayPluginSolaceLogId: '...my_id...'\n      instanceName: '...my_instance_name...'\n      ordering:\n        after:\n          accesses:\n            - '...'\n        before:\n          accesses:\n            - '...'\n      partials:\n        - id: '...my_id...'\n          name: '...my_name...'\n          path: '...my_path...'\n      protocols:\n        - http\n      route:\n        id: '...my_id...'\n      service:\n        id: '...my_id...'\n      tags:\n        - '...'\n      updatedAt: 4\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_gateway_plugin_solace_log.my_konnect_gateway_plugin_solace_log\n\n  id = jsonencode({\n\n    control_plane_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/gatewayPluginSolaceLog:GatewayPluginSolaceLog my_konnect_gateway_plugin_solace_log '{\"control_plane_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"}'\n```\n\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginSolaceLogConfig:GatewayPluginSolaceLogConfig"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginSolaceLogId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginSolaceLogOrdering:GatewayPluginSolaceLogOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginSolaceLogPartial:GatewayPluginSolaceLogPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A list of the request protocols that will trigger this plugin. The default value, as well as the possible values allowed on this field, may change depending on the plugin type. For example, plugins that only work in stream mode will only support tcp and tls. Default: [\"grpc\",\"grpcs\",\"http\",\"https\",\"ws\",\"wss\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginSolaceLogRoute:GatewayPluginSolaceLogRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginSolaceLogService:GatewayPluginSolaceLogService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object","required":["config","controlPlaneId","createdAt","enabled","gatewayPluginSolaceLogId","ordering","protocols","route","service","updatedAt"],"inputProperties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginSolaceLogConfig:GatewayPluginSolaceLogConfig"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginSolaceLogId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginSolaceLogOrdering:GatewayPluginSolaceLogOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginSolaceLogPartial:GatewayPluginSolaceLogPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A list of the request protocols that will trigger this plugin. The default value, as well as the possible values allowed on this field, may change depending on the plugin type. For example, plugins that only work in stream mode will only support tcp and tls. Default: [\"grpc\",\"grpcs\",\"http\",\"https\",\"ws\",\"wss\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginSolaceLogRoute:GatewayPluginSolaceLogRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginSolaceLogService:GatewayPluginSolaceLogService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"requiredInputs":["config","controlPlaneId"],"stateInputs":{"description":"Input properties used for looking up and filtering GatewayPluginSolaceLog resources.\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginSolaceLogConfig:GatewayPluginSolaceLogConfig"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginSolaceLogId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginSolaceLogOrdering:GatewayPluginSolaceLogOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginSolaceLogPartial:GatewayPluginSolaceLogPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A list of the request protocols that will trigger this plugin. The default value, as well as the possible values allowed on this field, may change depending on the plugin type. For example, plugins that only work in stream mode will only support tcp and tls. Default: [\"grpc\",\"grpcs\",\"http\",\"https\",\"ws\",\"wss\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginSolaceLogRoute:GatewayPluginSolaceLogRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginSolaceLogService:GatewayPluginSolaceLogService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object"}},"konnect:index/gatewayPluginSolaceUpstream:GatewayPluginSolaceUpstream":{"description":"GatewayPluginSolaceUpstream Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myGatewaypluginsolaceupstream = new konnect.GatewayPluginSolaceUpstream(\"my_gatewaypluginsolaceupstream\", {\n    config: {\n        message: {\n            ackTimeout: 89103,\n            defaultContent: \"...my_default_content...\",\n            deliveryMode: \"DIRECT\",\n            destinations: [{\n                name: \"...my_name...\",\n                type: \"TOPIC\",\n            }],\n            dmqEligible: true,\n            forwardBody: false,\n            forwardHeaders: false,\n            forwardMethod: true,\n            forwardUri: false,\n            functions: [\"...\"],\n            priority: 106,\n            senderId: \"...my_sender_id...\",\n            tracing: false,\n            tracingSampled: false,\n            ttl: 9,\n        },\n        session: {\n            authentication: {\n                accessToken: \"...my_access_token...\",\n                accessTokenHeader: \"...my_access_token_header...\",\n                basicAuthHeader: \"...my_basic_auth_header...\",\n                idToken: \"...my_id_token...\",\n                idTokenHeader: \"...my_id_token_header...\",\n                password: \"...my_password...\",\n                scheme: \"NONE\",\n                username: \"...my_username...\",\n            },\n            calculateMessageExpiry: false,\n            connectTimeout: 82788,\n            generateRcvTimestamps: false,\n            generateSendTimestamps: false,\n            generateSenderId: false,\n            generateSequenceNumber: false,\n            host: \"...my_host...\",\n            properties: {\n                key: \"value\",\n            },\n            sslValidateCertificate: true,\n            vpnName: \"...my_vpn_name...\",\n        },\n    },\n    controlPlaneId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    createdAt: 5,\n    enabled: false,\n    gatewayPluginSolaceUpstreamId: \"...my_id...\",\n    instanceName: \"...my_instance_name...\",\n    ordering: {\n        after: {\n            accesses: [\"...\"],\n        },\n        before: {\n            accesses: [\"...\"],\n        },\n    },\n    partials: [{\n        id: \"...my_id...\",\n        name: \"...my_name...\",\n        path: \"...my_path...\",\n    }],\n    protocols: [\"grpc\"],\n    route: {\n        id: \"...my_id...\",\n    },\n    service: {\n        id: \"...my_id...\",\n    },\n    tags: [\"...\"],\n    updatedAt: 7,\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_gatewaypluginsolaceupstream = konnect.GatewayPluginSolaceUpstream(\"my_gatewaypluginsolaceupstream\",\n    config={\n        \"message\": {\n            \"ack_timeout\": 89103,\n            \"default_content\": \"...my_default_content...\",\n            \"delivery_mode\": \"DIRECT\",\n            \"destinations\": [{\n                \"name\": \"...my_name...\",\n                \"type\": \"TOPIC\",\n            }],\n            \"dmq_eligible\": True,\n            \"forward_body\": False,\n            \"forward_headers\": False,\n            \"forward_method\": True,\n            \"forward_uri\": False,\n            \"functions\": [\"...\"],\n            \"priority\": 106,\n            \"sender_id\": \"...my_sender_id...\",\n            \"tracing\": False,\n            \"tracing_sampled\": False,\n            \"ttl\": 9,\n        },\n        \"session\": {\n            \"authentication\": {\n                \"access_token\": \"...my_access_token...\",\n                \"access_token_header\": \"...my_access_token_header...\",\n                \"basic_auth_header\": \"...my_basic_auth_header...\",\n                \"id_token\": \"...my_id_token...\",\n                \"id_token_header\": \"...my_id_token_header...\",\n                \"password\": \"...my_password...\",\n                \"scheme\": \"NONE\",\n                \"username\": \"...my_username...\",\n            },\n            \"calculate_message_expiry\": False,\n            \"connect_timeout\": 82788,\n            \"generate_rcv_timestamps\": False,\n            \"generate_send_timestamps\": False,\n            \"generate_sender_id\": False,\n            \"generate_sequence_number\": False,\n            \"host\": \"...my_host...\",\n            \"properties\": {\n                \"key\": \"value\",\n            },\n            \"ssl_validate_certificate\": True,\n            \"vpn_name\": \"...my_vpn_name...\",\n        },\n    },\n    control_plane_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    created_at=5,\n    enabled=False,\n    gateway_plugin_solace_upstream_id=\"...my_id...\",\n    instance_name=\"...my_instance_name...\",\n    ordering={\n        \"after\": {\n            \"accesses\": [\"...\"],\n        },\n        \"before\": {\n            \"accesses\": [\"...\"],\n        },\n    },\n    partials=[{\n        \"id\": \"...my_id...\",\n        \"name\": \"...my_name...\",\n        \"path\": \"...my_path...\",\n    }],\n    protocols=[\"grpc\"],\n    route={\n        \"id\": \"...my_id...\",\n    },\n    service={\n        \"id\": \"...my_id...\",\n    },\n    tags=[\"...\"],\n    updated_at=7)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myGatewaypluginsolaceupstream = new Konnect.GatewayPluginSolaceUpstream(\"my_gatewaypluginsolaceupstream\", new()\n    {\n        Config = new Konnect.Inputs.GatewayPluginSolaceUpstreamConfigArgs\n        {\n            Message = new Konnect.Inputs.GatewayPluginSolaceUpstreamConfigMessageArgs\n            {\n                AckTimeout = 89103,\n                DefaultContent = \"...my_default_content...\",\n                DeliveryMode = \"DIRECT\",\n                Destinations = new[]\n                {\n                    new Konnect.Inputs.GatewayPluginSolaceUpstreamConfigMessageDestinationArgs\n                    {\n                        Name = \"...my_name...\",\n                        Type = \"TOPIC\",\n                    },\n                },\n                DmqEligible = true,\n                ForwardBody = false,\n                ForwardHeaders = false,\n                ForwardMethod = true,\n                ForwardUri = false,\n                Functions = new[]\n                {\n                    \"...\",\n                },\n                Priority = 106,\n                SenderId = \"...my_sender_id...\",\n                Tracing = false,\n                TracingSampled = false,\n                Ttl = 9,\n            },\n            Session = new Konnect.Inputs.GatewayPluginSolaceUpstreamConfigSessionArgs\n            {\n                Authentication = new Konnect.Inputs.GatewayPluginSolaceUpstreamConfigSessionAuthenticationArgs\n                {\n                    AccessToken = \"...my_access_token...\",\n                    AccessTokenHeader = \"...my_access_token_header...\",\n                    BasicAuthHeader = \"...my_basic_auth_header...\",\n                    IdToken = \"...my_id_token...\",\n                    IdTokenHeader = \"...my_id_token_header...\",\n                    Password = \"...my_password...\",\n                    Scheme = \"NONE\",\n                    Username = \"...my_username...\",\n                },\n                CalculateMessageExpiry = false,\n                ConnectTimeout = 82788,\n                GenerateRcvTimestamps = false,\n                GenerateSendTimestamps = false,\n                GenerateSenderId = false,\n                GenerateSequenceNumber = false,\n                Host = \"...my_host...\",\n                Properties = \n                {\n                    { \"key\", \"value\" },\n                },\n                SslValidateCertificate = true,\n                VpnName = \"...my_vpn_name...\",\n            },\n        },\n        ControlPlaneId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        CreatedAt = 5,\n        Enabled = false,\n        GatewayPluginSolaceUpstreamId = \"...my_id...\",\n        InstanceName = \"...my_instance_name...\",\n        Ordering = new Konnect.Inputs.GatewayPluginSolaceUpstreamOrderingArgs\n        {\n            After = new Konnect.Inputs.GatewayPluginSolaceUpstreamOrderingAfterArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n            Before = new Konnect.Inputs.GatewayPluginSolaceUpstreamOrderingBeforeArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n        },\n        Partials = new[]\n        {\n            new Konnect.Inputs.GatewayPluginSolaceUpstreamPartialArgs\n            {\n                Id = \"...my_id...\",\n                Name = \"...my_name...\",\n                Path = \"...my_path...\",\n            },\n        },\n        Protocols = new[]\n        {\n            \"grpc\",\n        },\n        Route = new Konnect.Inputs.GatewayPluginSolaceUpstreamRouteArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Service = new Konnect.Inputs.GatewayPluginSolaceUpstreamServiceArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Tags = new[]\n        {\n            \"...\",\n        },\n        UpdatedAt = 7,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewGatewayPluginSolaceUpstream(ctx, \"my_gatewaypluginsolaceupstream\", \u0026konnect.GatewayPluginSolaceUpstreamArgs{\n\t\t\tConfig: \u0026konnect.GatewayPluginSolaceUpstreamConfigArgs{\n\t\t\t\tMessage: \u0026konnect.GatewayPluginSolaceUpstreamConfigMessageArgs{\n\t\t\t\t\tAckTimeout:     pulumi.Float64(89103),\n\t\t\t\t\tDefaultContent: pulumi.String(\"...my_default_content...\"),\n\t\t\t\t\tDeliveryMode:   pulumi.String(\"DIRECT\"),\n\t\t\t\t\tDestinations: konnect.GatewayPluginSolaceUpstreamConfigMessageDestinationArray{\n\t\t\t\t\t\t\u0026konnect.GatewayPluginSolaceUpstreamConfigMessageDestinationArgs{\n\t\t\t\t\t\t\tName: pulumi.String(\"...my_name...\"),\n\t\t\t\t\t\t\tType: pulumi.String(\"TOPIC\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tDmqEligible:    pulumi.Bool(true),\n\t\t\t\t\tForwardBody:    pulumi.Bool(false),\n\t\t\t\t\tForwardHeaders: pulumi.Bool(false),\n\t\t\t\t\tForwardMethod:  pulumi.Bool(true),\n\t\t\t\t\tForwardUri:     pulumi.Bool(false),\n\t\t\t\t\tFunctions: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t\tPriority:       pulumi.Float64(106),\n\t\t\t\t\tSenderId:       pulumi.String(\"...my_sender_id...\"),\n\t\t\t\t\tTracing:        pulumi.Bool(false),\n\t\t\t\t\tTracingSampled: pulumi.Bool(false),\n\t\t\t\t\tTtl:            pulumi.Float64(9),\n\t\t\t\t},\n\t\t\t\tSession: \u0026konnect.GatewayPluginSolaceUpstreamConfigSessionArgs{\n\t\t\t\t\tAuthentication: \u0026konnect.GatewayPluginSolaceUpstreamConfigSessionAuthenticationArgs{\n\t\t\t\t\t\tAccessToken:       pulumi.String(\"...my_access_token...\"),\n\t\t\t\t\t\tAccessTokenHeader: pulumi.String(\"...my_access_token_header...\"),\n\t\t\t\t\t\tBasicAuthHeader:   pulumi.String(\"...my_basic_auth_header...\"),\n\t\t\t\t\t\tIdToken:           pulumi.String(\"...my_id_token...\"),\n\t\t\t\t\t\tIdTokenHeader:     pulumi.String(\"...my_id_token_header...\"),\n\t\t\t\t\t\tPassword:          pulumi.String(\"...my_password...\"),\n\t\t\t\t\t\tScheme:            pulumi.String(\"NONE\"),\n\t\t\t\t\t\tUsername:          pulumi.String(\"...my_username...\"),\n\t\t\t\t\t},\n\t\t\t\t\tCalculateMessageExpiry: pulumi.Bool(false),\n\t\t\t\t\tConnectTimeout:         pulumi.Float64(82788),\n\t\t\t\t\tGenerateRcvTimestamps:  pulumi.Bool(false),\n\t\t\t\t\tGenerateSendTimestamps: pulumi.Bool(false),\n\t\t\t\t\tGenerateSenderId:       pulumi.Bool(false),\n\t\t\t\t\tGenerateSequenceNumber: pulumi.Bool(false),\n\t\t\t\t\tHost:                   pulumi.String(\"...my_host...\"),\n\t\t\t\t\tProperties: pulumi.StringMap{\n\t\t\t\t\t\t\"key\": pulumi.String(\"value\"),\n\t\t\t\t\t},\n\t\t\t\t\tSslValidateCertificate: pulumi.Bool(true),\n\t\t\t\t\tVpnName:                pulumi.String(\"...my_vpn_name...\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tControlPlaneId:                pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tCreatedAt:                     pulumi.Float64(5),\n\t\t\tEnabled:                       pulumi.Bool(false),\n\t\t\tGatewayPluginSolaceUpstreamId: pulumi.String(\"...my_id...\"),\n\t\t\tInstanceName:                  pulumi.String(\"...my_instance_name...\"),\n\t\t\tOrdering: \u0026konnect.GatewayPluginSolaceUpstreamOrderingArgs{\n\t\t\t\tAfter: \u0026konnect.GatewayPluginSolaceUpstreamOrderingAfterArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tBefore: \u0026konnect.GatewayPluginSolaceUpstreamOrderingBeforeArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tPartials: konnect.GatewayPluginSolaceUpstreamPartialArray{\n\t\t\t\t\u0026konnect.GatewayPluginSolaceUpstreamPartialArgs{\n\t\t\t\t\tId:   pulumi.String(\"...my_id...\"),\n\t\t\t\t\tName: pulumi.String(\"...my_name...\"),\n\t\t\t\t\tPath: pulumi.String(\"...my_path...\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tProtocols: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"grpc\"),\n\t\t\t},\n\t\t\tRoute: \u0026konnect.GatewayPluginSolaceUpstreamRouteArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tService: \u0026konnect.GatewayPluginSolaceUpstreamServiceArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"...\"),\n\t\t\t},\n\t\t\tUpdatedAt: pulumi.Float64(7),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.GatewayPluginSolaceUpstream;\nimport com.pulumi.konnect.GatewayPluginSolaceUpstreamArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginSolaceUpstreamConfigArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginSolaceUpstreamConfigMessageArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginSolaceUpstreamConfigSessionArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginSolaceUpstreamConfigSessionAuthenticationArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginSolaceUpstreamOrderingArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginSolaceUpstreamOrderingAfterArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginSolaceUpstreamOrderingBeforeArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginSolaceUpstreamPartialArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginSolaceUpstreamRouteArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginSolaceUpstreamServiceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myGatewaypluginsolaceupstream = new GatewayPluginSolaceUpstream(\"myGatewaypluginsolaceupstream\", GatewayPluginSolaceUpstreamArgs.builder()\n            .config(GatewayPluginSolaceUpstreamConfigArgs.builder()\n                .message(GatewayPluginSolaceUpstreamConfigMessageArgs.builder()\n                    .ackTimeout(89103.0)\n                    .defaultContent(\"...my_default_content...\")\n                    .deliveryMode(\"DIRECT\")\n                    .destinations(GatewayPluginSolaceUpstreamConfigMessageDestinationArgs.builder()\n                        .name(\"...my_name...\")\n                        .type(\"TOPIC\")\n                        .build())\n                    .dmqEligible(true)\n                    .forwardBody(false)\n                    .forwardHeaders(false)\n                    .forwardMethod(true)\n                    .forwardUri(false)\n                    .functions(\"...\")\n                    .priority(106.0)\n                    .senderId(\"...my_sender_id...\")\n                    .tracing(false)\n                    .tracingSampled(false)\n                    .ttl(9.0)\n                    .build())\n                .session(GatewayPluginSolaceUpstreamConfigSessionArgs.builder()\n                    .authentication(GatewayPluginSolaceUpstreamConfigSessionAuthenticationArgs.builder()\n                        .accessToken(\"...my_access_token...\")\n                        .accessTokenHeader(\"...my_access_token_header...\")\n                        .basicAuthHeader(\"...my_basic_auth_header...\")\n                        .idToken(\"...my_id_token...\")\n                        .idTokenHeader(\"...my_id_token_header...\")\n                        .password(\"...my_password...\")\n                        .scheme(\"NONE\")\n                        .username(\"...my_username...\")\n                        .build())\n                    .calculateMessageExpiry(false)\n                    .connectTimeout(82788.0)\n                    .generateRcvTimestamps(false)\n                    .generateSendTimestamps(false)\n                    .generateSenderId(false)\n                    .generateSequenceNumber(false)\n                    .host(\"...my_host...\")\n                    .properties(Map.of(\"key\", \"value\"))\n                    .sslValidateCertificate(true)\n                    .vpnName(\"...my_vpn_name...\")\n                    .build())\n                .build())\n            .controlPlaneId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .createdAt(5.0)\n            .enabled(false)\n            .gatewayPluginSolaceUpstreamId(\"...my_id...\")\n            .instanceName(\"...my_instance_name...\")\n            .ordering(GatewayPluginSolaceUpstreamOrderingArgs.builder()\n                .after(GatewayPluginSolaceUpstreamOrderingAfterArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .before(GatewayPluginSolaceUpstreamOrderingBeforeArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .build())\n            .partials(GatewayPluginSolaceUpstreamPartialArgs.builder()\n                .id(\"...my_id...\")\n                .name(\"...my_name...\")\n                .path(\"...my_path...\")\n                .build())\n            .protocols(\"grpc\")\n            .route(GatewayPluginSolaceUpstreamRouteArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .service(GatewayPluginSolaceUpstreamServiceArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .tags(\"...\")\n            .updatedAt(7.0)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myGatewaypluginsolaceupstream:\n    type: konnect:GatewayPluginSolaceUpstream\n    name: my_gatewaypluginsolaceupstream\n    properties:\n      config:\n        message:\n          ackTimeout: 89103\n          defaultContent: '...my_default_content...'\n          deliveryMode: DIRECT\n          destinations:\n            - name: '...my_name...'\n              type: TOPIC\n          dmqEligible: true\n          forwardBody: false\n          forwardHeaders: false\n          forwardMethod: true\n          forwardUri: false\n          functions:\n            - '...'\n          priority: 106\n          senderId: '...my_sender_id...'\n          tracing: false\n          tracingSampled: false\n          ttl: 9\n        session:\n          authentication:\n            accessToken: '...my_access_token...'\n            accessTokenHeader: '...my_access_token_header...'\n            basicAuthHeader: '...my_basic_auth_header...'\n            idToken: '...my_id_token...'\n            idTokenHeader: '...my_id_token_header...'\n            password: '...my_password...'\n            scheme: NONE\n            username: '...my_username...'\n          calculateMessageExpiry: false\n          connectTimeout: 82788\n          generateRcvTimestamps: false\n          generateSendTimestamps: false\n          generateSenderId: false\n          generateSequenceNumber: false\n          host: '...my_host...'\n          properties:\n            key: value\n          sslValidateCertificate: true\n          vpnName: '...my_vpn_name...'\n      controlPlaneId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      createdAt: 5\n      enabled: false\n      gatewayPluginSolaceUpstreamId: '...my_id...'\n      instanceName: '...my_instance_name...'\n      ordering:\n        after:\n          accesses:\n            - '...'\n        before:\n          accesses:\n            - '...'\n      partials:\n        - id: '...my_id...'\n          name: '...my_name...'\n          path: '...my_path...'\n      protocols:\n        - grpc\n      route:\n        id: '...my_id...'\n      service:\n        id: '...my_id...'\n      tags:\n        - '...'\n      updatedAt: 7\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_gateway_plugin_solace_upstream.my_konnect_gateway_plugin_solace_upstream\n\n  id = jsonencode({\n\n    control_plane_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/gatewayPluginSolaceUpstream:GatewayPluginSolaceUpstream my_konnect_gateway_plugin_solace_upstream '{\"control_plane_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"}'\n```\n\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginSolaceUpstreamConfig:GatewayPluginSolaceUpstreamConfig"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginSolaceUpstreamId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginSolaceUpstreamOrdering:GatewayPluginSolaceUpstreamOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginSolaceUpstreamPartial:GatewayPluginSolaceUpstreamPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginSolaceUpstreamRoute:GatewayPluginSolaceUpstreamRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginSolaceUpstreamService:GatewayPluginSolaceUpstreamService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object","required":["config","controlPlaneId","createdAt","enabled","gatewayPluginSolaceUpstreamId","ordering","protocols","route","service","updatedAt"],"inputProperties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginSolaceUpstreamConfig:GatewayPluginSolaceUpstreamConfig"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginSolaceUpstreamId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginSolaceUpstreamOrdering:GatewayPluginSolaceUpstreamOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginSolaceUpstreamPartial:GatewayPluginSolaceUpstreamPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginSolaceUpstreamRoute:GatewayPluginSolaceUpstreamRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginSolaceUpstreamService:GatewayPluginSolaceUpstreamService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"requiredInputs":["config","controlPlaneId"],"stateInputs":{"description":"Input properties used for looking up and filtering GatewayPluginSolaceUpstream resources.\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginSolaceUpstreamConfig:GatewayPluginSolaceUpstreamConfig"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginSolaceUpstreamId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginSolaceUpstreamOrdering:GatewayPluginSolaceUpstreamOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginSolaceUpstreamPartial:GatewayPluginSolaceUpstreamPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginSolaceUpstreamRoute:GatewayPluginSolaceUpstreamRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginSolaceUpstreamService:GatewayPluginSolaceUpstreamService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object"}},"konnect:index/gatewayPluginStandardWebhooks:GatewayPluginStandardWebhooks":{"description":"GatewayPluginStandardWebhooks Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myGatewaypluginstandardwebhooks = new konnect.GatewayPluginStandardWebhooks(\"my_gatewaypluginstandardwebhooks\", {\n    config: {\n        secretV1: \"...my_secret_v1...\",\n        toleranceSecond: 10,\n    },\n    consumerGroup: {\n        id: \"...my_id...\",\n    },\n    controlPlaneId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    createdAt: 5,\n    enabled: false,\n    gatewayPluginStandardWebhooksId: \"...my_id...\",\n    instanceName: \"...my_instance_name...\",\n    ordering: {\n        after: {\n            accesses: [\"...\"],\n        },\n        before: {\n            accesses: [\"...\"],\n        },\n    },\n    partials: [{\n        id: \"...my_id...\",\n        name: \"...my_name...\",\n        path: \"...my_path...\",\n    }],\n    protocols: [\"https\"],\n    route: {\n        id: \"...my_id...\",\n    },\n    service: {\n        id: \"...my_id...\",\n    },\n    tags: [\"...\"],\n    updatedAt: 6,\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_gatewaypluginstandardwebhooks = konnect.GatewayPluginStandardWebhooks(\"my_gatewaypluginstandardwebhooks\",\n    config={\n        \"secret_v1\": \"...my_secret_v1...\",\n        \"tolerance_second\": 10,\n    },\n    consumer_group={\n        \"id\": \"...my_id...\",\n    },\n    control_plane_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    created_at=5,\n    enabled=False,\n    gateway_plugin_standard_webhooks_id=\"...my_id...\",\n    instance_name=\"...my_instance_name...\",\n    ordering={\n        \"after\": {\n            \"accesses\": [\"...\"],\n        },\n        \"before\": {\n            \"accesses\": [\"...\"],\n        },\n    },\n    partials=[{\n        \"id\": \"...my_id...\",\n        \"name\": \"...my_name...\",\n        \"path\": \"...my_path...\",\n    }],\n    protocols=[\"https\"],\n    route={\n        \"id\": \"...my_id...\",\n    },\n    service={\n        \"id\": \"...my_id...\",\n    },\n    tags=[\"...\"],\n    updated_at=6)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myGatewaypluginstandardwebhooks = new Konnect.GatewayPluginStandardWebhooks(\"my_gatewaypluginstandardwebhooks\", new()\n    {\n        Config = new Konnect.Inputs.GatewayPluginStandardWebhooksConfigArgs\n        {\n            SecretV1 = \"...my_secret_v1...\",\n            ToleranceSecond = 10,\n        },\n        ConsumerGroup = new Konnect.Inputs.GatewayPluginStandardWebhooksConsumerGroupArgs\n        {\n            Id = \"...my_id...\",\n        },\n        ControlPlaneId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        CreatedAt = 5,\n        Enabled = false,\n        GatewayPluginStandardWebhooksId = \"...my_id...\",\n        InstanceName = \"...my_instance_name...\",\n        Ordering = new Konnect.Inputs.GatewayPluginStandardWebhooksOrderingArgs\n        {\n            After = new Konnect.Inputs.GatewayPluginStandardWebhooksOrderingAfterArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n            Before = new Konnect.Inputs.GatewayPluginStandardWebhooksOrderingBeforeArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n        },\n        Partials = new[]\n        {\n            new Konnect.Inputs.GatewayPluginStandardWebhooksPartialArgs\n            {\n                Id = \"...my_id...\",\n                Name = \"...my_name...\",\n                Path = \"...my_path...\",\n            },\n        },\n        Protocols = new[]\n        {\n            \"https\",\n        },\n        Route = new Konnect.Inputs.GatewayPluginStandardWebhooksRouteArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Service = new Konnect.Inputs.GatewayPluginStandardWebhooksServiceArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Tags = new[]\n        {\n            \"...\",\n        },\n        UpdatedAt = 6,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewGatewayPluginStandardWebhooks(ctx, \"my_gatewaypluginstandardwebhooks\", \u0026konnect.GatewayPluginStandardWebhooksArgs{\n\t\t\tConfig: \u0026konnect.GatewayPluginStandardWebhooksConfigArgs{\n\t\t\t\tSecretV1:        pulumi.String(\"...my_secret_v1...\"),\n\t\t\t\tToleranceSecond: pulumi.Float64(10),\n\t\t\t},\n\t\t\tConsumerGroup: \u0026konnect.GatewayPluginStandardWebhooksConsumerGroupArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tControlPlaneId:                  pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tCreatedAt:                       pulumi.Float64(5),\n\t\t\tEnabled:                         pulumi.Bool(false),\n\t\t\tGatewayPluginStandardWebhooksId: pulumi.String(\"...my_id...\"),\n\t\t\tInstanceName:                    pulumi.String(\"...my_instance_name...\"),\n\t\t\tOrdering: \u0026konnect.GatewayPluginStandardWebhooksOrderingArgs{\n\t\t\t\tAfter: \u0026konnect.GatewayPluginStandardWebhooksOrderingAfterArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tBefore: \u0026konnect.GatewayPluginStandardWebhooksOrderingBeforeArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tPartials: konnect.GatewayPluginStandardWebhooksPartialArray{\n\t\t\t\t\u0026konnect.GatewayPluginStandardWebhooksPartialArgs{\n\t\t\t\t\tId:   pulumi.String(\"...my_id...\"),\n\t\t\t\t\tName: pulumi.String(\"...my_name...\"),\n\t\t\t\t\tPath: pulumi.String(\"...my_path...\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tProtocols: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"https\"),\n\t\t\t},\n\t\t\tRoute: \u0026konnect.GatewayPluginStandardWebhooksRouteArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tService: \u0026konnect.GatewayPluginStandardWebhooksServiceArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"...\"),\n\t\t\t},\n\t\t\tUpdatedAt: pulumi.Float64(6),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.GatewayPluginStandardWebhooks;\nimport com.pulumi.konnect.GatewayPluginStandardWebhooksArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginStandardWebhooksConfigArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginStandardWebhooksConsumerGroupArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginStandardWebhooksOrderingArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginStandardWebhooksOrderingAfterArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginStandardWebhooksOrderingBeforeArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginStandardWebhooksPartialArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginStandardWebhooksRouteArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginStandardWebhooksServiceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myGatewaypluginstandardwebhooks = new GatewayPluginStandardWebhooks(\"myGatewaypluginstandardwebhooks\", GatewayPluginStandardWebhooksArgs.builder()\n            .config(GatewayPluginStandardWebhooksConfigArgs.builder()\n                .secretV1(\"...my_secret_v1...\")\n                .toleranceSecond(10.0)\n                .build())\n            .consumerGroup(GatewayPluginStandardWebhooksConsumerGroupArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .controlPlaneId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .createdAt(5.0)\n            .enabled(false)\n            .gatewayPluginStandardWebhooksId(\"...my_id...\")\n            .instanceName(\"...my_instance_name...\")\n            .ordering(GatewayPluginStandardWebhooksOrderingArgs.builder()\n                .after(GatewayPluginStandardWebhooksOrderingAfterArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .before(GatewayPluginStandardWebhooksOrderingBeforeArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .build())\n            .partials(GatewayPluginStandardWebhooksPartialArgs.builder()\n                .id(\"...my_id...\")\n                .name(\"...my_name...\")\n                .path(\"...my_path...\")\n                .build())\n            .protocols(\"https\")\n            .route(GatewayPluginStandardWebhooksRouteArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .service(GatewayPluginStandardWebhooksServiceArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .tags(\"...\")\n            .updatedAt(6.0)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myGatewaypluginstandardwebhooks:\n    type: konnect:GatewayPluginStandardWebhooks\n    name: my_gatewaypluginstandardwebhooks\n    properties:\n      config:\n        secretV1: '...my_secret_v1...'\n        toleranceSecond: 10\n      consumerGroup:\n        id: '...my_id...'\n      controlPlaneId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      createdAt: 5\n      enabled: false\n      gatewayPluginStandardWebhooksId: '...my_id...'\n      instanceName: '...my_instance_name...'\n      ordering:\n        after:\n          accesses:\n            - '...'\n        before:\n          accesses:\n            - '...'\n      partials:\n        - id: '...my_id...'\n          name: '...my_name...'\n          path: '...my_path...'\n      protocols:\n        - https\n      route:\n        id: '...my_id...'\n      service:\n        id: '...my_id...'\n      tags:\n        - '...'\n      updatedAt: 6\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_gateway_plugin_standard_webhooks.my_konnect_gateway_plugin_standard_webhooks\n\n  id = jsonencode({\n\n    control_plane_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/gatewayPluginStandardWebhooks:GatewayPluginStandardWebhooks my_konnect_gateway_plugin_standard_webhooks '{\"control_plane_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"}'\n```\n\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginStandardWebhooksConfig:GatewayPluginStandardWebhooksConfig"},"consumerGroup":{"$ref":"#/types/konnect:index%2FGatewayPluginStandardWebhooksConsumerGroup:GatewayPluginStandardWebhooksConsumerGroup","description":"If set, the plugin will activate only for requests where the specified consumer group has been authenticated. (Note that some plugins can not be restricted to consumers groups this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer Groups\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginStandardWebhooksId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginStandardWebhooksOrdering:GatewayPluginStandardWebhooksOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginStandardWebhooksPartial:GatewayPluginStandardWebhooksPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginStandardWebhooksRoute:GatewayPluginStandardWebhooksRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginStandardWebhooksService:GatewayPluginStandardWebhooksService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object","required":["config","consumerGroup","controlPlaneId","createdAt","enabled","gatewayPluginStandardWebhooksId","ordering","protocols","route","service","updatedAt"],"inputProperties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginStandardWebhooksConfig:GatewayPluginStandardWebhooksConfig"},"consumerGroup":{"$ref":"#/types/konnect:index%2FGatewayPluginStandardWebhooksConsumerGroup:GatewayPluginStandardWebhooksConsumerGroup","description":"If set, the plugin will activate only for requests where the specified consumer group has been authenticated. (Note that some plugins can not be restricted to consumers groups this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer Groups\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginStandardWebhooksId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginStandardWebhooksOrdering:GatewayPluginStandardWebhooksOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginStandardWebhooksPartial:GatewayPluginStandardWebhooksPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginStandardWebhooksRoute:GatewayPluginStandardWebhooksRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginStandardWebhooksService:GatewayPluginStandardWebhooksService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"requiredInputs":["config","controlPlaneId"],"stateInputs":{"description":"Input properties used for looking up and filtering GatewayPluginStandardWebhooks resources.\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginStandardWebhooksConfig:GatewayPluginStandardWebhooksConfig"},"consumerGroup":{"$ref":"#/types/konnect:index%2FGatewayPluginStandardWebhooksConsumerGroup:GatewayPluginStandardWebhooksConsumerGroup","description":"If set, the plugin will activate only for requests where the specified consumer group has been authenticated. (Note that some plugins can not be restricted to consumers groups this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer Groups\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginStandardWebhooksId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginStandardWebhooksOrdering:GatewayPluginStandardWebhooksOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginStandardWebhooksPartial:GatewayPluginStandardWebhooksPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginStandardWebhooksRoute:GatewayPluginStandardWebhooksRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginStandardWebhooksService:GatewayPluginStandardWebhooksService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object"}},"konnect:index/gatewayPluginStatsd:GatewayPluginStatsd":{"description":"GatewayPluginStatsd Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myGatewaypluginstatsd = new konnect.GatewayPluginStatsd(\"my_gatewaypluginstatsd\", {\n    config: {\n        allowStatusCodes: [\"...\"],\n        consumerIdentifierDefault: \"username\",\n        flushTimeout: 5.68,\n        host: \"...my_host...\",\n        hostnameInPrefix: true,\n        metrics: [{\n            consumerIdentifier: \"username\",\n            name: \"status_count_per_workspace\",\n            sampleRate: 3.92,\n            serviceIdentifier: \"service_id\",\n            statType: \"set\",\n            workspaceIdentifier: \"workspace_name\",\n        }],\n        port: 6303,\n        prefix: \"...my_prefix...\",\n        queue: {\n            concurrencyLimit: 0,\n            initialRetryDelay: 75641.56,\n            maxBatchSize: 347740,\n            maxBytes: 9,\n            maxCoalescingDelay: 1430.25,\n            maxEntries: 139203,\n            maxRetryDelay: 226190.6,\n            maxRetryTime: 1.03,\n        },\n        queueSize: 10,\n        retryCount: 8,\n        serviceIdentifierDefault: \"service_name\",\n        tagStyle: \"librato\",\n        udpPacketSize: 61921,\n        useTcp: false,\n        workspaceIdentifierDefault: \"workspace_name\",\n    },\n    consumer: {\n        id: \"...my_id...\",\n    },\n    controlPlaneId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    createdAt: 7,\n    enabled: true,\n    gatewayPluginStatsdId: \"...my_id...\",\n    instanceName: \"...my_instance_name...\",\n    ordering: {\n        after: {\n            accesses: [\"...\"],\n        },\n        before: {\n            accesses: [\"...\"],\n        },\n    },\n    partials: [{\n        id: \"...my_id...\",\n        name: \"...my_name...\",\n        path: \"...my_path...\",\n    }],\n    protocols: [\"udp\"],\n    route: {\n        id: \"...my_id...\",\n    },\n    service: {\n        id: \"...my_id...\",\n    },\n    tags: [\"...\"],\n    updatedAt: 4,\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_gatewaypluginstatsd = konnect.GatewayPluginStatsd(\"my_gatewaypluginstatsd\",\n    config={\n        \"allow_status_codes\": [\"...\"],\n        \"consumer_identifier_default\": \"username\",\n        \"flush_timeout\": 5.68,\n        \"host\": \"...my_host...\",\n        \"hostname_in_prefix\": True,\n        \"metrics\": [{\n            \"consumer_identifier\": \"username\",\n            \"name\": \"status_count_per_workspace\",\n            \"sample_rate\": 3.92,\n            \"service_identifier\": \"service_id\",\n            \"stat_type\": \"set\",\n            \"workspace_identifier\": \"workspace_name\",\n        }],\n        \"port\": 6303,\n        \"prefix\": \"...my_prefix...\",\n        \"queue\": {\n            \"concurrency_limit\": 0,\n            \"initial_retry_delay\": 75641.56,\n            \"max_batch_size\": 347740,\n            \"max_bytes\": 9,\n            \"max_coalescing_delay\": 1430.25,\n            \"max_entries\": 139203,\n            \"max_retry_delay\": 226190.6,\n            \"max_retry_time\": 1.03,\n        },\n        \"queue_size\": 10,\n        \"retry_count\": 8,\n        \"service_identifier_default\": \"service_name\",\n        \"tag_style\": \"librato\",\n        \"udp_packet_size\": 61921,\n        \"use_tcp\": False,\n        \"workspace_identifier_default\": \"workspace_name\",\n    },\n    consumer={\n        \"id\": \"...my_id...\",\n    },\n    control_plane_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    created_at=7,\n    enabled=True,\n    gateway_plugin_statsd_id=\"...my_id...\",\n    instance_name=\"...my_instance_name...\",\n    ordering={\n        \"after\": {\n            \"accesses\": [\"...\"],\n        },\n        \"before\": {\n            \"accesses\": [\"...\"],\n        },\n    },\n    partials=[{\n        \"id\": \"...my_id...\",\n        \"name\": \"...my_name...\",\n        \"path\": \"...my_path...\",\n    }],\n    protocols=[\"udp\"],\n    route={\n        \"id\": \"...my_id...\",\n    },\n    service={\n        \"id\": \"...my_id...\",\n    },\n    tags=[\"...\"],\n    updated_at=4)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myGatewaypluginstatsd = new Konnect.GatewayPluginStatsd(\"my_gatewaypluginstatsd\", new()\n    {\n        Config = new Konnect.Inputs.GatewayPluginStatsdConfigArgs\n        {\n            AllowStatusCodes = new[]\n            {\n                \"...\",\n            },\n            ConsumerIdentifierDefault = \"username\",\n            FlushTimeout = 5.68,\n            Host = \"...my_host...\",\n            HostnameInPrefix = true,\n            Metrics = new[]\n            {\n                new Konnect.Inputs.GatewayPluginStatsdConfigMetricArgs\n                {\n                    ConsumerIdentifier = \"username\",\n                    Name = \"status_count_per_workspace\",\n                    SampleRate = 3.92,\n                    ServiceIdentifier = \"service_id\",\n                    StatType = \"set\",\n                    WorkspaceIdentifier = \"workspace_name\",\n                },\n            },\n            Port = 6303,\n            Prefix = \"...my_prefix...\",\n            Queue = new Konnect.Inputs.GatewayPluginStatsdConfigQueueArgs\n            {\n                ConcurrencyLimit = 0,\n                InitialRetryDelay = 75641.56,\n                MaxBatchSize = 347740,\n                MaxBytes = 9,\n                MaxCoalescingDelay = 1430.25,\n                MaxEntries = 139203,\n                MaxRetryDelay = 226190.6,\n                MaxRetryTime = 1.03,\n            },\n            QueueSize = 10,\n            RetryCount = 8,\n            ServiceIdentifierDefault = \"service_name\",\n            TagStyle = \"librato\",\n            UdpPacketSize = 61921,\n            UseTcp = false,\n            WorkspaceIdentifierDefault = \"workspace_name\",\n        },\n        Consumer = new Konnect.Inputs.GatewayPluginStatsdConsumerArgs\n        {\n            Id = \"...my_id...\",\n        },\n        ControlPlaneId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        CreatedAt = 7,\n        Enabled = true,\n        GatewayPluginStatsdId = \"...my_id...\",\n        InstanceName = \"...my_instance_name...\",\n        Ordering = new Konnect.Inputs.GatewayPluginStatsdOrderingArgs\n        {\n            After = new Konnect.Inputs.GatewayPluginStatsdOrderingAfterArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n            Before = new Konnect.Inputs.GatewayPluginStatsdOrderingBeforeArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n        },\n        Partials = new[]\n        {\n            new Konnect.Inputs.GatewayPluginStatsdPartialArgs\n            {\n                Id = \"...my_id...\",\n                Name = \"...my_name...\",\n                Path = \"...my_path...\",\n            },\n        },\n        Protocols = new[]\n        {\n            \"udp\",\n        },\n        Route = new Konnect.Inputs.GatewayPluginStatsdRouteArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Service = new Konnect.Inputs.GatewayPluginStatsdServiceArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Tags = new[]\n        {\n            \"...\",\n        },\n        UpdatedAt = 4,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewGatewayPluginStatsd(ctx, \"my_gatewaypluginstatsd\", \u0026konnect.GatewayPluginStatsdArgs{\n\t\t\tConfig: \u0026konnect.GatewayPluginStatsdConfigArgs{\n\t\t\t\tAllowStatusCodes: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tConsumerIdentifierDefault: pulumi.String(\"username\"),\n\t\t\t\tFlushTimeout:              pulumi.Float64(5.68),\n\t\t\t\tHost:                      pulumi.String(\"...my_host...\"),\n\t\t\t\tHostnameInPrefix:          pulumi.Bool(true),\n\t\t\t\tMetrics: konnect.GatewayPluginStatsdConfigMetricArray{\n\t\t\t\t\t\u0026konnect.GatewayPluginStatsdConfigMetricArgs{\n\t\t\t\t\t\tConsumerIdentifier:  pulumi.String(\"username\"),\n\t\t\t\t\t\tName:                pulumi.String(\"status_count_per_workspace\"),\n\t\t\t\t\t\tSampleRate:          pulumi.Float64(3.92),\n\t\t\t\t\t\tServiceIdentifier:   pulumi.String(\"service_id\"),\n\t\t\t\t\t\tStatType:            pulumi.String(\"set\"),\n\t\t\t\t\t\tWorkspaceIdentifier: pulumi.String(\"workspace_name\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tPort:   pulumi.Float64(6303),\n\t\t\t\tPrefix: pulumi.String(\"...my_prefix...\"),\n\t\t\t\tQueue: \u0026konnect.GatewayPluginStatsdConfigQueueArgs{\n\t\t\t\t\tConcurrencyLimit:   pulumi.Float64(0),\n\t\t\t\t\tInitialRetryDelay:  pulumi.Float64(75641.56),\n\t\t\t\t\tMaxBatchSize:       pulumi.Float64(347740),\n\t\t\t\t\tMaxBytes:           pulumi.Float64(9),\n\t\t\t\t\tMaxCoalescingDelay: pulumi.Float64(1430.25),\n\t\t\t\t\tMaxEntries:         pulumi.Float64(139203),\n\t\t\t\t\tMaxRetryDelay:      pulumi.Float64(226190.6),\n\t\t\t\t\tMaxRetryTime:       pulumi.Float64(1.03),\n\t\t\t\t},\n\t\t\t\tQueueSize:                  pulumi.Float64(10),\n\t\t\t\tRetryCount:                 pulumi.Float64(8),\n\t\t\t\tServiceIdentifierDefault:   pulumi.String(\"service_name\"),\n\t\t\t\tTagStyle:                   pulumi.String(\"librato\"),\n\t\t\t\tUdpPacketSize:              pulumi.Float64(61921),\n\t\t\t\tUseTcp:                     pulumi.Bool(false),\n\t\t\t\tWorkspaceIdentifierDefault: pulumi.String(\"workspace_name\"),\n\t\t\t},\n\t\t\tConsumer: \u0026konnect.GatewayPluginStatsdConsumerArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tControlPlaneId:        pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tCreatedAt:             pulumi.Float64(7),\n\t\t\tEnabled:               pulumi.Bool(true),\n\t\t\tGatewayPluginStatsdId: pulumi.String(\"...my_id...\"),\n\t\t\tInstanceName:          pulumi.String(\"...my_instance_name...\"),\n\t\t\tOrdering: \u0026konnect.GatewayPluginStatsdOrderingArgs{\n\t\t\t\tAfter: \u0026konnect.GatewayPluginStatsdOrderingAfterArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tBefore: \u0026konnect.GatewayPluginStatsdOrderingBeforeArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tPartials: konnect.GatewayPluginStatsdPartialArray{\n\t\t\t\t\u0026konnect.GatewayPluginStatsdPartialArgs{\n\t\t\t\t\tId:   pulumi.String(\"...my_id...\"),\n\t\t\t\t\tName: pulumi.String(\"...my_name...\"),\n\t\t\t\t\tPath: pulumi.String(\"...my_path...\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tProtocols: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"udp\"),\n\t\t\t},\n\t\t\tRoute: \u0026konnect.GatewayPluginStatsdRouteArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tService: \u0026konnect.GatewayPluginStatsdServiceArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"...\"),\n\t\t\t},\n\t\t\tUpdatedAt: pulumi.Float64(4),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.GatewayPluginStatsd;\nimport com.pulumi.konnect.GatewayPluginStatsdArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginStatsdConfigArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginStatsdConfigQueueArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginStatsdConsumerArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginStatsdOrderingArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginStatsdOrderingAfterArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginStatsdOrderingBeforeArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginStatsdPartialArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginStatsdRouteArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginStatsdServiceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myGatewaypluginstatsd = new GatewayPluginStatsd(\"myGatewaypluginstatsd\", GatewayPluginStatsdArgs.builder()\n            .config(GatewayPluginStatsdConfigArgs.builder()\n                .allowStatusCodes(\"...\")\n                .consumerIdentifierDefault(\"username\")\n                .flushTimeout(5.68)\n                .host(\"...my_host...\")\n                .hostnameInPrefix(true)\n                .metrics(GatewayPluginStatsdConfigMetricArgs.builder()\n                    .consumerIdentifier(\"username\")\n                    .name(\"status_count_per_workspace\")\n                    .sampleRate(3.92)\n                    .serviceIdentifier(\"service_id\")\n                    .statType(\"set\")\n                    .workspaceIdentifier(\"workspace_name\")\n                    .build())\n                .port(6303.0)\n                .prefix(\"...my_prefix...\")\n                .queue(GatewayPluginStatsdConfigQueueArgs.builder()\n                    .concurrencyLimit(0.0)\n                    .initialRetryDelay(75641.56)\n                    .maxBatchSize(347740.0)\n                    .maxBytes(9.0)\n                    .maxCoalescingDelay(1430.25)\n                    .maxEntries(139203.0)\n                    .maxRetryDelay(226190.6)\n                    .maxRetryTime(1.03)\n                    .build())\n                .queueSize(10.0)\n                .retryCount(8.0)\n                .serviceIdentifierDefault(\"service_name\")\n                .tagStyle(\"librato\")\n                .udpPacketSize(61921.0)\n                .useTcp(false)\n                .workspaceIdentifierDefault(\"workspace_name\")\n                .build())\n            .consumer(GatewayPluginStatsdConsumerArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .controlPlaneId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .createdAt(7.0)\n            .enabled(true)\n            .gatewayPluginStatsdId(\"...my_id...\")\n            .instanceName(\"...my_instance_name...\")\n            .ordering(GatewayPluginStatsdOrderingArgs.builder()\n                .after(GatewayPluginStatsdOrderingAfterArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .before(GatewayPluginStatsdOrderingBeforeArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .build())\n            .partials(GatewayPluginStatsdPartialArgs.builder()\n                .id(\"...my_id...\")\n                .name(\"...my_name...\")\n                .path(\"...my_path...\")\n                .build())\n            .protocols(\"udp\")\n            .route(GatewayPluginStatsdRouteArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .service(GatewayPluginStatsdServiceArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .tags(\"...\")\n            .updatedAt(4.0)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myGatewaypluginstatsd:\n    type: konnect:GatewayPluginStatsd\n    name: my_gatewaypluginstatsd\n    properties:\n      config:\n        allowStatusCodes:\n          - '...'\n        consumerIdentifierDefault: username\n        flushTimeout: 5.68\n        host: '...my_host...'\n        hostnameInPrefix: true\n        metrics:\n          - consumerIdentifier: username\n            name: status_count_per_workspace\n            sampleRate: 3.92\n            serviceIdentifier: service_id\n            statType: set\n            workspaceIdentifier: workspace_name\n        port: 6303\n        prefix: '...my_prefix...'\n        queue:\n          concurrencyLimit: 0\n          initialRetryDelay: 75641.56\n          maxBatchSize: 347740\n          maxBytes: 9\n          maxCoalescingDelay: 1430.25\n          maxEntries: 139203\n          maxRetryDelay: 226190.6\n          maxRetryTime: 1.03\n        queueSize: 10\n        retryCount: 8\n        serviceIdentifierDefault: service_name\n        tagStyle: librato\n        udpPacketSize: 61921\n        useTcp: false\n        workspaceIdentifierDefault: workspace_name\n      consumer:\n        id: '...my_id...'\n      controlPlaneId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      createdAt: 7\n      enabled: true\n      gatewayPluginStatsdId: '...my_id...'\n      instanceName: '...my_instance_name...'\n      ordering:\n        after:\n          accesses:\n            - '...'\n        before:\n          accesses:\n            - '...'\n      partials:\n        - id: '...my_id...'\n          name: '...my_name...'\n          path: '...my_path...'\n      protocols:\n        - udp\n      route:\n        id: '...my_id...'\n      service:\n        id: '...my_id...'\n      tags:\n        - '...'\n      updatedAt: 4\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_gateway_plugin_statsd.my_konnect_gateway_plugin_statsd\n\n  id = jsonencode({\n\n    control_plane_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/gatewayPluginStatsd:GatewayPluginStatsd my_konnect_gateway_plugin_statsd '{\"control_plane_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"}'\n```\n\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginStatsdConfig:GatewayPluginStatsdConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginStatsdConsumer:GatewayPluginStatsdConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginStatsdId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginStatsdOrdering:GatewayPluginStatsdOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginStatsdPartial:GatewayPluginStatsdPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginStatsdRoute:GatewayPluginStatsdRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginStatsdService:GatewayPluginStatsdService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object","required":["config","consumer","controlPlaneId","createdAt","enabled","gatewayPluginStatsdId","ordering","protocols","route","service","updatedAt"],"inputProperties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginStatsdConfig:GatewayPluginStatsdConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginStatsdConsumer:GatewayPluginStatsdConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginStatsdId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginStatsdOrdering:GatewayPluginStatsdOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginStatsdPartial:GatewayPluginStatsdPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginStatsdRoute:GatewayPluginStatsdRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginStatsdService:GatewayPluginStatsdService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"requiredInputs":["controlPlaneId"],"stateInputs":{"description":"Input properties used for looking up and filtering GatewayPluginStatsd resources.\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginStatsdConfig:GatewayPluginStatsdConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginStatsdConsumer:GatewayPluginStatsdConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginStatsdId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginStatsdOrdering:GatewayPluginStatsdOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginStatsdPartial:GatewayPluginStatsdPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginStatsdRoute:GatewayPluginStatsdRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginStatsdService:GatewayPluginStatsdService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object"}},"konnect:index/gatewayPluginStatsdAdvanced:GatewayPluginStatsdAdvanced":{"description":"GatewayPluginStatsdAdvanced Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myGatewaypluginstatsdadvanced = new konnect.GatewayPluginStatsdAdvanced(\"my_gatewaypluginstatsdadvanced\", {\n    config: {\n        allowStatusCodes: [\"...\"],\n        consumerIdentifierDefault: \"username\",\n        host: \"...my_host...\",\n        hostnameInPrefix: false,\n        metrics: [{\n            consumerIdentifier: \"custom_id\",\n            name: \"response_size\",\n            sampleRate: 2.11,\n            serviceIdentifier: \"service_host\",\n            statType: \"timer\",\n            workspaceIdentifier: \"workspace_name\",\n        }],\n        port: 36120,\n        prefix: \"...my_prefix...\",\n        queue: {\n            concurrencyLimit: 1,\n            initialRetryDelay: 603656.13,\n            maxBatchSize: 216641,\n            maxBytes: 3,\n            maxCoalescingDelay: 1405.3,\n            maxEntries: 814148,\n            maxRetryDelay: 686342.11,\n            maxRetryTime: 8.95,\n        },\n        serviceIdentifierDefault: \"service_name\",\n        udpPacketSize: 19205.04,\n        useTcp: false,\n        workspaceIdentifierDefault: \"workspace_id\",\n    },\n    consumer: {\n        id: \"...my_id...\",\n    },\n    controlPlaneId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    createdAt: 7,\n    enabled: false,\n    gatewayPluginStatsdAdvancedId: \"...my_id...\",\n    instanceName: \"...my_instance_name...\",\n    ordering: {\n        after: {\n            accesses: [\"...\"],\n        },\n        before: {\n            accesses: [\"...\"],\n        },\n    },\n    partials: [{\n        id: \"...my_id...\",\n        name: \"...my_name...\",\n        path: \"...my_path...\",\n    }],\n    protocols: [\"http\"],\n    route: {\n        id: \"...my_id...\",\n    },\n    service: {\n        id: \"...my_id...\",\n    },\n    tags: [\"...\"],\n    updatedAt: 10,\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_gatewaypluginstatsdadvanced = konnect.GatewayPluginStatsdAdvanced(\"my_gatewaypluginstatsdadvanced\",\n    config={\n        \"allow_status_codes\": [\"...\"],\n        \"consumer_identifier_default\": \"username\",\n        \"host\": \"...my_host...\",\n        \"hostname_in_prefix\": False,\n        \"metrics\": [{\n            \"consumer_identifier\": \"custom_id\",\n            \"name\": \"response_size\",\n            \"sample_rate\": 2.11,\n            \"service_identifier\": \"service_host\",\n            \"stat_type\": \"timer\",\n            \"workspace_identifier\": \"workspace_name\",\n        }],\n        \"port\": 36120,\n        \"prefix\": \"...my_prefix...\",\n        \"queue\": {\n            \"concurrency_limit\": 1,\n            \"initial_retry_delay\": 603656.13,\n            \"max_batch_size\": 216641,\n            \"max_bytes\": 3,\n            \"max_coalescing_delay\": 1405.3,\n            \"max_entries\": 814148,\n            \"max_retry_delay\": 686342.11,\n            \"max_retry_time\": 8.95,\n        },\n        \"service_identifier_default\": \"service_name\",\n        \"udp_packet_size\": 19205.04,\n        \"use_tcp\": False,\n        \"workspace_identifier_default\": \"workspace_id\",\n    },\n    consumer={\n        \"id\": \"...my_id...\",\n    },\n    control_plane_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    created_at=7,\n    enabled=False,\n    gateway_plugin_statsd_advanced_id=\"...my_id...\",\n    instance_name=\"...my_instance_name...\",\n    ordering={\n        \"after\": {\n            \"accesses\": [\"...\"],\n        },\n        \"before\": {\n            \"accesses\": [\"...\"],\n        },\n    },\n    partials=[{\n        \"id\": \"...my_id...\",\n        \"name\": \"...my_name...\",\n        \"path\": \"...my_path...\",\n    }],\n    protocols=[\"http\"],\n    route={\n        \"id\": \"...my_id...\",\n    },\n    service={\n        \"id\": \"...my_id...\",\n    },\n    tags=[\"...\"],\n    updated_at=10)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myGatewaypluginstatsdadvanced = new Konnect.GatewayPluginStatsdAdvanced(\"my_gatewaypluginstatsdadvanced\", new()\n    {\n        Config = new Konnect.Inputs.GatewayPluginStatsdAdvancedConfigArgs\n        {\n            AllowStatusCodes = new[]\n            {\n                \"...\",\n            },\n            ConsumerIdentifierDefault = \"username\",\n            Host = \"...my_host...\",\n            HostnameInPrefix = false,\n            Metrics = new[]\n            {\n                new Konnect.Inputs.GatewayPluginStatsdAdvancedConfigMetricArgs\n                {\n                    ConsumerIdentifier = \"custom_id\",\n                    Name = \"response_size\",\n                    SampleRate = 2.11,\n                    ServiceIdentifier = \"service_host\",\n                    StatType = \"timer\",\n                    WorkspaceIdentifier = \"workspace_name\",\n                },\n            },\n            Port = 36120,\n            Prefix = \"...my_prefix...\",\n            Queue = new Konnect.Inputs.GatewayPluginStatsdAdvancedConfigQueueArgs\n            {\n                ConcurrencyLimit = 1,\n                InitialRetryDelay = 603656.13,\n                MaxBatchSize = 216641,\n                MaxBytes = 3,\n                MaxCoalescingDelay = 1405.3,\n                MaxEntries = 814148,\n                MaxRetryDelay = 686342.11,\n                MaxRetryTime = 8.95,\n            },\n            ServiceIdentifierDefault = \"service_name\",\n            UdpPacketSize = 19205.04,\n            UseTcp = false,\n            WorkspaceIdentifierDefault = \"workspace_id\",\n        },\n        Consumer = new Konnect.Inputs.GatewayPluginStatsdAdvancedConsumerArgs\n        {\n            Id = \"...my_id...\",\n        },\n        ControlPlaneId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        CreatedAt = 7,\n        Enabled = false,\n        GatewayPluginStatsdAdvancedId = \"...my_id...\",\n        InstanceName = \"...my_instance_name...\",\n        Ordering = new Konnect.Inputs.GatewayPluginStatsdAdvancedOrderingArgs\n        {\n            After = new Konnect.Inputs.GatewayPluginStatsdAdvancedOrderingAfterArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n            Before = new Konnect.Inputs.GatewayPluginStatsdAdvancedOrderingBeforeArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n        },\n        Partials = new[]\n        {\n            new Konnect.Inputs.GatewayPluginStatsdAdvancedPartialArgs\n            {\n                Id = \"...my_id...\",\n                Name = \"...my_name...\",\n                Path = \"...my_path...\",\n            },\n        },\n        Protocols = new[]\n        {\n            \"http\",\n        },\n        Route = new Konnect.Inputs.GatewayPluginStatsdAdvancedRouteArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Service = new Konnect.Inputs.GatewayPluginStatsdAdvancedServiceArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Tags = new[]\n        {\n            \"...\",\n        },\n        UpdatedAt = 10,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewGatewayPluginStatsdAdvanced(ctx, \"my_gatewaypluginstatsdadvanced\", \u0026konnect.GatewayPluginStatsdAdvancedArgs{\n\t\t\tConfig: \u0026konnect.GatewayPluginStatsdAdvancedConfigArgs{\n\t\t\t\tAllowStatusCodes: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tConsumerIdentifierDefault: pulumi.String(\"username\"),\n\t\t\t\tHost:                      pulumi.String(\"...my_host...\"),\n\t\t\t\tHostnameInPrefix:          pulumi.Bool(false),\n\t\t\t\tMetrics: konnect.GatewayPluginStatsdAdvancedConfigMetricArray{\n\t\t\t\t\t\u0026konnect.GatewayPluginStatsdAdvancedConfigMetricArgs{\n\t\t\t\t\t\tConsumerIdentifier:  pulumi.String(\"custom_id\"),\n\t\t\t\t\t\tName:                pulumi.String(\"response_size\"),\n\t\t\t\t\t\tSampleRate:          pulumi.Float64(2.11),\n\t\t\t\t\t\tServiceIdentifier:   pulumi.String(\"service_host\"),\n\t\t\t\t\t\tStatType:            pulumi.String(\"timer\"),\n\t\t\t\t\t\tWorkspaceIdentifier: pulumi.String(\"workspace_name\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tPort:   pulumi.Float64(36120),\n\t\t\t\tPrefix: pulumi.String(\"...my_prefix...\"),\n\t\t\t\tQueue: \u0026konnect.GatewayPluginStatsdAdvancedConfigQueueArgs{\n\t\t\t\t\tConcurrencyLimit:   pulumi.Float64(1),\n\t\t\t\t\tInitialRetryDelay:  pulumi.Float64(603656.13),\n\t\t\t\t\tMaxBatchSize:       pulumi.Float64(216641),\n\t\t\t\t\tMaxBytes:           pulumi.Float64(3),\n\t\t\t\t\tMaxCoalescingDelay: pulumi.Float64(1405.3),\n\t\t\t\t\tMaxEntries:         pulumi.Float64(814148),\n\t\t\t\t\tMaxRetryDelay:      pulumi.Float64(686342.11),\n\t\t\t\t\tMaxRetryTime:       pulumi.Float64(8.95),\n\t\t\t\t},\n\t\t\t\tServiceIdentifierDefault:   pulumi.String(\"service_name\"),\n\t\t\t\tUdpPacketSize:              pulumi.Float64(19205.04),\n\t\t\t\tUseTcp:                     pulumi.Bool(false),\n\t\t\t\tWorkspaceIdentifierDefault: pulumi.String(\"workspace_id\"),\n\t\t\t},\n\t\t\tConsumer: \u0026konnect.GatewayPluginStatsdAdvancedConsumerArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tControlPlaneId:                pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tCreatedAt:                     pulumi.Float64(7),\n\t\t\tEnabled:                       pulumi.Bool(false),\n\t\t\tGatewayPluginStatsdAdvancedId: pulumi.String(\"...my_id...\"),\n\t\t\tInstanceName:                  pulumi.String(\"...my_instance_name...\"),\n\t\t\tOrdering: \u0026konnect.GatewayPluginStatsdAdvancedOrderingArgs{\n\t\t\t\tAfter: \u0026konnect.GatewayPluginStatsdAdvancedOrderingAfterArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tBefore: \u0026konnect.GatewayPluginStatsdAdvancedOrderingBeforeArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tPartials: konnect.GatewayPluginStatsdAdvancedPartialArray{\n\t\t\t\t\u0026konnect.GatewayPluginStatsdAdvancedPartialArgs{\n\t\t\t\t\tId:   pulumi.String(\"...my_id...\"),\n\t\t\t\t\tName: pulumi.String(\"...my_name...\"),\n\t\t\t\t\tPath: pulumi.String(\"...my_path...\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tProtocols: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"http\"),\n\t\t\t},\n\t\t\tRoute: \u0026konnect.GatewayPluginStatsdAdvancedRouteArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tService: \u0026konnect.GatewayPluginStatsdAdvancedServiceArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"...\"),\n\t\t\t},\n\t\t\tUpdatedAt: pulumi.Float64(10),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.GatewayPluginStatsdAdvanced;\nimport com.pulumi.konnect.GatewayPluginStatsdAdvancedArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginStatsdAdvancedConfigArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginStatsdAdvancedConfigQueueArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginStatsdAdvancedConsumerArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginStatsdAdvancedOrderingArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginStatsdAdvancedOrderingAfterArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginStatsdAdvancedOrderingBeforeArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginStatsdAdvancedPartialArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginStatsdAdvancedRouteArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginStatsdAdvancedServiceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myGatewaypluginstatsdadvanced = new GatewayPluginStatsdAdvanced(\"myGatewaypluginstatsdadvanced\", GatewayPluginStatsdAdvancedArgs.builder()\n            .config(GatewayPluginStatsdAdvancedConfigArgs.builder()\n                .allowStatusCodes(\"...\")\n                .consumerIdentifierDefault(\"username\")\n                .host(\"...my_host...\")\n                .hostnameInPrefix(false)\n                .metrics(GatewayPluginStatsdAdvancedConfigMetricArgs.builder()\n                    .consumerIdentifier(\"custom_id\")\n                    .name(\"response_size\")\n                    .sampleRate(2.11)\n                    .serviceIdentifier(\"service_host\")\n                    .statType(\"timer\")\n                    .workspaceIdentifier(\"workspace_name\")\n                    .build())\n                .port(36120.0)\n                .prefix(\"...my_prefix...\")\n                .queue(GatewayPluginStatsdAdvancedConfigQueueArgs.builder()\n                    .concurrencyLimit(1.0)\n                    .initialRetryDelay(603656.13)\n                    .maxBatchSize(216641.0)\n                    .maxBytes(3.0)\n                    .maxCoalescingDelay(1405.3)\n                    .maxEntries(814148.0)\n                    .maxRetryDelay(686342.11)\n                    .maxRetryTime(8.95)\n                    .build())\n                .serviceIdentifierDefault(\"service_name\")\n                .udpPacketSize(19205.04)\n                .useTcp(false)\n                .workspaceIdentifierDefault(\"workspace_id\")\n                .build())\n            .consumer(GatewayPluginStatsdAdvancedConsumerArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .controlPlaneId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .createdAt(7.0)\n            .enabled(false)\n            .gatewayPluginStatsdAdvancedId(\"...my_id...\")\n            .instanceName(\"...my_instance_name...\")\n            .ordering(GatewayPluginStatsdAdvancedOrderingArgs.builder()\n                .after(GatewayPluginStatsdAdvancedOrderingAfterArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .before(GatewayPluginStatsdAdvancedOrderingBeforeArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .build())\n            .partials(GatewayPluginStatsdAdvancedPartialArgs.builder()\n                .id(\"...my_id...\")\n                .name(\"...my_name...\")\n                .path(\"...my_path...\")\n                .build())\n            .protocols(\"http\")\n            .route(GatewayPluginStatsdAdvancedRouteArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .service(GatewayPluginStatsdAdvancedServiceArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .tags(\"...\")\n            .updatedAt(10.0)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myGatewaypluginstatsdadvanced:\n    type: konnect:GatewayPluginStatsdAdvanced\n    name: my_gatewaypluginstatsdadvanced\n    properties:\n      config:\n        allowStatusCodes:\n          - '...'\n        consumerIdentifierDefault: username\n        host: '...my_host...'\n        hostnameInPrefix: false\n        metrics:\n          - consumerIdentifier: custom_id\n            name: response_size\n            sampleRate: 2.11\n            serviceIdentifier: service_host\n            statType: timer\n            workspaceIdentifier: workspace_name\n        port: 36120\n        prefix: '...my_prefix...'\n        queue:\n          concurrencyLimit: 1\n          initialRetryDelay: 603656.13\n          maxBatchSize: 216641\n          maxBytes: 3\n          maxCoalescingDelay: 1405.3\n          maxEntries: 814148\n          maxRetryDelay: 686342.11\n          maxRetryTime: 8.95\n        serviceIdentifierDefault: service_name\n        udpPacketSize: 19205.04\n        useTcp: false\n        workspaceIdentifierDefault: workspace_id\n      consumer:\n        id: '...my_id...'\n      controlPlaneId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      createdAt: 7\n      enabled: false\n      gatewayPluginStatsdAdvancedId: '...my_id...'\n      instanceName: '...my_instance_name...'\n      ordering:\n        after:\n          accesses:\n            - '...'\n        before:\n          accesses:\n            - '...'\n      partials:\n        - id: '...my_id...'\n          name: '...my_name...'\n          path: '...my_path...'\n      protocols:\n        - http\n      route:\n        id: '...my_id...'\n      service:\n        id: '...my_id...'\n      tags:\n        - '...'\n      updatedAt: 10\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_gateway_plugin_statsd_advanced.my_konnect_gateway_plugin_statsd_advanced\n\n  id = jsonencode({\n\n    control_plane_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/gatewayPluginStatsdAdvanced:GatewayPluginStatsdAdvanced my_konnect_gateway_plugin_statsd_advanced '{\"control_plane_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"}'\n```\n\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginStatsdAdvancedConfig:GatewayPluginStatsdAdvancedConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginStatsdAdvancedConsumer:GatewayPluginStatsdAdvancedConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginStatsdAdvancedId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginStatsdAdvancedOrdering:GatewayPluginStatsdAdvancedOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginStatsdAdvancedPartial:GatewayPluginStatsdAdvancedPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginStatsdAdvancedRoute:GatewayPluginStatsdAdvancedRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginStatsdAdvancedService:GatewayPluginStatsdAdvancedService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object","required":["config","consumer","controlPlaneId","createdAt","enabled","gatewayPluginStatsdAdvancedId","ordering","protocols","route","service","updatedAt"],"inputProperties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginStatsdAdvancedConfig:GatewayPluginStatsdAdvancedConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginStatsdAdvancedConsumer:GatewayPluginStatsdAdvancedConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginStatsdAdvancedId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginStatsdAdvancedOrdering:GatewayPluginStatsdAdvancedOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginStatsdAdvancedPartial:GatewayPluginStatsdAdvancedPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginStatsdAdvancedRoute:GatewayPluginStatsdAdvancedRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginStatsdAdvancedService:GatewayPluginStatsdAdvancedService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"requiredInputs":["controlPlaneId"],"stateInputs":{"description":"Input properties used for looking up and filtering GatewayPluginStatsdAdvanced resources.\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginStatsdAdvancedConfig:GatewayPluginStatsdAdvancedConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginStatsdAdvancedConsumer:GatewayPluginStatsdAdvancedConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginStatsdAdvancedId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginStatsdAdvancedOrdering:GatewayPluginStatsdAdvancedOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginStatsdAdvancedPartial:GatewayPluginStatsdAdvancedPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginStatsdAdvancedRoute:GatewayPluginStatsdAdvancedRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginStatsdAdvancedService:GatewayPluginStatsdAdvancedService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object"}},"konnect:index/gatewayPluginSyslog:GatewayPluginSyslog":{"description":"GatewayPluginSyslog Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myGatewaypluginsyslog = new konnect.GatewayPluginSyslog(\"my_gatewaypluginsyslog\", {\n    config: {\n        clientErrorsSeverity: \"warning\",\n        customFieldsByLua: {\n            key: \"value\",\n        },\n        facility: \"uucp\",\n        logLevel: \"crit\",\n        serverErrorsSeverity: \"notice\",\n        successfulSeverity: \"debug\",\n    },\n    consumer: {\n        id: \"...my_id...\",\n    },\n    controlPlaneId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    createdAt: 3,\n    enabled: true,\n    gatewayPluginSyslogId: \"...my_id...\",\n    instanceName: \"...my_instance_name...\",\n    ordering: {\n        after: {\n            accesses: [\"...\"],\n        },\n        before: {\n            accesses: [\"...\"],\n        },\n    },\n    partials: [{\n        id: \"...my_id...\",\n        name: \"...my_name...\",\n        path: \"...my_path...\",\n    }],\n    protocols: [\"tls_passthrough\"],\n    route: {\n        id: \"...my_id...\",\n    },\n    service: {\n        id: \"...my_id...\",\n    },\n    tags: [\"...\"],\n    updatedAt: 3,\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_gatewaypluginsyslog = konnect.GatewayPluginSyslog(\"my_gatewaypluginsyslog\",\n    config={\n        \"client_errors_severity\": \"warning\",\n        \"custom_fields_by_lua\": {\n            \"key\": \"value\",\n        },\n        \"facility\": \"uucp\",\n        \"log_level\": \"crit\",\n        \"server_errors_severity\": \"notice\",\n        \"successful_severity\": \"debug\",\n    },\n    consumer={\n        \"id\": \"...my_id...\",\n    },\n    control_plane_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    created_at=3,\n    enabled=True,\n    gateway_plugin_syslog_id=\"...my_id...\",\n    instance_name=\"...my_instance_name...\",\n    ordering={\n        \"after\": {\n            \"accesses\": [\"...\"],\n        },\n        \"before\": {\n            \"accesses\": [\"...\"],\n        },\n    },\n    partials=[{\n        \"id\": \"...my_id...\",\n        \"name\": \"...my_name...\",\n        \"path\": \"...my_path...\",\n    }],\n    protocols=[\"tls_passthrough\"],\n    route={\n        \"id\": \"...my_id...\",\n    },\n    service={\n        \"id\": \"...my_id...\",\n    },\n    tags=[\"...\"],\n    updated_at=3)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myGatewaypluginsyslog = new Konnect.GatewayPluginSyslog(\"my_gatewaypluginsyslog\", new()\n    {\n        Config = new Konnect.Inputs.GatewayPluginSyslogConfigArgs\n        {\n            ClientErrorsSeverity = \"warning\",\n            CustomFieldsByLua = \n            {\n                { \"key\", \"value\" },\n            },\n            Facility = \"uucp\",\n            LogLevel = \"crit\",\n            ServerErrorsSeverity = \"notice\",\n            SuccessfulSeverity = \"debug\",\n        },\n        Consumer = new Konnect.Inputs.GatewayPluginSyslogConsumerArgs\n        {\n            Id = \"...my_id...\",\n        },\n        ControlPlaneId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        CreatedAt = 3,\n        Enabled = true,\n        GatewayPluginSyslogId = \"...my_id...\",\n        InstanceName = \"...my_instance_name...\",\n        Ordering = new Konnect.Inputs.GatewayPluginSyslogOrderingArgs\n        {\n            After = new Konnect.Inputs.GatewayPluginSyslogOrderingAfterArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n            Before = new Konnect.Inputs.GatewayPluginSyslogOrderingBeforeArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n        },\n        Partials = new[]\n        {\n            new Konnect.Inputs.GatewayPluginSyslogPartialArgs\n            {\n                Id = \"...my_id...\",\n                Name = \"...my_name...\",\n                Path = \"...my_path...\",\n            },\n        },\n        Protocols = new[]\n        {\n            \"tls_passthrough\",\n        },\n        Route = new Konnect.Inputs.GatewayPluginSyslogRouteArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Service = new Konnect.Inputs.GatewayPluginSyslogServiceArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Tags = new[]\n        {\n            \"...\",\n        },\n        UpdatedAt = 3,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewGatewayPluginSyslog(ctx, \"my_gatewaypluginsyslog\", \u0026konnect.GatewayPluginSyslogArgs{\n\t\t\tConfig: \u0026konnect.GatewayPluginSyslogConfigArgs{\n\t\t\t\tClientErrorsSeverity: pulumi.String(\"warning\"),\n\t\t\t\tCustomFieldsByLua: pulumi.StringMap{\n\t\t\t\t\t\"key\": pulumi.String(\"value\"),\n\t\t\t\t},\n\t\t\t\tFacility:             pulumi.String(\"uucp\"),\n\t\t\t\tLogLevel:             pulumi.String(\"crit\"),\n\t\t\t\tServerErrorsSeverity: pulumi.String(\"notice\"),\n\t\t\t\tSuccessfulSeverity:   pulumi.String(\"debug\"),\n\t\t\t},\n\t\t\tConsumer: \u0026konnect.GatewayPluginSyslogConsumerArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tControlPlaneId:        pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tCreatedAt:             pulumi.Float64(3),\n\t\t\tEnabled:               pulumi.Bool(true),\n\t\t\tGatewayPluginSyslogId: pulumi.String(\"...my_id...\"),\n\t\t\tInstanceName:          pulumi.String(\"...my_instance_name...\"),\n\t\t\tOrdering: \u0026konnect.GatewayPluginSyslogOrderingArgs{\n\t\t\t\tAfter: \u0026konnect.GatewayPluginSyslogOrderingAfterArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tBefore: \u0026konnect.GatewayPluginSyslogOrderingBeforeArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tPartials: konnect.GatewayPluginSyslogPartialArray{\n\t\t\t\t\u0026konnect.GatewayPluginSyslogPartialArgs{\n\t\t\t\t\tId:   pulumi.String(\"...my_id...\"),\n\t\t\t\t\tName: pulumi.String(\"...my_name...\"),\n\t\t\t\t\tPath: pulumi.String(\"...my_path...\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tProtocols: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"tls_passthrough\"),\n\t\t\t},\n\t\t\tRoute: \u0026konnect.GatewayPluginSyslogRouteArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tService: \u0026konnect.GatewayPluginSyslogServiceArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"...\"),\n\t\t\t},\n\t\t\tUpdatedAt: pulumi.Float64(3),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.GatewayPluginSyslog;\nimport com.pulumi.konnect.GatewayPluginSyslogArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginSyslogConfigArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginSyslogConsumerArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginSyslogOrderingArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginSyslogOrderingAfterArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginSyslogOrderingBeforeArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginSyslogPartialArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginSyslogRouteArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginSyslogServiceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myGatewaypluginsyslog = new GatewayPluginSyslog(\"myGatewaypluginsyslog\", GatewayPluginSyslogArgs.builder()\n            .config(GatewayPluginSyslogConfigArgs.builder()\n                .clientErrorsSeverity(\"warning\")\n                .customFieldsByLua(Map.of(\"key\", \"value\"))\n                .facility(\"uucp\")\n                .logLevel(\"crit\")\n                .serverErrorsSeverity(\"notice\")\n                .successfulSeverity(\"debug\")\n                .build())\n            .consumer(GatewayPluginSyslogConsumerArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .controlPlaneId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .createdAt(3.0)\n            .enabled(true)\n            .gatewayPluginSyslogId(\"...my_id...\")\n            .instanceName(\"...my_instance_name...\")\n            .ordering(GatewayPluginSyslogOrderingArgs.builder()\n                .after(GatewayPluginSyslogOrderingAfterArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .before(GatewayPluginSyslogOrderingBeforeArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .build())\n            .partials(GatewayPluginSyslogPartialArgs.builder()\n                .id(\"...my_id...\")\n                .name(\"...my_name...\")\n                .path(\"...my_path...\")\n                .build())\n            .protocols(\"tls_passthrough\")\n            .route(GatewayPluginSyslogRouteArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .service(GatewayPluginSyslogServiceArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .tags(\"...\")\n            .updatedAt(3.0)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myGatewaypluginsyslog:\n    type: konnect:GatewayPluginSyslog\n    name: my_gatewaypluginsyslog\n    properties:\n      config:\n        clientErrorsSeverity: warning\n        customFieldsByLua:\n          key: value\n        facility: uucp\n        logLevel: crit\n        serverErrorsSeverity: notice\n        successfulSeverity: debug\n      consumer:\n        id: '...my_id...'\n      controlPlaneId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      createdAt: 3\n      enabled: true\n      gatewayPluginSyslogId: '...my_id...'\n      instanceName: '...my_instance_name...'\n      ordering:\n        after:\n          accesses:\n            - '...'\n        before:\n          accesses:\n            - '...'\n      partials:\n        - id: '...my_id...'\n          name: '...my_name...'\n          path: '...my_path...'\n      protocols:\n        - tls_passthrough\n      route:\n        id: '...my_id...'\n      service:\n        id: '...my_id...'\n      tags:\n        - '...'\n      updatedAt: 3\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_gateway_plugin_syslog.my_konnect_gateway_plugin_syslog\n\n  id = jsonencode({\n\n    control_plane_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/gatewayPluginSyslog:GatewayPluginSyslog my_konnect_gateway_plugin_syslog '{\"control_plane_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"}'\n```\n\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginSyslogConfig:GatewayPluginSyslogConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginSyslogConsumer:GatewayPluginSyslogConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginSyslogId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginSyslogOrdering:GatewayPluginSyslogOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginSyslogPartial:GatewayPluginSyslogPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginSyslogRoute:GatewayPluginSyslogRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginSyslogService:GatewayPluginSyslogService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object","required":["config","consumer","controlPlaneId","createdAt","enabled","gatewayPluginSyslogId","ordering","protocols","route","service","updatedAt"],"inputProperties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginSyslogConfig:GatewayPluginSyslogConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginSyslogConsumer:GatewayPluginSyslogConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginSyslogId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginSyslogOrdering:GatewayPluginSyslogOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginSyslogPartial:GatewayPluginSyslogPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginSyslogRoute:GatewayPluginSyslogRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginSyslogService:GatewayPluginSyslogService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"requiredInputs":["controlPlaneId"],"stateInputs":{"description":"Input properties used for looking up and filtering GatewayPluginSyslog resources.\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginSyslogConfig:GatewayPluginSyslogConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginSyslogConsumer:GatewayPluginSyslogConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginSyslogId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginSyslogOrdering:GatewayPluginSyslogOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginSyslogPartial:GatewayPluginSyslogPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginSyslogRoute:GatewayPluginSyslogRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginSyslogService:GatewayPluginSyslogService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object"}},"konnect:index/gatewayPluginTcpLog:GatewayPluginTcpLog":{"description":"GatewayPluginTCPLog Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myGatewayplugintcplog = new konnect.GatewayPluginTcpLog(\"my_gatewayplugintcplog\", {\n    config: {\n        customFieldsByLua: {\n            key: \"value\",\n        },\n        host: \"...my_host...\",\n        keepalive: 1.57,\n        port: 54956,\n        sslVerify: true,\n        timeout: 5.53,\n        tls: false,\n        tlsSni: \"...my_tls_sni...\",\n    },\n    consumer: {\n        id: \"...my_id...\",\n    },\n    controlPlaneId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    createdAt: 1,\n    enabled: true,\n    gatewayPluginTcpLogId: \"...my_id...\",\n    instanceName: \"...my_instance_name...\",\n    ordering: {\n        after: {\n            accesses: [\"...\"],\n        },\n        before: {\n            accesses: [\"...\"],\n        },\n    },\n    partials: [{\n        id: \"...my_id...\",\n        name: \"...my_name...\",\n        path: \"...my_path...\",\n    }],\n    protocols: [\"https\"],\n    route: {\n        id: \"...my_id...\",\n    },\n    service: {\n        id: \"...my_id...\",\n    },\n    tags: [\"...\"],\n    updatedAt: 4,\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_gatewayplugintcplog = konnect.GatewayPluginTcpLog(\"my_gatewayplugintcplog\",\n    config={\n        \"custom_fields_by_lua\": {\n            \"key\": \"value\",\n        },\n        \"host\": \"...my_host...\",\n        \"keepalive\": 1.57,\n        \"port\": 54956,\n        \"ssl_verify\": True,\n        \"timeout\": 5.53,\n        \"tls\": False,\n        \"tls_sni\": \"...my_tls_sni...\",\n    },\n    consumer={\n        \"id\": \"...my_id...\",\n    },\n    control_plane_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    created_at=1,\n    enabled=True,\n    gateway_plugin_tcp_log_id=\"...my_id...\",\n    instance_name=\"...my_instance_name...\",\n    ordering={\n        \"after\": {\n            \"accesses\": [\"...\"],\n        },\n        \"before\": {\n            \"accesses\": [\"...\"],\n        },\n    },\n    partials=[{\n        \"id\": \"...my_id...\",\n        \"name\": \"...my_name...\",\n        \"path\": \"...my_path...\",\n    }],\n    protocols=[\"https\"],\n    route={\n        \"id\": \"...my_id...\",\n    },\n    service={\n        \"id\": \"...my_id...\",\n    },\n    tags=[\"...\"],\n    updated_at=4)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myGatewayplugintcplog = new Konnect.GatewayPluginTcpLog(\"my_gatewayplugintcplog\", new()\n    {\n        Config = new Konnect.Inputs.GatewayPluginTcpLogConfigArgs\n        {\n            CustomFieldsByLua = \n            {\n                { \"key\", \"value\" },\n            },\n            Host = \"...my_host...\",\n            Keepalive = 1.57,\n            Port = 54956,\n            SslVerify = true,\n            Timeout = 5.53,\n            Tls = false,\n            TlsSni = \"...my_tls_sni...\",\n        },\n        Consumer = new Konnect.Inputs.GatewayPluginTcpLogConsumerArgs\n        {\n            Id = \"...my_id...\",\n        },\n        ControlPlaneId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        CreatedAt = 1,\n        Enabled = true,\n        GatewayPluginTcpLogId = \"...my_id...\",\n        InstanceName = \"...my_instance_name...\",\n        Ordering = new Konnect.Inputs.GatewayPluginTcpLogOrderingArgs\n        {\n            After = new Konnect.Inputs.GatewayPluginTcpLogOrderingAfterArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n            Before = new Konnect.Inputs.GatewayPluginTcpLogOrderingBeforeArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n        },\n        Partials = new[]\n        {\n            new Konnect.Inputs.GatewayPluginTcpLogPartialArgs\n            {\n                Id = \"...my_id...\",\n                Name = \"...my_name...\",\n                Path = \"...my_path...\",\n            },\n        },\n        Protocols = new[]\n        {\n            \"https\",\n        },\n        Route = new Konnect.Inputs.GatewayPluginTcpLogRouteArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Service = new Konnect.Inputs.GatewayPluginTcpLogServiceArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Tags = new[]\n        {\n            \"...\",\n        },\n        UpdatedAt = 4,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewGatewayPluginTcpLog(ctx, \"my_gatewayplugintcplog\", \u0026konnect.GatewayPluginTcpLogArgs{\n\t\t\tConfig: \u0026konnect.GatewayPluginTcpLogConfigArgs{\n\t\t\t\tCustomFieldsByLua: pulumi.StringMap{\n\t\t\t\t\t\"key\": pulumi.String(\"value\"),\n\t\t\t\t},\n\t\t\t\tHost:      pulumi.String(\"...my_host...\"),\n\t\t\t\tKeepalive: pulumi.Float64(1.57),\n\t\t\t\tPort:      pulumi.Float64(54956),\n\t\t\t\tSslVerify: pulumi.Bool(true),\n\t\t\t\tTimeout:   pulumi.Float64(5.53),\n\t\t\t\tTls:       pulumi.Bool(false),\n\t\t\t\tTlsSni:    pulumi.String(\"...my_tls_sni...\"),\n\t\t\t},\n\t\t\tConsumer: \u0026konnect.GatewayPluginTcpLogConsumerArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tControlPlaneId:        pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tCreatedAt:             pulumi.Float64(1),\n\t\t\tEnabled:               pulumi.Bool(true),\n\t\t\tGatewayPluginTcpLogId: pulumi.String(\"...my_id...\"),\n\t\t\tInstanceName:          pulumi.String(\"...my_instance_name...\"),\n\t\t\tOrdering: \u0026konnect.GatewayPluginTcpLogOrderingArgs{\n\t\t\t\tAfter: \u0026konnect.GatewayPluginTcpLogOrderingAfterArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tBefore: \u0026konnect.GatewayPluginTcpLogOrderingBeforeArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tPartials: konnect.GatewayPluginTcpLogPartialArray{\n\t\t\t\t\u0026konnect.GatewayPluginTcpLogPartialArgs{\n\t\t\t\t\tId:   pulumi.String(\"...my_id...\"),\n\t\t\t\t\tName: pulumi.String(\"...my_name...\"),\n\t\t\t\t\tPath: pulumi.String(\"...my_path...\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tProtocols: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"https\"),\n\t\t\t},\n\t\t\tRoute: \u0026konnect.GatewayPluginTcpLogRouteArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tService: \u0026konnect.GatewayPluginTcpLogServiceArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"...\"),\n\t\t\t},\n\t\t\tUpdatedAt: pulumi.Float64(4),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.GatewayPluginTcpLog;\nimport com.pulumi.konnect.GatewayPluginTcpLogArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginTcpLogConfigArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginTcpLogConsumerArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginTcpLogOrderingArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginTcpLogOrderingAfterArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginTcpLogOrderingBeforeArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginTcpLogPartialArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginTcpLogRouteArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginTcpLogServiceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myGatewayplugintcplog = new GatewayPluginTcpLog(\"myGatewayplugintcplog\", GatewayPluginTcpLogArgs.builder()\n            .config(GatewayPluginTcpLogConfigArgs.builder()\n                .customFieldsByLua(Map.of(\"key\", \"value\"))\n                .host(\"...my_host...\")\n                .keepalive(1.57)\n                .port(54956.0)\n                .sslVerify(true)\n                .timeout(5.53)\n                .tls(false)\n                .tlsSni(\"...my_tls_sni...\")\n                .build())\n            .consumer(GatewayPluginTcpLogConsumerArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .controlPlaneId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .createdAt(1.0)\n            .enabled(true)\n            .gatewayPluginTcpLogId(\"...my_id...\")\n            .instanceName(\"...my_instance_name...\")\n            .ordering(GatewayPluginTcpLogOrderingArgs.builder()\n                .after(GatewayPluginTcpLogOrderingAfterArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .before(GatewayPluginTcpLogOrderingBeforeArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .build())\n            .partials(GatewayPluginTcpLogPartialArgs.builder()\n                .id(\"...my_id...\")\n                .name(\"...my_name...\")\n                .path(\"...my_path...\")\n                .build())\n            .protocols(\"https\")\n            .route(GatewayPluginTcpLogRouteArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .service(GatewayPluginTcpLogServiceArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .tags(\"...\")\n            .updatedAt(4.0)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myGatewayplugintcplog:\n    type: konnect:GatewayPluginTcpLog\n    name: my_gatewayplugintcplog\n    properties:\n      config:\n        customFieldsByLua:\n          key: value\n        host: '...my_host...'\n        keepalive: 1.57\n        port: 54956\n        sslVerify: true\n        timeout: 5.53\n        tls: false\n        tlsSni: '...my_tls_sni...'\n      consumer:\n        id: '...my_id...'\n      controlPlaneId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      createdAt: 1\n      enabled: true\n      gatewayPluginTcpLogId: '...my_id...'\n      instanceName: '...my_instance_name...'\n      ordering:\n        after:\n          accesses:\n            - '...'\n        before:\n          accesses:\n            - '...'\n      partials:\n        - id: '...my_id...'\n          name: '...my_name...'\n          path: '...my_path...'\n      protocols:\n        - https\n      route:\n        id: '...my_id...'\n      service:\n        id: '...my_id...'\n      tags:\n        - '...'\n      updatedAt: 4\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_gateway_plugin_tcp_log.my_konnect_gateway_plugin_tcp_log\n\n  id = jsonencode({\n\n    control_plane_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/gatewayPluginTcpLog:GatewayPluginTcpLog my_konnect_gateway_plugin_tcp_log '{\"control_plane_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"}'\n```\n\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginTcpLogConfig:GatewayPluginTcpLogConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginTcpLogConsumer:GatewayPluginTcpLogConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginTcpLogId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginTcpLogOrdering:GatewayPluginTcpLogOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginTcpLogPartial:GatewayPluginTcpLogPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginTcpLogRoute:GatewayPluginTcpLogRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginTcpLogService:GatewayPluginTcpLogService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object","required":["config","consumer","controlPlaneId","createdAt","enabled","gatewayPluginTcpLogId","ordering","protocols","route","service","updatedAt"],"inputProperties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginTcpLogConfig:GatewayPluginTcpLogConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginTcpLogConsumer:GatewayPluginTcpLogConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginTcpLogId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginTcpLogOrdering:GatewayPluginTcpLogOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginTcpLogPartial:GatewayPluginTcpLogPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginTcpLogRoute:GatewayPluginTcpLogRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginTcpLogService:GatewayPluginTcpLogService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"requiredInputs":["config","controlPlaneId"],"stateInputs":{"description":"Input properties used for looking up and filtering GatewayPluginTcpLog resources.\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginTcpLogConfig:GatewayPluginTcpLogConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginTcpLogConsumer:GatewayPluginTcpLogConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginTcpLogId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginTcpLogOrdering:GatewayPluginTcpLogOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginTcpLogPartial:GatewayPluginTcpLogPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginTcpLogRoute:GatewayPluginTcpLogRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginTcpLogService:GatewayPluginTcpLogService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object"}},"konnect:index/gatewayPluginTlsHandshakeModifier:GatewayPluginTlsHandshakeModifier":{"description":"GatewayPluginTLSHandshakeModifier Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myGatewayplugintlshandshakemodifier = new konnect.GatewayPluginTlsHandshakeModifier(\"my_gatewayplugintlshandshakemodifier\", {\n    config: {\n        tlsClientCertificate: \"REQUEST\",\n    },\n    controlPlaneId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    createdAt: 7,\n    enabled: true,\n    gatewayPluginTlsHandshakeModifierId: \"...my_id...\",\n    instanceName: \"...my_instance_name...\",\n    ordering: {\n        after: {\n            accesses: [\"...\"],\n        },\n        before: {\n            accesses: [\"...\"],\n        },\n    },\n    partials: [{\n        id: \"...my_id...\",\n        name: \"...my_name...\",\n        path: \"...my_path...\",\n    }],\n    protocols: [\"https\"],\n    route: {\n        id: \"...my_id...\",\n    },\n    service: {\n        id: \"...my_id...\",\n    },\n    tags: [\"...\"],\n    updatedAt: 5,\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_gatewayplugintlshandshakemodifier = konnect.GatewayPluginTlsHandshakeModifier(\"my_gatewayplugintlshandshakemodifier\",\n    config={\n        \"tls_client_certificate\": \"REQUEST\",\n    },\n    control_plane_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    created_at=7,\n    enabled=True,\n    gateway_plugin_tls_handshake_modifier_id=\"...my_id...\",\n    instance_name=\"...my_instance_name...\",\n    ordering={\n        \"after\": {\n            \"accesses\": [\"...\"],\n        },\n        \"before\": {\n            \"accesses\": [\"...\"],\n        },\n    },\n    partials=[{\n        \"id\": \"...my_id...\",\n        \"name\": \"...my_name...\",\n        \"path\": \"...my_path...\",\n    }],\n    protocols=[\"https\"],\n    route={\n        \"id\": \"...my_id...\",\n    },\n    service={\n        \"id\": \"...my_id...\",\n    },\n    tags=[\"...\"],\n    updated_at=5)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myGatewayplugintlshandshakemodifier = new Konnect.GatewayPluginTlsHandshakeModifier(\"my_gatewayplugintlshandshakemodifier\", new()\n    {\n        Config = new Konnect.Inputs.GatewayPluginTlsHandshakeModifierConfigArgs\n        {\n            TlsClientCertificate = \"REQUEST\",\n        },\n        ControlPlaneId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        CreatedAt = 7,\n        Enabled = true,\n        GatewayPluginTlsHandshakeModifierId = \"...my_id...\",\n        InstanceName = \"...my_instance_name...\",\n        Ordering = new Konnect.Inputs.GatewayPluginTlsHandshakeModifierOrderingArgs\n        {\n            After = new Konnect.Inputs.GatewayPluginTlsHandshakeModifierOrderingAfterArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n            Before = new Konnect.Inputs.GatewayPluginTlsHandshakeModifierOrderingBeforeArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n        },\n        Partials = new[]\n        {\n            new Konnect.Inputs.GatewayPluginTlsHandshakeModifierPartialArgs\n            {\n                Id = \"...my_id...\",\n                Name = \"...my_name...\",\n                Path = \"...my_path...\",\n            },\n        },\n        Protocols = new[]\n        {\n            \"https\",\n        },\n        Route = new Konnect.Inputs.GatewayPluginTlsHandshakeModifierRouteArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Service = new Konnect.Inputs.GatewayPluginTlsHandshakeModifierServiceArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Tags = new[]\n        {\n            \"...\",\n        },\n        UpdatedAt = 5,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewGatewayPluginTlsHandshakeModifier(ctx, \"my_gatewayplugintlshandshakemodifier\", \u0026konnect.GatewayPluginTlsHandshakeModifierArgs{\n\t\t\tConfig: \u0026konnect.GatewayPluginTlsHandshakeModifierConfigArgs{\n\t\t\t\tTlsClientCertificate: pulumi.String(\"REQUEST\"),\n\t\t\t},\n\t\t\tControlPlaneId:                      pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tCreatedAt:                           pulumi.Float64(7),\n\t\t\tEnabled:                             pulumi.Bool(true),\n\t\t\tGatewayPluginTlsHandshakeModifierId: pulumi.String(\"...my_id...\"),\n\t\t\tInstanceName:                        pulumi.String(\"...my_instance_name...\"),\n\t\t\tOrdering: \u0026konnect.GatewayPluginTlsHandshakeModifierOrderingArgs{\n\t\t\t\tAfter: \u0026konnect.GatewayPluginTlsHandshakeModifierOrderingAfterArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tBefore: \u0026konnect.GatewayPluginTlsHandshakeModifierOrderingBeforeArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tPartials: konnect.GatewayPluginTlsHandshakeModifierPartialArray{\n\t\t\t\t\u0026konnect.GatewayPluginTlsHandshakeModifierPartialArgs{\n\t\t\t\t\tId:   pulumi.String(\"...my_id...\"),\n\t\t\t\t\tName: pulumi.String(\"...my_name...\"),\n\t\t\t\t\tPath: pulumi.String(\"...my_path...\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tProtocols: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"https\"),\n\t\t\t},\n\t\t\tRoute: \u0026konnect.GatewayPluginTlsHandshakeModifierRouteArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tService: \u0026konnect.GatewayPluginTlsHandshakeModifierServiceArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"...\"),\n\t\t\t},\n\t\t\tUpdatedAt: pulumi.Float64(5),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.GatewayPluginTlsHandshakeModifier;\nimport com.pulumi.konnect.GatewayPluginTlsHandshakeModifierArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginTlsHandshakeModifierConfigArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginTlsHandshakeModifierOrderingArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginTlsHandshakeModifierOrderingAfterArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginTlsHandshakeModifierOrderingBeforeArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginTlsHandshakeModifierPartialArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginTlsHandshakeModifierRouteArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginTlsHandshakeModifierServiceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myGatewayplugintlshandshakemodifier = new GatewayPluginTlsHandshakeModifier(\"myGatewayplugintlshandshakemodifier\", GatewayPluginTlsHandshakeModifierArgs.builder()\n            .config(GatewayPluginTlsHandshakeModifierConfigArgs.builder()\n                .tlsClientCertificate(\"REQUEST\")\n                .build())\n            .controlPlaneId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .createdAt(7.0)\n            .enabled(true)\n            .gatewayPluginTlsHandshakeModifierId(\"...my_id...\")\n            .instanceName(\"...my_instance_name...\")\n            .ordering(GatewayPluginTlsHandshakeModifierOrderingArgs.builder()\n                .after(GatewayPluginTlsHandshakeModifierOrderingAfterArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .before(GatewayPluginTlsHandshakeModifierOrderingBeforeArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .build())\n            .partials(GatewayPluginTlsHandshakeModifierPartialArgs.builder()\n                .id(\"...my_id...\")\n                .name(\"...my_name...\")\n                .path(\"...my_path...\")\n                .build())\n            .protocols(\"https\")\n            .route(GatewayPluginTlsHandshakeModifierRouteArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .service(GatewayPluginTlsHandshakeModifierServiceArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .tags(\"...\")\n            .updatedAt(5.0)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myGatewayplugintlshandshakemodifier:\n    type: konnect:GatewayPluginTlsHandshakeModifier\n    name: my_gatewayplugintlshandshakemodifier\n    properties:\n      config:\n        tlsClientCertificate: REQUEST\n      controlPlaneId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      createdAt: 7\n      enabled: true\n      gatewayPluginTlsHandshakeModifierId: '...my_id...'\n      instanceName: '...my_instance_name...'\n      ordering:\n        after:\n          accesses:\n            - '...'\n        before:\n          accesses:\n            - '...'\n      partials:\n        - id: '...my_id...'\n          name: '...my_name...'\n          path: '...my_path...'\n      protocols:\n        - https\n      route:\n        id: '...my_id...'\n      service:\n        id: '...my_id...'\n      tags:\n        - '...'\n      updatedAt: 5\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_gateway_plugin_tls_handshake_modifier.my_konnect_gateway_plugin_tls_handshake_modifier\n\n  id = jsonencode({\n\n    control_plane_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/gatewayPluginTlsHandshakeModifier:GatewayPluginTlsHandshakeModifier my_konnect_gateway_plugin_tls_handshake_modifier '{\"control_plane_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"}'\n```\n\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginTlsHandshakeModifierConfig:GatewayPluginTlsHandshakeModifierConfig"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginTlsHandshakeModifierId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginTlsHandshakeModifierOrdering:GatewayPluginTlsHandshakeModifierOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginTlsHandshakeModifierPartial:GatewayPluginTlsHandshakeModifierPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A list of the request protocols that will trigger this plugin. The default value, as well as the possible values allowed on this field, may change depending on the plugin type. For example, plugins that only work in stream mode will only support tcp and tls. Default: [\"grpcs\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginTlsHandshakeModifierRoute:GatewayPluginTlsHandshakeModifierRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginTlsHandshakeModifierService:GatewayPluginTlsHandshakeModifierService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object","required":["config","controlPlaneId","createdAt","enabled","gatewayPluginTlsHandshakeModifierId","ordering","protocols","route","service","updatedAt"],"inputProperties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginTlsHandshakeModifierConfig:GatewayPluginTlsHandshakeModifierConfig"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginTlsHandshakeModifierId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginTlsHandshakeModifierOrdering:GatewayPluginTlsHandshakeModifierOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginTlsHandshakeModifierPartial:GatewayPluginTlsHandshakeModifierPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A list of the request protocols that will trigger this plugin. The default value, as well as the possible values allowed on this field, may change depending on the plugin type. For example, plugins that only work in stream mode will only support tcp and tls. Default: [\"grpcs\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginTlsHandshakeModifierRoute:GatewayPluginTlsHandshakeModifierRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginTlsHandshakeModifierService:GatewayPluginTlsHandshakeModifierService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"requiredInputs":["controlPlaneId"],"stateInputs":{"description":"Input properties used for looking up and filtering GatewayPluginTlsHandshakeModifier resources.\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginTlsHandshakeModifierConfig:GatewayPluginTlsHandshakeModifierConfig"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginTlsHandshakeModifierId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginTlsHandshakeModifierOrdering:GatewayPluginTlsHandshakeModifierOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginTlsHandshakeModifierPartial:GatewayPluginTlsHandshakeModifierPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A list of the request protocols that will trigger this plugin. The default value, as well as the possible values allowed on this field, may change depending on the plugin type. For example, plugins that only work in stream mode will only support tcp and tls. Default: [\"grpcs\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginTlsHandshakeModifierRoute:GatewayPluginTlsHandshakeModifierRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginTlsHandshakeModifierService:GatewayPluginTlsHandshakeModifierService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object"}},"konnect:index/gatewayPluginTlsMetadataHeaders:GatewayPluginTlsMetadataHeaders":{"description":"GatewayPluginTLSMetadataHeaders Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myGatewayplugintlsmetadataheaders = new konnect.GatewayPluginTlsMetadataHeaders(\"my_gatewayplugintlsmetadataheaders\", {\n    config: {\n        clientCertFingerprintHeaderName: \"...my_client_cert_fingerprint_header_name...\",\n        clientCertHeaderName: \"...my_client_cert_header_name...\",\n        clientCertIssuerDnHeaderName: \"...my_client_cert_issuer_dn_header_name...\",\n        clientCertSubjectDnHeaderName: \"...my_client_cert_subject_dn_header_name...\",\n        clientSerialHeaderName: \"...my_client_serial_header_name...\",\n        injectClientCertDetails: false,\n    },\n    controlPlaneId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    createdAt: 6,\n    enabled: true,\n    gatewayPluginTlsMetadataHeadersId: \"...my_id...\",\n    instanceName: \"...my_instance_name...\",\n    ordering: {\n        after: {\n            accesses: [\"...\"],\n        },\n        before: {\n            accesses: [\"...\"],\n        },\n    },\n    partials: [{\n        id: \"...my_id...\",\n        name: \"...my_name...\",\n        path: \"...my_path...\",\n    }],\n    protocols: [\"grpcs\"],\n    route: {\n        id: \"...my_id...\",\n    },\n    service: {\n        id: \"...my_id...\",\n    },\n    tags: [\"...\"],\n    updatedAt: 2,\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_gatewayplugintlsmetadataheaders = konnect.GatewayPluginTlsMetadataHeaders(\"my_gatewayplugintlsmetadataheaders\",\n    config={\n        \"client_cert_fingerprint_header_name\": \"...my_client_cert_fingerprint_header_name...\",\n        \"client_cert_header_name\": \"...my_client_cert_header_name...\",\n        \"client_cert_issuer_dn_header_name\": \"...my_client_cert_issuer_dn_header_name...\",\n        \"client_cert_subject_dn_header_name\": \"...my_client_cert_subject_dn_header_name...\",\n        \"client_serial_header_name\": \"...my_client_serial_header_name...\",\n        \"inject_client_cert_details\": False,\n    },\n    control_plane_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    created_at=6,\n    enabled=True,\n    gateway_plugin_tls_metadata_headers_id=\"...my_id...\",\n    instance_name=\"...my_instance_name...\",\n    ordering={\n        \"after\": {\n            \"accesses\": [\"...\"],\n        },\n        \"before\": {\n            \"accesses\": [\"...\"],\n        },\n    },\n    partials=[{\n        \"id\": \"...my_id...\",\n        \"name\": \"...my_name...\",\n        \"path\": \"...my_path...\",\n    }],\n    protocols=[\"grpcs\"],\n    route={\n        \"id\": \"...my_id...\",\n    },\n    service={\n        \"id\": \"...my_id...\",\n    },\n    tags=[\"...\"],\n    updated_at=2)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myGatewayplugintlsmetadataheaders = new Konnect.GatewayPluginTlsMetadataHeaders(\"my_gatewayplugintlsmetadataheaders\", new()\n    {\n        Config = new Konnect.Inputs.GatewayPluginTlsMetadataHeadersConfigArgs\n        {\n            ClientCertFingerprintHeaderName = \"...my_client_cert_fingerprint_header_name...\",\n            ClientCertHeaderName = \"...my_client_cert_header_name...\",\n            ClientCertIssuerDnHeaderName = \"...my_client_cert_issuer_dn_header_name...\",\n            ClientCertSubjectDnHeaderName = \"...my_client_cert_subject_dn_header_name...\",\n            ClientSerialHeaderName = \"...my_client_serial_header_name...\",\n            InjectClientCertDetails = false,\n        },\n        ControlPlaneId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        CreatedAt = 6,\n        Enabled = true,\n        GatewayPluginTlsMetadataHeadersId = \"...my_id...\",\n        InstanceName = \"...my_instance_name...\",\n        Ordering = new Konnect.Inputs.GatewayPluginTlsMetadataHeadersOrderingArgs\n        {\n            After = new Konnect.Inputs.GatewayPluginTlsMetadataHeadersOrderingAfterArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n            Before = new Konnect.Inputs.GatewayPluginTlsMetadataHeadersOrderingBeforeArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n        },\n        Partials = new[]\n        {\n            new Konnect.Inputs.GatewayPluginTlsMetadataHeadersPartialArgs\n            {\n                Id = \"...my_id...\",\n                Name = \"...my_name...\",\n                Path = \"...my_path...\",\n            },\n        },\n        Protocols = new[]\n        {\n            \"grpcs\",\n        },\n        Route = new Konnect.Inputs.GatewayPluginTlsMetadataHeadersRouteArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Service = new Konnect.Inputs.GatewayPluginTlsMetadataHeadersServiceArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Tags = new[]\n        {\n            \"...\",\n        },\n        UpdatedAt = 2,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewGatewayPluginTlsMetadataHeaders(ctx, \"my_gatewayplugintlsmetadataheaders\", \u0026konnect.GatewayPluginTlsMetadataHeadersArgs{\n\t\t\tConfig: \u0026konnect.GatewayPluginTlsMetadataHeadersConfigArgs{\n\t\t\t\tClientCertFingerprintHeaderName: pulumi.String(\"...my_client_cert_fingerprint_header_name...\"),\n\t\t\t\tClientCertHeaderName:            pulumi.String(\"...my_client_cert_header_name...\"),\n\t\t\t\tClientCertIssuerDnHeaderName:    pulumi.String(\"...my_client_cert_issuer_dn_header_name...\"),\n\t\t\t\tClientCertSubjectDnHeaderName:   pulumi.String(\"...my_client_cert_subject_dn_header_name...\"),\n\t\t\t\tClientSerialHeaderName:          pulumi.String(\"...my_client_serial_header_name...\"),\n\t\t\t\tInjectClientCertDetails:         pulumi.Bool(false),\n\t\t\t},\n\t\t\tControlPlaneId:                    pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tCreatedAt:                         pulumi.Float64(6),\n\t\t\tEnabled:                           pulumi.Bool(true),\n\t\t\tGatewayPluginTlsMetadataHeadersId: pulumi.String(\"...my_id...\"),\n\t\t\tInstanceName:                      pulumi.String(\"...my_instance_name...\"),\n\t\t\tOrdering: \u0026konnect.GatewayPluginTlsMetadataHeadersOrderingArgs{\n\t\t\t\tAfter: \u0026konnect.GatewayPluginTlsMetadataHeadersOrderingAfterArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tBefore: \u0026konnect.GatewayPluginTlsMetadataHeadersOrderingBeforeArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tPartials: konnect.GatewayPluginTlsMetadataHeadersPartialArray{\n\t\t\t\t\u0026konnect.GatewayPluginTlsMetadataHeadersPartialArgs{\n\t\t\t\t\tId:   pulumi.String(\"...my_id...\"),\n\t\t\t\t\tName: pulumi.String(\"...my_name...\"),\n\t\t\t\t\tPath: pulumi.String(\"...my_path...\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tProtocols: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"grpcs\"),\n\t\t\t},\n\t\t\tRoute: \u0026konnect.GatewayPluginTlsMetadataHeadersRouteArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tService: \u0026konnect.GatewayPluginTlsMetadataHeadersServiceArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"...\"),\n\t\t\t},\n\t\t\tUpdatedAt: pulumi.Float64(2),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.GatewayPluginTlsMetadataHeaders;\nimport com.pulumi.konnect.GatewayPluginTlsMetadataHeadersArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginTlsMetadataHeadersConfigArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginTlsMetadataHeadersOrderingArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginTlsMetadataHeadersOrderingAfterArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginTlsMetadataHeadersOrderingBeforeArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginTlsMetadataHeadersPartialArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginTlsMetadataHeadersRouteArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginTlsMetadataHeadersServiceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myGatewayplugintlsmetadataheaders = new GatewayPluginTlsMetadataHeaders(\"myGatewayplugintlsmetadataheaders\", GatewayPluginTlsMetadataHeadersArgs.builder()\n            .config(GatewayPluginTlsMetadataHeadersConfigArgs.builder()\n                .clientCertFingerprintHeaderName(\"...my_client_cert_fingerprint_header_name...\")\n                .clientCertHeaderName(\"...my_client_cert_header_name...\")\n                .clientCertIssuerDnHeaderName(\"...my_client_cert_issuer_dn_header_name...\")\n                .clientCertSubjectDnHeaderName(\"...my_client_cert_subject_dn_header_name...\")\n                .clientSerialHeaderName(\"...my_client_serial_header_name...\")\n                .injectClientCertDetails(false)\n                .build())\n            .controlPlaneId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .createdAt(6.0)\n            .enabled(true)\n            .gatewayPluginTlsMetadataHeadersId(\"...my_id...\")\n            .instanceName(\"...my_instance_name...\")\n            .ordering(GatewayPluginTlsMetadataHeadersOrderingArgs.builder()\n                .after(GatewayPluginTlsMetadataHeadersOrderingAfterArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .before(GatewayPluginTlsMetadataHeadersOrderingBeforeArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .build())\n            .partials(GatewayPluginTlsMetadataHeadersPartialArgs.builder()\n                .id(\"...my_id...\")\n                .name(\"...my_name...\")\n                .path(\"...my_path...\")\n                .build())\n            .protocols(\"grpcs\")\n            .route(GatewayPluginTlsMetadataHeadersRouteArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .service(GatewayPluginTlsMetadataHeadersServiceArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .tags(\"...\")\n            .updatedAt(2.0)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myGatewayplugintlsmetadataheaders:\n    type: konnect:GatewayPluginTlsMetadataHeaders\n    name: my_gatewayplugintlsmetadataheaders\n    properties:\n      config:\n        clientCertFingerprintHeaderName: '...my_client_cert_fingerprint_header_name...'\n        clientCertHeaderName: '...my_client_cert_header_name...'\n        clientCertIssuerDnHeaderName: '...my_client_cert_issuer_dn_header_name...'\n        clientCertSubjectDnHeaderName: '...my_client_cert_subject_dn_header_name...'\n        clientSerialHeaderName: '...my_client_serial_header_name...'\n        injectClientCertDetails: false\n      controlPlaneId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      createdAt: 6\n      enabled: true\n      gatewayPluginTlsMetadataHeadersId: '...my_id...'\n      instanceName: '...my_instance_name...'\n      ordering:\n        after:\n          accesses:\n            - '...'\n        before:\n          accesses:\n            - '...'\n      partials:\n        - id: '...my_id...'\n          name: '...my_name...'\n          path: '...my_path...'\n      protocols:\n        - grpcs\n      route:\n        id: '...my_id...'\n      service:\n        id: '...my_id...'\n      tags:\n        - '...'\n      updatedAt: 2\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_gateway_plugin_tls_metadata_headers.my_konnect_gateway_plugin_tls_metadata_headers\n\n  id = jsonencode({\n\n    control_plane_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/gatewayPluginTlsMetadataHeaders:GatewayPluginTlsMetadataHeaders my_konnect_gateway_plugin_tls_metadata_headers '{\"control_plane_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"}'\n```\n\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginTlsMetadataHeadersConfig:GatewayPluginTlsMetadataHeadersConfig"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginTlsMetadataHeadersId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginTlsMetadataHeadersOrdering:GatewayPluginTlsMetadataHeadersOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginTlsMetadataHeadersPartial:GatewayPluginTlsMetadataHeadersPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A list of the request protocols that will trigger this plugin. The default value, as well as the possible values allowed on this field, may change depending on the plugin type. For example, plugins that only work in stream mode will only support tcp and tls. Default: [\"grpcs\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginTlsMetadataHeadersRoute:GatewayPluginTlsMetadataHeadersRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginTlsMetadataHeadersService:GatewayPluginTlsMetadataHeadersService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object","required":["config","controlPlaneId","createdAt","enabled","gatewayPluginTlsMetadataHeadersId","ordering","protocols","route","service","updatedAt"],"inputProperties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginTlsMetadataHeadersConfig:GatewayPluginTlsMetadataHeadersConfig"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginTlsMetadataHeadersId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginTlsMetadataHeadersOrdering:GatewayPluginTlsMetadataHeadersOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginTlsMetadataHeadersPartial:GatewayPluginTlsMetadataHeadersPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A list of the request protocols that will trigger this plugin. The default value, as well as the possible values allowed on this field, may change depending on the plugin type. For example, plugins that only work in stream mode will only support tcp and tls. Default: [\"grpcs\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginTlsMetadataHeadersRoute:GatewayPluginTlsMetadataHeadersRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginTlsMetadataHeadersService:GatewayPluginTlsMetadataHeadersService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"requiredInputs":["controlPlaneId"],"stateInputs":{"description":"Input properties used for looking up and filtering GatewayPluginTlsMetadataHeaders resources.\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginTlsMetadataHeadersConfig:GatewayPluginTlsMetadataHeadersConfig"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginTlsMetadataHeadersId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginTlsMetadataHeadersOrdering:GatewayPluginTlsMetadataHeadersOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginTlsMetadataHeadersPartial:GatewayPluginTlsMetadataHeadersPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A list of the request protocols that will trigger this plugin. The default value, as well as the possible values allowed on this field, may change depending on the plugin type. For example, plugins that only work in stream mode will only support tcp and tls. Default: [\"grpcs\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginTlsMetadataHeadersRoute:GatewayPluginTlsMetadataHeadersRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginTlsMetadataHeadersService:GatewayPluginTlsMetadataHeadersService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object"}},"konnect:index/gatewayPluginUdpLog:GatewayPluginUdpLog":{"description":"GatewayPluginUDPLog Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myGatewaypluginudplog = new konnect.GatewayPluginUdpLog(\"my_gatewaypluginudplog\", {\n    config: {\n        customFieldsByLua: {\n            key: \"value\",\n        },\n        host: \"...my_host...\",\n        port: 32780,\n        timeout: 6.74,\n    },\n    consumer: {\n        id: \"...my_id...\",\n    },\n    controlPlaneId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    createdAt: 4,\n    enabled: true,\n    gatewayPluginUdpLogId: \"...my_id...\",\n    instanceName: \"...my_instance_name...\",\n    ordering: {\n        after: {\n            accesses: [\"...\"],\n        },\n        before: {\n            accesses: [\"...\"],\n        },\n    },\n    partials: [{\n        id: \"...my_id...\",\n        name: \"...my_name...\",\n        path: \"...my_path...\",\n    }],\n    protocols: [\"tcp\"],\n    route: {\n        id: \"...my_id...\",\n    },\n    service: {\n        id: \"...my_id...\",\n    },\n    tags: [\"...\"],\n    updatedAt: 2,\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_gatewaypluginudplog = konnect.GatewayPluginUdpLog(\"my_gatewaypluginudplog\",\n    config={\n        \"custom_fields_by_lua\": {\n            \"key\": \"value\",\n        },\n        \"host\": \"...my_host...\",\n        \"port\": 32780,\n        \"timeout\": 6.74,\n    },\n    consumer={\n        \"id\": \"...my_id...\",\n    },\n    control_plane_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    created_at=4,\n    enabled=True,\n    gateway_plugin_udp_log_id=\"...my_id...\",\n    instance_name=\"...my_instance_name...\",\n    ordering={\n        \"after\": {\n            \"accesses\": [\"...\"],\n        },\n        \"before\": {\n            \"accesses\": [\"...\"],\n        },\n    },\n    partials=[{\n        \"id\": \"...my_id...\",\n        \"name\": \"...my_name...\",\n        \"path\": \"...my_path...\",\n    }],\n    protocols=[\"tcp\"],\n    route={\n        \"id\": \"...my_id...\",\n    },\n    service={\n        \"id\": \"...my_id...\",\n    },\n    tags=[\"...\"],\n    updated_at=2)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myGatewaypluginudplog = new Konnect.GatewayPluginUdpLog(\"my_gatewaypluginudplog\", new()\n    {\n        Config = new Konnect.Inputs.GatewayPluginUdpLogConfigArgs\n        {\n            CustomFieldsByLua = \n            {\n                { \"key\", \"value\" },\n            },\n            Host = \"...my_host...\",\n            Port = 32780,\n            Timeout = 6.74,\n        },\n        Consumer = new Konnect.Inputs.GatewayPluginUdpLogConsumerArgs\n        {\n            Id = \"...my_id...\",\n        },\n        ControlPlaneId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        CreatedAt = 4,\n        Enabled = true,\n        GatewayPluginUdpLogId = \"...my_id...\",\n        InstanceName = \"...my_instance_name...\",\n        Ordering = new Konnect.Inputs.GatewayPluginUdpLogOrderingArgs\n        {\n            After = new Konnect.Inputs.GatewayPluginUdpLogOrderingAfterArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n            Before = new Konnect.Inputs.GatewayPluginUdpLogOrderingBeforeArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n        },\n        Partials = new[]\n        {\n            new Konnect.Inputs.GatewayPluginUdpLogPartialArgs\n            {\n                Id = \"...my_id...\",\n                Name = \"...my_name...\",\n                Path = \"...my_path...\",\n            },\n        },\n        Protocols = new[]\n        {\n            \"tcp\",\n        },\n        Route = new Konnect.Inputs.GatewayPluginUdpLogRouteArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Service = new Konnect.Inputs.GatewayPluginUdpLogServiceArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Tags = new[]\n        {\n            \"...\",\n        },\n        UpdatedAt = 2,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewGatewayPluginUdpLog(ctx, \"my_gatewaypluginudplog\", \u0026konnect.GatewayPluginUdpLogArgs{\n\t\t\tConfig: \u0026konnect.GatewayPluginUdpLogConfigArgs{\n\t\t\t\tCustomFieldsByLua: pulumi.StringMap{\n\t\t\t\t\t\"key\": pulumi.String(\"value\"),\n\t\t\t\t},\n\t\t\t\tHost:    pulumi.String(\"...my_host...\"),\n\t\t\t\tPort:    pulumi.Float64(32780),\n\t\t\t\tTimeout: pulumi.Float64(6.74),\n\t\t\t},\n\t\t\tConsumer: \u0026konnect.GatewayPluginUdpLogConsumerArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tControlPlaneId:        pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tCreatedAt:             pulumi.Float64(4),\n\t\t\tEnabled:               pulumi.Bool(true),\n\t\t\tGatewayPluginUdpLogId: pulumi.String(\"...my_id...\"),\n\t\t\tInstanceName:          pulumi.String(\"...my_instance_name...\"),\n\t\t\tOrdering: \u0026konnect.GatewayPluginUdpLogOrderingArgs{\n\t\t\t\tAfter: \u0026konnect.GatewayPluginUdpLogOrderingAfterArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tBefore: \u0026konnect.GatewayPluginUdpLogOrderingBeforeArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tPartials: konnect.GatewayPluginUdpLogPartialArray{\n\t\t\t\t\u0026konnect.GatewayPluginUdpLogPartialArgs{\n\t\t\t\t\tId:   pulumi.String(\"...my_id...\"),\n\t\t\t\t\tName: pulumi.String(\"...my_name...\"),\n\t\t\t\t\tPath: pulumi.String(\"...my_path...\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tProtocols: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"tcp\"),\n\t\t\t},\n\t\t\tRoute: \u0026konnect.GatewayPluginUdpLogRouteArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tService: \u0026konnect.GatewayPluginUdpLogServiceArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"...\"),\n\t\t\t},\n\t\t\tUpdatedAt: pulumi.Float64(2),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.GatewayPluginUdpLog;\nimport com.pulumi.konnect.GatewayPluginUdpLogArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginUdpLogConfigArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginUdpLogConsumerArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginUdpLogOrderingArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginUdpLogOrderingAfterArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginUdpLogOrderingBeforeArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginUdpLogPartialArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginUdpLogRouteArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginUdpLogServiceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myGatewaypluginudplog = new GatewayPluginUdpLog(\"myGatewaypluginudplog\", GatewayPluginUdpLogArgs.builder()\n            .config(GatewayPluginUdpLogConfigArgs.builder()\n                .customFieldsByLua(Map.of(\"key\", \"value\"))\n                .host(\"...my_host...\")\n                .port(32780.0)\n                .timeout(6.74)\n                .build())\n            .consumer(GatewayPluginUdpLogConsumerArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .controlPlaneId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .createdAt(4.0)\n            .enabled(true)\n            .gatewayPluginUdpLogId(\"...my_id...\")\n            .instanceName(\"...my_instance_name...\")\n            .ordering(GatewayPluginUdpLogOrderingArgs.builder()\n                .after(GatewayPluginUdpLogOrderingAfterArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .before(GatewayPluginUdpLogOrderingBeforeArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .build())\n            .partials(GatewayPluginUdpLogPartialArgs.builder()\n                .id(\"...my_id...\")\n                .name(\"...my_name...\")\n                .path(\"...my_path...\")\n                .build())\n            .protocols(\"tcp\")\n            .route(GatewayPluginUdpLogRouteArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .service(GatewayPluginUdpLogServiceArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .tags(\"...\")\n            .updatedAt(2.0)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myGatewaypluginudplog:\n    type: konnect:GatewayPluginUdpLog\n    name: my_gatewaypluginudplog\n    properties:\n      config:\n        customFieldsByLua:\n          key: value\n        host: '...my_host...'\n        port: 32780\n        timeout: 6.74\n      consumer:\n        id: '...my_id...'\n      controlPlaneId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      createdAt: 4\n      enabled: true\n      gatewayPluginUdpLogId: '...my_id...'\n      instanceName: '...my_instance_name...'\n      ordering:\n        after:\n          accesses:\n            - '...'\n        before:\n          accesses:\n            - '...'\n      partials:\n        - id: '...my_id...'\n          name: '...my_name...'\n          path: '...my_path...'\n      protocols:\n        - tcp\n      route:\n        id: '...my_id...'\n      service:\n        id: '...my_id...'\n      tags:\n        - '...'\n      updatedAt: 2\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_gateway_plugin_udp_log.my_konnect_gateway_plugin_udp_log\n\n  id = jsonencode({\n\n    control_plane_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/gatewayPluginUdpLog:GatewayPluginUdpLog my_konnect_gateway_plugin_udp_log '{\"control_plane_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"}'\n```\n\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginUdpLogConfig:GatewayPluginUdpLogConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginUdpLogConsumer:GatewayPluginUdpLogConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginUdpLogId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginUdpLogOrdering:GatewayPluginUdpLogOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginUdpLogPartial:GatewayPluginUdpLogPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginUdpLogRoute:GatewayPluginUdpLogRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginUdpLogService:GatewayPluginUdpLogService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object","required":["config","consumer","controlPlaneId","createdAt","enabled","gatewayPluginUdpLogId","ordering","protocols","route","service","updatedAt"],"inputProperties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginUdpLogConfig:GatewayPluginUdpLogConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginUdpLogConsumer:GatewayPluginUdpLogConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginUdpLogId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginUdpLogOrdering:GatewayPluginUdpLogOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginUdpLogPartial:GatewayPluginUdpLogPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginUdpLogRoute:GatewayPluginUdpLogRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginUdpLogService:GatewayPluginUdpLogService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"requiredInputs":["config","controlPlaneId"],"stateInputs":{"description":"Input properties used for looking up and filtering GatewayPluginUdpLog resources.\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginUdpLogConfig:GatewayPluginUdpLogConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginUdpLogConsumer:GatewayPluginUdpLogConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginUdpLogId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginUdpLogOrdering:GatewayPluginUdpLogOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginUdpLogPartial:GatewayPluginUdpLogPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginUdpLogRoute:GatewayPluginUdpLogRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginUdpLogService:GatewayPluginUdpLogService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object"}},"konnect:index/gatewayPluginUpstreamOauth:GatewayPluginUpstreamOauth":{"description":"GatewayPluginUpstreamOauth Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myGatewaypluginupstreamoauth = new konnect.GatewayPluginUpstreamOauth(\"my_gatewaypluginupstreamoauth\", {\n    config: {\n        behavior: {\n            idpErrorResponseBodyTemplate: \"...my_idp_error_response_body_template...\",\n            idpErrorResponseContentType: \"...my_idp_error_response_content_type...\",\n            idpErrorResponseMessage: \"...my_idp_error_response_message...\",\n            idpErrorResponseStatusCode: 576,\n            purgeTokenOnUpstreamStatusCodes: [373],\n            upstreamAccessTokenHeaderName: \"...my_upstream_access_token_header_name...\",\n        },\n        cache: {\n            defaultTtl: 7.94,\n            eagerlyExpire: 9,\n            memory: {\n                dictionaryName: \"...my_dictionary_name...\",\n            },\n            redis: {\n                cloudAuthentication: {\n                    authProvider: \"gcp\",\n                    awsAccessKeyId: \"...my_aws_access_key_id...\",\n                    awsAssumeRoleArn: \"...my_aws_assume_role_arn...\",\n                    awsCacheName: \"...my_aws_cache_name...\",\n                    awsIsServerless: true,\n                    awsRegion: \"...my_aws_region...\",\n                    awsRoleSessionName: \"...my_aws_role_session_name...\",\n                    awsSecretAccessKey: \"...my_aws_secret_access_key...\",\n                    azureClientId: \"...my_azure_client_id...\",\n                    azureClientSecret: \"...my_azure_client_secret...\",\n                    azureTenantId: \"...my_azure_tenant_id...\",\n                    gcpServiceAccountJson: \"...my_gcp_service_account_json...\",\n                },\n                clusterMaxRedirections: 10,\n                clusterNodes: [{\n                    ip: \"...my_ip...\",\n                    port: 20643,\n                }],\n                connectTimeout: 305131733,\n                connectionIsProxied: true,\n                database: 10,\n                host: \"...my_host...\",\n                keepaliveBacklog: 1047987263,\n                keepalivePoolSize: 459234090,\n                password: \"...my_password...\",\n                port: 35119,\n                readTimeout: 245223357,\n                sendTimeout: 1142057358,\n                sentinelMaster: \"...my_sentinel_master...\",\n                sentinelNodes: [{\n                    host: \"...my_host...\",\n                    port: 31719,\n                }],\n                sentinelPassword: \"...my_sentinel_password...\",\n                sentinelRole: \"any\",\n                sentinelUsername: \"...my_sentinel_username...\",\n                serverName: \"...my_server_name...\",\n                ssl: true,\n                sslVerify: true,\n                username: \"...my_username...\",\n            },\n            strategy: \"memory\",\n        },\n        client: {\n            authMethod: \"none\",\n            clientSecretJwtAlg: \"HS256\",\n            httpProxy: \"...my_http_proxy...\",\n            httpProxyAuthorization: \"...my_http_proxy_authorization...\",\n            httpVersion: 6.12,\n            httpsProxy: \"...my_https_proxy...\",\n            httpsProxyAuthorization: \"...my_https_proxy_authorization...\",\n            keepAlive: true,\n            noProxy: \"...my_no_proxy...\",\n            sslVerify: false,\n            timeout: 1421616738,\n        },\n        oauth: {\n            audiences: [\"...\"],\n            clientId: \"...my_client_id...\",\n            clientSecret: \"...my_client_secret...\",\n            grantType: \"password\",\n            password: \"...my_password...\",\n            scopes: [\"...\"],\n            tokenEndpoint: \"...my_token_endpoint...\",\n            tokenHeaders: {\n                key: \"value\",\n            },\n            tokenPostArgs: {\n                key: \"value\",\n            },\n            username: \"...my_username...\",\n        },\n    },\n    consumer: {\n        id: \"...my_id...\",\n    },\n    consumerGroup: {\n        id: \"...my_id...\",\n    },\n    controlPlaneId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    createdAt: 5,\n    enabled: false,\n    gatewayPluginUpstreamOauthId: \"...my_id...\",\n    instanceName: \"...my_instance_name...\",\n    ordering: {\n        after: {\n            accesses: [\"...\"],\n        },\n        before: {\n            accesses: [\"...\"],\n        },\n    },\n    partials: [{\n        id: \"...my_id...\",\n        name: \"...my_name...\",\n        path: \"...my_path...\",\n    }],\n    protocols: [\"http\"],\n    route: {\n        id: \"...my_id...\",\n    },\n    service: {\n        id: \"...my_id...\",\n    },\n    tags: [\"...\"],\n    updatedAt: 10,\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_gatewaypluginupstreamoauth = konnect.GatewayPluginUpstreamOauth(\"my_gatewaypluginupstreamoauth\",\n    config={\n        \"behavior\": {\n            \"idp_error_response_body_template\": \"...my_idp_error_response_body_template...\",\n            \"idp_error_response_content_type\": \"...my_idp_error_response_content_type...\",\n            \"idp_error_response_message\": \"...my_idp_error_response_message...\",\n            \"idp_error_response_status_code\": 576,\n            \"purge_token_on_upstream_status_codes\": [373],\n            \"upstream_access_token_header_name\": \"...my_upstream_access_token_header_name...\",\n        },\n        \"cache\": {\n            \"default_ttl\": 7.94,\n            \"eagerly_expire\": 9,\n            \"memory\": {\n                \"dictionary_name\": \"...my_dictionary_name...\",\n            },\n            \"redis\": {\n                \"cloud_authentication\": {\n                    \"auth_provider\": \"gcp\",\n                    \"aws_access_key_id\": \"...my_aws_access_key_id...\",\n                    \"aws_assume_role_arn\": \"...my_aws_assume_role_arn...\",\n                    \"aws_cache_name\": \"...my_aws_cache_name...\",\n                    \"aws_is_serverless\": True,\n                    \"aws_region\": \"...my_aws_region...\",\n                    \"aws_role_session_name\": \"...my_aws_role_session_name...\",\n                    \"aws_secret_access_key\": \"...my_aws_secret_access_key...\",\n                    \"azure_client_id\": \"...my_azure_client_id...\",\n                    \"azure_client_secret\": \"...my_azure_client_secret...\",\n                    \"azure_tenant_id\": \"...my_azure_tenant_id...\",\n                    \"gcp_service_account_json\": \"...my_gcp_service_account_json...\",\n                },\n                \"cluster_max_redirections\": 10,\n                \"cluster_nodes\": [{\n                    \"ip\": \"...my_ip...\",\n                    \"port\": 20643,\n                }],\n                \"connect_timeout\": 305131733,\n                \"connection_is_proxied\": True,\n                \"database\": 10,\n                \"host\": \"...my_host...\",\n                \"keepalive_backlog\": 1047987263,\n                \"keepalive_pool_size\": 459234090,\n                \"password\": \"...my_password...\",\n                \"port\": 35119,\n                \"read_timeout\": 245223357,\n                \"send_timeout\": 1142057358,\n                \"sentinel_master\": \"...my_sentinel_master...\",\n                \"sentinel_nodes\": [{\n                    \"host\": \"...my_host...\",\n                    \"port\": 31719,\n                }],\n                \"sentinel_password\": \"...my_sentinel_password...\",\n                \"sentinel_role\": \"any\",\n                \"sentinel_username\": \"...my_sentinel_username...\",\n                \"server_name\": \"...my_server_name...\",\n                \"ssl\": True,\n                \"ssl_verify\": True,\n                \"username\": \"...my_username...\",\n            },\n            \"strategy\": \"memory\",\n        },\n        \"client\": {\n            \"auth_method\": \"none\",\n            \"client_secret_jwt_alg\": \"HS256\",\n            \"http_proxy\": \"...my_http_proxy...\",\n            \"http_proxy_authorization\": \"...my_http_proxy_authorization...\",\n            \"http_version\": 6.12,\n            \"https_proxy\": \"...my_https_proxy...\",\n            \"https_proxy_authorization\": \"...my_https_proxy_authorization...\",\n            \"keep_alive\": True,\n            \"no_proxy\": \"...my_no_proxy...\",\n            \"ssl_verify\": False,\n            \"timeout\": 1421616738,\n        },\n        \"oauth\": {\n            \"audiences\": [\"...\"],\n            \"client_id\": \"...my_client_id...\",\n            \"client_secret\": \"...my_client_secret...\",\n            \"grant_type\": \"password\",\n            \"password\": \"...my_password...\",\n            \"scopes\": [\"...\"],\n            \"token_endpoint\": \"...my_token_endpoint...\",\n            \"token_headers\": {\n                \"key\": \"value\",\n            },\n            \"token_post_args\": {\n                \"key\": \"value\",\n            },\n            \"username\": \"...my_username...\",\n        },\n    },\n    consumer={\n        \"id\": \"...my_id...\",\n    },\n    consumer_group={\n        \"id\": \"...my_id...\",\n    },\n    control_plane_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    created_at=5,\n    enabled=False,\n    gateway_plugin_upstream_oauth_id=\"...my_id...\",\n    instance_name=\"...my_instance_name...\",\n    ordering={\n        \"after\": {\n            \"accesses\": [\"...\"],\n        },\n        \"before\": {\n            \"accesses\": [\"...\"],\n        },\n    },\n    partials=[{\n        \"id\": \"...my_id...\",\n        \"name\": \"...my_name...\",\n        \"path\": \"...my_path...\",\n    }],\n    protocols=[\"http\"],\n    route={\n        \"id\": \"...my_id...\",\n    },\n    service={\n        \"id\": \"...my_id...\",\n    },\n    tags=[\"...\"],\n    updated_at=10)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myGatewaypluginupstreamoauth = new Konnect.GatewayPluginUpstreamOauth(\"my_gatewaypluginupstreamoauth\", new()\n    {\n        Config = new Konnect.Inputs.GatewayPluginUpstreamOauthConfigArgs\n        {\n            Behavior = new Konnect.Inputs.GatewayPluginUpstreamOauthConfigBehaviorArgs\n            {\n                IdpErrorResponseBodyTemplate = \"...my_idp_error_response_body_template...\",\n                IdpErrorResponseContentType = \"...my_idp_error_response_content_type...\",\n                IdpErrorResponseMessage = \"...my_idp_error_response_message...\",\n                IdpErrorResponseStatusCode = 576,\n                PurgeTokenOnUpstreamStatusCodes = new[]\n                {\n                    373,\n                },\n                UpstreamAccessTokenHeaderName = \"...my_upstream_access_token_header_name...\",\n            },\n            Cache = new Konnect.Inputs.GatewayPluginUpstreamOauthConfigCacheArgs\n            {\n                DefaultTtl = 7.94,\n                EagerlyExpire = 9,\n                Memory = new Konnect.Inputs.GatewayPluginUpstreamOauthConfigCacheMemoryArgs\n                {\n                    DictionaryName = \"...my_dictionary_name...\",\n                },\n                Redis = new Konnect.Inputs.GatewayPluginUpstreamOauthConfigCacheRedisArgs\n                {\n                    CloudAuthentication = new Konnect.Inputs.GatewayPluginUpstreamOauthConfigCacheRedisCloudAuthenticationArgs\n                    {\n                        AuthProvider = \"gcp\",\n                        AwsAccessKeyId = \"...my_aws_access_key_id...\",\n                        AwsAssumeRoleArn = \"...my_aws_assume_role_arn...\",\n                        AwsCacheName = \"...my_aws_cache_name...\",\n                        AwsIsServerless = true,\n                        AwsRegion = \"...my_aws_region...\",\n                        AwsRoleSessionName = \"...my_aws_role_session_name...\",\n                        AwsSecretAccessKey = \"...my_aws_secret_access_key...\",\n                        AzureClientId = \"...my_azure_client_id...\",\n                        AzureClientSecret = \"...my_azure_client_secret...\",\n                        AzureTenantId = \"...my_azure_tenant_id...\",\n                        GcpServiceAccountJson = \"...my_gcp_service_account_json...\",\n                    },\n                    ClusterMaxRedirections = 10,\n                    ClusterNodes = new[]\n                    {\n                        new Konnect.Inputs.GatewayPluginUpstreamOauthConfigCacheRedisClusterNodeArgs\n                        {\n                            Ip = \"...my_ip...\",\n                            Port = 20643,\n                        },\n                    },\n                    ConnectTimeout = 305131733,\n                    ConnectionIsProxied = true,\n                    Database = 10,\n                    Host = \"...my_host...\",\n                    KeepaliveBacklog = 1047987263,\n                    KeepalivePoolSize = 459234090,\n                    Password = \"...my_password...\",\n                    Port = 35119,\n                    ReadTimeout = 245223357,\n                    SendTimeout = 1142057358,\n                    SentinelMaster = \"...my_sentinel_master...\",\n                    SentinelNodes = new[]\n                    {\n                        new Konnect.Inputs.GatewayPluginUpstreamOauthConfigCacheRedisSentinelNodeArgs\n                        {\n                            Host = \"...my_host...\",\n                            Port = 31719,\n                        },\n                    },\n                    SentinelPassword = \"...my_sentinel_password...\",\n                    SentinelRole = \"any\",\n                    SentinelUsername = \"...my_sentinel_username...\",\n                    ServerName = \"...my_server_name...\",\n                    Ssl = true,\n                    SslVerify = true,\n                    Username = \"...my_username...\",\n                },\n                Strategy = \"memory\",\n            },\n            Client = new Konnect.Inputs.GatewayPluginUpstreamOauthConfigClientArgs\n            {\n                AuthMethod = \"none\",\n                ClientSecretJwtAlg = \"HS256\",\n                HttpProxy = \"...my_http_proxy...\",\n                HttpProxyAuthorization = \"...my_http_proxy_authorization...\",\n                HttpVersion = 6.12,\n                HttpsProxy = \"...my_https_proxy...\",\n                HttpsProxyAuthorization = \"...my_https_proxy_authorization...\",\n                KeepAlive = true,\n                NoProxy = \"...my_no_proxy...\",\n                SslVerify = false,\n                Timeout = 1421616738,\n            },\n            Oauth = new Konnect.Inputs.GatewayPluginUpstreamOauthConfigOauthArgs\n            {\n                Audiences = new[]\n                {\n                    \"...\",\n                },\n                ClientId = \"...my_client_id...\",\n                ClientSecret = \"...my_client_secret...\",\n                GrantType = \"password\",\n                Password = \"...my_password...\",\n                Scopes = new[]\n                {\n                    \"...\",\n                },\n                TokenEndpoint = \"...my_token_endpoint...\",\n                TokenHeaders = \n                {\n                    { \"key\", \"value\" },\n                },\n                TokenPostArgs = \n                {\n                    { \"key\", \"value\" },\n                },\n                Username = \"...my_username...\",\n            },\n        },\n        Consumer = new Konnect.Inputs.GatewayPluginUpstreamOauthConsumerArgs\n        {\n            Id = \"...my_id...\",\n        },\n        ConsumerGroup = new Konnect.Inputs.GatewayPluginUpstreamOauthConsumerGroupArgs\n        {\n            Id = \"...my_id...\",\n        },\n        ControlPlaneId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        CreatedAt = 5,\n        Enabled = false,\n        GatewayPluginUpstreamOauthId = \"...my_id...\",\n        InstanceName = \"...my_instance_name...\",\n        Ordering = new Konnect.Inputs.GatewayPluginUpstreamOauthOrderingArgs\n        {\n            After = new Konnect.Inputs.GatewayPluginUpstreamOauthOrderingAfterArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n            Before = new Konnect.Inputs.GatewayPluginUpstreamOauthOrderingBeforeArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n        },\n        Partials = new[]\n        {\n            new Konnect.Inputs.GatewayPluginUpstreamOauthPartialArgs\n            {\n                Id = \"...my_id...\",\n                Name = \"...my_name...\",\n                Path = \"...my_path...\",\n            },\n        },\n        Protocols = new[]\n        {\n            \"http\",\n        },\n        Route = new Konnect.Inputs.GatewayPluginUpstreamOauthRouteArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Service = new Konnect.Inputs.GatewayPluginUpstreamOauthServiceArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Tags = new[]\n        {\n            \"...\",\n        },\n        UpdatedAt = 10,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewGatewayPluginUpstreamOauth(ctx, \"my_gatewaypluginupstreamoauth\", \u0026konnect.GatewayPluginUpstreamOauthArgs{\n\t\t\tConfig: \u0026konnect.GatewayPluginUpstreamOauthConfigArgs{\n\t\t\t\tBehavior: \u0026konnect.GatewayPluginUpstreamOauthConfigBehaviorArgs{\n\t\t\t\t\tIdpErrorResponseBodyTemplate: pulumi.String(\"...my_idp_error_response_body_template...\"),\n\t\t\t\t\tIdpErrorResponseContentType:  pulumi.String(\"...my_idp_error_response_content_type...\"),\n\t\t\t\t\tIdpErrorResponseMessage:      pulumi.String(\"...my_idp_error_response_message...\"),\n\t\t\t\t\tIdpErrorResponseStatusCode:   pulumi.Float64(576),\n\t\t\t\t\tPurgeTokenOnUpstreamStatusCodes: pulumi.Float64Array{\n\t\t\t\t\t\tpulumi.Float64(373),\n\t\t\t\t\t},\n\t\t\t\t\tUpstreamAccessTokenHeaderName: pulumi.String(\"...my_upstream_access_token_header_name...\"),\n\t\t\t\t},\n\t\t\t\tCache: \u0026konnect.GatewayPluginUpstreamOauthConfigCacheArgs{\n\t\t\t\t\tDefaultTtl:    pulumi.Float64(7.94),\n\t\t\t\t\tEagerlyExpire: pulumi.Float64(9),\n\t\t\t\t\tMemory: \u0026konnect.GatewayPluginUpstreamOauthConfigCacheMemoryArgs{\n\t\t\t\t\t\tDictionaryName: pulumi.String(\"...my_dictionary_name...\"),\n\t\t\t\t\t},\n\t\t\t\t\tRedis: \u0026konnect.GatewayPluginUpstreamOauthConfigCacheRedisArgs{\n\t\t\t\t\t\tCloudAuthentication: \u0026konnect.GatewayPluginUpstreamOauthConfigCacheRedisCloudAuthenticationArgs{\n\t\t\t\t\t\t\tAuthProvider:          pulumi.String(\"gcp\"),\n\t\t\t\t\t\t\tAwsAccessKeyId:        pulumi.String(\"...my_aws_access_key_id...\"),\n\t\t\t\t\t\t\tAwsAssumeRoleArn:      pulumi.String(\"...my_aws_assume_role_arn...\"),\n\t\t\t\t\t\t\tAwsCacheName:          pulumi.String(\"...my_aws_cache_name...\"),\n\t\t\t\t\t\t\tAwsIsServerless:       pulumi.Bool(true),\n\t\t\t\t\t\t\tAwsRegion:             pulumi.String(\"...my_aws_region...\"),\n\t\t\t\t\t\t\tAwsRoleSessionName:    pulumi.String(\"...my_aws_role_session_name...\"),\n\t\t\t\t\t\t\tAwsSecretAccessKey:    pulumi.String(\"...my_aws_secret_access_key...\"),\n\t\t\t\t\t\t\tAzureClientId:         pulumi.String(\"...my_azure_client_id...\"),\n\t\t\t\t\t\t\tAzureClientSecret:     pulumi.String(\"...my_azure_client_secret...\"),\n\t\t\t\t\t\t\tAzureTenantId:         pulumi.String(\"...my_azure_tenant_id...\"),\n\t\t\t\t\t\t\tGcpServiceAccountJson: pulumi.String(\"...my_gcp_service_account_json...\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\tClusterMaxRedirections: pulumi.Float64(10),\n\t\t\t\t\t\tClusterNodes: konnect.GatewayPluginUpstreamOauthConfigCacheRedisClusterNodeArray{\n\t\t\t\t\t\t\t\u0026konnect.GatewayPluginUpstreamOauthConfigCacheRedisClusterNodeArgs{\n\t\t\t\t\t\t\t\tIp:   pulumi.String(\"...my_ip...\"),\n\t\t\t\t\t\t\t\tPort: pulumi.Float64(20643),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t\tConnectTimeout:      pulumi.Float64(305131733),\n\t\t\t\t\t\tConnectionIsProxied: pulumi.Bool(true),\n\t\t\t\t\t\tDatabase:            pulumi.Float64(10),\n\t\t\t\t\t\tHost:                pulumi.String(\"...my_host...\"),\n\t\t\t\t\t\tKeepaliveBacklog:    pulumi.Float64(1047987263),\n\t\t\t\t\t\tKeepalivePoolSize:   pulumi.Float64(459234090),\n\t\t\t\t\t\tPassword:            pulumi.String(\"...my_password...\"),\n\t\t\t\t\t\tPort:                pulumi.Float64(35119),\n\t\t\t\t\t\tReadTimeout:         pulumi.Float64(245223357),\n\t\t\t\t\t\tSendTimeout:         pulumi.Float64(1142057358),\n\t\t\t\t\t\tSentinelMaster:      pulumi.String(\"...my_sentinel_master...\"),\n\t\t\t\t\t\tSentinelNodes: konnect.GatewayPluginUpstreamOauthConfigCacheRedisSentinelNodeArray{\n\t\t\t\t\t\t\t\u0026konnect.GatewayPluginUpstreamOauthConfigCacheRedisSentinelNodeArgs{\n\t\t\t\t\t\t\t\tHost: pulumi.String(\"...my_host...\"),\n\t\t\t\t\t\t\t\tPort: pulumi.Float64(31719),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t\tSentinelPassword: pulumi.String(\"...my_sentinel_password...\"),\n\t\t\t\t\t\tSentinelRole:     pulumi.String(\"any\"),\n\t\t\t\t\t\tSentinelUsername: pulumi.String(\"...my_sentinel_username...\"),\n\t\t\t\t\t\tServerName:       pulumi.String(\"...my_server_name...\"),\n\t\t\t\t\t\tSsl:              pulumi.Bool(true),\n\t\t\t\t\t\tSslVerify:        pulumi.Bool(true),\n\t\t\t\t\t\tUsername:         pulumi.String(\"...my_username...\"),\n\t\t\t\t\t},\n\t\t\t\t\tStrategy: pulumi.String(\"memory\"),\n\t\t\t\t},\n\t\t\t\tClient: \u0026konnect.GatewayPluginUpstreamOauthConfigClientArgs{\n\t\t\t\t\tAuthMethod:              pulumi.String(\"none\"),\n\t\t\t\t\tClientSecretJwtAlg:      pulumi.String(\"HS256\"),\n\t\t\t\t\tHttpProxy:               pulumi.String(\"...my_http_proxy...\"),\n\t\t\t\t\tHttpProxyAuthorization:  pulumi.String(\"...my_http_proxy_authorization...\"),\n\t\t\t\t\tHttpVersion:             pulumi.Float64(6.12),\n\t\t\t\t\tHttpsProxy:              pulumi.String(\"...my_https_proxy...\"),\n\t\t\t\t\tHttpsProxyAuthorization: pulumi.String(\"...my_https_proxy_authorization...\"),\n\t\t\t\t\tKeepAlive:               pulumi.Bool(true),\n\t\t\t\t\tNoProxy:                 pulumi.String(\"...my_no_proxy...\"),\n\t\t\t\t\tSslVerify:               pulumi.Bool(false),\n\t\t\t\t\tTimeout:                 pulumi.Float64(1421616738),\n\t\t\t\t},\n\t\t\t\tOauth: \u0026konnect.GatewayPluginUpstreamOauthConfigOauthArgs{\n\t\t\t\t\tAudiences: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t\tClientId:     pulumi.String(\"...my_client_id...\"),\n\t\t\t\t\tClientSecret: pulumi.String(\"...my_client_secret...\"),\n\t\t\t\t\tGrantType:    pulumi.String(\"password\"),\n\t\t\t\t\tPassword:     pulumi.String(\"...my_password...\"),\n\t\t\t\t\tScopes: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t\tTokenEndpoint: pulumi.String(\"...my_token_endpoint...\"),\n\t\t\t\t\tTokenHeaders: pulumi.StringMap{\n\t\t\t\t\t\t\"key\": pulumi.String(\"value\"),\n\t\t\t\t\t},\n\t\t\t\t\tTokenPostArgs: pulumi.StringMap{\n\t\t\t\t\t\t\"key\": pulumi.String(\"value\"),\n\t\t\t\t\t},\n\t\t\t\t\tUsername: pulumi.String(\"...my_username...\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tConsumer: \u0026konnect.GatewayPluginUpstreamOauthConsumerArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tConsumerGroup: \u0026konnect.GatewayPluginUpstreamOauthConsumerGroupArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tControlPlaneId:               pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tCreatedAt:                    pulumi.Float64(5),\n\t\t\tEnabled:                      pulumi.Bool(false),\n\t\t\tGatewayPluginUpstreamOauthId: pulumi.String(\"...my_id...\"),\n\t\t\tInstanceName:                 pulumi.String(\"...my_instance_name...\"),\n\t\t\tOrdering: \u0026konnect.GatewayPluginUpstreamOauthOrderingArgs{\n\t\t\t\tAfter: \u0026konnect.GatewayPluginUpstreamOauthOrderingAfterArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tBefore: \u0026konnect.GatewayPluginUpstreamOauthOrderingBeforeArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tPartials: konnect.GatewayPluginUpstreamOauthPartialArray{\n\t\t\t\t\u0026konnect.GatewayPluginUpstreamOauthPartialArgs{\n\t\t\t\t\tId:   pulumi.String(\"...my_id...\"),\n\t\t\t\t\tName: pulumi.String(\"...my_name...\"),\n\t\t\t\t\tPath: pulumi.String(\"...my_path...\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tProtocols: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"http\"),\n\t\t\t},\n\t\t\tRoute: \u0026konnect.GatewayPluginUpstreamOauthRouteArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tService: \u0026konnect.GatewayPluginUpstreamOauthServiceArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"...\"),\n\t\t\t},\n\t\t\tUpdatedAt: pulumi.Float64(10),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.GatewayPluginUpstreamOauth;\nimport com.pulumi.konnect.GatewayPluginUpstreamOauthArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginUpstreamOauthConfigArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginUpstreamOauthConfigBehaviorArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginUpstreamOauthConfigCacheArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginUpstreamOauthConfigCacheMemoryArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginUpstreamOauthConfigCacheRedisArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginUpstreamOauthConfigCacheRedisCloudAuthenticationArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginUpstreamOauthConfigClientArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginUpstreamOauthConfigOauthArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginUpstreamOauthConsumerArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginUpstreamOauthConsumerGroupArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginUpstreamOauthOrderingArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginUpstreamOauthOrderingAfterArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginUpstreamOauthOrderingBeforeArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginUpstreamOauthPartialArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginUpstreamOauthRouteArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginUpstreamOauthServiceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myGatewaypluginupstreamoauth = new GatewayPluginUpstreamOauth(\"myGatewaypluginupstreamoauth\", GatewayPluginUpstreamOauthArgs.builder()\n            .config(GatewayPluginUpstreamOauthConfigArgs.builder()\n                .behavior(GatewayPluginUpstreamOauthConfigBehaviorArgs.builder()\n                    .idpErrorResponseBodyTemplate(\"...my_idp_error_response_body_template...\")\n                    .idpErrorResponseContentType(\"...my_idp_error_response_content_type...\")\n                    .idpErrorResponseMessage(\"...my_idp_error_response_message...\")\n                    .idpErrorResponseStatusCode(576.0)\n                    .purgeTokenOnUpstreamStatusCodes(373.0)\n                    .upstreamAccessTokenHeaderName(\"...my_upstream_access_token_header_name...\")\n                    .build())\n                .cache(GatewayPluginUpstreamOauthConfigCacheArgs.builder()\n                    .defaultTtl(7.94)\n                    .eagerlyExpire(9.0)\n                    .memory(GatewayPluginUpstreamOauthConfigCacheMemoryArgs.builder()\n                        .dictionaryName(\"...my_dictionary_name...\")\n                        .build())\n                    .redis(GatewayPluginUpstreamOauthConfigCacheRedisArgs.builder()\n                        .cloudAuthentication(GatewayPluginUpstreamOauthConfigCacheRedisCloudAuthenticationArgs.builder()\n                            .authProvider(\"gcp\")\n                            .awsAccessKeyId(\"...my_aws_access_key_id...\")\n                            .awsAssumeRoleArn(\"...my_aws_assume_role_arn...\")\n                            .awsCacheName(\"...my_aws_cache_name...\")\n                            .awsIsServerless(true)\n                            .awsRegion(\"...my_aws_region...\")\n                            .awsRoleSessionName(\"...my_aws_role_session_name...\")\n                            .awsSecretAccessKey(\"...my_aws_secret_access_key...\")\n                            .azureClientId(\"...my_azure_client_id...\")\n                            .azureClientSecret(\"...my_azure_client_secret...\")\n                            .azureTenantId(\"...my_azure_tenant_id...\")\n                            .gcpServiceAccountJson(\"...my_gcp_service_account_json...\")\n                            .build())\n                        .clusterMaxRedirections(10.0)\n                        .clusterNodes(GatewayPluginUpstreamOauthConfigCacheRedisClusterNodeArgs.builder()\n                            .ip(\"...my_ip...\")\n                            .port(20643.0)\n                            .build())\n                        .connectTimeout(305131733.0)\n                        .connectionIsProxied(true)\n                        .database(10.0)\n                        .host(\"...my_host...\")\n                        .keepaliveBacklog(1047987263.0)\n                        .keepalivePoolSize(459234090.0)\n                        .password(\"...my_password...\")\n                        .port(35119.0)\n                        .readTimeout(245223357.0)\n                        .sendTimeout(1142057358.0)\n                        .sentinelMaster(\"...my_sentinel_master...\")\n                        .sentinelNodes(GatewayPluginUpstreamOauthConfigCacheRedisSentinelNodeArgs.builder()\n                            .host(\"...my_host...\")\n                            .port(31719.0)\n                            .build())\n                        .sentinelPassword(\"...my_sentinel_password...\")\n                        .sentinelRole(\"any\")\n                        .sentinelUsername(\"...my_sentinel_username...\")\n                        .serverName(\"...my_server_name...\")\n                        .ssl(true)\n                        .sslVerify(true)\n                        .username(\"...my_username...\")\n                        .build())\n                    .strategy(\"memory\")\n                    .build())\n                .client(GatewayPluginUpstreamOauthConfigClientArgs.builder()\n                    .authMethod(\"none\")\n                    .clientSecretJwtAlg(\"HS256\")\n                    .httpProxy(\"...my_http_proxy...\")\n                    .httpProxyAuthorization(\"...my_http_proxy_authorization...\")\n                    .httpVersion(6.12)\n                    .httpsProxy(\"...my_https_proxy...\")\n                    .httpsProxyAuthorization(\"...my_https_proxy_authorization...\")\n                    .keepAlive(true)\n                    .noProxy(\"...my_no_proxy...\")\n                    .sslVerify(false)\n                    .timeout(1421616738.0)\n                    .build())\n                .oauth(GatewayPluginUpstreamOauthConfigOauthArgs.builder()\n                    .audiences(\"...\")\n                    .clientId(\"...my_client_id...\")\n                    .clientSecret(\"...my_client_secret...\")\n                    .grantType(\"password\")\n                    .password(\"...my_password...\")\n                    .scopes(\"...\")\n                    .tokenEndpoint(\"...my_token_endpoint...\")\n                    .tokenHeaders(Map.of(\"key\", \"value\"))\n                    .tokenPostArgs(Map.of(\"key\", \"value\"))\n                    .username(\"...my_username...\")\n                    .build())\n                .build())\n            .consumer(GatewayPluginUpstreamOauthConsumerArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .consumerGroup(GatewayPluginUpstreamOauthConsumerGroupArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .controlPlaneId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .createdAt(5.0)\n            .enabled(false)\n            .gatewayPluginUpstreamOauthId(\"...my_id...\")\n            .instanceName(\"...my_instance_name...\")\n            .ordering(GatewayPluginUpstreamOauthOrderingArgs.builder()\n                .after(GatewayPluginUpstreamOauthOrderingAfterArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .before(GatewayPluginUpstreamOauthOrderingBeforeArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .build())\n            .partials(GatewayPluginUpstreamOauthPartialArgs.builder()\n                .id(\"...my_id...\")\n                .name(\"...my_name...\")\n                .path(\"...my_path...\")\n                .build())\n            .protocols(\"http\")\n            .route(GatewayPluginUpstreamOauthRouteArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .service(GatewayPluginUpstreamOauthServiceArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .tags(\"...\")\n            .updatedAt(10.0)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myGatewaypluginupstreamoauth:\n    type: konnect:GatewayPluginUpstreamOauth\n    name: my_gatewaypluginupstreamoauth\n    properties:\n      config:\n        behavior:\n          idpErrorResponseBodyTemplate: '...my_idp_error_response_body_template...'\n          idpErrorResponseContentType: '...my_idp_error_response_content_type...'\n          idpErrorResponseMessage: '...my_idp_error_response_message...'\n          idpErrorResponseStatusCode: 576\n          purgeTokenOnUpstreamStatusCodes:\n            - 373\n          upstreamAccessTokenHeaderName: '...my_upstream_access_token_header_name...'\n        cache:\n          defaultTtl: 7.94\n          eagerlyExpire: 9\n          memory:\n            dictionaryName: '...my_dictionary_name...'\n          redis:\n            cloudAuthentication:\n              authProvider: gcp\n              awsAccessKeyId: '...my_aws_access_key_id...'\n              awsAssumeRoleArn: '...my_aws_assume_role_arn...'\n              awsCacheName: '...my_aws_cache_name...'\n              awsIsServerless: true\n              awsRegion: '...my_aws_region...'\n              awsRoleSessionName: '...my_aws_role_session_name...'\n              awsSecretAccessKey: '...my_aws_secret_access_key...'\n              azureClientId: '...my_azure_client_id...'\n              azureClientSecret: '...my_azure_client_secret...'\n              azureTenantId: '...my_azure_tenant_id...'\n              gcpServiceAccountJson: '...my_gcp_service_account_json...'\n            clusterMaxRedirections: 10\n            clusterNodes:\n              - ip: '...my_ip...'\n                port: 20643\n            connectTimeout: 3.05131733e+08\n            connectionIsProxied: true\n            database: 10\n            host: '...my_host...'\n            keepaliveBacklog: 1.047987263e+09\n            keepalivePoolSize: 4.5923409e+08\n            password: '...my_password...'\n            port: 35119\n            readTimeout: 2.45223357e+08\n            sendTimeout: 1.142057358e+09\n            sentinelMaster: '...my_sentinel_master...'\n            sentinelNodes:\n              - host: '...my_host...'\n                port: 31719\n            sentinelPassword: '...my_sentinel_password...'\n            sentinelRole: any\n            sentinelUsername: '...my_sentinel_username...'\n            serverName: '...my_server_name...'\n            ssl: true\n            sslVerify: true\n            username: '...my_username...'\n          strategy: memory\n        client:\n          authMethod: none\n          clientSecretJwtAlg: HS256\n          httpProxy: '...my_http_proxy...'\n          httpProxyAuthorization: '...my_http_proxy_authorization...'\n          httpVersion: 6.12\n          httpsProxy: '...my_https_proxy...'\n          httpsProxyAuthorization: '...my_https_proxy_authorization...'\n          keepAlive: true\n          noProxy: '...my_no_proxy...'\n          sslVerify: false\n          timeout: 1.421616738e+09\n        oauth:\n          audiences:\n            - '...'\n          clientId: '...my_client_id...'\n          clientSecret: '...my_client_secret...'\n          grantType: password\n          password: '...my_password...'\n          scopes:\n            - '...'\n          tokenEndpoint: '...my_token_endpoint...'\n          tokenHeaders:\n            key: value\n          tokenPostArgs:\n            key: value\n          username: '...my_username...'\n      consumer:\n        id: '...my_id...'\n      consumerGroup:\n        id: '...my_id...'\n      controlPlaneId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      createdAt: 5\n      enabled: false\n      gatewayPluginUpstreamOauthId: '...my_id...'\n      instanceName: '...my_instance_name...'\n      ordering:\n        after:\n          accesses:\n            - '...'\n        before:\n          accesses:\n            - '...'\n      partials:\n        - id: '...my_id...'\n          name: '...my_name...'\n          path: '...my_path...'\n      protocols:\n        - http\n      route:\n        id: '...my_id...'\n      service:\n        id: '...my_id...'\n      tags:\n        - '...'\n      updatedAt: 10\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_gateway_plugin_upstream_oauth.my_konnect_gateway_plugin_upstream_oauth\n\n  id = jsonencode({\n\n    control_plane_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/gatewayPluginUpstreamOauth:GatewayPluginUpstreamOauth my_konnect_gateway_plugin_upstream_oauth '{\"control_plane_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"}'\n```\n\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginUpstreamOauthConfig:GatewayPluginUpstreamOauthConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginUpstreamOauthConsumer:GatewayPluginUpstreamOauthConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"consumerGroup":{"$ref":"#/types/konnect:index%2FGatewayPluginUpstreamOauthConsumerGroup:GatewayPluginUpstreamOauthConsumerGroup","description":"If set, the plugin will activate only for requests where the specified consumer group has been authenticated. (Note that some plugins can not be restricted to consumers groups this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer Groups\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginUpstreamOauthId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginUpstreamOauthOrdering:GatewayPluginUpstreamOauthOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginUpstreamOauthPartial:GatewayPluginUpstreamOauthPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginUpstreamOauthRoute:GatewayPluginUpstreamOauthRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginUpstreamOauthService:GatewayPluginUpstreamOauthService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object","required":["config","consumer","consumerGroup","controlPlaneId","createdAt","enabled","gatewayPluginUpstreamOauthId","ordering","protocols","route","service","updatedAt"],"inputProperties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginUpstreamOauthConfig:GatewayPluginUpstreamOauthConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginUpstreamOauthConsumer:GatewayPluginUpstreamOauthConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"consumerGroup":{"$ref":"#/types/konnect:index%2FGatewayPluginUpstreamOauthConsumerGroup:GatewayPluginUpstreamOauthConsumerGroup","description":"If set, the plugin will activate only for requests where the specified consumer group has been authenticated. (Note that some plugins can not be restricted to consumers groups this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer Groups\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginUpstreamOauthId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginUpstreamOauthOrdering:GatewayPluginUpstreamOauthOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginUpstreamOauthPartial:GatewayPluginUpstreamOauthPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginUpstreamOauthRoute:GatewayPluginUpstreamOauthRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginUpstreamOauthService:GatewayPluginUpstreamOauthService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"requiredInputs":["config","controlPlaneId"],"stateInputs":{"description":"Input properties used for looking up and filtering GatewayPluginUpstreamOauth resources.\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginUpstreamOauthConfig:GatewayPluginUpstreamOauthConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginUpstreamOauthConsumer:GatewayPluginUpstreamOauthConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"consumerGroup":{"$ref":"#/types/konnect:index%2FGatewayPluginUpstreamOauthConsumerGroup:GatewayPluginUpstreamOauthConsumerGroup","description":"If set, the plugin will activate only for requests where the specified consumer group has been authenticated. (Note that some plugins can not be restricted to consumers groups this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer Groups\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginUpstreamOauthId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginUpstreamOauthOrdering:GatewayPluginUpstreamOauthOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginUpstreamOauthPartial:GatewayPluginUpstreamOauthPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginUpstreamOauthRoute:GatewayPluginUpstreamOauthRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginUpstreamOauthService:GatewayPluginUpstreamOauthService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object"}},"konnect:index/gatewayPluginUpstreamTimeout:GatewayPluginUpstreamTimeout":{"description":"GatewayPluginUpstreamTimeout Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myGatewaypluginupstreamtimeout = new konnect.GatewayPluginUpstreamTimeout(\"my_gatewaypluginupstreamtimeout\", {\n    config: {\n        connectTimeout: 1868883104,\n        readTimeout: 1077293198,\n        sendTimeout: 1902153699,\n    },\n    consumer: {\n        id: \"...my_id...\",\n    },\n    controlPlaneId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    createdAt: 2,\n    enabled: true,\n    gatewayPluginUpstreamTimeoutId: \"...my_id...\",\n    instanceName: \"...my_instance_name...\",\n    ordering: {\n        after: {\n            accesses: [\"...\"],\n        },\n        before: {\n            accesses: [\"...\"],\n        },\n    },\n    partials: [{\n        id: \"...my_id...\",\n        name: \"...my_name...\",\n        path: \"...my_path...\",\n    }],\n    protocols: [\"grpcs\"],\n    route: {\n        id: \"...my_id...\",\n    },\n    service: {\n        id: \"...my_id...\",\n    },\n    tags: [\"...\"],\n    updatedAt: 5,\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_gatewaypluginupstreamtimeout = konnect.GatewayPluginUpstreamTimeout(\"my_gatewaypluginupstreamtimeout\",\n    config={\n        \"connect_timeout\": 1868883104,\n        \"read_timeout\": 1077293198,\n        \"send_timeout\": 1902153699,\n    },\n    consumer={\n        \"id\": \"...my_id...\",\n    },\n    control_plane_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    created_at=2,\n    enabled=True,\n    gateway_plugin_upstream_timeout_id=\"...my_id...\",\n    instance_name=\"...my_instance_name...\",\n    ordering={\n        \"after\": {\n            \"accesses\": [\"...\"],\n        },\n        \"before\": {\n            \"accesses\": [\"...\"],\n        },\n    },\n    partials=[{\n        \"id\": \"...my_id...\",\n        \"name\": \"...my_name...\",\n        \"path\": \"...my_path...\",\n    }],\n    protocols=[\"grpcs\"],\n    route={\n        \"id\": \"...my_id...\",\n    },\n    service={\n        \"id\": \"...my_id...\",\n    },\n    tags=[\"...\"],\n    updated_at=5)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myGatewaypluginupstreamtimeout = new Konnect.GatewayPluginUpstreamTimeout(\"my_gatewaypluginupstreamtimeout\", new()\n    {\n        Config = new Konnect.Inputs.GatewayPluginUpstreamTimeoutConfigArgs\n        {\n            ConnectTimeout = 1868883104,\n            ReadTimeout = 1077293198,\n            SendTimeout = 1902153699,\n        },\n        Consumer = new Konnect.Inputs.GatewayPluginUpstreamTimeoutConsumerArgs\n        {\n            Id = \"...my_id...\",\n        },\n        ControlPlaneId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        CreatedAt = 2,\n        Enabled = true,\n        GatewayPluginUpstreamTimeoutId = \"...my_id...\",\n        InstanceName = \"...my_instance_name...\",\n        Ordering = new Konnect.Inputs.GatewayPluginUpstreamTimeoutOrderingArgs\n        {\n            After = new Konnect.Inputs.GatewayPluginUpstreamTimeoutOrderingAfterArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n            Before = new Konnect.Inputs.GatewayPluginUpstreamTimeoutOrderingBeforeArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n        },\n        Partials = new[]\n        {\n            new Konnect.Inputs.GatewayPluginUpstreamTimeoutPartialArgs\n            {\n                Id = \"...my_id...\",\n                Name = \"...my_name...\",\n                Path = \"...my_path...\",\n            },\n        },\n        Protocols = new[]\n        {\n            \"grpcs\",\n        },\n        Route = new Konnect.Inputs.GatewayPluginUpstreamTimeoutRouteArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Service = new Konnect.Inputs.GatewayPluginUpstreamTimeoutServiceArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Tags = new[]\n        {\n            \"...\",\n        },\n        UpdatedAt = 5,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewGatewayPluginUpstreamTimeout(ctx, \"my_gatewaypluginupstreamtimeout\", \u0026konnect.GatewayPluginUpstreamTimeoutArgs{\n\t\t\tConfig: \u0026konnect.GatewayPluginUpstreamTimeoutConfigArgs{\n\t\t\t\tConnectTimeout: pulumi.Float64(1868883104),\n\t\t\t\tReadTimeout:    pulumi.Float64(1077293198),\n\t\t\t\tSendTimeout:    pulumi.Float64(1902153699),\n\t\t\t},\n\t\t\tConsumer: \u0026konnect.GatewayPluginUpstreamTimeoutConsumerArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tControlPlaneId:                 pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tCreatedAt:                      pulumi.Float64(2),\n\t\t\tEnabled:                        pulumi.Bool(true),\n\t\t\tGatewayPluginUpstreamTimeoutId: pulumi.String(\"...my_id...\"),\n\t\t\tInstanceName:                   pulumi.String(\"...my_instance_name...\"),\n\t\t\tOrdering: \u0026konnect.GatewayPluginUpstreamTimeoutOrderingArgs{\n\t\t\t\tAfter: \u0026konnect.GatewayPluginUpstreamTimeoutOrderingAfterArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tBefore: \u0026konnect.GatewayPluginUpstreamTimeoutOrderingBeforeArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tPartials: konnect.GatewayPluginUpstreamTimeoutPartialArray{\n\t\t\t\t\u0026konnect.GatewayPluginUpstreamTimeoutPartialArgs{\n\t\t\t\t\tId:   pulumi.String(\"...my_id...\"),\n\t\t\t\t\tName: pulumi.String(\"...my_name...\"),\n\t\t\t\t\tPath: pulumi.String(\"...my_path...\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tProtocols: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"grpcs\"),\n\t\t\t},\n\t\t\tRoute: \u0026konnect.GatewayPluginUpstreamTimeoutRouteArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tService: \u0026konnect.GatewayPluginUpstreamTimeoutServiceArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"...\"),\n\t\t\t},\n\t\t\tUpdatedAt: pulumi.Float64(5),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.GatewayPluginUpstreamTimeout;\nimport com.pulumi.konnect.GatewayPluginUpstreamTimeoutArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginUpstreamTimeoutConfigArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginUpstreamTimeoutConsumerArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginUpstreamTimeoutOrderingArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginUpstreamTimeoutOrderingAfterArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginUpstreamTimeoutOrderingBeforeArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginUpstreamTimeoutPartialArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginUpstreamTimeoutRouteArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginUpstreamTimeoutServiceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myGatewaypluginupstreamtimeout = new GatewayPluginUpstreamTimeout(\"myGatewaypluginupstreamtimeout\", GatewayPluginUpstreamTimeoutArgs.builder()\n            .config(GatewayPluginUpstreamTimeoutConfigArgs.builder()\n                .connectTimeout(1868883104.0)\n                .readTimeout(1077293198.0)\n                .sendTimeout(1902153699.0)\n                .build())\n            .consumer(GatewayPluginUpstreamTimeoutConsumerArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .controlPlaneId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .createdAt(2.0)\n            .enabled(true)\n            .gatewayPluginUpstreamTimeoutId(\"...my_id...\")\n            .instanceName(\"...my_instance_name...\")\n            .ordering(GatewayPluginUpstreamTimeoutOrderingArgs.builder()\n                .after(GatewayPluginUpstreamTimeoutOrderingAfterArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .before(GatewayPluginUpstreamTimeoutOrderingBeforeArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .build())\n            .partials(GatewayPluginUpstreamTimeoutPartialArgs.builder()\n                .id(\"...my_id...\")\n                .name(\"...my_name...\")\n                .path(\"...my_path...\")\n                .build())\n            .protocols(\"grpcs\")\n            .route(GatewayPluginUpstreamTimeoutRouteArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .service(GatewayPluginUpstreamTimeoutServiceArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .tags(\"...\")\n            .updatedAt(5.0)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myGatewaypluginupstreamtimeout:\n    type: konnect:GatewayPluginUpstreamTimeout\n    name: my_gatewaypluginupstreamtimeout\n    properties:\n      config:\n        connectTimeout: 1.868883104e+09\n        readTimeout: 1.077293198e+09\n        sendTimeout: 1.902153699e+09\n      consumer:\n        id: '...my_id...'\n      controlPlaneId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      createdAt: 2\n      enabled: true\n      gatewayPluginUpstreamTimeoutId: '...my_id...'\n      instanceName: '...my_instance_name...'\n      ordering:\n        after:\n          accesses:\n            - '...'\n        before:\n          accesses:\n            - '...'\n      partials:\n        - id: '...my_id...'\n          name: '...my_name...'\n          path: '...my_path...'\n      protocols:\n        - grpcs\n      route:\n        id: '...my_id...'\n      service:\n        id: '...my_id...'\n      tags:\n        - '...'\n      updatedAt: 5\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_gateway_plugin_upstream_timeout.my_konnect_gateway_plugin_upstream_timeout\n\n  id = jsonencode({\n\n    control_plane_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/gatewayPluginUpstreamTimeout:GatewayPluginUpstreamTimeout my_konnect_gateway_plugin_upstream_timeout '{\"control_plane_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"}'\n```\n\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginUpstreamTimeoutConfig:GatewayPluginUpstreamTimeoutConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginUpstreamTimeoutConsumer:GatewayPluginUpstreamTimeoutConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginUpstreamTimeoutId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginUpstreamTimeoutOrdering:GatewayPluginUpstreamTimeoutOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginUpstreamTimeoutPartial:GatewayPluginUpstreamTimeoutPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginUpstreamTimeoutRoute:GatewayPluginUpstreamTimeoutRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginUpstreamTimeoutService:GatewayPluginUpstreamTimeoutService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object","required":["config","consumer","controlPlaneId","createdAt","enabled","gatewayPluginUpstreamTimeoutId","ordering","protocols","route","service","updatedAt"],"inputProperties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginUpstreamTimeoutConfig:GatewayPluginUpstreamTimeoutConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginUpstreamTimeoutConsumer:GatewayPluginUpstreamTimeoutConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginUpstreamTimeoutId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginUpstreamTimeoutOrdering:GatewayPluginUpstreamTimeoutOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginUpstreamTimeoutPartial:GatewayPluginUpstreamTimeoutPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginUpstreamTimeoutRoute:GatewayPluginUpstreamTimeoutRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginUpstreamTimeoutService:GatewayPluginUpstreamTimeoutService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"requiredInputs":["controlPlaneId"],"stateInputs":{"description":"Input properties used for looking up and filtering GatewayPluginUpstreamTimeout resources.\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginUpstreamTimeoutConfig:GatewayPluginUpstreamTimeoutConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginUpstreamTimeoutConsumer:GatewayPluginUpstreamTimeoutConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginUpstreamTimeoutId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginUpstreamTimeoutOrdering:GatewayPluginUpstreamTimeoutOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginUpstreamTimeoutPartial:GatewayPluginUpstreamTimeoutPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginUpstreamTimeoutRoute:GatewayPluginUpstreamTimeoutRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginUpstreamTimeoutService:GatewayPluginUpstreamTimeoutService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object"}},"konnect:index/gatewayPluginVaultAuth:GatewayPluginVaultAuth":{"description":"GatewayPluginVaultAuth Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myGatewaypluginvaultauth = new konnect.GatewayPluginVaultAuth(\"my_gatewaypluginvaultauth\", {\n    config: {\n        accessTokenName: \"...my_access_token_name...\",\n        anonymous: \"...my_anonymous...\",\n        hideCredentials: false,\n        runOnPreflight: false,\n        secretTokenName: \"...my_secret_token_name...\",\n        tokensInBody: true,\n        vault: {\n            id: \"...my_id...\",\n        },\n    },\n    controlPlaneId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    createdAt: 2,\n    enabled: true,\n    gatewayPluginVaultAuthId: \"...my_id...\",\n    instanceName: \"...my_instance_name...\",\n    ordering: {\n        after: {\n            accesses: [\"...\"],\n        },\n        before: {\n            accesses: [\"...\"],\n        },\n    },\n    partials: [{\n        id: \"...my_id...\",\n        name: \"...my_name...\",\n        path: \"...my_path...\",\n    }],\n    protocols: [\"grpcs\"],\n    route: {\n        id: \"...my_id...\",\n    },\n    service: {\n        id: \"...my_id...\",\n    },\n    tags: [\"...\"],\n    updatedAt: 1,\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_gatewaypluginvaultauth = konnect.GatewayPluginVaultAuth(\"my_gatewaypluginvaultauth\",\n    config={\n        \"access_token_name\": \"...my_access_token_name...\",\n        \"anonymous\": \"...my_anonymous...\",\n        \"hide_credentials\": False,\n        \"run_on_preflight\": False,\n        \"secret_token_name\": \"...my_secret_token_name...\",\n        \"tokens_in_body\": True,\n        \"vault\": {\n            \"id\": \"...my_id...\",\n        },\n    },\n    control_plane_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    created_at=2,\n    enabled=True,\n    gateway_plugin_vault_auth_id=\"...my_id...\",\n    instance_name=\"...my_instance_name...\",\n    ordering={\n        \"after\": {\n            \"accesses\": [\"...\"],\n        },\n        \"before\": {\n            \"accesses\": [\"...\"],\n        },\n    },\n    partials=[{\n        \"id\": \"...my_id...\",\n        \"name\": \"...my_name...\",\n        \"path\": \"...my_path...\",\n    }],\n    protocols=[\"grpcs\"],\n    route={\n        \"id\": \"...my_id...\",\n    },\n    service={\n        \"id\": \"...my_id...\",\n    },\n    tags=[\"...\"],\n    updated_at=1)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myGatewaypluginvaultauth = new Konnect.GatewayPluginVaultAuth(\"my_gatewaypluginvaultauth\", new()\n    {\n        Config = new Konnect.Inputs.GatewayPluginVaultAuthConfigArgs\n        {\n            AccessTokenName = \"...my_access_token_name...\",\n            Anonymous = \"...my_anonymous...\",\n            HideCredentials = false,\n            RunOnPreflight = false,\n            SecretTokenName = \"...my_secret_token_name...\",\n            TokensInBody = true,\n            Vault = new Konnect.Inputs.GatewayPluginVaultAuthConfigVaultArgs\n            {\n                Id = \"...my_id...\",\n            },\n        },\n        ControlPlaneId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        CreatedAt = 2,\n        Enabled = true,\n        GatewayPluginVaultAuthId = \"...my_id...\",\n        InstanceName = \"...my_instance_name...\",\n        Ordering = new Konnect.Inputs.GatewayPluginVaultAuthOrderingArgs\n        {\n            After = new Konnect.Inputs.GatewayPluginVaultAuthOrderingAfterArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n            Before = new Konnect.Inputs.GatewayPluginVaultAuthOrderingBeforeArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n        },\n        Partials = new[]\n        {\n            new Konnect.Inputs.GatewayPluginVaultAuthPartialArgs\n            {\n                Id = \"...my_id...\",\n                Name = \"...my_name...\",\n                Path = \"...my_path...\",\n            },\n        },\n        Protocols = new[]\n        {\n            \"grpcs\",\n        },\n        Route = new Konnect.Inputs.GatewayPluginVaultAuthRouteArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Service = new Konnect.Inputs.GatewayPluginVaultAuthServiceArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Tags = new[]\n        {\n            \"...\",\n        },\n        UpdatedAt = 1,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewGatewayPluginVaultAuth(ctx, \"my_gatewaypluginvaultauth\", \u0026konnect.GatewayPluginVaultAuthArgs{\n\t\t\tConfig: \u0026konnect.GatewayPluginVaultAuthConfigArgs{\n\t\t\t\tAccessTokenName: pulumi.String(\"...my_access_token_name...\"),\n\t\t\t\tAnonymous:       pulumi.String(\"...my_anonymous...\"),\n\t\t\t\tHideCredentials: pulumi.Bool(false),\n\t\t\t\tRunOnPreflight:  pulumi.Bool(false),\n\t\t\t\tSecretTokenName: pulumi.String(\"...my_secret_token_name...\"),\n\t\t\t\tTokensInBody:    pulumi.Bool(true),\n\t\t\t\tVault: \u0026konnect.GatewayPluginVaultAuthConfigVaultArgs{\n\t\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tControlPlaneId:           pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tCreatedAt:                pulumi.Float64(2),\n\t\t\tEnabled:                  pulumi.Bool(true),\n\t\t\tGatewayPluginVaultAuthId: pulumi.String(\"...my_id...\"),\n\t\t\tInstanceName:             pulumi.String(\"...my_instance_name...\"),\n\t\t\tOrdering: \u0026konnect.GatewayPluginVaultAuthOrderingArgs{\n\t\t\t\tAfter: \u0026konnect.GatewayPluginVaultAuthOrderingAfterArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tBefore: \u0026konnect.GatewayPluginVaultAuthOrderingBeforeArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tPartials: konnect.GatewayPluginVaultAuthPartialArray{\n\t\t\t\t\u0026konnect.GatewayPluginVaultAuthPartialArgs{\n\t\t\t\t\tId:   pulumi.String(\"...my_id...\"),\n\t\t\t\t\tName: pulumi.String(\"...my_name...\"),\n\t\t\t\t\tPath: pulumi.String(\"...my_path...\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tProtocols: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"grpcs\"),\n\t\t\t},\n\t\t\tRoute: \u0026konnect.GatewayPluginVaultAuthRouteArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tService: \u0026konnect.GatewayPluginVaultAuthServiceArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"...\"),\n\t\t\t},\n\t\t\tUpdatedAt: pulumi.Float64(1),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.GatewayPluginVaultAuth;\nimport com.pulumi.konnect.GatewayPluginVaultAuthArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginVaultAuthConfigArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginVaultAuthConfigVaultArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginVaultAuthOrderingArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginVaultAuthOrderingAfterArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginVaultAuthOrderingBeforeArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginVaultAuthPartialArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginVaultAuthRouteArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginVaultAuthServiceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myGatewaypluginvaultauth = new GatewayPluginVaultAuth(\"myGatewaypluginvaultauth\", GatewayPluginVaultAuthArgs.builder()\n            .config(GatewayPluginVaultAuthConfigArgs.builder()\n                .accessTokenName(\"...my_access_token_name...\")\n                .anonymous(\"...my_anonymous...\")\n                .hideCredentials(false)\n                .runOnPreflight(false)\n                .secretTokenName(\"...my_secret_token_name...\")\n                .tokensInBody(true)\n                .vault(GatewayPluginVaultAuthConfigVaultArgs.builder()\n                    .id(\"...my_id...\")\n                    .build())\n                .build())\n            .controlPlaneId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .createdAt(2.0)\n            .enabled(true)\n            .gatewayPluginVaultAuthId(\"...my_id...\")\n            .instanceName(\"...my_instance_name...\")\n            .ordering(GatewayPluginVaultAuthOrderingArgs.builder()\n                .after(GatewayPluginVaultAuthOrderingAfterArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .before(GatewayPluginVaultAuthOrderingBeforeArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .build())\n            .partials(GatewayPluginVaultAuthPartialArgs.builder()\n                .id(\"...my_id...\")\n                .name(\"...my_name...\")\n                .path(\"...my_path...\")\n                .build())\n            .protocols(\"grpcs\")\n            .route(GatewayPluginVaultAuthRouteArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .service(GatewayPluginVaultAuthServiceArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .tags(\"...\")\n            .updatedAt(1.0)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myGatewaypluginvaultauth:\n    type: konnect:GatewayPluginVaultAuth\n    name: my_gatewaypluginvaultauth\n    properties:\n      config:\n        accessTokenName: '...my_access_token_name...'\n        anonymous: '...my_anonymous...'\n        hideCredentials: false\n        runOnPreflight: false\n        secretTokenName: '...my_secret_token_name...'\n        tokensInBody: true\n        vault:\n          id: '...my_id...'\n      controlPlaneId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      createdAt: 2\n      enabled: true\n      gatewayPluginVaultAuthId: '...my_id...'\n      instanceName: '...my_instance_name...'\n      ordering:\n        after:\n          accesses:\n            - '...'\n        before:\n          accesses:\n            - '...'\n      partials:\n        - id: '...my_id...'\n          name: '...my_name...'\n          path: '...my_path...'\n      protocols:\n        - grpcs\n      route:\n        id: '...my_id...'\n      service:\n        id: '...my_id...'\n      tags:\n        - '...'\n      updatedAt: 1\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_gateway_plugin_vault_auth.my_konnect_gateway_plugin_vault_auth\n\n  id = jsonencode({\n\n    control_plane_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/gatewayPluginVaultAuth:GatewayPluginVaultAuth my_konnect_gateway_plugin_vault_auth '{\"control_plane_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"}'\n```\n\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginVaultAuthConfig:GatewayPluginVaultAuthConfig"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginVaultAuthId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginVaultAuthOrdering:GatewayPluginVaultAuthOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginVaultAuthPartial:GatewayPluginVaultAuthPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginVaultAuthRoute:GatewayPluginVaultAuthRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginVaultAuthService:GatewayPluginVaultAuthService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object","required":["config","controlPlaneId","createdAt","enabled","gatewayPluginVaultAuthId","ordering","protocols","route","service","updatedAt"],"inputProperties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginVaultAuthConfig:GatewayPluginVaultAuthConfig"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginVaultAuthId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginVaultAuthOrdering:GatewayPluginVaultAuthOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginVaultAuthPartial:GatewayPluginVaultAuthPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginVaultAuthRoute:GatewayPluginVaultAuthRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginVaultAuthService:GatewayPluginVaultAuthService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"requiredInputs":["controlPlaneId"],"stateInputs":{"description":"Input properties used for looking up and filtering GatewayPluginVaultAuth resources.\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginVaultAuthConfig:GatewayPluginVaultAuthConfig"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginVaultAuthId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginVaultAuthOrdering:GatewayPluginVaultAuthOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginVaultAuthPartial:GatewayPluginVaultAuthPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginVaultAuthRoute:GatewayPluginVaultAuthRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginVaultAuthService:GatewayPluginVaultAuthService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object"}},"konnect:index/gatewayPluginWebsocketSizeLimit:GatewayPluginWebsocketSizeLimit":{"description":"GatewayPluginWebsocketSizeLimit Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myGatewaypluginwebsocketsizelimit = new konnect.GatewayPluginWebsocketSizeLimit(\"my_gatewaypluginwebsocketsizelimit\", {\n    config: {\n        clientMaxPayload: 33127457,\n        upstreamMaxPayload: 17682985,\n    },\n    consumer: {\n        id: \"...my_id...\",\n    },\n    controlPlaneId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    createdAt: 8,\n    enabled: true,\n    gatewayPluginWebsocketSizeLimitId: \"...my_id...\",\n    instanceName: \"...my_instance_name...\",\n    ordering: {\n        after: {\n            accesses: [\"...\"],\n        },\n        before: {\n            accesses: [\"...\"],\n        },\n    },\n    partials: [{\n        id: \"...my_id...\",\n        name: \"...my_name...\",\n        path: \"...my_path...\",\n    }],\n    protocols: [\"ws\"],\n    route: {\n        id: \"...my_id...\",\n    },\n    service: {\n        id: \"...my_id...\",\n    },\n    tags: [\"...\"],\n    updatedAt: 4,\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_gatewaypluginwebsocketsizelimit = konnect.GatewayPluginWebsocketSizeLimit(\"my_gatewaypluginwebsocketsizelimit\",\n    config={\n        \"client_max_payload\": 33127457,\n        \"upstream_max_payload\": 17682985,\n    },\n    consumer={\n        \"id\": \"...my_id...\",\n    },\n    control_plane_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    created_at=8,\n    enabled=True,\n    gateway_plugin_websocket_size_limit_id=\"...my_id...\",\n    instance_name=\"...my_instance_name...\",\n    ordering={\n        \"after\": {\n            \"accesses\": [\"...\"],\n        },\n        \"before\": {\n            \"accesses\": [\"...\"],\n        },\n    },\n    partials=[{\n        \"id\": \"...my_id...\",\n        \"name\": \"...my_name...\",\n        \"path\": \"...my_path...\",\n    }],\n    protocols=[\"ws\"],\n    route={\n        \"id\": \"...my_id...\",\n    },\n    service={\n        \"id\": \"...my_id...\",\n    },\n    tags=[\"...\"],\n    updated_at=4)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myGatewaypluginwebsocketsizelimit = new Konnect.GatewayPluginWebsocketSizeLimit(\"my_gatewaypluginwebsocketsizelimit\", new()\n    {\n        Config = new Konnect.Inputs.GatewayPluginWebsocketSizeLimitConfigArgs\n        {\n            ClientMaxPayload = 33127457,\n            UpstreamMaxPayload = 17682985,\n        },\n        Consumer = new Konnect.Inputs.GatewayPluginWebsocketSizeLimitConsumerArgs\n        {\n            Id = \"...my_id...\",\n        },\n        ControlPlaneId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        CreatedAt = 8,\n        Enabled = true,\n        GatewayPluginWebsocketSizeLimitId = \"...my_id...\",\n        InstanceName = \"...my_instance_name...\",\n        Ordering = new Konnect.Inputs.GatewayPluginWebsocketSizeLimitOrderingArgs\n        {\n            After = new Konnect.Inputs.GatewayPluginWebsocketSizeLimitOrderingAfterArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n            Before = new Konnect.Inputs.GatewayPluginWebsocketSizeLimitOrderingBeforeArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n        },\n        Partials = new[]\n        {\n            new Konnect.Inputs.GatewayPluginWebsocketSizeLimitPartialArgs\n            {\n                Id = \"...my_id...\",\n                Name = \"...my_name...\",\n                Path = \"...my_path...\",\n            },\n        },\n        Protocols = new[]\n        {\n            \"ws\",\n        },\n        Route = new Konnect.Inputs.GatewayPluginWebsocketSizeLimitRouteArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Service = new Konnect.Inputs.GatewayPluginWebsocketSizeLimitServiceArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Tags = new[]\n        {\n            \"...\",\n        },\n        UpdatedAt = 4,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewGatewayPluginWebsocketSizeLimit(ctx, \"my_gatewaypluginwebsocketsizelimit\", \u0026konnect.GatewayPluginWebsocketSizeLimitArgs{\n\t\t\tConfig: \u0026konnect.GatewayPluginWebsocketSizeLimitConfigArgs{\n\t\t\t\tClientMaxPayload:   pulumi.Float64(33127457),\n\t\t\t\tUpstreamMaxPayload: pulumi.Float64(17682985),\n\t\t\t},\n\t\t\tConsumer: \u0026konnect.GatewayPluginWebsocketSizeLimitConsumerArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tControlPlaneId:                    pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tCreatedAt:                         pulumi.Float64(8),\n\t\t\tEnabled:                           pulumi.Bool(true),\n\t\t\tGatewayPluginWebsocketSizeLimitId: pulumi.String(\"...my_id...\"),\n\t\t\tInstanceName:                      pulumi.String(\"...my_instance_name...\"),\n\t\t\tOrdering: \u0026konnect.GatewayPluginWebsocketSizeLimitOrderingArgs{\n\t\t\t\tAfter: \u0026konnect.GatewayPluginWebsocketSizeLimitOrderingAfterArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tBefore: \u0026konnect.GatewayPluginWebsocketSizeLimitOrderingBeforeArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tPartials: konnect.GatewayPluginWebsocketSizeLimitPartialArray{\n\t\t\t\t\u0026konnect.GatewayPluginWebsocketSizeLimitPartialArgs{\n\t\t\t\t\tId:   pulumi.String(\"...my_id...\"),\n\t\t\t\t\tName: pulumi.String(\"...my_name...\"),\n\t\t\t\t\tPath: pulumi.String(\"...my_path...\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tProtocols: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"ws\"),\n\t\t\t},\n\t\t\tRoute: \u0026konnect.GatewayPluginWebsocketSizeLimitRouteArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tService: \u0026konnect.GatewayPluginWebsocketSizeLimitServiceArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"...\"),\n\t\t\t},\n\t\t\tUpdatedAt: pulumi.Float64(4),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.GatewayPluginWebsocketSizeLimit;\nimport com.pulumi.konnect.GatewayPluginWebsocketSizeLimitArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginWebsocketSizeLimitConfigArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginWebsocketSizeLimitConsumerArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginWebsocketSizeLimitOrderingArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginWebsocketSizeLimitOrderingAfterArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginWebsocketSizeLimitOrderingBeforeArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginWebsocketSizeLimitPartialArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginWebsocketSizeLimitRouteArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginWebsocketSizeLimitServiceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myGatewaypluginwebsocketsizelimit = new GatewayPluginWebsocketSizeLimit(\"myGatewaypluginwebsocketsizelimit\", GatewayPluginWebsocketSizeLimitArgs.builder()\n            .config(GatewayPluginWebsocketSizeLimitConfigArgs.builder()\n                .clientMaxPayload(33127457.0)\n                .upstreamMaxPayload(17682985.0)\n                .build())\n            .consumer(GatewayPluginWebsocketSizeLimitConsumerArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .controlPlaneId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .createdAt(8.0)\n            .enabled(true)\n            .gatewayPluginWebsocketSizeLimitId(\"...my_id...\")\n            .instanceName(\"...my_instance_name...\")\n            .ordering(GatewayPluginWebsocketSizeLimitOrderingArgs.builder()\n                .after(GatewayPluginWebsocketSizeLimitOrderingAfterArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .before(GatewayPluginWebsocketSizeLimitOrderingBeforeArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .build())\n            .partials(GatewayPluginWebsocketSizeLimitPartialArgs.builder()\n                .id(\"...my_id...\")\n                .name(\"...my_name...\")\n                .path(\"...my_path...\")\n                .build())\n            .protocols(\"ws\")\n            .route(GatewayPluginWebsocketSizeLimitRouteArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .service(GatewayPluginWebsocketSizeLimitServiceArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .tags(\"...\")\n            .updatedAt(4.0)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myGatewaypluginwebsocketsizelimit:\n    type: konnect:GatewayPluginWebsocketSizeLimit\n    name: my_gatewaypluginwebsocketsizelimit\n    properties:\n      config:\n        clientMaxPayload: 3.3127457e+07\n        upstreamMaxPayload: 1.7682985e+07\n      consumer:\n        id: '...my_id...'\n      controlPlaneId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      createdAt: 8\n      enabled: true\n      gatewayPluginWebsocketSizeLimitId: '...my_id...'\n      instanceName: '...my_instance_name...'\n      ordering:\n        after:\n          accesses:\n            - '...'\n        before:\n          accesses:\n            - '...'\n      partials:\n        - id: '...my_id...'\n          name: '...my_name...'\n          path: '...my_path...'\n      protocols:\n        - ws\n      route:\n        id: '...my_id...'\n      service:\n        id: '...my_id...'\n      tags:\n        - '...'\n      updatedAt: 4\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_gateway_plugin_websocket_size_limit.my_konnect_gateway_plugin_websocket_size_limit\n\n  id = jsonencode({\n\n    control_plane_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/gatewayPluginWebsocketSizeLimit:GatewayPluginWebsocketSizeLimit my_konnect_gateway_plugin_websocket_size_limit '{\"control_plane_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"}'\n```\n\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginWebsocketSizeLimitConfig:GatewayPluginWebsocketSizeLimitConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginWebsocketSizeLimitConsumer:GatewayPluginWebsocketSizeLimitConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginWebsocketSizeLimitId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginWebsocketSizeLimitOrdering:GatewayPluginWebsocketSizeLimitOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginWebsocketSizeLimitPartial:GatewayPluginWebsocketSizeLimitPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A list of the request protocols that will trigger this plugin. The default value, as well as the possible values allowed on this field, may change depending on the plugin type. For example, plugins that only work in stream mode will only support tcp and tls. Default: [\"ws\",\"wss\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginWebsocketSizeLimitRoute:GatewayPluginWebsocketSizeLimitRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginWebsocketSizeLimitService:GatewayPluginWebsocketSizeLimitService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object","required":["config","consumer","controlPlaneId","createdAt","enabled","gatewayPluginWebsocketSizeLimitId","ordering","protocols","route","service","updatedAt"],"inputProperties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginWebsocketSizeLimitConfig:GatewayPluginWebsocketSizeLimitConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginWebsocketSizeLimitConsumer:GatewayPluginWebsocketSizeLimitConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginWebsocketSizeLimitId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginWebsocketSizeLimitOrdering:GatewayPluginWebsocketSizeLimitOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginWebsocketSizeLimitPartial:GatewayPluginWebsocketSizeLimitPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A list of the request protocols that will trigger this plugin. The default value, as well as the possible values allowed on this field, may change depending on the plugin type. For example, plugins that only work in stream mode will only support tcp and tls. Default: [\"ws\",\"wss\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginWebsocketSizeLimitRoute:GatewayPluginWebsocketSizeLimitRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginWebsocketSizeLimitService:GatewayPluginWebsocketSizeLimitService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"requiredInputs":["controlPlaneId"],"stateInputs":{"description":"Input properties used for looking up and filtering GatewayPluginWebsocketSizeLimit resources.\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginWebsocketSizeLimitConfig:GatewayPluginWebsocketSizeLimitConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginWebsocketSizeLimitConsumer:GatewayPluginWebsocketSizeLimitConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginWebsocketSizeLimitId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginWebsocketSizeLimitOrdering:GatewayPluginWebsocketSizeLimitOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginWebsocketSizeLimitPartial:GatewayPluginWebsocketSizeLimitPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A list of the request protocols that will trigger this plugin. The default value, as well as the possible values allowed on this field, may change depending on the plugin type. For example, plugins that only work in stream mode will only support tcp and tls. Default: [\"ws\",\"wss\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginWebsocketSizeLimitRoute:GatewayPluginWebsocketSizeLimitRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginWebsocketSizeLimitService:GatewayPluginWebsocketSizeLimitService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object"}},"konnect:index/gatewayPluginWebsocketValidator:GatewayPluginWebsocketValidator":{"description":"GatewayPluginWebsocketValidator Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myGatewaypluginwebsocketvalidator = new konnect.GatewayPluginWebsocketValidator(\"my_gatewaypluginwebsocketvalidator\", {\n    config: {\n        client: {\n            binary: {\n                schema: \"...my_schema...\",\n                type: \"draft4\",\n            },\n            text: {\n                schema: \"...my_schema...\",\n                type: \"draft4\",\n            },\n        },\n        upstream: {\n            binary: {\n                schema: \"...my_schema...\",\n                type: \"draft4\",\n            },\n            text: {\n                schema: \"...my_schema...\",\n                type: \"draft4\",\n            },\n        },\n    },\n    consumer: {\n        id: \"...my_id...\",\n    },\n    controlPlaneId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    createdAt: 5,\n    enabled: true,\n    gatewayPluginWebsocketValidatorId: \"...my_id...\",\n    instanceName: \"...my_instance_name...\",\n    ordering: {\n        after: {\n            accesses: [\"...\"],\n        },\n        before: {\n            accesses: [\"...\"],\n        },\n    },\n    partials: [{\n        id: \"...my_id...\",\n        name: \"...my_name...\",\n        path: \"...my_path...\",\n    }],\n    protocols: [\"wss\"],\n    route: {\n        id: \"...my_id...\",\n    },\n    service: {\n        id: \"...my_id...\",\n    },\n    tags: [\"...\"],\n    updatedAt: 2,\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_gatewaypluginwebsocketvalidator = konnect.GatewayPluginWebsocketValidator(\"my_gatewaypluginwebsocketvalidator\",\n    config={\n        \"client\": {\n            \"binary\": {\n                \"schema\": \"...my_schema...\",\n                \"type\": \"draft4\",\n            },\n            \"text\": {\n                \"schema\": \"...my_schema...\",\n                \"type\": \"draft4\",\n            },\n        },\n        \"upstream\": {\n            \"binary\": {\n                \"schema\": \"...my_schema...\",\n                \"type\": \"draft4\",\n            },\n            \"text\": {\n                \"schema\": \"...my_schema...\",\n                \"type\": \"draft4\",\n            },\n        },\n    },\n    consumer={\n        \"id\": \"...my_id...\",\n    },\n    control_plane_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    created_at=5,\n    enabled=True,\n    gateway_plugin_websocket_validator_id=\"...my_id...\",\n    instance_name=\"...my_instance_name...\",\n    ordering={\n        \"after\": {\n            \"accesses\": [\"...\"],\n        },\n        \"before\": {\n            \"accesses\": [\"...\"],\n        },\n    },\n    partials=[{\n        \"id\": \"...my_id...\",\n        \"name\": \"...my_name...\",\n        \"path\": \"...my_path...\",\n    }],\n    protocols=[\"wss\"],\n    route={\n        \"id\": \"...my_id...\",\n    },\n    service={\n        \"id\": \"...my_id...\",\n    },\n    tags=[\"...\"],\n    updated_at=2)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myGatewaypluginwebsocketvalidator = new Konnect.GatewayPluginWebsocketValidator(\"my_gatewaypluginwebsocketvalidator\", new()\n    {\n        Config = new Konnect.Inputs.GatewayPluginWebsocketValidatorConfigArgs\n        {\n            Client = new Konnect.Inputs.GatewayPluginWebsocketValidatorConfigClientArgs\n            {\n                Binary = new Konnect.Inputs.GatewayPluginWebsocketValidatorConfigClientBinaryArgs\n                {\n                    Schema = \"...my_schema...\",\n                    Type = \"draft4\",\n                },\n                Text = new Konnect.Inputs.GatewayPluginWebsocketValidatorConfigClientTextArgs\n                {\n                    Schema = \"...my_schema...\",\n                    Type = \"draft4\",\n                },\n            },\n            Upstream = new Konnect.Inputs.GatewayPluginWebsocketValidatorConfigUpstreamArgs\n            {\n                Binary = new Konnect.Inputs.GatewayPluginWebsocketValidatorConfigUpstreamBinaryArgs\n                {\n                    Schema = \"...my_schema...\",\n                    Type = \"draft4\",\n                },\n                Text = new Konnect.Inputs.GatewayPluginWebsocketValidatorConfigUpstreamTextArgs\n                {\n                    Schema = \"...my_schema...\",\n                    Type = \"draft4\",\n                },\n            },\n        },\n        Consumer = new Konnect.Inputs.GatewayPluginWebsocketValidatorConsumerArgs\n        {\n            Id = \"...my_id...\",\n        },\n        ControlPlaneId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        CreatedAt = 5,\n        Enabled = true,\n        GatewayPluginWebsocketValidatorId = \"...my_id...\",\n        InstanceName = \"...my_instance_name...\",\n        Ordering = new Konnect.Inputs.GatewayPluginWebsocketValidatorOrderingArgs\n        {\n            After = new Konnect.Inputs.GatewayPluginWebsocketValidatorOrderingAfterArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n            Before = new Konnect.Inputs.GatewayPluginWebsocketValidatorOrderingBeforeArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n        },\n        Partials = new[]\n        {\n            new Konnect.Inputs.GatewayPluginWebsocketValidatorPartialArgs\n            {\n                Id = \"...my_id...\",\n                Name = \"...my_name...\",\n                Path = \"...my_path...\",\n            },\n        },\n        Protocols = new[]\n        {\n            \"wss\",\n        },\n        Route = new Konnect.Inputs.GatewayPluginWebsocketValidatorRouteArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Service = new Konnect.Inputs.GatewayPluginWebsocketValidatorServiceArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Tags = new[]\n        {\n            \"...\",\n        },\n        UpdatedAt = 2,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewGatewayPluginWebsocketValidator(ctx, \"my_gatewaypluginwebsocketvalidator\", \u0026konnect.GatewayPluginWebsocketValidatorArgs{\n\t\t\tConfig: \u0026konnect.GatewayPluginWebsocketValidatorConfigArgs{\n\t\t\t\tClient: \u0026konnect.GatewayPluginWebsocketValidatorConfigClientArgs{\n\t\t\t\t\tBinary: \u0026konnect.GatewayPluginWebsocketValidatorConfigClientBinaryArgs{\n\t\t\t\t\t\tSchema: pulumi.String(\"...my_schema...\"),\n\t\t\t\t\t\tType:   pulumi.String(\"draft4\"),\n\t\t\t\t\t},\n\t\t\t\t\tText: \u0026konnect.GatewayPluginWebsocketValidatorConfigClientTextArgs{\n\t\t\t\t\t\tSchema: pulumi.String(\"...my_schema...\"),\n\t\t\t\t\t\tType:   pulumi.String(\"draft4\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tUpstream: \u0026konnect.GatewayPluginWebsocketValidatorConfigUpstreamArgs{\n\t\t\t\t\tBinary: \u0026konnect.GatewayPluginWebsocketValidatorConfigUpstreamBinaryArgs{\n\t\t\t\t\t\tSchema: pulumi.String(\"...my_schema...\"),\n\t\t\t\t\t\tType:   pulumi.String(\"draft4\"),\n\t\t\t\t\t},\n\t\t\t\t\tText: \u0026konnect.GatewayPluginWebsocketValidatorConfigUpstreamTextArgs{\n\t\t\t\t\t\tSchema: pulumi.String(\"...my_schema...\"),\n\t\t\t\t\t\tType:   pulumi.String(\"draft4\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tConsumer: \u0026konnect.GatewayPluginWebsocketValidatorConsumerArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tControlPlaneId:                    pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tCreatedAt:                         pulumi.Float64(5),\n\t\t\tEnabled:                           pulumi.Bool(true),\n\t\t\tGatewayPluginWebsocketValidatorId: pulumi.String(\"...my_id...\"),\n\t\t\tInstanceName:                      pulumi.String(\"...my_instance_name...\"),\n\t\t\tOrdering: \u0026konnect.GatewayPluginWebsocketValidatorOrderingArgs{\n\t\t\t\tAfter: \u0026konnect.GatewayPluginWebsocketValidatorOrderingAfterArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tBefore: \u0026konnect.GatewayPluginWebsocketValidatorOrderingBeforeArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tPartials: konnect.GatewayPluginWebsocketValidatorPartialArray{\n\t\t\t\t\u0026konnect.GatewayPluginWebsocketValidatorPartialArgs{\n\t\t\t\t\tId:   pulumi.String(\"...my_id...\"),\n\t\t\t\t\tName: pulumi.String(\"...my_name...\"),\n\t\t\t\t\tPath: pulumi.String(\"...my_path...\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tProtocols: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"wss\"),\n\t\t\t},\n\t\t\tRoute: \u0026konnect.GatewayPluginWebsocketValidatorRouteArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tService: \u0026konnect.GatewayPluginWebsocketValidatorServiceArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"...\"),\n\t\t\t},\n\t\t\tUpdatedAt: pulumi.Float64(2),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.GatewayPluginWebsocketValidator;\nimport com.pulumi.konnect.GatewayPluginWebsocketValidatorArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginWebsocketValidatorConfigArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginWebsocketValidatorConfigClientArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginWebsocketValidatorConfigClientBinaryArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginWebsocketValidatorConfigClientTextArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginWebsocketValidatorConfigUpstreamArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginWebsocketValidatorConfigUpstreamBinaryArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginWebsocketValidatorConfigUpstreamTextArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginWebsocketValidatorConsumerArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginWebsocketValidatorOrderingArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginWebsocketValidatorOrderingAfterArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginWebsocketValidatorOrderingBeforeArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginWebsocketValidatorPartialArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginWebsocketValidatorRouteArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginWebsocketValidatorServiceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myGatewaypluginwebsocketvalidator = new GatewayPluginWebsocketValidator(\"myGatewaypluginwebsocketvalidator\", GatewayPluginWebsocketValidatorArgs.builder()\n            .config(GatewayPluginWebsocketValidatorConfigArgs.builder()\n                .client(GatewayPluginWebsocketValidatorConfigClientArgs.builder()\n                    .binary(GatewayPluginWebsocketValidatorConfigClientBinaryArgs.builder()\n                        .schema(\"...my_schema...\")\n                        .type(\"draft4\")\n                        .build())\n                    .text(GatewayPluginWebsocketValidatorConfigClientTextArgs.builder()\n                        .schema(\"...my_schema...\")\n                        .type(\"draft4\")\n                        .build())\n                    .build())\n                .upstream(GatewayPluginWebsocketValidatorConfigUpstreamArgs.builder()\n                    .binary(GatewayPluginWebsocketValidatorConfigUpstreamBinaryArgs.builder()\n                        .schema(\"...my_schema...\")\n                        .type(\"draft4\")\n                        .build())\n                    .text(GatewayPluginWebsocketValidatorConfigUpstreamTextArgs.builder()\n                        .schema(\"...my_schema...\")\n                        .type(\"draft4\")\n                        .build())\n                    .build())\n                .build())\n            .consumer(GatewayPluginWebsocketValidatorConsumerArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .controlPlaneId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .createdAt(5.0)\n            .enabled(true)\n            .gatewayPluginWebsocketValidatorId(\"...my_id...\")\n            .instanceName(\"...my_instance_name...\")\n            .ordering(GatewayPluginWebsocketValidatorOrderingArgs.builder()\n                .after(GatewayPluginWebsocketValidatorOrderingAfterArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .before(GatewayPluginWebsocketValidatorOrderingBeforeArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .build())\n            .partials(GatewayPluginWebsocketValidatorPartialArgs.builder()\n                .id(\"...my_id...\")\n                .name(\"...my_name...\")\n                .path(\"...my_path...\")\n                .build())\n            .protocols(\"wss\")\n            .route(GatewayPluginWebsocketValidatorRouteArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .service(GatewayPluginWebsocketValidatorServiceArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .tags(\"...\")\n            .updatedAt(2.0)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myGatewaypluginwebsocketvalidator:\n    type: konnect:GatewayPluginWebsocketValidator\n    name: my_gatewaypluginwebsocketvalidator\n    properties:\n      config:\n        client:\n          binary:\n            schema: '...my_schema...'\n            type: draft4\n          text:\n            schema: '...my_schema...'\n            type: draft4\n        upstream:\n          binary:\n            schema: '...my_schema...'\n            type: draft4\n          text:\n            schema: '...my_schema...'\n            type: draft4\n      consumer:\n        id: '...my_id...'\n      controlPlaneId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      createdAt: 5\n      enabled: true\n      gatewayPluginWebsocketValidatorId: '...my_id...'\n      instanceName: '...my_instance_name...'\n      ordering:\n        after:\n          accesses:\n            - '...'\n        before:\n          accesses:\n            - '...'\n      partials:\n        - id: '...my_id...'\n          name: '...my_name...'\n          path: '...my_path...'\n      protocols:\n        - wss\n      route:\n        id: '...my_id...'\n      service:\n        id: '...my_id...'\n      tags:\n        - '...'\n      updatedAt: 2\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_gateway_plugin_websocket_validator.my_konnect_gateway_plugin_websocket_validator\n\n  id = jsonencode({\n\n    control_plane_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/gatewayPluginWebsocketValidator:GatewayPluginWebsocketValidator my_konnect_gateway_plugin_websocket_validator '{\"control_plane_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"}'\n```\n\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginWebsocketValidatorConfig:GatewayPluginWebsocketValidatorConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginWebsocketValidatorConsumer:GatewayPluginWebsocketValidatorConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginWebsocketValidatorId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginWebsocketValidatorOrdering:GatewayPluginWebsocketValidatorOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginWebsocketValidatorPartial:GatewayPluginWebsocketValidatorPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A list of the request protocols that will trigger this plugin. The default value, as well as the possible values allowed on this field, may change depending on the plugin type. For example, plugins that only work in stream mode will only support tcp and tls. Default: [\"ws\",\"wss\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginWebsocketValidatorRoute:GatewayPluginWebsocketValidatorRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginWebsocketValidatorService:GatewayPluginWebsocketValidatorService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object","required":["config","consumer","controlPlaneId","createdAt","enabled","gatewayPluginWebsocketValidatorId","ordering","protocols","route","service","updatedAt"],"inputProperties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginWebsocketValidatorConfig:GatewayPluginWebsocketValidatorConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginWebsocketValidatorConsumer:GatewayPluginWebsocketValidatorConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginWebsocketValidatorId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginWebsocketValidatorOrdering:GatewayPluginWebsocketValidatorOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginWebsocketValidatorPartial:GatewayPluginWebsocketValidatorPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A list of the request protocols that will trigger this plugin. The default value, as well as the possible values allowed on this field, may change depending on the plugin type. For example, plugins that only work in stream mode will only support tcp and tls. Default: [\"ws\",\"wss\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginWebsocketValidatorRoute:GatewayPluginWebsocketValidatorRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginWebsocketValidatorService:GatewayPluginWebsocketValidatorService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"requiredInputs":["controlPlaneId"],"stateInputs":{"description":"Input properties used for looking up and filtering GatewayPluginWebsocketValidator resources.\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginWebsocketValidatorConfig:GatewayPluginWebsocketValidatorConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginWebsocketValidatorConsumer:GatewayPluginWebsocketValidatorConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginWebsocketValidatorId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginWebsocketValidatorOrdering:GatewayPluginWebsocketValidatorOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginWebsocketValidatorPartial:GatewayPluginWebsocketValidatorPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A list of the request protocols that will trigger this plugin. The default value, as well as the possible values allowed on this field, may change depending on the plugin type. For example, plugins that only work in stream mode will only support tcp and tls. Default: [\"ws\",\"wss\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginWebsocketValidatorRoute:GatewayPluginWebsocketValidatorRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginWebsocketValidatorService:GatewayPluginWebsocketValidatorService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object"}},"konnect:index/gatewayPluginXmlThreatProtection:GatewayPluginXmlThreatProtection":{"description":"GatewayPluginXMLThreatProtection Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myGatewaypluginxmlthreatprotection = new konnect.GatewayPluginXmlThreatProtection(\"my_gatewaypluginxmlthreatprotection\", {\n    config: {\n        allowDtd: true,\n        allowedContentTypes: [\"...\"],\n        attribute: 6,\n        blaMaxAmplification: 6.05,\n        blaThreshold: 1030,\n        buffer: 7,\n        checkedContentTypes: [\"...\"],\n        comment: 1,\n        document: 4,\n        entity: 1,\n        entityname: 5,\n        entityproperty: 7,\n        localname: 4,\n        maxAttributes: 6,\n        maxChildren: 7,\n        maxDepth: 8,\n        maxNamespaces: 6,\n        namespaceAware: false,\n        namespaceuri: 0,\n        pidata: 10,\n        pitarget: 9,\n        prefix: 3,\n        text: 3,\n    },\n    consumer: {\n        id: \"...my_id...\",\n    },\n    controlPlaneId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    createdAt: 2,\n    enabled: true,\n    gatewayPluginXmlThreatProtectionId: \"...my_id...\",\n    instanceName: \"...my_instance_name...\",\n    ordering: {\n        after: {\n            accesses: [\"...\"],\n        },\n        before: {\n            accesses: [\"...\"],\n        },\n    },\n    partials: [{\n        id: \"...my_id...\",\n        name: \"...my_name...\",\n        path: \"...my_path...\",\n    }],\n    protocols: [\"https\"],\n    route: {\n        id: \"...my_id...\",\n    },\n    service: {\n        id: \"...my_id...\",\n    },\n    tags: [\"...\"],\n    updatedAt: 7,\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_gatewaypluginxmlthreatprotection = konnect.GatewayPluginXmlThreatProtection(\"my_gatewaypluginxmlthreatprotection\",\n    config={\n        \"allow_dtd\": True,\n        \"allowed_content_types\": [\"...\"],\n        \"attribute\": 6,\n        \"bla_max_amplification\": 6.05,\n        \"bla_threshold\": 1030,\n        \"buffer\": 7,\n        \"checked_content_types\": [\"...\"],\n        \"comment\": 1,\n        \"document\": 4,\n        \"entity\": 1,\n        \"entityname\": 5,\n        \"entityproperty\": 7,\n        \"localname\": 4,\n        \"max_attributes\": 6,\n        \"max_children\": 7,\n        \"max_depth\": 8,\n        \"max_namespaces\": 6,\n        \"namespace_aware\": False,\n        \"namespaceuri\": 0,\n        \"pidata\": 10,\n        \"pitarget\": 9,\n        \"prefix\": 3,\n        \"text\": 3,\n    },\n    consumer={\n        \"id\": \"...my_id...\",\n    },\n    control_plane_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    created_at=2,\n    enabled=True,\n    gateway_plugin_xml_threat_protection_id=\"...my_id...\",\n    instance_name=\"...my_instance_name...\",\n    ordering={\n        \"after\": {\n            \"accesses\": [\"...\"],\n        },\n        \"before\": {\n            \"accesses\": [\"...\"],\n        },\n    },\n    partials=[{\n        \"id\": \"...my_id...\",\n        \"name\": \"...my_name...\",\n        \"path\": \"...my_path...\",\n    }],\n    protocols=[\"https\"],\n    route={\n        \"id\": \"...my_id...\",\n    },\n    service={\n        \"id\": \"...my_id...\",\n    },\n    tags=[\"...\"],\n    updated_at=7)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myGatewaypluginxmlthreatprotection = new Konnect.GatewayPluginXmlThreatProtection(\"my_gatewaypluginxmlthreatprotection\", new()\n    {\n        Config = new Konnect.Inputs.GatewayPluginXmlThreatProtectionConfigArgs\n        {\n            AllowDtd = true,\n            AllowedContentTypes = new[]\n            {\n                \"...\",\n            },\n            Attribute = 6,\n            BlaMaxAmplification = 6.05,\n            BlaThreshold = 1030,\n            Buffer = 7,\n            CheckedContentTypes = new[]\n            {\n                \"...\",\n            },\n            Comment = 1,\n            Document = 4,\n            Entity = 1,\n            Entityname = 5,\n            Entityproperty = 7,\n            Localname = 4,\n            MaxAttributes = 6,\n            MaxChildren = 7,\n            MaxDepth = 8,\n            MaxNamespaces = 6,\n            NamespaceAware = false,\n            Namespaceuri = 0,\n            Pidata = 10,\n            Pitarget = 9,\n            Prefix = 3,\n            Text = 3,\n        },\n        Consumer = new Konnect.Inputs.GatewayPluginXmlThreatProtectionConsumerArgs\n        {\n            Id = \"...my_id...\",\n        },\n        ControlPlaneId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        CreatedAt = 2,\n        Enabled = true,\n        GatewayPluginXmlThreatProtectionId = \"...my_id...\",\n        InstanceName = \"...my_instance_name...\",\n        Ordering = new Konnect.Inputs.GatewayPluginXmlThreatProtectionOrderingArgs\n        {\n            After = new Konnect.Inputs.GatewayPluginXmlThreatProtectionOrderingAfterArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n            Before = new Konnect.Inputs.GatewayPluginXmlThreatProtectionOrderingBeforeArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n        },\n        Partials = new[]\n        {\n            new Konnect.Inputs.GatewayPluginXmlThreatProtectionPartialArgs\n            {\n                Id = \"...my_id...\",\n                Name = \"...my_name...\",\n                Path = \"...my_path...\",\n            },\n        },\n        Protocols = new[]\n        {\n            \"https\",\n        },\n        Route = new Konnect.Inputs.GatewayPluginXmlThreatProtectionRouteArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Service = new Konnect.Inputs.GatewayPluginXmlThreatProtectionServiceArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Tags = new[]\n        {\n            \"...\",\n        },\n        UpdatedAt = 7,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewGatewayPluginXmlThreatProtection(ctx, \"my_gatewaypluginxmlthreatprotection\", \u0026konnect.GatewayPluginXmlThreatProtectionArgs{\n\t\t\tConfig: \u0026konnect.GatewayPluginXmlThreatProtectionConfigArgs{\n\t\t\t\tAllowDtd: pulumi.Bool(true),\n\t\t\t\tAllowedContentTypes: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tAttribute:           pulumi.Float64(6),\n\t\t\t\tBlaMaxAmplification: pulumi.Float64(6.05),\n\t\t\t\tBlaThreshold:        pulumi.Float64(1030),\n\t\t\t\tBuffer:              pulumi.Float64(7),\n\t\t\t\tCheckedContentTypes: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tComment:        pulumi.Float64(1),\n\t\t\t\tDocument:       pulumi.Float64(4),\n\t\t\t\tEntity:         pulumi.Float64(1),\n\t\t\t\tEntityname:     pulumi.Float64(5),\n\t\t\t\tEntityproperty: pulumi.Float64(7),\n\t\t\t\tLocalname:      pulumi.Float64(4),\n\t\t\t\tMaxAttributes:  pulumi.Float64(6),\n\t\t\t\tMaxChildren:    pulumi.Float64(7),\n\t\t\t\tMaxDepth:       pulumi.Float64(8),\n\t\t\t\tMaxNamespaces:  pulumi.Float64(6),\n\t\t\t\tNamespaceAware: pulumi.Bool(false),\n\t\t\t\tNamespaceuri:   pulumi.Float64(0),\n\t\t\t\tPidata:         pulumi.Float64(10),\n\t\t\t\tPitarget:       pulumi.Float64(9),\n\t\t\t\tPrefix:         pulumi.Float64(3),\n\t\t\t\tText:           pulumi.Float64(3),\n\t\t\t},\n\t\t\tConsumer: \u0026konnect.GatewayPluginXmlThreatProtectionConsumerArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tControlPlaneId:                     pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tCreatedAt:                          pulumi.Float64(2),\n\t\t\tEnabled:                            pulumi.Bool(true),\n\t\t\tGatewayPluginXmlThreatProtectionId: pulumi.String(\"...my_id...\"),\n\t\t\tInstanceName:                       pulumi.String(\"...my_instance_name...\"),\n\t\t\tOrdering: \u0026konnect.GatewayPluginXmlThreatProtectionOrderingArgs{\n\t\t\t\tAfter: \u0026konnect.GatewayPluginXmlThreatProtectionOrderingAfterArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tBefore: \u0026konnect.GatewayPluginXmlThreatProtectionOrderingBeforeArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tPartials: konnect.GatewayPluginXmlThreatProtectionPartialArray{\n\t\t\t\t\u0026konnect.GatewayPluginXmlThreatProtectionPartialArgs{\n\t\t\t\t\tId:   pulumi.String(\"...my_id...\"),\n\t\t\t\t\tName: pulumi.String(\"...my_name...\"),\n\t\t\t\t\tPath: pulumi.String(\"...my_path...\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tProtocols: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"https\"),\n\t\t\t},\n\t\t\tRoute: \u0026konnect.GatewayPluginXmlThreatProtectionRouteArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tService: \u0026konnect.GatewayPluginXmlThreatProtectionServiceArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"...\"),\n\t\t\t},\n\t\t\tUpdatedAt: pulumi.Float64(7),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.GatewayPluginXmlThreatProtection;\nimport com.pulumi.konnect.GatewayPluginXmlThreatProtectionArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginXmlThreatProtectionConfigArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginXmlThreatProtectionConsumerArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginXmlThreatProtectionOrderingArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginXmlThreatProtectionOrderingAfterArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginXmlThreatProtectionOrderingBeforeArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginXmlThreatProtectionPartialArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginXmlThreatProtectionRouteArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginXmlThreatProtectionServiceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myGatewaypluginxmlthreatprotection = new GatewayPluginXmlThreatProtection(\"myGatewaypluginxmlthreatprotection\", GatewayPluginXmlThreatProtectionArgs.builder()\n            .config(GatewayPluginXmlThreatProtectionConfigArgs.builder()\n                .allowDtd(true)\n                .allowedContentTypes(\"...\")\n                .attribute(6.0)\n                .blaMaxAmplification(6.05)\n                .blaThreshold(1030.0)\n                .buffer(7.0)\n                .checkedContentTypes(\"...\")\n                .comment(1.0)\n                .document(4.0)\n                .entity(1.0)\n                .entityname(5.0)\n                .entityproperty(7.0)\n                .localname(4.0)\n                .maxAttributes(6.0)\n                .maxChildren(7.0)\n                .maxDepth(8.0)\n                .maxNamespaces(6.0)\n                .namespaceAware(false)\n                .namespaceuri(0.0)\n                .pidata(10.0)\n                .pitarget(9.0)\n                .prefix(3.0)\n                .text(3.0)\n                .build())\n            .consumer(GatewayPluginXmlThreatProtectionConsumerArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .controlPlaneId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .createdAt(2.0)\n            .enabled(true)\n            .gatewayPluginXmlThreatProtectionId(\"...my_id...\")\n            .instanceName(\"...my_instance_name...\")\n            .ordering(GatewayPluginXmlThreatProtectionOrderingArgs.builder()\n                .after(GatewayPluginXmlThreatProtectionOrderingAfterArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .before(GatewayPluginXmlThreatProtectionOrderingBeforeArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .build())\n            .partials(GatewayPluginXmlThreatProtectionPartialArgs.builder()\n                .id(\"...my_id...\")\n                .name(\"...my_name...\")\n                .path(\"...my_path...\")\n                .build())\n            .protocols(\"https\")\n            .route(GatewayPluginXmlThreatProtectionRouteArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .service(GatewayPluginXmlThreatProtectionServiceArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .tags(\"...\")\n            .updatedAt(7.0)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myGatewaypluginxmlthreatprotection:\n    type: konnect:GatewayPluginXmlThreatProtection\n    name: my_gatewaypluginxmlthreatprotection\n    properties:\n      config:\n        allowDtd: true\n        allowedContentTypes:\n          - '...'\n        attribute: 6\n        blaMaxAmplification: 6.05\n        blaThreshold: 1030\n        buffer: 7\n        checkedContentTypes:\n          - '...'\n        comment: 1\n        document: 4\n        entity: 1\n        entityname: 5\n        entityproperty: 7\n        localname: 4\n        maxAttributes: 6\n        maxChildren: 7\n        maxDepth: 8\n        maxNamespaces: 6\n        namespaceAware: false\n        namespaceuri: 0\n        pidata: 10\n        pitarget: 9\n        prefix: 3\n        text: 3\n      consumer:\n        id: '...my_id...'\n      controlPlaneId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      createdAt: 2\n      enabled: true\n      gatewayPluginXmlThreatProtectionId: '...my_id...'\n      instanceName: '...my_instance_name...'\n      ordering:\n        after:\n          accesses:\n            - '...'\n        before:\n          accesses:\n            - '...'\n      partials:\n        - id: '...my_id...'\n          name: '...my_name...'\n          path: '...my_path...'\n      protocols:\n        - https\n      route:\n        id: '...my_id...'\n      service:\n        id: '...my_id...'\n      tags:\n        - '...'\n      updatedAt: 7\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_gateway_plugin_xml_threat_protection.my_konnect_gateway_plugin_xml_threat_protection\n\n  id = jsonencode({\n\n    control_plane_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/gatewayPluginXmlThreatProtection:GatewayPluginXmlThreatProtection my_konnect_gateway_plugin_xml_threat_protection '{\"control_plane_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"}'\n```\n\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginXmlThreatProtectionConfig:GatewayPluginXmlThreatProtectionConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginXmlThreatProtectionConsumer:GatewayPluginXmlThreatProtectionConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginXmlThreatProtectionId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginXmlThreatProtectionOrdering:GatewayPluginXmlThreatProtectionOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginXmlThreatProtectionPartial:GatewayPluginXmlThreatProtectionPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginXmlThreatProtectionRoute:GatewayPluginXmlThreatProtectionRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginXmlThreatProtectionService:GatewayPluginXmlThreatProtectionService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object","required":["config","consumer","controlPlaneId","createdAt","enabled","gatewayPluginXmlThreatProtectionId","ordering","protocols","route","service","updatedAt"],"inputProperties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginXmlThreatProtectionConfig:GatewayPluginXmlThreatProtectionConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginXmlThreatProtectionConsumer:GatewayPluginXmlThreatProtectionConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginXmlThreatProtectionId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginXmlThreatProtectionOrdering:GatewayPluginXmlThreatProtectionOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginXmlThreatProtectionPartial:GatewayPluginXmlThreatProtectionPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginXmlThreatProtectionRoute:GatewayPluginXmlThreatProtectionRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginXmlThreatProtectionService:GatewayPluginXmlThreatProtectionService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"requiredInputs":["controlPlaneId"],"stateInputs":{"description":"Input properties used for looking up and filtering GatewayPluginXmlThreatProtection resources.\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginXmlThreatProtectionConfig:GatewayPluginXmlThreatProtectionConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginXmlThreatProtectionConsumer:GatewayPluginXmlThreatProtectionConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginXmlThreatProtectionId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginXmlThreatProtectionOrdering:GatewayPluginXmlThreatProtectionOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginXmlThreatProtectionPartial:GatewayPluginXmlThreatProtectionPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing HTTP protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginXmlThreatProtectionRoute:GatewayPluginXmlThreatProtectionRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginXmlThreatProtectionService:GatewayPluginXmlThreatProtectionService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object"}},"konnect:index/gatewayPluginZipkin:GatewayPluginZipkin":{"description":"GatewayPluginZipkin Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myGatewaypluginzipkin = new konnect.GatewayPluginZipkin(\"my_gatewaypluginzipkin\", {\n    config: {\n        connectTimeout: 1674102719,\n        defaultHeaderType: \"b3-single\",\n        defaultServiceName: \"...my_default_service_name...\",\n        headerType: \"ignore\",\n        httpEndpoint: \"...my_http_endpoint...\",\n        httpResponseHeaderForTraceid: \"...my_http_response_header_for_traceid...\",\n        httpSpanName: \"method_path\",\n        includeCredential: false,\n        localServiceName: \"...my_local_service_name...\",\n        phaseDurationFlavor: \"annotations\",\n        propagation: {\n            clears: [\"...\"],\n            defaultFormat: \"instana\",\n            extracts: [\"datadog\"],\n            injects: [\"b3\"],\n        },\n        queue: {\n            concurrencyLimit: 1,\n            initialRetryDelay: 489129.82,\n            maxBatchSize: 540049,\n            maxBytes: 6,\n            maxCoalescingDelay: 2815.46,\n            maxEntries: 977371,\n            maxRetryDelay: 76225.98,\n            maxRetryTime: 2.97,\n        },\n        readTimeout: 1936940031,\n        sampleRatio: 0.6,\n        sendTimeout: 2045499472,\n        staticTags: [{\n            name: \"...my_name...\",\n            value: \"...my_value...\",\n        }],\n        tagsHeader: \"...my_tags_header...\",\n        traceidByteCount: 8,\n    },\n    consumer: {\n        id: \"...my_id...\",\n    },\n    controlPlaneId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    createdAt: 6,\n    enabled: false,\n    gatewayPluginZipkinId: \"...my_id...\",\n    instanceName: \"...my_instance_name...\",\n    ordering: {\n        after: {\n            accesses: [\"...\"],\n        },\n        before: {\n            accesses: [\"...\"],\n        },\n    },\n    partials: [{\n        id: \"...my_id...\",\n        name: \"...my_name...\",\n        path: \"...my_path...\",\n    }],\n    protocols: [\"tcp\"],\n    route: {\n        id: \"...my_id...\",\n    },\n    service: {\n        id: \"...my_id...\",\n    },\n    tags: [\"...\"],\n    updatedAt: 3,\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_gatewaypluginzipkin = konnect.GatewayPluginZipkin(\"my_gatewaypluginzipkin\",\n    config={\n        \"connect_timeout\": 1674102719,\n        \"default_header_type\": \"b3-single\",\n        \"default_service_name\": \"...my_default_service_name...\",\n        \"header_type\": \"ignore\",\n        \"http_endpoint\": \"...my_http_endpoint...\",\n        \"http_response_header_for_traceid\": \"...my_http_response_header_for_traceid...\",\n        \"http_span_name\": \"method_path\",\n        \"include_credential\": False,\n        \"local_service_name\": \"...my_local_service_name...\",\n        \"phase_duration_flavor\": \"annotations\",\n        \"propagation\": {\n            \"clears\": [\"...\"],\n            \"default_format\": \"instana\",\n            \"extracts\": [\"datadog\"],\n            \"injects\": [\"b3\"],\n        },\n        \"queue\": {\n            \"concurrency_limit\": 1,\n            \"initial_retry_delay\": 489129.82,\n            \"max_batch_size\": 540049,\n            \"max_bytes\": 6,\n            \"max_coalescing_delay\": 2815.46,\n            \"max_entries\": 977371,\n            \"max_retry_delay\": 76225.98,\n            \"max_retry_time\": 2.97,\n        },\n        \"read_timeout\": 1936940031,\n        \"sample_ratio\": 0.6,\n        \"send_timeout\": 2045499472,\n        \"static_tags\": [{\n            \"name\": \"...my_name...\",\n            \"value\": \"...my_value...\",\n        }],\n        \"tags_header\": \"...my_tags_header...\",\n        \"traceid_byte_count\": 8,\n    },\n    consumer={\n        \"id\": \"...my_id...\",\n    },\n    control_plane_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    created_at=6,\n    enabled=False,\n    gateway_plugin_zipkin_id=\"...my_id...\",\n    instance_name=\"...my_instance_name...\",\n    ordering={\n        \"after\": {\n            \"accesses\": [\"...\"],\n        },\n        \"before\": {\n            \"accesses\": [\"...\"],\n        },\n    },\n    partials=[{\n        \"id\": \"...my_id...\",\n        \"name\": \"...my_name...\",\n        \"path\": \"...my_path...\",\n    }],\n    protocols=[\"tcp\"],\n    route={\n        \"id\": \"...my_id...\",\n    },\n    service={\n        \"id\": \"...my_id...\",\n    },\n    tags=[\"...\"],\n    updated_at=3)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myGatewaypluginzipkin = new Konnect.GatewayPluginZipkin(\"my_gatewaypluginzipkin\", new()\n    {\n        Config = new Konnect.Inputs.GatewayPluginZipkinConfigArgs\n        {\n            ConnectTimeout = 1674102719,\n            DefaultHeaderType = \"b3-single\",\n            DefaultServiceName = \"...my_default_service_name...\",\n            HeaderType = \"ignore\",\n            HttpEndpoint = \"...my_http_endpoint...\",\n            HttpResponseHeaderForTraceid = \"...my_http_response_header_for_traceid...\",\n            HttpSpanName = \"method_path\",\n            IncludeCredential = false,\n            LocalServiceName = \"...my_local_service_name...\",\n            PhaseDurationFlavor = \"annotations\",\n            Propagation = new Konnect.Inputs.GatewayPluginZipkinConfigPropagationArgs\n            {\n                Clears = new[]\n                {\n                    \"...\",\n                },\n                DefaultFormat = \"instana\",\n                Extracts = new[]\n                {\n                    \"datadog\",\n                },\n                Injects = new[]\n                {\n                    \"b3\",\n                },\n            },\n            Queue = new Konnect.Inputs.GatewayPluginZipkinConfigQueueArgs\n            {\n                ConcurrencyLimit = 1,\n                InitialRetryDelay = 489129.82,\n                MaxBatchSize = 540049,\n                MaxBytes = 6,\n                MaxCoalescingDelay = 2815.46,\n                MaxEntries = 977371,\n                MaxRetryDelay = 76225.98,\n                MaxRetryTime = 2.97,\n            },\n            ReadTimeout = 1936940031,\n            SampleRatio = 0.6,\n            SendTimeout = 2045499472,\n            StaticTags = new[]\n            {\n                new Konnect.Inputs.GatewayPluginZipkinConfigStaticTagArgs\n                {\n                    Name = \"...my_name...\",\n                    Value = \"...my_value...\",\n                },\n            },\n            TagsHeader = \"...my_tags_header...\",\n            TraceidByteCount = 8,\n        },\n        Consumer = new Konnect.Inputs.GatewayPluginZipkinConsumerArgs\n        {\n            Id = \"...my_id...\",\n        },\n        ControlPlaneId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        CreatedAt = 6,\n        Enabled = false,\n        GatewayPluginZipkinId = \"...my_id...\",\n        InstanceName = \"...my_instance_name...\",\n        Ordering = new Konnect.Inputs.GatewayPluginZipkinOrderingArgs\n        {\n            After = new Konnect.Inputs.GatewayPluginZipkinOrderingAfterArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n            Before = new Konnect.Inputs.GatewayPluginZipkinOrderingBeforeArgs\n            {\n                Accesses = new[]\n                {\n                    \"...\",\n                },\n            },\n        },\n        Partials = new[]\n        {\n            new Konnect.Inputs.GatewayPluginZipkinPartialArgs\n            {\n                Id = \"...my_id...\",\n                Name = \"...my_name...\",\n                Path = \"...my_path...\",\n            },\n        },\n        Protocols = new[]\n        {\n            \"tcp\",\n        },\n        Route = new Konnect.Inputs.GatewayPluginZipkinRouteArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Service = new Konnect.Inputs.GatewayPluginZipkinServiceArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Tags = new[]\n        {\n            \"...\",\n        },\n        UpdatedAt = 3,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewGatewayPluginZipkin(ctx, \"my_gatewaypluginzipkin\", \u0026konnect.GatewayPluginZipkinArgs{\n\t\t\tConfig: \u0026konnect.GatewayPluginZipkinConfigArgs{\n\t\t\t\tConnectTimeout:               pulumi.Float64(1674102719),\n\t\t\t\tDefaultHeaderType:            pulumi.String(\"b3-single\"),\n\t\t\t\tDefaultServiceName:           pulumi.String(\"...my_default_service_name...\"),\n\t\t\t\tHeaderType:                   pulumi.String(\"ignore\"),\n\t\t\t\tHttpEndpoint:                 pulumi.String(\"...my_http_endpoint...\"),\n\t\t\t\tHttpResponseHeaderForTraceid: pulumi.String(\"...my_http_response_header_for_traceid...\"),\n\t\t\t\tHttpSpanName:                 pulumi.String(\"method_path\"),\n\t\t\t\tIncludeCredential:            pulumi.Bool(false),\n\t\t\t\tLocalServiceName:             pulumi.String(\"...my_local_service_name...\"),\n\t\t\t\tPhaseDurationFlavor:          pulumi.String(\"annotations\"),\n\t\t\t\tPropagation: \u0026konnect.GatewayPluginZipkinConfigPropagationArgs{\n\t\t\t\t\tClears: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t\tDefaultFormat: pulumi.String(\"instana\"),\n\t\t\t\t\tExtracts: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"datadog\"),\n\t\t\t\t\t},\n\t\t\t\t\tInjects: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"b3\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tQueue: \u0026konnect.GatewayPluginZipkinConfigQueueArgs{\n\t\t\t\t\tConcurrencyLimit:   pulumi.Float64(1),\n\t\t\t\t\tInitialRetryDelay:  pulumi.Float64(489129.82),\n\t\t\t\t\tMaxBatchSize:       pulumi.Float64(540049),\n\t\t\t\t\tMaxBytes:           pulumi.Float64(6),\n\t\t\t\t\tMaxCoalescingDelay: pulumi.Float64(2815.46),\n\t\t\t\t\tMaxEntries:         pulumi.Float64(977371),\n\t\t\t\t\tMaxRetryDelay:      pulumi.Float64(76225.98),\n\t\t\t\t\tMaxRetryTime:       pulumi.Float64(2.97),\n\t\t\t\t},\n\t\t\t\tReadTimeout: pulumi.Float64(1936940031),\n\t\t\t\tSampleRatio: pulumi.Float64(0.6),\n\t\t\t\tSendTimeout: pulumi.Float64(2045499472),\n\t\t\t\tStaticTags: konnect.GatewayPluginZipkinConfigStaticTagArray{\n\t\t\t\t\t\u0026konnect.GatewayPluginZipkinConfigStaticTagArgs{\n\t\t\t\t\t\tName:  pulumi.String(\"...my_name...\"),\n\t\t\t\t\t\tValue: pulumi.String(\"...my_value...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tTagsHeader:       pulumi.String(\"...my_tags_header...\"),\n\t\t\t\tTraceidByteCount: pulumi.Float64(8),\n\t\t\t},\n\t\t\tConsumer: \u0026konnect.GatewayPluginZipkinConsumerArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tControlPlaneId:        pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tCreatedAt:             pulumi.Float64(6),\n\t\t\tEnabled:               pulumi.Bool(false),\n\t\t\tGatewayPluginZipkinId: pulumi.String(\"...my_id...\"),\n\t\t\tInstanceName:          pulumi.String(\"...my_instance_name...\"),\n\t\t\tOrdering: \u0026konnect.GatewayPluginZipkinOrderingArgs{\n\t\t\t\tAfter: \u0026konnect.GatewayPluginZipkinOrderingAfterArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tBefore: \u0026konnect.GatewayPluginZipkinOrderingBeforeArgs{\n\t\t\t\t\tAccesses: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tPartials: konnect.GatewayPluginZipkinPartialArray{\n\t\t\t\t\u0026konnect.GatewayPluginZipkinPartialArgs{\n\t\t\t\t\tId:   pulumi.String(\"...my_id...\"),\n\t\t\t\t\tName: pulumi.String(\"...my_name...\"),\n\t\t\t\t\tPath: pulumi.String(\"...my_path...\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tProtocols: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"tcp\"),\n\t\t\t},\n\t\t\tRoute: \u0026konnect.GatewayPluginZipkinRouteArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tService: \u0026konnect.GatewayPluginZipkinServiceArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"...\"),\n\t\t\t},\n\t\t\tUpdatedAt: pulumi.Float64(3),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.GatewayPluginZipkin;\nimport com.pulumi.konnect.GatewayPluginZipkinArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginZipkinConfigArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginZipkinConfigPropagationArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginZipkinConfigQueueArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginZipkinConsumerArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginZipkinOrderingArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginZipkinOrderingAfterArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginZipkinOrderingBeforeArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginZipkinPartialArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginZipkinRouteArgs;\nimport com.pulumi.konnect.inputs.GatewayPluginZipkinServiceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myGatewaypluginzipkin = new GatewayPluginZipkin(\"myGatewaypluginzipkin\", GatewayPluginZipkinArgs.builder()\n            .config(GatewayPluginZipkinConfigArgs.builder()\n                .connectTimeout(1674102719.0)\n                .defaultHeaderType(\"b3-single\")\n                .defaultServiceName(\"...my_default_service_name...\")\n                .headerType(\"ignore\")\n                .httpEndpoint(\"...my_http_endpoint...\")\n                .httpResponseHeaderForTraceid(\"...my_http_response_header_for_traceid...\")\n                .httpSpanName(\"method_path\")\n                .includeCredential(false)\n                .localServiceName(\"...my_local_service_name...\")\n                .phaseDurationFlavor(\"annotations\")\n                .propagation(GatewayPluginZipkinConfigPropagationArgs.builder()\n                    .clears(\"...\")\n                    .defaultFormat(\"instana\")\n                    .extracts(\"datadog\")\n                    .injects(\"b3\")\n                    .build())\n                .queue(GatewayPluginZipkinConfigQueueArgs.builder()\n                    .concurrencyLimit(1.0)\n                    .initialRetryDelay(489129.82)\n                    .maxBatchSize(540049.0)\n                    .maxBytes(6.0)\n                    .maxCoalescingDelay(2815.46)\n                    .maxEntries(977371.0)\n                    .maxRetryDelay(76225.98)\n                    .maxRetryTime(2.97)\n                    .build())\n                .readTimeout(1936940031.0)\n                .sampleRatio(0.6)\n                .sendTimeout(2045499472.0)\n                .staticTags(GatewayPluginZipkinConfigStaticTagArgs.builder()\n                    .name(\"...my_name...\")\n                    .value(\"...my_value...\")\n                    .build())\n                .tagsHeader(\"...my_tags_header...\")\n                .traceidByteCount(8.0)\n                .build())\n            .consumer(GatewayPluginZipkinConsumerArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .controlPlaneId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .createdAt(6.0)\n            .enabled(false)\n            .gatewayPluginZipkinId(\"...my_id...\")\n            .instanceName(\"...my_instance_name...\")\n            .ordering(GatewayPluginZipkinOrderingArgs.builder()\n                .after(GatewayPluginZipkinOrderingAfterArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .before(GatewayPluginZipkinOrderingBeforeArgs.builder()\n                    .accesses(\"...\")\n                    .build())\n                .build())\n            .partials(GatewayPluginZipkinPartialArgs.builder()\n                .id(\"...my_id...\")\n                .name(\"...my_name...\")\n                .path(\"...my_path...\")\n                .build())\n            .protocols(\"tcp\")\n            .route(GatewayPluginZipkinRouteArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .service(GatewayPluginZipkinServiceArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .tags(\"...\")\n            .updatedAt(3.0)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myGatewaypluginzipkin:\n    type: konnect:GatewayPluginZipkin\n    name: my_gatewaypluginzipkin\n    properties:\n      config:\n        connectTimeout: 1.674102719e+09\n        defaultHeaderType: b3-single\n        defaultServiceName: '...my_default_service_name...'\n        headerType: ignore\n        httpEndpoint: '...my_http_endpoint...'\n        httpResponseHeaderForTraceid: '...my_http_response_header_for_traceid...'\n        httpSpanName: method_path\n        includeCredential: false\n        localServiceName: '...my_local_service_name...'\n        phaseDurationFlavor: annotations\n        propagation:\n          clears:\n            - '...'\n          defaultFormat: instana\n          extracts:\n            - datadog\n          injects:\n            - b3\n        queue:\n          concurrencyLimit: 1\n          initialRetryDelay: 489129.82\n          maxBatchSize: 540049\n          maxBytes: 6\n          maxCoalescingDelay: 2815.46\n          maxEntries: 977371\n          maxRetryDelay: 76225.98\n          maxRetryTime: 2.97\n        readTimeout: 1.936940031e+09\n        sampleRatio: 0.6\n        sendTimeout: 2.045499472e+09\n        staticTags:\n          - name: '...my_name...'\n            value: '...my_value...'\n        tagsHeader: '...my_tags_header...'\n        traceidByteCount: 8\n      consumer:\n        id: '...my_id...'\n      controlPlaneId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      createdAt: 6\n      enabled: false\n      gatewayPluginZipkinId: '...my_id...'\n      instanceName: '...my_instance_name...'\n      ordering:\n        after:\n          accesses:\n            - '...'\n        before:\n          accesses:\n            - '...'\n      partials:\n        - id: '...my_id...'\n          name: '...my_name...'\n          path: '...my_path...'\n      protocols:\n        - tcp\n      route:\n        id: '...my_id...'\n      service:\n        id: '...my_id...'\n      tags:\n        - '...'\n      updatedAt: 3\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_gateway_plugin_zipkin.my_konnect_gateway_plugin_zipkin\n\n  id = jsonencode({\n\n    control_plane_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/gatewayPluginZipkin:GatewayPluginZipkin my_konnect_gateway_plugin_zipkin '{\"control_plane_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"3473c251-5b6c-4f45-b1ff-7ede735a366d\"}'\n```\n\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginZipkinConfig:GatewayPluginZipkinConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginZipkinConsumer:GatewayPluginZipkinConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginZipkinId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginZipkinOrdering:GatewayPluginZipkinOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginZipkinPartial:GatewayPluginZipkinPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginZipkinRoute:GatewayPluginZipkinRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginZipkinService:GatewayPluginZipkinService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object","required":["config","consumer","controlPlaneId","createdAt","enabled","gatewayPluginZipkinId","ordering","protocols","route","service","updatedAt"],"inputProperties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginZipkinConfig:GatewayPluginZipkinConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginZipkinConsumer:GatewayPluginZipkinConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginZipkinId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginZipkinOrdering:GatewayPluginZipkinOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginZipkinPartial:GatewayPluginZipkinPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginZipkinRoute:GatewayPluginZipkinRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginZipkinService:GatewayPluginZipkinService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"requiredInputs":["controlPlaneId"],"stateInputs":{"description":"Input properties used for looking up and filtering GatewayPluginZipkin resources.\n","properties":{"config":{"$ref":"#/types/konnect:index%2FGatewayPluginZipkinConfig:GatewayPluginZipkinConfig"},"consumer":{"$ref":"#/types/konnect:index%2FGatewayPluginZipkinConsumer:GatewayPluginZipkinConsumer","description":"If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the plugin is applied. Default: true\n"},"gatewayPluginZipkinId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"instanceName":{"type":"string","description":"A unique string representing a UTF-8 encoded name.\n"},"ordering":{"$ref":"#/types/konnect:index%2FGatewayPluginZipkinOrdering:GatewayPluginZipkinOrdering"},"partials":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayPluginZipkinPartial:GatewayPluginZipkinPartial"},"description":"A list of partials to be used by the plugin.\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"A set of strings representing protocols. Default: [\"grpc\",\"grpcs\",\"http\",\"https\"]\n"},"route":{"$ref":"#/types/konnect:index%2FGatewayPluginZipkinRoute:GatewayPluginZipkinRoute","description":"If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the route being used.\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayPluginZipkinService:GatewayPluginZipkinService","description":"If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Plugin for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object"}},"konnect:index/gatewayRoute:GatewayRoute":{"description":"GatewayRoute Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myGatewayroute = new konnect.GatewayRoute(\"my_gatewayroute\", {\n    controlPlaneId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    createdAt: 8,\n    destinations: [{\n        ip: \"...my_ip...\",\n        port: 47938,\n    }],\n    headers: {\n        key: [],\n    },\n    hosts: [\"...\"],\n    httpsRedirectStatusCode: 308,\n    gatewayRouteId: \"...my_id...\",\n    methods: [\"...\"],\n    name: \"...my_name...\",\n    pathHandling: \"v0\",\n    paths: [\"...\"],\n    preserveHost: false,\n    protocols: [\"tcp\"],\n    regexPriority: 9,\n    requestBuffering: true,\n    responseBuffering: false,\n    service: {\n        id: \"...my_id...\",\n    },\n    snis: [\"...\"],\n    sources: [{\n        ip: \"...my_ip...\",\n        port: 633,\n    }],\n    stripPath: true,\n    tags: [\"...\"],\n    updatedAt: 6,\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_gatewayroute = konnect.GatewayRoute(\"my_gatewayroute\",\n    control_plane_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    created_at=8,\n    destinations=[{\n        \"ip\": \"...my_ip...\",\n        \"port\": 47938,\n    }],\n    headers={\n        \"key\": [],\n    },\n    hosts=[\"...\"],\n    https_redirect_status_code=308,\n    gateway_route_id=\"...my_id...\",\n    methods=[\"...\"],\n    name=\"...my_name...\",\n    path_handling=\"v0\",\n    paths=[\"...\"],\n    preserve_host=False,\n    protocols=[\"tcp\"],\n    regex_priority=9,\n    request_buffering=True,\n    response_buffering=False,\n    service={\n        \"id\": \"...my_id...\",\n    },\n    snis=[\"...\"],\n    sources=[{\n        \"ip\": \"...my_ip...\",\n        \"port\": 633,\n    }],\n    strip_path=True,\n    tags=[\"...\"],\n    updated_at=6)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myGatewayroute = new Konnect.GatewayRoute(\"my_gatewayroute\", new()\n    {\n        ControlPlaneId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        CreatedAt = 8,\n        Destinations = new[]\n        {\n            new Konnect.Inputs.GatewayRouteDestinationArgs\n            {\n                Ip = \"...my_ip...\",\n                Port = 47938,\n            },\n        },\n        Headers = \n        {\n            { \"key\", new[] {} },\n        },\n        Hosts = new[]\n        {\n            \"...\",\n        },\n        HttpsRedirectStatusCode = 308,\n        GatewayRouteId = \"...my_id...\",\n        Methods = new[]\n        {\n            \"...\",\n        },\n        Name = \"...my_name...\",\n        PathHandling = \"v0\",\n        Paths = new[]\n        {\n            \"...\",\n        },\n        PreserveHost = false,\n        Protocols = new[]\n        {\n            \"tcp\",\n        },\n        RegexPriority = 9,\n        RequestBuffering = true,\n        ResponseBuffering = false,\n        Service = new Konnect.Inputs.GatewayRouteServiceArgs\n        {\n            Id = \"...my_id...\",\n        },\n        Snis = new[]\n        {\n            \"...\",\n        },\n        Sources = new[]\n        {\n            new Konnect.Inputs.GatewayRouteSourceArgs\n            {\n                Ip = \"...my_ip...\",\n                Port = 633,\n            },\n        },\n        StripPath = true,\n        Tags = new[]\n        {\n            \"...\",\n        },\n        UpdatedAt = 6,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewGatewayRoute(ctx, \"my_gatewayroute\", \u0026konnect.GatewayRouteArgs{\n\t\t\tControlPlaneId: pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tCreatedAt:      pulumi.Float64(8),\n\t\t\tDestinations: konnect.GatewayRouteDestinationArray{\n\t\t\t\t\u0026konnect.GatewayRouteDestinationArgs{\n\t\t\t\t\tIp:   pulumi.String(\"...my_ip...\"),\n\t\t\t\t\tPort: pulumi.Float64(47938),\n\t\t\t\t},\n\t\t\t},\n\t\t\tHeaders: pulumi.StringArrayMap{\n\t\t\t\t\"key\": pulumi.StringArray{},\n\t\t\t},\n\t\t\tHosts: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"...\"),\n\t\t\t},\n\t\t\tHttpsRedirectStatusCode: pulumi.Float64(308),\n\t\t\tGatewayRouteId:          pulumi.String(\"...my_id...\"),\n\t\t\tMethods: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"...\"),\n\t\t\t},\n\t\t\tName:         pulumi.String(\"...my_name...\"),\n\t\t\tPathHandling: pulumi.String(\"v0\"),\n\t\t\tPaths: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"...\"),\n\t\t\t},\n\t\t\tPreserveHost: pulumi.Bool(false),\n\t\t\tProtocols: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"tcp\"),\n\t\t\t},\n\t\t\tRegexPriority:     pulumi.Float64(9),\n\t\t\tRequestBuffering:  pulumi.Bool(true),\n\t\t\tResponseBuffering: pulumi.Bool(false),\n\t\t\tService: \u0026konnect.GatewayRouteServiceArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tSnis: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"...\"),\n\t\t\t},\n\t\t\tSources: konnect.GatewayRouteSourceArray{\n\t\t\t\t\u0026konnect.GatewayRouteSourceArgs{\n\t\t\t\t\tIp:   pulumi.String(\"...my_ip...\"),\n\t\t\t\t\tPort: pulumi.Float64(633),\n\t\t\t\t},\n\t\t\t},\n\t\t\tStripPath: pulumi.Bool(true),\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"...\"),\n\t\t\t},\n\t\t\tUpdatedAt: pulumi.Float64(6),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.GatewayRoute;\nimport com.pulumi.konnect.GatewayRouteArgs;\nimport com.pulumi.konnect.inputs.GatewayRouteDestinationArgs;\nimport com.pulumi.konnect.inputs.GatewayRouteServiceArgs;\nimport com.pulumi.konnect.inputs.GatewayRouteSourceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myGatewayroute = new GatewayRoute(\"myGatewayroute\", GatewayRouteArgs.builder()\n            .controlPlaneId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .createdAt(8.0)\n            .destinations(GatewayRouteDestinationArgs.builder()\n                .ip(\"...my_ip...\")\n                .port(47938.0)\n                .build())\n            .headers(Map.of(\"key\", ))\n            .hosts(\"...\")\n            .httpsRedirectStatusCode(308.0)\n            .gatewayRouteId(\"...my_id...\")\n            .methods(\"...\")\n            .name(\"...my_name...\")\n            .pathHandling(\"v0\")\n            .paths(\"...\")\n            .preserveHost(false)\n            .protocols(\"tcp\")\n            .regexPriority(9.0)\n            .requestBuffering(true)\n            .responseBuffering(false)\n            .service(GatewayRouteServiceArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .snis(\"...\")\n            .sources(GatewayRouteSourceArgs.builder()\n                .ip(\"...my_ip...\")\n                .port(633.0)\n                .build())\n            .stripPath(true)\n            .tags(\"...\")\n            .updatedAt(6.0)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myGatewayroute:\n    type: konnect:GatewayRoute\n    name: my_gatewayroute\n    properties:\n      controlPlaneId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      createdAt: 8\n      destinations:\n        - ip: '...my_ip...'\n          port: 47938\n      headers:\n        key: []\n      hosts:\n        - '...'\n      httpsRedirectStatusCode: 308\n      gatewayRouteId: '...my_id...'\n      methods:\n        - '...'\n      name: '...my_name...'\n      pathHandling: v0\n      paths:\n        - '...'\n      preserveHost: false\n      protocols:\n        - tcp\n      regexPriority: 9\n      requestBuffering: true\n      responseBuffering: false\n      service:\n        id: '...my_id...'\n      snis:\n        - '...'\n      sources:\n        - ip: '...my_ip...'\n          port: 633\n      stripPath: true\n      tags:\n        - '...'\n      updatedAt: 6\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_gateway_route.my_konnect_gateway_route\n\n  id = jsonencode({\n\n    control_plane_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"a4326a41-aa12-44e3-93e4-6b6e58bfb9d7\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/gatewayRoute:GatewayRoute my_konnect_gateway_route '{\"control_plane_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"a4326a41-aa12-44e3-93e4-6b6e58bfb9d7\"}'\n```\n\n","properties":{"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"destinations":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayRouteDestination:GatewayRouteDestination"},"description":"A list of IP destinations of incoming connections that match this Route when using stream routing. Each entry is an object with fields \"ip\" (optionally in CIDR range notation) and/or \"port\".\n"},"gatewayRouteId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"headers":{"type":"object","additionalProperties":{"type":"array","items":{"type":"string"}},"description":"One or more lists of values indexed by header name that will cause this Route to match if present in the request. The `Host` header cannot be used with this attribute: hosts should be specified using the \u003cspan pulumi-lang-nodejs=\"`hosts`\" pulumi-lang-dotnet=\"`Hosts`\" pulumi-lang-go=\"`hosts`\" pulumi-lang-python=\"`hosts`\" pulumi-lang-yaml=\"`hosts`\" pulumi-lang-java=\"`hosts`\"\u003e`hosts`\u003c/span\u003e attribute. When \u003cspan pulumi-lang-nodejs=\"`headers`\" pulumi-lang-dotnet=\"`Headers`\" pulumi-lang-go=\"`headers`\" pulumi-lang-python=\"`headers`\" pulumi-lang-yaml=\"`headers`\" pulumi-lang-java=\"`headers`\"\u003e`headers`\u003c/span\u003e contains only one value and that value starts with the special prefix `~*`, the value is interpreted as a regular expression.\n"},"hosts":{"type":"array","items":{"type":"string"},"description":"A list of domain names that match this Route. Note that the hosts value is case sensitive.\n"},"httpsRedirectStatusCode":{"type":"number","description":"The status code Kong responds with when all properties of a Route match except the protocol i.e. if the protocol of the request is `HTTP` instead of `HTTPS`. `Location` header is injected by Kong if the field is set to 301, 302, 307 or 308. Note: This config applies only if the Route is configured to only accept the \u003cspan pulumi-lang-nodejs=\"`https`\" pulumi-lang-dotnet=\"`Https`\" pulumi-lang-go=\"`https`\" pulumi-lang-python=\"`https`\" pulumi-lang-yaml=\"`https`\" pulumi-lang-java=\"`https`\"\u003e`https`\u003c/span\u003e protocol. Default: 426; must be one of [\"301\", \"302\", \"307\", \"308\", \"426\"]\n"},"methods":{"type":"array","items":{"type":"string"},"description":"A list of HTTP methods that match this Route.\n"},"name":{"type":"string","description":"The name of the Route. Route names must be unique, and they are case sensitive. For example, there can be two different Routes named \"test\" and \"Test\".\n"},"pathHandling":{"type":"string","description":"Controls how the Service path, Route path and requested path are combined when sending a request to the upstream. See above for a detailed description of each behavior. Default: \"v0\"; must be one of [\"v0\", \"v1\"]\n"},"paths":{"type":"array","items":{"type":"string"},"description":"A list of paths that match this Route.\n"},"preserveHost":{"type":"boolean","description":"When matching a Route via one of the \u003cspan pulumi-lang-nodejs=\"`hosts`\" pulumi-lang-dotnet=\"`Hosts`\" pulumi-lang-go=\"`hosts`\" pulumi-lang-python=\"`hosts`\" pulumi-lang-yaml=\"`hosts`\" pulumi-lang-java=\"`hosts`\"\u003e`hosts`\u003c/span\u003e domain names, use the request `Host` header in the upstream request headers. If set to \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e, the upstream `Host` header will be that of the Service's \u003cspan pulumi-lang-nodejs=\"`host`\" pulumi-lang-dotnet=\"`Host`\" pulumi-lang-go=\"`host`\" pulumi-lang-python=\"`host`\" pulumi-lang-yaml=\"`host`\" pulumi-lang-java=\"`host`\"\u003e`host`\u003c/span\u003e. Default: false\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"An array of the protocols this Route should allow. See the Route Object section for a list of accepted protocols. When set to only `\"https\"`, HTTP requests are answered with an upgrade error. When set to only `\"http\"`, HTTPS requests are answered with an error. Default: [\"http\",\"https\"]\n"},"regexPriority":{"type":"number","description":"A number used to choose which route resolves a given request when several routes match it using regexes simultaneously. When two routes match the path and have the same \u003cspan pulumi-lang-nodejs=\"`regexPriority`\" pulumi-lang-dotnet=\"`RegexPriority`\" pulumi-lang-go=\"`regexPriority`\" pulumi-lang-python=\"`regex_priority`\" pulumi-lang-yaml=\"`regexPriority`\" pulumi-lang-java=\"`regexPriority`\"\u003e`regex_priority`\u003c/span\u003e, the older one (lowest \u003cspan pulumi-lang-nodejs=\"`createdAt`\" pulumi-lang-dotnet=\"`CreatedAt`\" pulumi-lang-go=\"`createdAt`\" pulumi-lang-python=\"`created_at`\" pulumi-lang-yaml=\"`createdAt`\" pulumi-lang-java=\"`createdAt`\"\u003e`created_at`\u003c/span\u003e) is used. Note that the priority for non-regex routes is different (longer non-regex routes are matched before shorter ones). Default: 0\n"},"requestBuffering":{"type":"boolean","description":"Whether to enable request body buffering or not. With HTTP 1.1, it may make sense to turn this off on services that receive data with chunked transfer encoding. Default: true\n"},"responseBuffering":{"type":"boolean","description":"Whether to enable response body buffering or not. With HTTP 1.1, it may make sense to turn this off on services that send data with chunked transfer encoding. Default: true\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayRouteService:GatewayRouteService","description":"The Service this Route is associated to. This is where the Route proxies traffic to.\n"},"snis":{"type":"array","items":{"type":"string"},"description":"A list of SNIs that match this Route when using stream routing.\n"},"sources":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayRouteSource:GatewayRouteSource"},"description":"A list of IP sources of incoming connections that match this Route when using stream routing. Each entry is an object with fields \"ip\" (optionally in CIDR range notation) and/or \"port\".\n"},"stripPath":{"type":"boolean","description":"When matching a Route via one of the \u003cspan pulumi-lang-nodejs=\"`paths`\" pulumi-lang-dotnet=\"`Paths`\" pulumi-lang-go=\"`paths`\" pulumi-lang-python=\"`paths`\" pulumi-lang-yaml=\"`paths`\" pulumi-lang-java=\"`paths`\"\u003e`paths`\u003c/span\u003e, strip the matching prefix from the upstream request URL. Default: true\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Route for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object","required":["controlPlaneId","createdAt","gatewayRouteId","httpsRedirectStatusCode","name","pathHandling","preserveHost","protocols","regexPriority","requestBuffering","responseBuffering","service","stripPath","updatedAt"],"inputProperties":{"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"destinations":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayRouteDestination:GatewayRouteDestination"},"description":"A list of IP destinations of incoming connections that match this Route when using stream routing. Each entry is an object with fields \"ip\" (optionally in CIDR range notation) and/or \"port\".\n"},"gatewayRouteId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"headers":{"type":"object","additionalProperties":{"type":"array","items":{"type":"string"}},"description":"One or more lists of values indexed by header name that will cause this Route to match if present in the request. The `Host` header cannot be used with this attribute: hosts should be specified using the \u003cspan pulumi-lang-nodejs=\"`hosts`\" pulumi-lang-dotnet=\"`Hosts`\" pulumi-lang-go=\"`hosts`\" pulumi-lang-python=\"`hosts`\" pulumi-lang-yaml=\"`hosts`\" pulumi-lang-java=\"`hosts`\"\u003e`hosts`\u003c/span\u003e attribute. When \u003cspan pulumi-lang-nodejs=\"`headers`\" pulumi-lang-dotnet=\"`Headers`\" pulumi-lang-go=\"`headers`\" pulumi-lang-python=\"`headers`\" pulumi-lang-yaml=\"`headers`\" pulumi-lang-java=\"`headers`\"\u003e`headers`\u003c/span\u003e contains only one value and that value starts with the special prefix `~*`, the value is interpreted as a regular expression.\n"},"hosts":{"type":"array","items":{"type":"string"},"description":"A list of domain names that match this Route. Note that the hosts value is case sensitive.\n"},"httpsRedirectStatusCode":{"type":"number","description":"The status code Kong responds with when all properties of a Route match except the protocol i.e. if the protocol of the request is `HTTP` instead of `HTTPS`. `Location` header is injected by Kong if the field is set to 301, 302, 307 or 308. Note: This config applies only if the Route is configured to only accept the \u003cspan pulumi-lang-nodejs=\"`https`\" pulumi-lang-dotnet=\"`Https`\" pulumi-lang-go=\"`https`\" pulumi-lang-python=\"`https`\" pulumi-lang-yaml=\"`https`\" pulumi-lang-java=\"`https`\"\u003e`https`\u003c/span\u003e protocol. Default: 426; must be one of [\"301\", \"302\", \"307\", \"308\", \"426\"]\n"},"methods":{"type":"array","items":{"type":"string"},"description":"A list of HTTP methods that match this Route.\n"},"name":{"type":"string","description":"The name of the Route. Route names must be unique, and they are case sensitive. For example, there can be two different Routes named \"test\" and \"Test\".\n"},"pathHandling":{"type":"string","description":"Controls how the Service path, Route path and requested path are combined when sending a request to the upstream. See above for a detailed description of each behavior. Default: \"v0\"; must be one of [\"v0\", \"v1\"]\n"},"paths":{"type":"array","items":{"type":"string"},"description":"A list of paths that match this Route.\n"},"preserveHost":{"type":"boolean","description":"When matching a Route via one of the \u003cspan pulumi-lang-nodejs=\"`hosts`\" pulumi-lang-dotnet=\"`Hosts`\" pulumi-lang-go=\"`hosts`\" pulumi-lang-python=\"`hosts`\" pulumi-lang-yaml=\"`hosts`\" pulumi-lang-java=\"`hosts`\"\u003e`hosts`\u003c/span\u003e domain names, use the request `Host` header in the upstream request headers. If set to \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e, the upstream `Host` header will be that of the Service's \u003cspan pulumi-lang-nodejs=\"`host`\" pulumi-lang-dotnet=\"`Host`\" pulumi-lang-go=\"`host`\" pulumi-lang-python=\"`host`\" pulumi-lang-yaml=\"`host`\" pulumi-lang-java=\"`host`\"\u003e`host`\u003c/span\u003e. Default: false\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"An array of the protocols this Route should allow. See the Route Object section for a list of accepted protocols. When set to only `\"https\"`, HTTP requests are answered with an upgrade error. When set to only `\"http\"`, HTTPS requests are answered with an error. Default: [\"http\",\"https\"]\n"},"regexPriority":{"type":"number","description":"A number used to choose which route resolves a given request when several routes match it using regexes simultaneously. When two routes match the path and have the same \u003cspan pulumi-lang-nodejs=\"`regexPriority`\" pulumi-lang-dotnet=\"`RegexPriority`\" pulumi-lang-go=\"`regexPriority`\" pulumi-lang-python=\"`regex_priority`\" pulumi-lang-yaml=\"`regexPriority`\" pulumi-lang-java=\"`regexPriority`\"\u003e`regex_priority`\u003c/span\u003e, the older one (lowest \u003cspan pulumi-lang-nodejs=\"`createdAt`\" pulumi-lang-dotnet=\"`CreatedAt`\" pulumi-lang-go=\"`createdAt`\" pulumi-lang-python=\"`created_at`\" pulumi-lang-yaml=\"`createdAt`\" pulumi-lang-java=\"`createdAt`\"\u003e`created_at`\u003c/span\u003e) is used. Note that the priority for non-regex routes is different (longer non-regex routes are matched before shorter ones). Default: 0\n"},"requestBuffering":{"type":"boolean","description":"Whether to enable request body buffering or not. With HTTP 1.1, it may make sense to turn this off on services that receive data with chunked transfer encoding. Default: true\n"},"responseBuffering":{"type":"boolean","description":"Whether to enable response body buffering or not. With HTTP 1.1, it may make sense to turn this off on services that send data with chunked transfer encoding. Default: true\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayRouteService:GatewayRouteService","description":"The Service this Route is associated to. This is where the Route proxies traffic to.\n"},"snis":{"type":"array","items":{"type":"string"},"description":"A list of SNIs that match this Route when using stream routing.\n"},"sources":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayRouteSource:GatewayRouteSource"},"description":"A list of IP sources of incoming connections that match this Route when using stream routing. Each entry is an object with fields \"ip\" (optionally in CIDR range notation) and/or \"port\".\n"},"stripPath":{"type":"boolean","description":"When matching a Route via one of the \u003cspan pulumi-lang-nodejs=\"`paths`\" pulumi-lang-dotnet=\"`Paths`\" pulumi-lang-go=\"`paths`\" pulumi-lang-python=\"`paths`\" pulumi-lang-yaml=\"`paths`\" pulumi-lang-java=\"`paths`\"\u003e`paths`\u003c/span\u003e, strip the matching prefix from the upstream request URL. Default: true\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Route for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"requiredInputs":["controlPlaneId"],"stateInputs":{"description":"Input properties used for looking up and filtering GatewayRoute resources.\n","properties":{"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"destinations":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayRouteDestination:GatewayRouteDestination"},"description":"A list of IP destinations of incoming connections that match this Route when using stream routing. Each entry is an object with fields \"ip\" (optionally in CIDR range notation) and/or \"port\".\n"},"gatewayRouteId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"headers":{"type":"object","additionalProperties":{"type":"array","items":{"type":"string"}},"description":"One or more lists of values indexed by header name that will cause this Route to match if present in the request. The `Host` header cannot be used with this attribute: hosts should be specified using the \u003cspan pulumi-lang-nodejs=\"`hosts`\" pulumi-lang-dotnet=\"`Hosts`\" pulumi-lang-go=\"`hosts`\" pulumi-lang-python=\"`hosts`\" pulumi-lang-yaml=\"`hosts`\" pulumi-lang-java=\"`hosts`\"\u003e`hosts`\u003c/span\u003e attribute. When \u003cspan pulumi-lang-nodejs=\"`headers`\" pulumi-lang-dotnet=\"`Headers`\" pulumi-lang-go=\"`headers`\" pulumi-lang-python=\"`headers`\" pulumi-lang-yaml=\"`headers`\" pulumi-lang-java=\"`headers`\"\u003e`headers`\u003c/span\u003e contains only one value and that value starts with the special prefix `~*`, the value is interpreted as a regular expression.\n"},"hosts":{"type":"array","items":{"type":"string"},"description":"A list of domain names that match this Route. Note that the hosts value is case sensitive.\n"},"httpsRedirectStatusCode":{"type":"number","description":"The status code Kong responds with when all properties of a Route match except the protocol i.e. if the protocol of the request is `HTTP` instead of `HTTPS`. `Location` header is injected by Kong if the field is set to 301, 302, 307 or 308. Note: This config applies only if the Route is configured to only accept the \u003cspan pulumi-lang-nodejs=\"`https`\" pulumi-lang-dotnet=\"`Https`\" pulumi-lang-go=\"`https`\" pulumi-lang-python=\"`https`\" pulumi-lang-yaml=\"`https`\" pulumi-lang-java=\"`https`\"\u003e`https`\u003c/span\u003e protocol. Default: 426; must be one of [\"301\", \"302\", \"307\", \"308\", \"426\"]\n"},"methods":{"type":"array","items":{"type":"string"},"description":"A list of HTTP methods that match this Route.\n"},"name":{"type":"string","description":"The name of the Route. Route names must be unique, and they are case sensitive. For example, there can be two different Routes named \"test\" and \"Test\".\n"},"pathHandling":{"type":"string","description":"Controls how the Service path, Route path and requested path are combined when sending a request to the upstream. See above for a detailed description of each behavior. Default: \"v0\"; must be one of [\"v0\", \"v1\"]\n"},"paths":{"type":"array","items":{"type":"string"},"description":"A list of paths that match this Route.\n"},"preserveHost":{"type":"boolean","description":"When matching a Route via one of the \u003cspan pulumi-lang-nodejs=\"`hosts`\" pulumi-lang-dotnet=\"`Hosts`\" pulumi-lang-go=\"`hosts`\" pulumi-lang-python=\"`hosts`\" pulumi-lang-yaml=\"`hosts`\" pulumi-lang-java=\"`hosts`\"\u003e`hosts`\u003c/span\u003e domain names, use the request `Host` header in the upstream request headers. If set to \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e, the upstream `Host` header will be that of the Service's \u003cspan pulumi-lang-nodejs=\"`host`\" pulumi-lang-dotnet=\"`Host`\" pulumi-lang-go=\"`host`\" pulumi-lang-python=\"`host`\" pulumi-lang-yaml=\"`host`\" pulumi-lang-java=\"`host`\"\u003e`host`\u003c/span\u003e. Default: false\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"An array of the protocols this Route should allow. See the Route Object section for a list of accepted protocols. When set to only `\"https\"`, HTTP requests are answered with an upgrade error. When set to only `\"http\"`, HTTPS requests are answered with an error. Default: [\"http\",\"https\"]\n"},"regexPriority":{"type":"number","description":"A number used to choose which route resolves a given request when several routes match it using regexes simultaneously. When two routes match the path and have the same \u003cspan pulumi-lang-nodejs=\"`regexPriority`\" pulumi-lang-dotnet=\"`RegexPriority`\" pulumi-lang-go=\"`regexPriority`\" pulumi-lang-python=\"`regex_priority`\" pulumi-lang-yaml=\"`regexPriority`\" pulumi-lang-java=\"`regexPriority`\"\u003e`regex_priority`\u003c/span\u003e, the older one (lowest \u003cspan pulumi-lang-nodejs=\"`createdAt`\" pulumi-lang-dotnet=\"`CreatedAt`\" pulumi-lang-go=\"`createdAt`\" pulumi-lang-python=\"`created_at`\" pulumi-lang-yaml=\"`createdAt`\" pulumi-lang-java=\"`createdAt`\"\u003e`created_at`\u003c/span\u003e) is used. Note that the priority for non-regex routes is different (longer non-regex routes are matched before shorter ones). Default: 0\n"},"requestBuffering":{"type":"boolean","description":"Whether to enable request body buffering or not. With HTTP 1.1, it may make sense to turn this off on services that receive data with chunked transfer encoding. Default: true\n"},"responseBuffering":{"type":"boolean","description":"Whether to enable response body buffering or not. With HTTP 1.1, it may make sense to turn this off on services that send data with chunked transfer encoding. Default: true\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayRouteService:GatewayRouteService","description":"The Service this Route is associated to. This is where the Route proxies traffic to.\n"},"snis":{"type":"array","items":{"type":"string"},"description":"A list of SNIs that match this Route when using stream routing.\n"},"sources":{"type":"array","items":{"$ref":"#/types/konnect:index%2FGatewayRouteSource:GatewayRouteSource"},"description":"A list of IP sources of incoming connections that match this Route when using stream routing. Each entry is an object with fields \"ip\" (optionally in CIDR range notation) and/or \"port\".\n"},"stripPath":{"type":"boolean","description":"When matching a Route via one of the \u003cspan pulumi-lang-nodejs=\"`paths`\" pulumi-lang-dotnet=\"`Paths`\" pulumi-lang-go=\"`paths`\" pulumi-lang-python=\"`paths`\" pulumi-lang-yaml=\"`paths`\" pulumi-lang-java=\"`paths`\"\u003e`paths`\u003c/span\u003e, strip the matching prefix from the upstream request URL. Default: true\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Route for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object"}},"konnect:index/gatewayRouteExpression:GatewayRouteExpression":{"description":"GatewayRouteExpression Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myGatewayrouteexpression = new konnect.GatewayRouteExpression(\"my_gatewayrouteexpression\", {\n    controlPlaneId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    createdAt: 4,\n    expression: \"...my_expression...\",\n    httpsRedirectStatusCode: 308,\n    gatewayRouteExpressionId: \"...my_id...\",\n    name: \"...my_name...\",\n    pathHandling: \"v0\",\n    preserveHost: true,\n    priority: 41079493899723,\n    protocols: [\"http\"],\n    requestBuffering: false,\n    responseBuffering: true,\n    service: {\n        id: \"...my_id...\",\n    },\n    stripPath: true,\n    tags: [\"...\"],\n    updatedAt: 8,\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_gatewayrouteexpression = konnect.GatewayRouteExpression(\"my_gatewayrouteexpression\",\n    control_plane_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    created_at=4,\n    expression=\"...my_expression...\",\n    https_redirect_status_code=308,\n    gateway_route_expression_id=\"...my_id...\",\n    name=\"...my_name...\",\n    path_handling=\"v0\",\n    preserve_host=True,\n    priority=41079493899723,\n    protocols=[\"http\"],\n    request_buffering=False,\n    response_buffering=True,\n    service={\n        \"id\": \"...my_id...\",\n    },\n    strip_path=True,\n    tags=[\"...\"],\n    updated_at=8)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myGatewayrouteexpression = new Konnect.GatewayRouteExpression(\"my_gatewayrouteexpression\", new()\n    {\n        ControlPlaneId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        CreatedAt = 4,\n        Expression = \"...my_expression...\",\n        HttpsRedirectStatusCode = 308,\n        GatewayRouteExpressionId = \"...my_id...\",\n        Name = \"...my_name...\",\n        PathHandling = \"v0\",\n        PreserveHost = true,\n        Priority = 41079493899723,\n        Protocols = new[]\n        {\n            \"http\",\n        },\n        RequestBuffering = false,\n        ResponseBuffering = true,\n        Service = new Konnect.Inputs.GatewayRouteExpressionServiceArgs\n        {\n            Id = \"...my_id...\",\n        },\n        StripPath = true,\n        Tags = new[]\n        {\n            \"...\",\n        },\n        UpdatedAt = 8,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewGatewayRouteExpression(ctx, \"my_gatewayrouteexpression\", \u0026konnect.GatewayRouteExpressionArgs{\n\t\t\tControlPlaneId:           pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tCreatedAt:                pulumi.Float64(4),\n\t\t\tExpression:               pulumi.String(\"...my_expression...\"),\n\t\t\tHttpsRedirectStatusCode:  pulumi.Float64(308),\n\t\t\tGatewayRouteExpressionId: pulumi.String(\"...my_id...\"),\n\t\t\tName:                     pulumi.String(\"...my_name...\"),\n\t\t\tPathHandling:             pulumi.String(\"v0\"),\n\t\t\tPreserveHost:             pulumi.Bool(true),\n\t\t\tPriority:                 pulumi.Float64(41079493899723),\n\t\t\tProtocols: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"http\"),\n\t\t\t},\n\t\t\tRequestBuffering:  pulumi.Bool(false),\n\t\t\tResponseBuffering: pulumi.Bool(true),\n\t\t\tService: \u0026konnect.GatewayRouteExpressionServiceArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tStripPath: pulumi.Bool(true),\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"...\"),\n\t\t\t},\n\t\t\tUpdatedAt: pulumi.Float64(8),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.GatewayRouteExpression;\nimport com.pulumi.konnect.GatewayRouteExpressionArgs;\nimport com.pulumi.konnect.inputs.GatewayRouteExpressionServiceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myGatewayrouteexpression = new GatewayRouteExpression(\"myGatewayrouteexpression\", GatewayRouteExpressionArgs.builder()\n            .controlPlaneId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .createdAt(4.0)\n            .expression(\"...my_expression...\")\n            .httpsRedirectStatusCode(308.0)\n            .gatewayRouteExpressionId(\"...my_id...\")\n            .name(\"...my_name...\")\n            .pathHandling(\"v0\")\n            .preserveHost(true)\n            .priority(41079493899723.0)\n            .protocols(\"http\")\n            .requestBuffering(false)\n            .responseBuffering(true)\n            .service(GatewayRouteExpressionServiceArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .stripPath(true)\n            .tags(\"...\")\n            .updatedAt(8.0)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myGatewayrouteexpression:\n    type: konnect:GatewayRouteExpression\n    name: my_gatewayrouteexpression\n    properties:\n      controlPlaneId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      createdAt: 4\n      expression: '...my_expression...'\n      httpsRedirectStatusCode: 308\n      gatewayRouteExpressionId: '...my_id...'\n      name: '...my_name...'\n      pathHandling: v0\n      preserveHost: true\n      priority: 4.1079493899723e+13\n      protocols:\n        - http\n      requestBuffering: false\n      responseBuffering: true\n      service:\n        id: '...my_id...'\n      stripPath: true\n      tags:\n        - '...'\n      updatedAt: 8\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_gateway_route_expression.my_konnect_gateway_route_expression\n\n  id = jsonencode({\n\n    control_plane_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"a4326a41-aa12-44e3-93e4-6b6e58bfb9d7\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/gatewayRouteExpression:GatewayRouteExpression my_konnect_gateway_route_expression '{\"control_plane_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"a4326a41-aa12-44e3-93e4-6b6e58bfb9d7\"}'\n```\n\n","properties":{"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"expression":{"type":"string","description":"Use Router Expression to perform route match. This option is only available when \u003cspan pulumi-lang-nodejs=\"`routerFlavor`\" pulumi-lang-dotnet=\"`RouterFlavor`\" pulumi-lang-go=\"`routerFlavor`\" pulumi-lang-python=\"`router_flavor`\" pulumi-lang-yaml=\"`routerFlavor`\" pulumi-lang-java=\"`routerFlavor`\"\u003e`router_flavor`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`expressions`\" pulumi-lang-dotnet=\"`Expressions`\" pulumi-lang-go=\"`expressions`\" pulumi-lang-python=\"`expressions`\" pulumi-lang-yaml=\"`expressions`\" pulumi-lang-java=\"`expressions`\"\u003e`expressions`\u003c/span\u003e.\n"},"gatewayRouteExpressionId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"httpsRedirectStatusCode":{"type":"number","description":"The status code Kong responds with when all properties of a Route match except the protocol i.e. if the protocol of the request is `HTTP` instead of `HTTPS`. `Location` header is injected by Kong if the field is set to 301, 302, 307 or 308. Note: This config applies only if the Route is configured to only accept the \u003cspan pulumi-lang-nodejs=\"`https`\" pulumi-lang-dotnet=\"`Https`\" pulumi-lang-go=\"`https`\" pulumi-lang-python=\"`https`\" pulumi-lang-yaml=\"`https`\" pulumi-lang-java=\"`https`\"\u003e`https`\u003c/span\u003e protocol. Default: 426; must be one of [\"301\", \"302\", \"307\", \"308\", \"426\"]\n"},"name":{"type":"string","description":"The name of the Route. Route names must be unique, and they are case sensitive. For example, there can be two different Routes named \"test\" and \"Test\".\n"},"pathHandling":{"type":"string","description":"Controls how the Service path, Route path and requested path are combined when sending a request to the upstream. See above for a detailed description of each behavior. Default: \"v0\"; must be one of [\"v0\", \"v1\"]\n"},"preserveHost":{"type":"boolean","description":"When matching a Route via one of the \u003cspan pulumi-lang-nodejs=\"`hosts`\" pulumi-lang-dotnet=\"`Hosts`\" pulumi-lang-go=\"`hosts`\" pulumi-lang-python=\"`hosts`\" pulumi-lang-yaml=\"`hosts`\" pulumi-lang-java=\"`hosts`\"\u003e`hosts`\u003c/span\u003e domain names, use the request `Host` header in the upstream request headers. If set to \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e, the upstream `Host` header will be that of the Service's \u003cspan pulumi-lang-nodejs=\"`host`\" pulumi-lang-dotnet=\"`Host`\" pulumi-lang-go=\"`host`\" pulumi-lang-python=\"`host`\" pulumi-lang-yaml=\"`host`\" pulumi-lang-java=\"`host`\"\u003e`host`\u003c/span\u003e. Default: false\n"},"priority":{"type":"number","description":"A number used to specify the matching order for expression routes. The higher the \u003cspan pulumi-lang-nodejs=\"`priority`\" pulumi-lang-dotnet=\"`Priority`\" pulumi-lang-go=\"`priority`\" pulumi-lang-python=\"`priority`\" pulumi-lang-yaml=\"`priority`\" pulumi-lang-java=\"`priority`\"\u003e`priority`\u003c/span\u003e, the sooner an route will be evaluated. This field is ignored unless \u003cspan pulumi-lang-nodejs=\"`expression`\" pulumi-lang-dotnet=\"`Expression`\" pulumi-lang-go=\"`expression`\" pulumi-lang-python=\"`expression`\" pulumi-lang-yaml=\"`expression`\" pulumi-lang-java=\"`expression`\"\u003e`expression`\u003c/span\u003e field is set. Default: 0\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"An array of the protocols this Route should allow. See the Route Object section for a list of accepted protocols. When set to only `\"https\"`, HTTP requests are answered with an upgrade error. When set to only `\"http\"`, HTTPS requests are answered with an error. Default: [\"http\",\"https\"]\n"},"requestBuffering":{"type":"boolean","description":"Whether to enable request body buffering or not. With HTTP 1.1, it may make sense to turn this off on services that receive data with chunked transfer encoding. Default: true\n"},"responseBuffering":{"type":"boolean","description":"Whether to enable response body buffering or not. With HTTP 1.1, it may make sense to turn this off on services that send data with chunked transfer encoding. Default: true\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayRouteExpressionService:GatewayRouteExpressionService","description":"The Service this Route is associated to. This is where the Route proxies traffic to.\n"},"stripPath":{"type":"boolean","description":"When matching a Route via one of the \u003cspan pulumi-lang-nodejs=\"`paths`\" pulumi-lang-dotnet=\"`Paths`\" pulumi-lang-go=\"`paths`\" pulumi-lang-python=\"`paths`\" pulumi-lang-yaml=\"`paths`\" pulumi-lang-java=\"`paths`\"\u003e`paths`\u003c/span\u003e, strip the matching prefix from the upstream request URL. Default: true\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Route for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object","required":["controlPlaneId","createdAt","gatewayRouteExpressionId","httpsRedirectStatusCode","name","pathHandling","preserveHost","priority","protocols","requestBuffering","responseBuffering","service","stripPath","updatedAt"],"inputProperties":{"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"expression":{"type":"string","description":"Use Router Expression to perform route match. This option is only available when \u003cspan pulumi-lang-nodejs=\"`routerFlavor`\" pulumi-lang-dotnet=\"`RouterFlavor`\" pulumi-lang-go=\"`routerFlavor`\" pulumi-lang-python=\"`router_flavor`\" pulumi-lang-yaml=\"`routerFlavor`\" pulumi-lang-java=\"`routerFlavor`\"\u003e`router_flavor`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`expressions`\" pulumi-lang-dotnet=\"`Expressions`\" pulumi-lang-go=\"`expressions`\" pulumi-lang-python=\"`expressions`\" pulumi-lang-yaml=\"`expressions`\" pulumi-lang-java=\"`expressions`\"\u003e`expressions`\u003c/span\u003e.\n"},"gatewayRouteExpressionId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"httpsRedirectStatusCode":{"type":"number","description":"The status code Kong responds with when all properties of a Route match except the protocol i.e. if the protocol of the request is `HTTP` instead of `HTTPS`. `Location` header is injected by Kong if the field is set to 301, 302, 307 or 308. Note: This config applies only if the Route is configured to only accept the \u003cspan pulumi-lang-nodejs=\"`https`\" pulumi-lang-dotnet=\"`Https`\" pulumi-lang-go=\"`https`\" pulumi-lang-python=\"`https`\" pulumi-lang-yaml=\"`https`\" pulumi-lang-java=\"`https`\"\u003e`https`\u003c/span\u003e protocol. Default: 426; must be one of [\"301\", \"302\", \"307\", \"308\", \"426\"]\n"},"name":{"type":"string","description":"The name of the Route. Route names must be unique, and they are case sensitive. For example, there can be two different Routes named \"test\" and \"Test\".\n"},"pathHandling":{"type":"string","description":"Controls how the Service path, Route path and requested path are combined when sending a request to the upstream. See above for a detailed description of each behavior. Default: \"v0\"; must be one of [\"v0\", \"v1\"]\n"},"preserveHost":{"type":"boolean","description":"When matching a Route via one of the \u003cspan pulumi-lang-nodejs=\"`hosts`\" pulumi-lang-dotnet=\"`Hosts`\" pulumi-lang-go=\"`hosts`\" pulumi-lang-python=\"`hosts`\" pulumi-lang-yaml=\"`hosts`\" pulumi-lang-java=\"`hosts`\"\u003e`hosts`\u003c/span\u003e domain names, use the request `Host` header in the upstream request headers. If set to \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e, the upstream `Host` header will be that of the Service's \u003cspan pulumi-lang-nodejs=\"`host`\" pulumi-lang-dotnet=\"`Host`\" pulumi-lang-go=\"`host`\" pulumi-lang-python=\"`host`\" pulumi-lang-yaml=\"`host`\" pulumi-lang-java=\"`host`\"\u003e`host`\u003c/span\u003e. Default: false\n"},"priority":{"type":"number","description":"A number used to specify the matching order for expression routes. The higher the \u003cspan pulumi-lang-nodejs=\"`priority`\" pulumi-lang-dotnet=\"`Priority`\" pulumi-lang-go=\"`priority`\" pulumi-lang-python=\"`priority`\" pulumi-lang-yaml=\"`priority`\" pulumi-lang-java=\"`priority`\"\u003e`priority`\u003c/span\u003e, the sooner an route will be evaluated. This field is ignored unless \u003cspan pulumi-lang-nodejs=\"`expression`\" pulumi-lang-dotnet=\"`Expression`\" pulumi-lang-go=\"`expression`\" pulumi-lang-python=\"`expression`\" pulumi-lang-yaml=\"`expression`\" pulumi-lang-java=\"`expression`\"\u003e`expression`\u003c/span\u003e field is set. Default: 0\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"An array of the protocols this Route should allow. See the Route Object section for a list of accepted protocols. When set to only `\"https\"`, HTTP requests are answered with an upgrade error. When set to only `\"http\"`, HTTPS requests are answered with an error. Default: [\"http\",\"https\"]\n"},"requestBuffering":{"type":"boolean","description":"Whether to enable request body buffering or not. With HTTP 1.1, it may make sense to turn this off on services that receive data with chunked transfer encoding. Default: true\n"},"responseBuffering":{"type":"boolean","description":"Whether to enable response body buffering or not. With HTTP 1.1, it may make sense to turn this off on services that send data with chunked transfer encoding. Default: true\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayRouteExpressionService:GatewayRouteExpressionService","description":"The Service this Route is associated to. This is where the Route proxies traffic to.\n"},"stripPath":{"type":"boolean","description":"When matching a Route via one of the \u003cspan pulumi-lang-nodejs=\"`paths`\" pulumi-lang-dotnet=\"`Paths`\" pulumi-lang-go=\"`paths`\" pulumi-lang-python=\"`paths`\" pulumi-lang-yaml=\"`paths`\" pulumi-lang-java=\"`paths`\"\u003e`paths`\u003c/span\u003e, strip the matching prefix from the upstream request URL. Default: true\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Route for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"requiredInputs":["controlPlaneId"],"stateInputs":{"description":"Input properties used for looking up and filtering GatewayRouteExpression resources.\n","properties":{"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"expression":{"type":"string","description":"Use Router Expression to perform route match. This option is only available when \u003cspan pulumi-lang-nodejs=\"`routerFlavor`\" pulumi-lang-dotnet=\"`RouterFlavor`\" pulumi-lang-go=\"`routerFlavor`\" pulumi-lang-python=\"`router_flavor`\" pulumi-lang-yaml=\"`routerFlavor`\" pulumi-lang-java=\"`routerFlavor`\"\u003e`router_flavor`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`expressions`\" pulumi-lang-dotnet=\"`Expressions`\" pulumi-lang-go=\"`expressions`\" pulumi-lang-python=\"`expressions`\" pulumi-lang-yaml=\"`expressions`\" pulumi-lang-java=\"`expressions`\"\u003e`expressions`\u003c/span\u003e.\n"},"gatewayRouteExpressionId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"httpsRedirectStatusCode":{"type":"number","description":"The status code Kong responds with when all properties of a Route match except the protocol i.e. if the protocol of the request is `HTTP` instead of `HTTPS`. `Location` header is injected by Kong if the field is set to 301, 302, 307 or 308. Note: This config applies only if the Route is configured to only accept the \u003cspan pulumi-lang-nodejs=\"`https`\" pulumi-lang-dotnet=\"`Https`\" pulumi-lang-go=\"`https`\" pulumi-lang-python=\"`https`\" pulumi-lang-yaml=\"`https`\" pulumi-lang-java=\"`https`\"\u003e`https`\u003c/span\u003e protocol. Default: 426; must be one of [\"301\", \"302\", \"307\", \"308\", \"426\"]\n"},"name":{"type":"string","description":"The name of the Route. Route names must be unique, and they are case sensitive. For example, there can be two different Routes named \"test\" and \"Test\".\n"},"pathHandling":{"type":"string","description":"Controls how the Service path, Route path and requested path are combined when sending a request to the upstream. See above for a detailed description of each behavior. Default: \"v0\"; must be one of [\"v0\", \"v1\"]\n"},"preserveHost":{"type":"boolean","description":"When matching a Route via one of the \u003cspan pulumi-lang-nodejs=\"`hosts`\" pulumi-lang-dotnet=\"`Hosts`\" pulumi-lang-go=\"`hosts`\" pulumi-lang-python=\"`hosts`\" pulumi-lang-yaml=\"`hosts`\" pulumi-lang-java=\"`hosts`\"\u003e`hosts`\u003c/span\u003e domain names, use the request `Host` header in the upstream request headers. If set to \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e, the upstream `Host` header will be that of the Service's \u003cspan pulumi-lang-nodejs=\"`host`\" pulumi-lang-dotnet=\"`Host`\" pulumi-lang-go=\"`host`\" pulumi-lang-python=\"`host`\" pulumi-lang-yaml=\"`host`\" pulumi-lang-java=\"`host`\"\u003e`host`\u003c/span\u003e. Default: false\n"},"priority":{"type":"number","description":"A number used to specify the matching order for expression routes. The higher the \u003cspan pulumi-lang-nodejs=\"`priority`\" pulumi-lang-dotnet=\"`Priority`\" pulumi-lang-go=\"`priority`\" pulumi-lang-python=\"`priority`\" pulumi-lang-yaml=\"`priority`\" pulumi-lang-java=\"`priority`\"\u003e`priority`\u003c/span\u003e, the sooner an route will be evaluated. This field is ignored unless \u003cspan pulumi-lang-nodejs=\"`expression`\" pulumi-lang-dotnet=\"`Expression`\" pulumi-lang-go=\"`expression`\" pulumi-lang-python=\"`expression`\" pulumi-lang-yaml=\"`expression`\" pulumi-lang-java=\"`expression`\"\u003e`expression`\u003c/span\u003e field is set. Default: 0\n"},"protocols":{"type":"array","items":{"type":"string"},"description":"An array of the protocols this Route should allow. See the Route Object section for a list of accepted protocols. When set to only `\"https\"`, HTTP requests are answered with an upgrade error. When set to only `\"http\"`, HTTPS requests are answered with an error. Default: [\"http\",\"https\"]\n"},"requestBuffering":{"type":"boolean","description":"Whether to enable request body buffering or not. With HTTP 1.1, it may make sense to turn this off on services that receive data with chunked transfer encoding. Default: true\n"},"responseBuffering":{"type":"boolean","description":"Whether to enable response body buffering or not. With HTTP 1.1, it may make sense to turn this off on services that send data with chunked transfer encoding. Default: true\n"},"service":{"$ref":"#/types/konnect:index%2FGatewayRouteExpressionService:GatewayRouteExpressionService","description":"The Service this Route is associated to. This is where the Route proxies traffic to.\n"},"stripPath":{"type":"boolean","description":"When matching a Route via one of the \u003cspan pulumi-lang-nodejs=\"`paths`\" pulumi-lang-dotnet=\"`Paths`\" pulumi-lang-go=\"`paths`\" pulumi-lang-python=\"`paths`\" pulumi-lang-yaml=\"`paths`\" pulumi-lang-java=\"`paths`\"\u003e`paths`\u003c/span\u003e, strip the matching prefix from the upstream request URL. Default: true\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Route for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object"}},"konnect:index/gatewayService:GatewayService":{"description":"GatewayService Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myGatewayservice = new konnect.GatewayService(\"my_gatewayservice\", {\n    caCertificates: [\"...\"],\n    clientCertificate: {\n        id: \"...my_id...\",\n    },\n    connectTimeout: 1826621898,\n    controlPlaneId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    createdAt: 10,\n    enabled: true,\n    host: \"...my_host...\",\n    gatewayServiceId: \"...my_id...\",\n    name: \"...my_name...\",\n    path: \"...my_path...\",\n    port: 12962,\n    protocol: \"tls\",\n    readTimeout: 985216672,\n    retries: 9489,\n    tags: [\"...\"],\n    tlsSans: {\n        dnsnames: [\"...\"],\n        uris: [\"...\"],\n    },\n    tlsVerify: true,\n    tlsVerifyDepth: 49,\n    updatedAt: 8,\n    writeTimeout: 1780867234,\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_gatewayservice = konnect.GatewayService(\"my_gatewayservice\",\n    ca_certificates=[\"...\"],\n    client_certificate={\n        \"id\": \"...my_id...\",\n    },\n    connect_timeout=1826621898,\n    control_plane_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    created_at=10,\n    enabled=True,\n    host=\"...my_host...\",\n    gateway_service_id=\"...my_id...\",\n    name=\"...my_name...\",\n    path=\"...my_path...\",\n    port=12962,\n    protocol=\"tls\",\n    read_timeout=985216672,\n    retries=9489,\n    tags=[\"...\"],\n    tls_sans={\n        \"dnsnames\": [\"...\"],\n        \"uris\": [\"...\"],\n    },\n    tls_verify=True,\n    tls_verify_depth=49,\n    updated_at=8,\n    write_timeout=1780867234)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myGatewayservice = new Konnect.GatewayService(\"my_gatewayservice\", new()\n    {\n        CaCertificates = new[]\n        {\n            \"...\",\n        },\n        ClientCertificate = new Konnect.Inputs.GatewayServiceClientCertificateArgs\n        {\n            Id = \"...my_id...\",\n        },\n        ConnectTimeout = 1826621898,\n        ControlPlaneId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        CreatedAt = 10,\n        Enabled = true,\n        Host = \"...my_host...\",\n        GatewayServiceId = \"...my_id...\",\n        Name = \"...my_name...\",\n        Path = \"...my_path...\",\n        Port = 12962,\n        Protocol = \"tls\",\n        ReadTimeout = 985216672,\n        Retries = 9489,\n        Tags = new[]\n        {\n            \"...\",\n        },\n        TlsSans = new Konnect.Inputs.GatewayServiceTlsSansArgs\n        {\n            Dnsnames = new[]\n            {\n                \"...\",\n            },\n            Uris = new[]\n            {\n                \"...\",\n            },\n        },\n        TlsVerify = true,\n        TlsVerifyDepth = 49,\n        UpdatedAt = 8,\n        WriteTimeout = 1780867234,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewGatewayService(ctx, \"my_gatewayservice\", \u0026konnect.GatewayServiceArgs{\n\t\t\tCaCertificates: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"...\"),\n\t\t\t},\n\t\t\tClientCertificate: \u0026konnect.GatewayServiceClientCertificateArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tConnectTimeout:   pulumi.Float64(1826621898),\n\t\t\tControlPlaneId:   pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tCreatedAt:        pulumi.Float64(10),\n\t\t\tEnabled:          pulumi.Bool(true),\n\t\t\tHost:             pulumi.String(\"...my_host...\"),\n\t\t\tGatewayServiceId: pulumi.String(\"...my_id...\"),\n\t\t\tName:             pulumi.String(\"...my_name...\"),\n\t\t\tPath:             pulumi.String(\"...my_path...\"),\n\t\t\tPort:             pulumi.Float64(12962),\n\t\t\tProtocol:         pulumi.String(\"tls\"),\n\t\t\tReadTimeout:      pulumi.Float64(985216672),\n\t\t\tRetries:          pulumi.Float64(9489),\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"...\"),\n\t\t\t},\n\t\t\tTlsSans: \u0026konnect.GatewayServiceTlsSansArgs{\n\t\t\t\tDnsnames: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t\tUris: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"...\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tTlsVerify:      pulumi.Bool(true),\n\t\t\tTlsVerifyDepth: pulumi.Float64(49),\n\t\t\tUpdatedAt:      pulumi.Float64(8),\n\t\t\tWriteTimeout:   pulumi.Float64(1780867234),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.GatewayService;\nimport com.pulumi.konnect.GatewayServiceArgs;\nimport com.pulumi.konnect.inputs.GatewayServiceClientCertificateArgs;\nimport com.pulumi.konnect.inputs.GatewayServiceTlsSansArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myGatewayservice = new GatewayService(\"myGatewayservice\", GatewayServiceArgs.builder()\n            .caCertificates(\"...\")\n            .clientCertificate(GatewayServiceClientCertificateArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .connectTimeout(1826621898.0)\n            .controlPlaneId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .createdAt(10.0)\n            .enabled(true)\n            .host(\"...my_host...\")\n            .gatewayServiceId(\"...my_id...\")\n            .name(\"...my_name...\")\n            .path(\"...my_path...\")\n            .port(12962.0)\n            .protocol(\"tls\")\n            .readTimeout(985216672.0)\n            .retries(9489.0)\n            .tags(\"...\")\n            .tlsSans(GatewayServiceTlsSansArgs.builder()\n                .dnsnames(\"...\")\n                .uris(\"...\")\n                .build())\n            .tlsVerify(true)\n            .tlsVerifyDepth(49.0)\n            .updatedAt(8.0)\n            .writeTimeout(1780867234.0)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myGatewayservice:\n    type: konnect:GatewayService\n    name: my_gatewayservice\n    properties:\n      caCertificates:\n        - '...'\n      clientCertificate:\n        id: '...my_id...'\n      connectTimeout: 1.826621898e+09\n      controlPlaneId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      createdAt: 10\n      enabled: true\n      host: '...my_host...'\n      gatewayServiceId: '...my_id...'\n      name: '...my_name...'\n      path: '...my_path...'\n      port: 12962\n      protocol: tls\n      readTimeout: 9.85216672e+08\n      retries: 9489\n      tags:\n        - '...'\n      tlsSans:\n        dnsnames:\n          - '...'\n        uris:\n          - '...'\n      tlsVerify: true\n      tlsVerifyDepth: 49\n      updatedAt: 8\n      writeTimeout: 1.780867234e+09\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_gateway_service.my_konnect_gateway_service\n\n  id = jsonencode({\n\n    control_plane_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"7fca84d6-7d37-4a74-a7b0-93e576089a41\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/gatewayService:GatewayService my_konnect_gateway_service '{\"control_plane_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"7fca84d6-7d37-4a74-a7b0-93e576089a41\"}'\n```\n\n","properties":{"caCertificates":{"type":"array","items":{"type":"string"},"description":"Array of `CA Certificate` object UUIDs that are used to build the trust store while verifying upstream server's TLS certificate. If set to \u003cspan pulumi-lang-nodejs=\"`null`\" pulumi-lang-dotnet=\"`Null`\" pulumi-lang-go=\"`null`\" pulumi-lang-python=\"`null`\" pulumi-lang-yaml=\"`null`\" pulumi-lang-java=\"`null`\"\u003e`null`\u003c/span\u003e when Nginx default is respected. If default CA list in Nginx are not specified and TLS verification is enabled, then handshake with upstream server will always fail (because no CA are trusted).\n"},"clientCertificate":{"$ref":"#/types/konnect:index%2FGatewayServiceClientCertificate:GatewayServiceClientCertificate","description":"Certificate to be used as client certificate while TLS handshaking to the upstream server.\n"},"connectTimeout":{"type":"number","description":"The timeout in milliseconds for establishing a connection to the upstream server. Default: 60000\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the Service is active. If set to \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e, the proxy behavior will be as if any routes attached to it do not exist (404). Default: \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e. Default: true\n"},"gatewayServiceId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"host":{"type":"string","description":"The host of the upstream server. Note that the host value is case sensitive.\n"},"name":{"type":"string","description":"The Service name.\n"},"path":{"type":"string","description":"The path to be used in requests to the upstream server.\n"},"port":{"type":"number","description":"The upstream server port. Default: 80\n"},"protocol":{"type":"string","description":"The protocol used to communicate with the upstream. Default: \"http\"; must be one of [\"grpc\", \"grpcs\", \"http\", \"https\", \"tcp\", \"tls\", \u003cspan pulumi-lang-nodejs=\"\"tlsPassthrough\"\" pulumi-lang-dotnet=\"\"TlsPassthrough\"\" pulumi-lang-go=\"\"tlsPassthrough\"\" pulumi-lang-python=\"\"tls_passthrough\"\" pulumi-lang-yaml=\"\"tlsPassthrough\"\" pulumi-lang-java=\"\"tlsPassthrough\"\"\u003e\"tls_passthrough\"\u003c/span\u003e, \"udp\", \"ws\", \"wss\"]\n"},"readTimeout":{"type":"number","description":"The timeout in milliseconds between two successive read operations for transmitting a request to the upstream server. Default: 60000\n"},"retries":{"type":"number","description":"The number of retries to execute upon failure to proxy. Default: 5\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Service for grouping and filtering.\n"},"tlsSans":{"$ref":"#/types/konnect:index%2FGatewayServiceTlsSans:GatewayServiceTlsSans","description":"Additional Subject Alternative Names that can be matched on Upstream server's TLS certificate (in addition to \u003cspan pulumi-lang-nodejs=\"`host`\" pulumi-lang-dotnet=\"`Host`\" pulumi-lang-go=\"`host`\" pulumi-lang-python=\"`host`\" pulumi-lang-yaml=\"`host`\" pulumi-lang-java=\"`host`\"\u003e`host`\u003c/span\u003e).\n"},"tlsVerify":{"type":"boolean","description":"Whether to enable verification of upstream server TLS certificate. If set to \u003cspan pulumi-lang-nodejs=\"`null`\" pulumi-lang-dotnet=\"`Null`\" pulumi-lang-go=\"`null`\" pulumi-lang-python=\"`null`\" pulumi-lang-yaml=\"`null`\" pulumi-lang-java=\"`null`\"\u003e`null`\u003c/span\u003e, then the Nginx default is respected.\n"},"tlsVerifyDepth":{"type":"number","description":"Maximum depth of chain while verifying Upstream server's TLS certificate. If set to \u003cspan pulumi-lang-nodejs=\"`null`\" pulumi-lang-dotnet=\"`Null`\" pulumi-lang-go=\"`null`\" pulumi-lang-python=\"`null`\" pulumi-lang-yaml=\"`null`\" pulumi-lang-java=\"`null`\"\u003e`null`\u003c/span\u003e, then the Nginx default is respected.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"},"writeTimeout":{"type":"number","description":"The timeout in milliseconds between two successive write operations for transmitting a request to the upstream server. Default: 60000\n"}},"type":"object","required":["clientCertificate","connectTimeout","controlPlaneId","createdAt","enabled","gatewayServiceId","host","name","port","protocol","readTimeout","retries","tlsSans","updatedAt","writeTimeout"],"inputProperties":{"caCertificates":{"type":"array","items":{"type":"string"},"description":"Array of `CA Certificate` object UUIDs that are used to build the trust store while verifying upstream server's TLS certificate. If set to \u003cspan pulumi-lang-nodejs=\"`null`\" pulumi-lang-dotnet=\"`Null`\" pulumi-lang-go=\"`null`\" pulumi-lang-python=\"`null`\" pulumi-lang-yaml=\"`null`\" pulumi-lang-java=\"`null`\"\u003e`null`\u003c/span\u003e when Nginx default is respected. If default CA list in Nginx are not specified and TLS verification is enabled, then handshake with upstream server will always fail (because no CA are trusted).\n"},"clientCertificate":{"$ref":"#/types/konnect:index%2FGatewayServiceClientCertificate:GatewayServiceClientCertificate","description":"Certificate to be used as client certificate while TLS handshaking to the upstream server.\n"},"connectTimeout":{"type":"number","description":"The timeout in milliseconds for establishing a connection to the upstream server. Default: 60000\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the Service is active. If set to \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e, the proxy behavior will be as if any routes attached to it do not exist (404). Default: \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e. Default: true\n"},"gatewayServiceId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"host":{"type":"string","description":"The host of the upstream server. Note that the host value is case sensitive.\n"},"name":{"type":"string","description":"The Service name.\n"},"path":{"type":"string","description":"The path to be used in requests to the upstream server.\n"},"port":{"type":"number","description":"The upstream server port. Default: 80\n"},"protocol":{"type":"string","description":"The protocol used to communicate with the upstream. Default: \"http\"; must be one of [\"grpc\", \"grpcs\", \"http\", \"https\", \"tcp\", \"tls\", \u003cspan pulumi-lang-nodejs=\"\"tlsPassthrough\"\" pulumi-lang-dotnet=\"\"TlsPassthrough\"\" pulumi-lang-go=\"\"tlsPassthrough\"\" pulumi-lang-python=\"\"tls_passthrough\"\" pulumi-lang-yaml=\"\"tlsPassthrough\"\" pulumi-lang-java=\"\"tlsPassthrough\"\"\u003e\"tls_passthrough\"\u003c/span\u003e, \"udp\", \"ws\", \"wss\"]\n"},"readTimeout":{"type":"number","description":"The timeout in milliseconds between two successive read operations for transmitting a request to the upstream server. Default: 60000\n"},"retries":{"type":"number","description":"The number of retries to execute upon failure to proxy. Default: 5\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Service for grouping and filtering.\n"},"tlsSans":{"$ref":"#/types/konnect:index%2FGatewayServiceTlsSans:GatewayServiceTlsSans","description":"Additional Subject Alternative Names that can be matched on Upstream server's TLS certificate (in addition to \u003cspan pulumi-lang-nodejs=\"`host`\" pulumi-lang-dotnet=\"`Host`\" pulumi-lang-go=\"`host`\" pulumi-lang-python=\"`host`\" pulumi-lang-yaml=\"`host`\" pulumi-lang-java=\"`host`\"\u003e`host`\u003c/span\u003e).\n"},"tlsVerify":{"type":"boolean","description":"Whether to enable verification of upstream server TLS certificate. If set to \u003cspan pulumi-lang-nodejs=\"`null`\" pulumi-lang-dotnet=\"`Null`\" pulumi-lang-go=\"`null`\" pulumi-lang-python=\"`null`\" pulumi-lang-yaml=\"`null`\" pulumi-lang-java=\"`null`\"\u003e`null`\u003c/span\u003e, then the Nginx default is respected.\n"},"tlsVerifyDepth":{"type":"number","description":"Maximum depth of chain while verifying Upstream server's TLS certificate. If set to \u003cspan pulumi-lang-nodejs=\"`null`\" pulumi-lang-dotnet=\"`Null`\" pulumi-lang-go=\"`null`\" pulumi-lang-python=\"`null`\" pulumi-lang-yaml=\"`null`\" pulumi-lang-java=\"`null`\"\u003e`null`\u003c/span\u003e, then the Nginx default is respected.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"},"writeTimeout":{"type":"number","description":"The timeout in milliseconds between two successive write operations for transmitting a request to the upstream server. Default: 60000\n"}},"requiredInputs":["controlPlaneId","host"],"stateInputs":{"description":"Input properties used for looking up and filtering GatewayService resources.\n","properties":{"caCertificates":{"type":"array","items":{"type":"string"},"description":"Array of `CA Certificate` object UUIDs that are used to build the trust store while verifying upstream server's TLS certificate. If set to \u003cspan pulumi-lang-nodejs=\"`null`\" pulumi-lang-dotnet=\"`Null`\" pulumi-lang-go=\"`null`\" pulumi-lang-python=\"`null`\" pulumi-lang-yaml=\"`null`\" pulumi-lang-java=\"`null`\"\u003e`null`\u003c/span\u003e when Nginx default is respected. If default CA list in Nginx are not specified and TLS verification is enabled, then handshake with upstream server will always fail (because no CA are trusted).\n"},"clientCertificate":{"$ref":"#/types/konnect:index%2FGatewayServiceClientCertificate:GatewayServiceClientCertificate","description":"Certificate to be used as client certificate while TLS handshaking to the upstream server.\n"},"connectTimeout":{"type":"number","description":"The timeout in milliseconds for establishing a connection to the upstream server. Default: 60000\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"enabled":{"type":"boolean","description":"Whether the Service is active. If set to \u003cspan pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\"\u003e`false`\u003c/span\u003e, the proxy behavior will be as if any routes attached to it do not exist (404). Default: \u003cspan pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\"\u003e`true`\u003c/span\u003e. Default: true\n"},"gatewayServiceId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"host":{"type":"string","description":"The host of the upstream server. Note that the host value is case sensitive.\n"},"name":{"type":"string","description":"The Service name.\n"},"path":{"type":"string","description":"The path to be used in requests to the upstream server.\n"},"port":{"type":"number","description":"The upstream server port. Default: 80\n"},"protocol":{"type":"string","description":"The protocol used to communicate with the upstream. Default: \"http\"; must be one of [\"grpc\", \"grpcs\", \"http\", \"https\", \"tcp\", \"tls\", \u003cspan pulumi-lang-nodejs=\"\"tlsPassthrough\"\" pulumi-lang-dotnet=\"\"TlsPassthrough\"\" pulumi-lang-go=\"\"tlsPassthrough\"\" pulumi-lang-python=\"\"tls_passthrough\"\" pulumi-lang-yaml=\"\"tlsPassthrough\"\" pulumi-lang-java=\"\"tlsPassthrough\"\"\u003e\"tls_passthrough\"\u003c/span\u003e, \"udp\", \"ws\", \"wss\"]\n"},"readTimeout":{"type":"number","description":"The timeout in milliseconds between two successive read operations for transmitting a request to the upstream server. Default: 60000\n"},"retries":{"type":"number","description":"The number of retries to execute upon failure to proxy. Default: 5\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Service for grouping and filtering.\n"},"tlsSans":{"$ref":"#/types/konnect:index%2FGatewayServiceTlsSans:GatewayServiceTlsSans","description":"Additional Subject Alternative Names that can be matched on Upstream server's TLS certificate (in addition to \u003cspan pulumi-lang-nodejs=\"`host`\" pulumi-lang-dotnet=\"`Host`\" pulumi-lang-go=\"`host`\" pulumi-lang-python=\"`host`\" pulumi-lang-yaml=\"`host`\" pulumi-lang-java=\"`host`\"\u003e`host`\u003c/span\u003e).\n"},"tlsVerify":{"type":"boolean","description":"Whether to enable verification of upstream server TLS certificate. If set to \u003cspan pulumi-lang-nodejs=\"`null`\" pulumi-lang-dotnet=\"`Null`\" pulumi-lang-go=\"`null`\" pulumi-lang-python=\"`null`\" pulumi-lang-yaml=\"`null`\" pulumi-lang-java=\"`null`\"\u003e`null`\u003c/span\u003e, then the Nginx default is respected.\n"},"tlsVerifyDepth":{"type":"number","description":"Maximum depth of chain while verifying Upstream server's TLS certificate. If set to \u003cspan pulumi-lang-nodejs=\"`null`\" pulumi-lang-dotnet=\"`Null`\" pulumi-lang-go=\"`null`\" pulumi-lang-python=\"`null`\" pulumi-lang-yaml=\"`null`\" pulumi-lang-java=\"`null`\"\u003e`null`\u003c/span\u003e, then the Nginx default is respected.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"},"writeTimeout":{"type":"number","description":"The timeout in milliseconds between two successive write operations for transmitting a request to the upstream server. Default: 60000\n"}},"type":"object"}},"konnect:index/gatewaySni:GatewaySni":{"description":"GatewaySNI Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myGatewaysni = new konnect.GatewaySni(\"my_gatewaysni\", {\n    certificate: {\n        id: \"...my_id...\",\n    },\n    controlPlaneId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    createdAt: 9,\n    gatewaySniId: \"...my_id...\",\n    name: \"...my_name...\",\n    tags: [\"...\"],\n    updatedAt: 10,\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_gatewaysni = konnect.GatewaySni(\"my_gatewaysni\",\n    certificate={\n        \"id\": \"...my_id...\",\n    },\n    control_plane_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    created_at=9,\n    gateway_sni_id=\"...my_id...\",\n    name=\"...my_name...\",\n    tags=[\"...\"],\n    updated_at=10)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myGatewaysni = new Konnect.GatewaySni(\"my_gatewaysni\", new()\n    {\n        Certificate = new Konnect.Inputs.GatewaySniCertificateArgs\n        {\n            Id = \"...my_id...\",\n        },\n        ControlPlaneId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        CreatedAt = 9,\n        GatewaySniId = \"...my_id...\",\n        Name = \"...my_name...\",\n        Tags = new[]\n        {\n            \"...\",\n        },\n        UpdatedAt = 10,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewGatewaySni(ctx, \"my_gatewaysni\", \u0026konnect.GatewaySniArgs{\n\t\t\tCertificate: \u0026konnect.GatewaySniCertificateArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tControlPlaneId: pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tCreatedAt:      pulumi.Float64(9),\n\t\t\tGatewaySniId:   pulumi.String(\"...my_id...\"),\n\t\t\tName:           pulumi.String(\"...my_name...\"),\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"...\"),\n\t\t\t},\n\t\t\tUpdatedAt: pulumi.Float64(10),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.GatewaySni;\nimport com.pulumi.konnect.GatewaySniArgs;\nimport com.pulumi.konnect.inputs.GatewaySniCertificateArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myGatewaysni = new GatewaySni(\"myGatewaysni\", GatewaySniArgs.builder()\n            .certificate(GatewaySniCertificateArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .controlPlaneId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .createdAt(9.0)\n            .gatewaySniId(\"...my_id...\")\n            .name(\"...my_name...\")\n            .tags(\"...\")\n            .updatedAt(10.0)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myGatewaysni:\n    type: konnect:GatewaySni\n    name: my_gatewaysni\n    properties:\n      certificate:\n        id: '...my_id...'\n      controlPlaneId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      createdAt: 9\n      gatewaySniId: '...my_id...'\n      name: '...my_name...'\n      tags:\n        - '...'\n      updatedAt: 10\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_gateway_sni.my_konnect_gateway_sni\n\n  id = jsonencode({\n\n    control_plane_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"64c17a1a-b7d7-4a65-a5a4-42e4a7016e7f\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/gatewaySni:GatewaySni my_konnect_gateway_sni '{\"control_plane_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"64c17a1a-b7d7-4a65-a5a4-42e4a7016e7f\"}'\n```\n\n","properties":{"certificate":{"$ref":"#/types/konnect:index%2FGatewaySniCertificate:GatewaySniCertificate","description":"The id (a UUID) of the certificate with which to associate the SNI hostname. The Certificate must have a valid private key associated with it to be used by the SNI object.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"gatewaySniId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"name":{"type":"string","description":"The SNI name to associate with the given certificate.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the SNIs for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object","required":["certificate","controlPlaneId","createdAt","gatewaySniId","name","updatedAt"],"inputProperties":{"certificate":{"$ref":"#/types/konnect:index%2FGatewaySniCertificate:GatewaySniCertificate","description":"The id (a UUID) of the certificate with which to associate the SNI hostname. The Certificate must have a valid private key associated with it to be used by the SNI object.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"gatewaySniId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"name":{"type":"string","description":"The SNI name to associate with the given certificate.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the SNIs for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"requiredInputs":["certificate","controlPlaneId"],"stateInputs":{"description":"Input properties used for looking up and filtering GatewaySni resources.\n","properties":{"certificate":{"$ref":"#/types/konnect:index%2FGatewaySniCertificate:GatewaySniCertificate","description":"The id (a UUID) of the certificate with which to associate the SNI hostname. The Certificate must have a valid private key associated with it to be used by the SNI object.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"gatewaySniId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"name":{"type":"string","description":"The SNI name to associate with the given certificate.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the SNIs for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object"}},"konnect:index/gatewayTarget:GatewayTarget":{"description":"GatewayTarget Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myGatewaytarget = new konnect.GatewayTarget(\"my_gatewaytarget\", {\n    controlPlaneId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    createdAt: 2.48,\n    failover: false,\n    gatewayTargetId: \"...my_id...\",\n    tags: [\"...\"],\n    target: \"...my_target...\",\n    updatedAt: 6.8,\n    upstream: {\n        id: \"...my_id...\",\n    },\n    upstreamId: \"5a078780-5d4c-4aae-984a-bdc6f52113d8\",\n    weight: 32684,\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_gatewaytarget = konnect.GatewayTarget(\"my_gatewaytarget\",\n    control_plane_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    created_at=2.48,\n    failover=False,\n    gateway_target_id=\"...my_id...\",\n    tags=[\"...\"],\n    target=\"...my_target...\",\n    updated_at=6.8,\n    upstream={\n        \"id\": \"...my_id...\",\n    },\n    upstream_id=\"5a078780-5d4c-4aae-984a-bdc6f52113d8\",\n    weight=32684)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myGatewaytarget = new Konnect.GatewayTarget(\"my_gatewaytarget\", new()\n    {\n        ControlPlaneId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        CreatedAt = 2.48,\n        Failover = false,\n        GatewayTargetId = \"...my_id...\",\n        Tags = new[]\n        {\n            \"...\",\n        },\n        Target = \"...my_target...\",\n        UpdatedAt = 6.8,\n        Upstream = new Konnect.Inputs.GatewayTargetUpstreamArgs\n        {\n            Id = \"...my_id...\",\n        },\n        UpstreamId = \"5a078780-5d4c-4aae-984a-bdc6f52113d8\",\n        Weight = 32684,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewGatewayTarget(ctx, \"my_gatewaytarget\", \u0026konnect.GatewayTargetArgs{\n\t\t\tControlPlaneId:  pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tCreatedAt:       pulumi.Float64(2.48),\n\t\t\tFailover:        pulumi.Bool(false),\n\t\t\tGatewayTargetId: pulumi.String(\"...my_id...\"),\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"...\"),\n\t\t\t},\n\t\t\tTarget:    pulumi.String(\"...my_target...\"),\n\t\t\tUpdatedAt: pulumi.Float64(6.8),\n\t\t\tUpstream: \u0026konnect.GatewayTargetUpstreamArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tUpstreamId: pulumi.String(\"5a078780-5d4c-4aae-984a-bdc6f52113d8\"),\n\t\t\tWeight:     pulumi.Float64(32684),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.GatewayTarget;\nimport com.pulumi.konnect.GatewayTargetArgs;\nimport com.pulumi.konnect.inputs.GatewayTargetUpstreamArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myGatewaytarget = new GatewayTarget(\"myGatewaytarget\", GatewayTargetArgs.builder()\n            .controlPlaneId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .createdAt(2.48)\n            .failover(false)\n            .gatewayTargetId(\"...my_id...\")\n            .tags(\"...\")\n            .target(\"...my_target...\")\n            .updatedAt(6.8)\n            .upstream(GatewayTargetUpstreamArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .upstreamId(\"5a078780-5d4c-4aae-984a-bdc6f52113d8\")\n            .weight(32684.0)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myGatewaytarget:\n    type: konnect:GatewayTarget\n    name: my_gatewaytarget\n    properties:\n      controlPlaneId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      createdAt: 2.48\n      failover: false\n      gatewayTargetId: '...my_id...'\n      tags:\n        - '...'\n      target: '...my_target...'\n      updatedAt: 6.8\n      upstream:\n        id: '...my_id...'\n      upstreamId: 5a078780-5d4c-4aae-984a-bdc6f52113d8\n      weight: 32684\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_gateway_target.my_konnect_gateway_target\n\n  id = jsonencode({\n\n    control_plane_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"5a078780-5d4c-4aae-984a-bdc6f52113d8\"\n\n    upstream_id = \"5a078780-5d4c-4aae-984a-bdc6f52113d8\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/gatewayTarget:GatewayTarget my_konnect_gateway_target '{\"control_plane_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"5a078780-5d4c-4aae-984a-bdc6f52113d8\", \"upstream_id\": \"5a078780-5d4c-4aae-984a-bdc6f52113d8\"}'\n```\n\n","properties":{"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created. Requires replacement if changed.\n"},"failover":{"type":"boolean","description":"Whether to use this target only as backup or not. Default: false; Requires replacement if changed.\n"},"gatewayTargetId":{"type":"string","description":"A string representing a UUID (universally unique identifier). Requires replacement if changed.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Target for grouping and filtering. Requires replacement if changed.\n"},"target":{"type":"string","description":"The target address (ip or hostname) and port. If the hostname resolves to an SRV record, the \u003cspan pulumi-lang-nodejs=\"`port`\" pulumi-lang-dotnet=\"`Port`\" pulumi-lang-go=\"`port`\" pulumi-lang-python=\"`port`\" pulumi-lang-yaml=\"`port`\" pulumi-lang-java=\"`port`\"\u003e`port`\u003c/span\u003e value will be overridden by the value from the DNS record. Requires replacement if changed.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated. Requires replacement if changed.\n"},"upstream":{"$ref":"#/types/konnect:index%2FGatewayTargetUpstream:GatewayTargetUpstream","description":"The unique identifier or the name of the upstream for which to update the target. Requires replacement if changed.\n"},"upstreamId":{"type":"string","description":"ID or target of the Target to lookup. Requires replacement if changed.\n"},"weight":{"type":"number","description":"The weight this target gets within the upstream loadbalancer (\u003cspan pulumi-lang-nodejs=\"`0`\" pulumi-lang-dotnet=\"`0`\" pulumi-lang-go=\"`0`\" pulumi-lang-python=\"`0`\" pulumi-lang-yaml=\"`0`\" pulumi-lang-java=\"`0`\"\u003e`0`\u003c/span\u003e-\u003cspan pulumi-lang-nodejs=\"`65535`\" pulumi-lang-dotnet=\"`65535`\" pulumi-lang-go=\"`65535`\" pulumi-lang-python=\"`65535`\" pulumi-lang-yaml=\"`65535`\" pulumi-lang-java=\"`65535`\"\u003e`65535`\u003c/span\u003e). If the hostname resolves to an SRV record, the \u003cspan pulumi-lang-nodejs=\"`weight`\" pulumi-lang-dotnet=\"`Weight`\" pulumi-lang-go=\"`weight`\" pulumi-lang-python=\"`weight`\" pulumi-lang-yaml=\"`weight`\" pulumi-lang-java=\"`weight`\"\u003e`weight`\u003c/span\u003e value will be overridden by the value from the DNS record. Default: 100; Requires replacement if changed.\n"}},"type":"object","required":["controlPlaneId","createdAt","failover","gatewayTargetId","target","updatedAt","upstream","upstreamId","weight"],"inputProperties":{"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created. Requires replacement if changed.\n"},"failover":{"type":"boolean","description":"Whether to use this target only as backup or not. Default: false; Requires replacement if changed.\n"},"gatewayTargetId":{"type":"string","description":"A string representing a UUID (universally unique identifier). Requires replacement if changed.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Target for grouping and filtering. Requires replacement if changed.\n"},"target":{"type":"string","description":"The target address (ip or hostname) and port. If the hostname resolves to an SRV record, the \u003cspan pulumi-lang-nodejs=\"`port`\" pulumi-lang-dotnet=\"`Port`\" pulumi-lang-go=\"`port`\" pulumi-lang-python=\"`port`\" pulumi-lang-yaml=\"`port`\" pulumi-lang-java=\"`port`\"\u003e`port`\u003c/span\u003e value will be overridden by the value from the DNS record. Requires replacement if changed.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated. Requires replacement if changed.\n"},"upstream":{"$ref":"#/types/konnect:index%2FGatewayTargetUpstream:GatewayTargetUpstream","description":"The unique identifier or the name of the upstream for which to update the target. Requires replacement if changed.\n"},"upstreamId":{"type":"string","description":"ID or target of the Target to lookup. Requires replacement if changed.\n"},"weight":{"type":"number","description":"The weight this target gets within the upstream loadbalancer (\u003cspan pulumi-lang-nodejs=\"`0`\" pulumi-lang-dotnet=\"`0`\" pulumi-lang-go=\"`0`\" pulumi-lang-python=\"`0`\" pulumi-lang-yaml=\"`0`\" pulumi-lang-java=\"`0`\"\u003e`0`\u003c/span\u003e-\u003cspan pulumi-lang-nodejs=\"`65535`\" pulumi-lang-dotnet=\"`65535`\" pulumi-lang-go=\"`65535`\" pulumi-lang-python=\"`65535`\" pulumi-lang-yaml=\"`65535`\" pulumi-lang-java=\"`65535`\"\u003e`65535`\u003c/span\u003e). If the hostname resolves to an SRV record, the \u003cspan pulumi-lang-nodejs=\"`weight`\" pulumi-lang-dotnet=\"`Weight`\" pulumi-lang-go=\"`weight`\" pulumi-lang-python=\"`weight`\" pulumi-lang-yaml=\"`weight`\" pulumi-lang-java=\"`weight`\"\u003e`weight`\u003c/span\u003e value will be overridden by the value from the DNS record. Default: 100; Requires replacement if changed.\n"}},"requiredInputs":["controlPlaneId","target","upstreamId"],"stateInputs":{"description":"Input properties used for looking up and filtering GatewayTarget resources.\n","properties":{"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created. Requires replacement if changed.\n"},"failover":{"type":"boolean","description":"Whether to use this target only as backup or not. Default: false; Requires replacement if changed.\n"},"gatewayTargetId":{"type":"string","description":"A string representing a UUID (universally unique identifier). Requires replacement if changed.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Target for grouping and filtering. Requires replacement if changed.\n"},"target":{"type":"string","description":"The target address (ip or hostname) and port. If the hostname resolves to an SRV record, the \u003cspan pulumi-lang-nodejs=\"`port`\" pulumi-lang-dotnet=\"`Port`\" pulumi-lang-go=\"`port`\" pulumi-lang-python=\"`port`\" pulumi-lang-yaml=\"`port`\" pulumi-lang-java=\"`port`\"\u003e`port`\u003c/span\u003e value will be overridden by the value from the DNS record. Requires replacement if changed.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated. Requires replacement if changed.\n"},"upstream":{"$ref":"#/types/konnect:index%2FGatewayTargetUpstream:GatewayTargetUpstream","description":"The unique identifier or the name of the upstream for which to update the target. Requires replacement if changed.\n"},"upstreamId":{"type":"string","description":"ID or target of the Target to lookup. Requires replacement if changed.\n"},"weight":{"type":"number","description":"The weight this target gets within the upstream loadbalancer (\u003cspan pulumi-lang-nodejs=\"`0`\" pulumi-lang-dotnet=\"`0`\" pulumi-lang-go=\"`0`\" pulumi-lang-python=\"`0`\" pulumi-lang-yaml=\"`0`\" pulumi-lang-java=\"`0`\"\u003e`0`\u003c/span\u003e-\u003cspan pulumi-lang-nodejs=\"`65535`\" pulumi-lang-dotnet=\"`65535`\" pulumi-lang-go=\"`65535`\" pulumi-lang-python=\"`65535`\" pulumi-lang-yaml=\"`65535`\" pulumi-lang-java=\"`65535`\"\u003e`65535`\u003c/span\u003e). If the hostname resolves to an SRV record, the \u003cspan pulumi-lang-nodejs=\"`weight`\" pulumi-lang-dotnet=\"`Weight`\" pulumi-lang-go=\"`weight`\" pulumi-lang-python=\"`weight`\" pulumi-lang-yaml=\"`weight`\" pulumi-lang-java=\"`weight`\"\u003e`weight`\u003c/span\u003e value will be overridden by the value from the DNS record. Default: 100; Requires replacement if changed.\n"}},"type":"object"}},"konnect:index/gatewayUpstream:GatewayUpstream":{"description":"GatewayUpstream Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myGatewayupstream = new konnect.GatewayUpstream(\"my_gatewayupstream\", {\n    algorithm: \"sticky-sessions\",\n    clientCertificate: {\n        id: \"...my_id...\",\n    },\n    controlPlaneId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    createdAt: 5,\n    hashFallback: \"path\",\n    hashFallbackHeader: \"...my_hash_fallback_header...\",\n    hashFallbackQueryArg: \"...my_hash_fallback_query_arg...\",\n    hashFallbackUriCapture: \"...my_hash_fallback_uri_capture...\",\n    hashOn: \"ip\",\n    hashOnCookie: \"...my_hash_on_cookie...\",\n    hashOnCookiePath: \"...my_hash_on_cookie_path...\",\n    hashOnHeader: \"...my_hash_on_header...\",\n    hashOnQueryArg: \"...my_hash_on_query_arg...\",\n    hashOnUriCapture: \"...my_hash_on_uri_capture...\",\n    healthchecks: {\n        active: {\n            concurrency: 1225225904,\n            headers: {\n                key: [],\n            },\n            healthy: {\n                httpStatuses: [179],\n                interval: 55332.9,\n                successes: 196,\n            },\n            httpPath: \"...my_http_path...\",\n            httpsSni: \"...my_https_sni...\",\n            httpsVerifyCertificate: true,\n            timeout: 59064.97,\n            type: \"http\",\n            unhealthy: {\n                httpFailures: 207,\n                httpStatuses: [396],\n                interval: 27179.84,\n                tcpFailures: 92,\n                timeouts: 183,\n            },\n        },\n        passive: {\n            healthy: {\n                httpStatuses: [135],\n                successes: 189,\n            },\n            type: \"tcp\",\n            unhealthy: {\n                httpFailures: 249,\n                httpStatuses: [865],\n                tcpFailures: 234,\n                timeouts: 21,\n            },\n        },\n        threshold: 36.29,\n    },\n    hostHeader: \"...my_host_header...\",\n    gatewayUpstreamId: \"...my_id...\",\n    name: \"...my_name...\",\n    slots: 4503,\n    stickySessionsCookie: \"...my_sticky_sessions_cookie...\",\n    stickySessionsCookiePath: \"...my_sticky_sessions_cookie_path...\",\n    tags: [\"...\"],\n    updatedAt: 1,\n    useSrvName: true,\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_gatewayupstream = konnect.GatewayUpstream(\"my_gatewayupstream\",\n    algorithm=\"sticky-sessions\",\n    client_certificate={\n        \"id\": \"...my_id...\",\n    },\n    control_plane_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    created_at=5,\n    hash_fallback=\"path\",\n    hash_fallback_header=\"...my_hash_fallback_header...\",\n    hash_fallback_query_arg=\"...my_hash_fallback_query_arg...\",\n    hash_fallback_uri_capture=\"...my_hash_fallback_uri_capture...\",\n    hash_on=\"ip\",\n    hash_on_cookie=\"...my_hash_on_cookie...\",\n    hash_on_cookie_path=\"...my_hash_on_cookie_path...\",\n    hash_on_header=\"...my_hash_on_header...\",\n    hash_on_query_arg=\"...my_hash_on_query_arg...\",\n    hash_on_uri_capture=\"...my_hash_on_uri_capture...\",\n    healthchecks={\n        \"active\": {\n            \"concurrency\": 1225225904,\n            \"headers\": {\n                \"key\": [],\n            },\n            \"healthy\": {\n                \"http_statuses\": [179],\n                \"interval\": 55332.9,\n                \"successes\": 196,\n            },\n            \"http_path\": \"...my_http_path...\",\n            \"https_sni\": \"...my_https_sni...\",\n            \"https_verify_certificate\": True,\n            \"timeout\": 59064.97,\n            \"type\": \"http\",\n            \"unhealthy\": {\n                \"http_failures\": 207,\n                \"http_statuses\": [396],\n                \"interval\": 27179.84,\n                \"tcp_failures\": 92,\n                \"timeouts\": 183,\n            },\n        },\n        \"passive\": {\n            \"healthy\": {\n                \"http_statuses\": [135],\n                \"successes\": 189,\n            },\n            \"type\": \"tcp\",\n            \"unhealthy\": {\n                \"http_failures\": 249,\n                \"http_statuses\": [865],\n                \"tcp_failures\": 234,\n                \"timeouts\": 21,\n            },\n        },\n        \"threshold\": 36.29,\n    },\n    host_header=\"...my_host_header...\",\n    gateway_upstream_id=\"...my_id...\",\n    name=\"...my_name...\",\n    slots=4503,\n    sticky_sessions_cookie=\"...my_sticky_sessions_cookie...\",\n    sticky_sessions_cookie_path=\"...my_sticky_sessions_cookie_path...\",\n    tags=[\"...\"],\n    updated_at=1,\n    use_srv_name=True)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myGatewayupstream = new Konnect.GatewayUpstream(\"my_gatewayupstream\", new()\n    {\n        Algorithm = \"sticky-sessions\",\n        ClientCertificate = new Konnect.Inputs.GatewayUpstreamClientCertificateArgs\n        {\n            Id = \"...my_id...\",\n        },\n        ControlPlaneId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        CreatedAt = 5,\n        HashFallback = \"path\",\n        HashFallbackHeader = \"...my_hash_fallback_header...\",\n        HashFallbackQueryArg = \"...my_hash_fallback_query_arg...\",\n        HashFallbackUriCapture = \"...my_hash_fallback_uri_capture...\",\n        HashOn = \"ip\",\n        HashOnCookie = \"...my_hash_on_cookie...\",\n        HashOnCookiePath = \"...my_hash_on_cookie_path...\",\n        HashOnHeader = \"...my_hash_on_header...\",\n        HashOnQueryArg = \"...my_hash_on_query_arg...\",\n        HashOnUriCapture = \"...my_hash_on_uri_capture...\",\n        Healthchecks = new Konnect.Inputs.GatewayUpstreamHealthchecksArgs\n        {\n            Active = new Konnect.Inputs.GatewayUpstreamHealthchecksActiveArgs\n            {\n                Concurrency = 1225225904,\n                Headers = \n                {\n                    { \"key\", new[] {} },\n                },\n                Healthy = new Konnect.Inputs.GatewayUpstreamHealthchecksActiveHealthyArgs\n                {\n                    HttpStatuses = new[]\n                    {\n                        179,\n                    },\n                    Interval = 55332.9,\n                    Successes = 196,\n                },\n                HttpPath = \"...my_http_path...\",\n                HttpsSni = \"...my_https_sni...\",\n                HttpsVerifyCertificate = true,\n                Timeout = 59064.97,\n                Type = \"http\",\n                Unhealthy = new Konnect.Inputs.GatewayUpstreamHealthchecksActiveUnhealthyArgs\n                {\n                    HttpFailures = 207,\n                    HttpStatuses = new[]\n                    {\n                        396,\n                    },\n                    Interval = 27179.84,\n                    TcpFailures = 92,\n                    Timeouts = 183,\n                },\n            },\n            Passive = new Konnect.Inputs.GatewayUpstreamHealthchecksPassiveArgs\n            {\n                Healthy = new Konnect.Inputs.GatewayUpstreamHealthchecksPassiveHealthyArgs\n                {\n                    HttpStatuses = new[]\n                    {\n                        135,\n                    },\n                    Successes = 189,\n                },\n                Type = \"tcp\",\n                Unhealthy = new Konnect.Inputs.GatewayUpstreamHealthchecksPassiveUnhealthyArgs\n                {\n                    HttpFailures = 249,\n                    HttpStatuses = new[]\n                    {\n                        865,\n                    },\n                    TcpFailures = 234,\n                    Timeouts = 21,\n                },\n            },\n            Threshold = 36.29,\n        },\n        HostHeader = \"...my_host_header...\",\n        GatewayUpstreamId = \"...my_id...\",\n        Name = \"...my_name...\",\n        Slots = 4503,\n        StickySessionsCookie = \"...my_sticky_sessions_cookie...\",\n        StickySessionsCookiePath = \"...my_sticky_sessions_cookie_path...\",\n        Tags = new[]\n        {\n            \"...\",\n        },\n        UpdatedAt = 1,\n        UseSrvName = true,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewGatewayUpstream(ctx, \"my_gatewayupstream\", \u0026konnect.GatewayUpstreamArgs{\n\t\t\tAlgorithm: pulumi.String(\"sticky-sessions\"),\n\t\t\tClientCertificate: \u0026konnect.GatewayUpstreamClientCertificateArgs{\n\t\t\t\tId: pulumi.String(\"...my_id...\"),\n\t\t\t},\n\t\t\tControlPlaneId:         pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tCreatedAt:              pulumi.Float64(5),\n\t\t\tHashFallback:           pulumi.String(\"path\"),\n\t\t\tHashFallbackHeader:     pulumi.String(\"...my_hash_fallback_header...\"),\n\t\t\tHashFallbackQueryArg:   pulumi.String(\"...my_hash_fallback_query_arg...\"),\n\t\t\tHashFallbackUriCapture: pulumi.String(\"...my_hash_fallback_uri_capture...\"),\n\t\t\tHashOn:                 pulumi.String(\"ip\"),\n\t\t\tHashOnCookie:           pulumi.String(\"...my_hash_on_cookie...\"),\n\t\t\tHashOnCookiePath:       pulumi.String(\"...my_hash_on_cookie_path...\"),\n\t\t\tHashOnHeader:           pulumi.String(\"...my_hash_on_header...\"),\n\t\t\tHashOnQueryArg:         pulumi.String(\"...my_hash_on_query_arg...\"),\n\t\t\tHashOnUriCapture:       pulumi.String(\"...my_hash_on_uri_capture...\"),\n\t\t\tHealthchecks: \u0026konnect.GatewayUpstreamHealthchecksArgs{\n\t\t\t\tActive: \u0026konnect.GatewayUpstreamHealthchecksActiveArgs{\n\t\t\t\t\tConcurrency: pulumi.Float64(1225225904),\n\t\t\t\t\tHeaders: pulumi.StringArrayMap{\n\t\t\t\t\t\t\"key\": pulumi.StringArray{},\n\t\t\t\t\t},\n\t\t\t\t\tHealthy: \u0026konnect.GatewayUpstreamHealthchecksActiveHealthyArgs{\n\t\t\t\t\t\tHttpStatuses: pulumi.Float64Array{\n\t\t\t\t\t\t\tpulumi.Float64(179),\n\t\t\t\t\t\t},\n\t\t\t\t\t\tInterval:  pulumi.Float64(55332.9),\n\t\t\t\t\t\tSuccesses: pulumi.Float64(196),\n\t\t\t\t\t},\n\t\t\t\t\tHttpPath:               pulumi.String(\"...my_http_path...\"),\n\t\t\t\t\tHttpsSni:               pulumi.String(\"...my_https_sni...\"),\n\t\t\t\t\tHttpsVerifyCertificate: pulumi.Bool(true),\n\t\t\t\t\tTimeout:                pulumi.Float64(59064.97),\n\t\t\t\t\tType:                   pulumi.String(\"http\"),\n\t\t\t\t\tUnhealthy: \u0026konnect.GatewayUpstreamHealthchecksActiveUnhealthyArgs{\n\t\t\t\t\t\tHttpFailures: pulumi.Float64(207),\n\t\t\t\t\t\tHttpStatuses: pulumi.Float64Array{\n\t\t\t\t\t\t\tpulumi.Float64(396),\n\t\t\t\t\t\t},\n\t\t\t\t\t\tInterval:    pulumi.Float64(27179.84),\n\t\t\t\t\t\tTcpFailures: pulumi.Float64(92),\n\t\t\t\t\t\tTimeouts:    pulumi.Float64(183),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tPassive: \u0026konnect.GatewayUpstreamHealthchecksPassiveArgs{\n\t\t\t\t\tHealthy: \u0026konnect.GatewayUpstreamHealthchecksPassiveHealthyArgs{\n\t\t\t\t\t\tHttpStatuses: pulumi.Float64Array{\n\t\t\t\t\t\t\tpulumi.Float64(135),\n\t\t\t\t\t\t},\n\t\t\t\t\t\tSuccesses: pulumi.Float64(189),\n\t\t\t\t\t},\n\t\t\t\t\tType: pulumi.String(\"tcp\"),\n\t\t\t\t\tUnhealthy: \u0026konnect.GatewayUpstreamHealthchecksPassiveUnhealthyArgs{\n\t\t\t\t\t\tHttpFailures: pulumi.Float64(249),\n\t\t\t\t\t\tHttpStatuses: pulumi.Float64Array{\n\t\t\t\t\t\t\tpulumi.Float64(865),\n\t\t\t\t\t\t},\n\t\t\t\t\t\tTcpFailures: pulumi.Float64(234),\n\t\t\t\t\t\tTimeouts:    pulumi.Float64(21),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tThreshold: pulumi.Float64(36.29),\n\t\t\t},\n\t\t\tHostHeader:               pulumi.String(\"...my_host_header...\"),\n\t\t\tGatewayUpstreamId:        pulumi.String(\"...my_id...\"),\n\t\t\tName:                     pulumi.String(\"...my_name...\"),\n\t\t\tSlots:                    pulumi.Float64(4503),\n\t\t\tStickySessionsCookie:     pulumi.String(\"...my_sticky_sessions_cookie...\"),\n\t\t\tStickySessionsCookiePath: pulumi.String(\"...my_sticky_sessions_cookie_path...\"),\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"...\"),\n\t\t\t},\n\t\t\tUpdatedAt:  pulumi.Float64(1),\n\t\t\tUseSrvName: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.GatewayUpstream;\nimport com.pulumi.konnect.GatewayUpstreamArgs;\nimport com.pulumi.konnect.inputs.GatewayUpstreamClientCertificateArgs;\nimport com.pulumi.konnect.inputs.GatewayUpstreamHealthchecksArgs;\nimport com.pulumi.konnect.inputs.GatewayUpstreamHealthchecksActiveArgs;\nimport com.pulumi.konnect.inputs.GatewayUpstreamHealthchecksActiveHealthyArgs;\nimport com.pulumi.konnect.inputs.GatewayUpstreamHealthchecksActiveUnhealthyArgs;\nimport com.pulumi.konnect.inputs.GatewayUpstreamHealthchecksPassiveArgs;\nimport com.pulumi.konnect.inputs.GatewayUpstreamHealthchecksPassiveHealthyArgs;\nimport com.pulumi.konnect.inputs.GatewayUpstreamHealthchecksPassiveUnhealthyArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myGatewayupstream = new GatewayUpstream(\"myGatewayupstream\", GatewayUpstreamArgs.builder()\n            .algorithm(\"sticky-sessions\")\n            .clientCertificate(GatewayUpstreamClientCertificateArgs.builder()\n                .id(\"...my_id...\")\n                .build())\n            .controlPlaneId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .createdAt(5.0)\n            .hashFallback(\"path\")\n            .hashFallbackHeader(\"...my_hash_fallback_header...\")\n            .hashFallbackQueryArg(\"...my_hash_fallback_query_arg...\")\n            .hashFallbackUriCapture(\"...my_hash_fallback_uri_capture...\")\n            .hashOn(\"ip\")\n            .hashOnCookie(\"...my_hash_on_cookie...\")\n            .hashOnCookiePath(\"...my_hash_on_cookie_path...\")\n            .hashOnHeader(\"...my_hash_on_header...\")\n            .hashOnQueryArg(\"...my_hash_on_query_arg...\")\n            .hashOnUriCapture(\"...my_hash_on_uri_capture...\")\n            .healthchecks(GatewayUpstreamHealthchecksArgs.builder()\n                .active(GatewayUpstreamHealthchecksActiveArgs.builder()\n                    .concurrency(1225225904.0)\n                    .headers(Map.of(\"key\", ))\n                    .healthy(GatewayUpstreamHealthchecksActiveHealthyArgs.builder()\n                        .httpStatuses(179.0)\n                        .interval(55332.9)\n                        .successes(196.0)\n                        .build())\n                    .httpPath(\"...my_http_path...\")\n                    .httpsSni(\"...my_https_sni...\")\n                    .httpsVerifyCertificate(true)\n                    .timeout(59064.97)\n                    .type(\"http\")\n                    .unhealthy(GatewayUpstreamHealthchecksActiveUnhealthyArgs.builder()\n                        .httpFailures(207.0)\n                        .httpStatuses(396.0)\n                        .interval(27179.84)\n                        .tcpFailures(92.0)\n                        .timeouts(183.0)\n                        .build())\n                    .build())\n                .passive(GatewayUpstreamHealthchecksPassiveArgs.builder()\n                    .healthy(GatewayUpstreamHealthchecksPassiveHealthyArgs.builder()\n                        .httpStatuses(135.0)\n                        .successes(189.0)\n                        .build())\n                    .type(\"tcp\")\n                    .unhealthy(GatewayUpstreamHealthchecksPassiveUnhealthyArgs.builder()\n                        .httpFailures(249.0)\n                        .httpStatuses(865.0)\n                        .tcpFailures(234.0)\n                        .timeouts(21.0)\n                        .build())\n                    .build())\n                .threshold(36.29)\n                .build())\n            .hostHeader(\"...my_host_header...\")\n            .gatewayUpstreamId(\"...my_id...\")\n            .name(\"...my_name...\")\n            .slots(4503.0)\n            .stickySessionsCookie(\"...my_sticky_sessions_cookie...\")\n            .stickySessionsCookiePath(\"...my_sticky_sessions_cookie_path...\")\n            .tags(\"...\")\n            .updatedAt(1.0)\n            .useSrvName(true)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myGatewayupstream:\n    type: konnect:GatewayUpstream\n    name: my_gatewayupstream\n    properties:\n      algorithm: sticky-sessions\n      clientCertificate:\n        id: '...my_id...'\n      controlPlaneId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      createdAt: 5\n      hashFallback: path\n      hashFallbackHeader: '...my_hash_fallback_header...'\n      hashFallbackQueryArg: '...my_hash_fallback_query_arg...'\n      hashFallbackUriCapture: '...my_hash_fallback_uri_capture...'\n      hashOn: ip\n      hashOnCookie: '...my_hash_on_cookie...'\n      hashOnCookiePath: '...my_hash_on_cookie_path...'\n      hashOnHeader: '...my_hash_on_header...'\n      hashOnQueryArg: '...my_hash_on_query_arg...'\n      hashOnUriCapture: '...my_hash_on_uri_capture...'\n      healthchecks:\n        active:\n          concurrency: 1.225225904e+09\n          headers:\n            key: []\n          healthy:\n            httpStatuses:\n              - 179\n            interval: 55332.9\n            successes: 196\n          httpPath: '...my_http_path...'\n          httpsSni: '...my_https_sni...'\n          httpsVerifyCertificate: true\n          timeout: 59064.97\n          type: http\n          unhealthy:\n            httpFailures: 207\n            httpStatuses:\n              - 396\n            interval: 27179.84\n            tcpFailures: 92\n            timeouts: 183\n        passive:\n          healthy:\n            httpStatuses:\n              - 135\n            successes: 189\n          type: tcp\n          unhealthy:\n            httpFailures: 249\n            httpStatuses:\n              - 865\n            tcpFailures: 234\n            timeouts: 21\n        threshold: 36.29\n      hostHeader: '...my_host_header...'\n      gatewayUpstreamId: '...my_id...'\n      name: '...my_name...'\n      slots: 4503\n      stickySessionsCookie: '...my_sticky_sessions_cookie...'\n      stickySessionsCookiePath: '...my_sticky_sessions_cookie_path...'\n      tags:\n        - '...'\n      updatedAt: 1\n      useSrvName: true\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_gateway_upstream.my_konnect_gateway_upstream\n\n  id = jsonencode({\n\n    control_plane_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"426d620c-7058-4ae6-aacc-f85a3204a2c5\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/gatewayUpstream:GatewayUpstream my_konnect_gateway_upstream '{\"control_plane_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"426d620c-7058-4ae6-aacc-f85a3204a2c5\"}'\n```\n\n","properties":{"algorithm":{"type":"string","description":"Which load balancing algorithm to use. Default: \"round-robin\"; must be one of [\"consistent-hashing\", \"latency\", \"least-connections\", \"round-robin\", \"sticky-sessions\"]\n"},"clientCertificate":{"$ref":"#/types/konnect:index%2FGatewayUpstreamClientCertificate:GatewayUpstreamClientCertificate","description":"If set, the certificate to be used as client certificate while TLS handshaking to the upstream server.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"gatewayUpstreamId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"hashFallback":{"type":"string","description":"What to use as hashing input if the primary \u003cspan pulumi-lang-nodejs=\"`hashOn`\" pulumi-lang-dotnet=\"`HashOn`\" pulumi-lang-go=\"`hashOn`\" pulumi-lang-python=\"`hash_on`\" pulumi-lang-yaml=\"`hashOn`\" pulumi-lang-java=\"`hashOn`\"\u003e`hash_on`\u003c/span\u003e does not return a hash (eg. header is missing, or no Consumer identified). Not available if \u003cspan pulumi-lang-nodejs=\"`hashOn`\" pulumi-lang-dotnet=\"`HashOn`\" pulumi-lang-go=\"`hashOn`\" pulumi-lang-python=\"`hash_on`\" pulumi-lang-yaml=\"`hashOn`\" pulumi-lang-java=\"`hashOn`\"\u003e`hash_on`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`cookie`\" pulumi-lang-dotnet=\"`Cookie`\" pulumi-lang-go=\"`cookie`\" pulumi-lang-python=\"`cookie`\" pulumi-lang-yaml=\"`cookie`\" pulumi-lang-java=\"`cookie`\"\u003e`cookie`\u003c/span\u003e. Default: \"none\"; must be one of [\"consumer\", \"cookie\", \"header\", \"ip\", \"none\", \"path\", \"query*arg\", \"uri*capture\"]\n"},"hashFallbackHeader":{"type":"string","description":"The header name to take the value from as hash input. Only required when \u003cspan pulumi-lang-nodejs=\"`hashFallback`\" pulumi-lang-dotnet=\"`HashFallback`\" pulumi-lang-go=\"`hashFallback`\" pulumi-lang-python=\"`hash_fallback`\" pulumi-lang-yaml=\"`hashFallback`\" pulumi-lang-java=\"`hashFallback`\"\u003e`hash_fallback`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`header`\" pulumi-lang-dotnet=\"`Header`\" pulumi-lang-go=\"`header`\" pulumi-lang-python=\"`header`\" pulumi-lang-yaml=\"`header`\" pulumi-lang-java=\"`header`\"\u003e`header`\u003c/span\u003e.\n"},"hashFallbackQueryArg":{"type":"string","description":"The name of the query string argument to take the value from as hash input. Only required when \u003cspan pulumi-lang-nodejs=\"`hashFallback`\" pulumi-lang-dotnet=\"`HashFallback`\" pulumi-lang-go=\"`hashFallback`\" pulumi-lang-python=\"`hash_fallback`\" pulumi-lang-yaml=\"`hashFallback`\" pulumi-lang-java=\"`hashFallback`\"\u003e`hash_fallback`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`queryArg`\" pulumi-lang-dotnet=\"`QueryArg`\" pulumi-lang-go=\"`queryArg`\" pulumi-lang-python=\"`query_arg`\" pulumi-lang-yaml=\"`queryArg`\" pulumi-lang-java=\"`queryArg`\"\u003e`query_arg`\u003c/span\u003e.\n"},"hashFallbackUriCapture":{"type":"string","description":"The name of the route URI capture to take the value from as hash input. Only required when \u003cspan pulumi-lang-nodejs=\"`hashFallback`\" pulumi-lang-dotnet=\"`HashFallback`\" pulumi-lang-go=\"`hashFallback`\" pulumi-lang-python=\"`hash_fallback`\" pulumi-lang-yaml=\"`hashFallback`\" pulumi-lang-java=\"`hashFallback`\"\u003e`hash_fallback`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`uriCapture`\" pulumi-lang-dotnet=\"`UriCapture`\" pulumi-lang-go=\"`uriCapture`\" pulumi-lang-python=\"`uri_capture`\" pulumi-lang-yaml=\"`uriCapture`\" pulumi-lang-java=\"`uriCapture`\"\u003e`uri_capture`\u003c/span\u003e.\n"},"hashOn":{"type":"string","description":"What to use as hashing input. Using \u003cspan pulumi-lang-nodejs=\"`none`\" pulumi-lang-dotnet=\"`None`\" pulumi-lang-go=\"`none`\" pulumi-lang-python=\"`none`\" pulumi-lang-yaml=\"`none`\" pulumi-lang-java=\"`none`\"\u003e`none`\u003c/span\u003e results in a weighted-round-robin scheme with no hashing. Default: \"none\"; must be one of [\"consumer\", \"cookie\", \"header\", \"ip\", \"none\", \"path\", \"query*arg\", \"uri*capture\"]\n"},"hashOnCookie":{"type":"string","description":"The cookie name to take the value from as hash input. Only required when \u003cspan pulumi-lang-nodejs=\"`hashOn`\" pulumi-lang-dotnet=\"`HashOn`\" pulumi-lang-go=\"`hashOn`\" pulumi-lang-python=\"`hash_on`\" pulumi-lang-yaml=\"`hashOn`\" pulumi-lang-java=\"`hashOn`\"\u003e`hash_on`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`hashFallback`\" pulumi-lang-dotnet=\"`HashFallback`\" pulumi-lang-go=\"`hashFallback`\" pulumi-lang-python=\"`hash_fallback`\" pulumi-lang-yaml=\"`hashFallback`\" pulumi-lang-java=\"`hashFallback`\"\u003e`hash_fallback`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`cookie`\" pulumi-lang-dotnet=\"`Cookie`\" pulumi-lang-go=\"`cookie`\" pulumi-lang-python=\"`cookie`\" pulumi-lang-yaml=\"`cookie`\" pulumi-lang-java=\"`cookie`\"\u003e`cookie`\u003c/span\u003e. If the specified cookie is not in the request, Kong will generate a value and set the cookie in the response.\n"},"hashOnCookiePath":{"type":"string","description":"The cookie path to set in the response headers. Only required when \u003cspan pulumi-lang-nodejs=\"`hashOn`\" pulumi-lang-dotnet=\"`HashOn`\" pulumi-lang-go=\"`hashOn`\" pulumi-lang-python=\"`hash_on`\" pulumi-lang-yaml=\"`hashOn`\" pulumi-lang-java=\"`hashOn`\"\u003e`hash_on`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`hashFallback`\" pulumi-lang-dotnet=\"`HashFallback`\" pulumi-lang-go=\"`hashFallback`\" pulumi-lang-python=\"`hash_fallback`\" pulumi-lang-yaml=\"`hashFallback`\" pulumi-lang-java=\"`hashFallback`\"\u003e`hash_fallback`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`cookie`\" pulumi-lang-dotnet=\"`Cookie`\" pulumi-lang-go=\"`cookie`\" pulumi-lang-python=\"`cookie`\" pulumi-lang-yaml=\"`cookie`\" pulumi-lang-java=\"`cookie`\"\u003e`cookie`\u003c/span\u003e. Default: \"/\"\n"},"hashOnHeader":{"type":"string","description":"The header name to take the value from as hash input. Only required when \u003cspan pulumi-lang-nodejs=\"`hashOn`\" pulumi-lang-dotnet=\"`HashOn`\" pulumi-lang-go=\"`hashOn`\" pulumi-lang-python=\"`hash_on`\" pulumi-lang-yaml=\"`hashOn`\" pulumi-lang-java=\"`hashOn`\"\u003e`hash_on`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`header`\" pulumi-lang-dotnet=\"`Header`\" pulumi-lang-go=\"`header`\" pulumi-lang-python=\"`header`\" pulumi-lang-yaml=\"`header`\" pulumi-lang-java=\"`header`\"\u003e`header`\u003c/span\u003e.\n"},"hashOnQueryArg":{"type":"string","description":"The name of the query string argument to take the value from as hash input. Only required when \u003cspan pulumi-lang-nodejs=\"`hashOn`\" pulumi-lang-dotnet=\"`HashOn`\" pulumi-lang-go=\"`hashOn`\" pulumi-lang-python=\"`hash_on`\" pulumi-lang-yaml=\"`hashOn`\" pulumi-lang-java=\"`hashOn`\"\u003e`hash_on`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`queryArg`\" pulumi-lang-dotnet=\"`QueryArg`\" pulumi-lang-go=\"`queryArg`\" pulumi-lang-python=\"`query_arg`\" pulumi-lang-yaml=\"`queryArg`\" pulumi-lang-java=\"`queryArg`\"\u003e`query_arg`\u003c/span\u003e.\n"},"hashOnUriCapture":{"type":"string","description":"The name of the route URI capture to take the value from as hash input. Only required when \u003cspan pulumi-lang-nodejs=\"`hashOn`\" pulumi-lang-dotnet=\"`HashOn`\" pulumi-lang-go=\"`hashOn`\" pulumi-lang-python=\"`hash_on`\" pulumi-lang-yaml=\"`hashOn`\" pulumi-lang-java=\"`hashOn`\"\u003e`hash_on`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`uriCapture`\" pulumi-lang-dotnet=\"`UriCapture`\" pulumi-lang-go=\"`uriCapture`\" pulumi-lang-python=\"`uri_capture`\" pulumi-lang-yaml=\"`uriCapture`\" pulumi-lang-java=\"`uriCapture`\"\u003e`uri_capture`\u003c/span\u003e.\n"},"healthchecks":{"$ref":"#/types/konnect:index%2FGatewayUpstreamHealthchecks:GatewayUpstreamHealthchecks","description":"The array of healthchecks.\n"},"hostHeader":{"type":"string","description":"The hostname to be used as `Host` header when proxying requests through Kong.\n"},"name":{"type":"string","description":"This is a hostname, which must be equal to the \u003cspan pulumi-lang-nodejs=\"`host`\" pulumi-lang-dotnet=\"`Host`\" pulumi-lang-go=\"`host`\" pulumi-lang-python=\"`host`\" pulumi-lang-yaml=\"`host`\" pulumi-lang-java=\"`host`\"\u003e`host`\u003c/span\u003e of a Service.\n"},"slots":{"type":"number","description":"The number of slots in the load balancer algorithm. If \u003cspan pulumi-lang-nodejs=\"`algorithm`\" pulumi-lang-dotnet=\"`Algorithm`\" pulumi-lang-go=\"`algorithm`\" pulumi-lang-python=\"`algorithm`\" pulumi-lang-yaml=\"`algorithm`\" pulumi-lang-java=\"`algorithm`\"\u003e`algorithm`\u003c/span\u003e is set to `round-robin`, this setting determines the maximum number of slots. If \u003cspan pulumi-lang-nodejs=\"`algorithm`\" pulumi-lang-dotnet=\"`Algorithm`\" pulumi-lang-go=\"`algorithm`\" pulumi-lang-python=\"`algorithm`\" pulumi-lang-yaml=\"`algorithm`\" pulumi-lang-java=\"`algorithm`\"\u003e`algorithm`\u003c/span\u003e is set to `consistent-hashing`, this setting determines the actual number of slots in the algorithm. Accepts an integer in the range \u003cspan pulumi-lang-nodejs=\"`10`\" pulumi-lang-dotnet=\"`10`\" pulumi-lang-go=\"`10`\" pulumi-lang-python=\"`10`\" pulumi-lang-yaml=\"`10`\" pulumi-lang-java=\"`10`\"\u003e`10`\u003c/span\u003e-\u003cspan pulumi-lang-nodejs=\"`65536`\" pulumi-lang-dotnet=\"`65536`\" pulumi-lang-go=\"`65536`\" pulumi-lang-python=\"`65536`\" pulumi-lang-yaml=\"`65536`\" pulumi-lang-java=\"`65536`\"\u003e`65536`\u003c/span\u003e. Default: 10000\n"},"stickySessionsCookie":{"type":"string","description":"The cookie name to keep sticky sessions.\n"},"stickySessionsCookiePath":{"type":"string","description":"A string representing a URL path, such as /path/to/resource. Must start with a forward slash (/) and must not contain empty segments (i.e., two consecutive forward slashes). Default: \"/\"\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Upstream for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"},"useSrvName":{"type":"boolean","description":"If set, the balancer will use SRV hostname(if DNS Answer has SRV record) as the proxy upstream `Host`. Default: false\n"}},"type":"object","required":["algorithm","clientCertificate","controlPlaneId","createdAt","gatewayUpstreamId","hashFallback","hashOn","hashOnCookiePath","healthchecks","name","slots","stickySessionsCookiePath","updatedAt","useSrvName"],"inputProperties":{"algorithm":{"type":"string","description":"Which load balancing algorithm to use. Default: \"round-robin\"; must be one of [\"consistent-hashing\", \"latency\", \"least-connections\", \"round-robin\", \"sticky-sessions\"]\n"},"clientCertificate":{"$ref":"#/types/konnect:index%2FGatewayUpstreamClientCertificate:GatewayUpstreamClientCertificate","description":"If set, the certificate to be used as client certificate while TLS handshaking to the upstream server.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"gatewayUpstreamId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"hashFallback":{"type":"string","description":"What to use as hashing input if the primary \u003cspan pulumi-lang-nodejs=\"`hashOn`\" pulumi-lang-dotnet=\"`HashOn`\" pulumi-lang-go=\"`hashOn`\" pulumi-lang-python=\"`hash_on`\" pulumi-lang-yaml=\"`hashOn`\" pulumi-lang-java=\"`hashOn`\"\u003e`hash_on`\u003c/span\u003e does not return a hash (eg. header is missing, or no Consumer identified). Not available if \u003cspan pulumi-lang-nodejs=\"`hashOn`\" pulumi-lang-dotnet=\"`HashOn`\" pulumi-lang-go=\"`hashOn`\" pulumi-lang-python=\"`hash_on`\" pulumi-lang-yaml=\"`hashOn`\" pulumi-lang-java=\"`hashOn`\"\u003e`hash_on`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`cookie`\" pulumi-lang-dotnet=\"`Cookie`\" pulumi-lang-go=\"`cookie`\" pulumi-lang-python=\"`cookie`\" pulumi-lang-yaml=\"`cookie`\" pulumi-lang-java=\"`cookie`\"\u003e`cookie`\u003c/span\u003e. Default: \"none\"; must be one of [\"consumer\", \"cookie\", \"header\", \"ip\", \"none\", \"path\", \"query*arg\", \"uri*capture\"]\n"},"hashFallbackHeader":{"type":"string","description":"The header name to take the value from as hash input. Only required when \u003cspan pulumi-lang-nodejs=\"`hashFallback`\" pulumi-lang-dotnet=\"`HashFallback`\" pulumi-lang-go=\"`hashFallback`\" pulumi-lang-python=\"`hash_fallback`\" pulumi-lang-yaml=\"`hashFallback`\" pulumi-lang-java=\"`hashFallback`\"\u003e`hash_fallback`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`header`\" pulumi-lang-dotnet=\"`Header`\" pulumi-lang-go=\"`header`\" pulumi-lang-python=\"`header`\" pulumi-lang-yaml=\"`header`\" pulumi-lang-java=\"`header`\"\u003e`header`\u003c/span\u003e.\n"},"hashFallbackQueryArg":{"type":"string","description":"The name of the query string argument to take the value from as hash input. Only required when \u003cspan pulumi-lang-nodejs=\"`hashFallback`\" pulumi-lang-dotnet=\"`HashFallback`\" pulumi-lang-go=\"`hashFallback`\" pulumi-lang-python=\"`hash_fallback`\" pulumi-lang-yaml=\"`hashFallback`\" pulumi-lang-java=\"`hashFallback`\"\u003e`hash_fallback`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`queryArg`\" pulumi-lang-dotnet=\"`QueryArg`\" pulumi-lang-go=\"`queryArg`\" pulumi-lang-python=\"`query_arg`\" pulumi-lang-yaml=\"`queryArg`\" pulumi-lang-java=\"`queryArg`\"\u003e`query_arg`\u003c/span\u003e.\n"},"hashFallbackUriCapture":{"type":"string","description":"The name of the route URI capture to take the value from as hash input. Only required when \u003cspan pulumi-lang-nodejs=\"`hashFallback`\" pulumi-lang-dotnet=\"`HashFallback`\" pulumi-lang-go=\"`hashFallback`\" pulumi-lang-python=\"`hash_fallback`\" pulumi-lang-yaml=\"`hashFallback`\" pulumi-lang-java=\"`hashFallback`\"\u003e`hash_fallback`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`uriCapture`\" pulumi-lang-dotnet=\"`UriCapture`\" pulumi-lang-go=\"`uriCapture`\" pulumi-lang-python=\"`uri_capture`\" pulumi-lang-yaml=\"`uriCapture`\" pulumi-lang-java=\"`uriCapture`\"\u003e`uri_capture`\u003c/span\u003e.\n"},"hashOn":{"type":"string","description":"What to use as hashing input. Using \u003cspan pulumi-lang-nodejs=\"`none`\" pulumi-lang-dotnet=\"`None`\" pulumi-lang-go=\"`none`\" pulumi-lang-python=\"`none`\" pulumi-lang-yaml=\"`none`\" pulumi-lang-java=\"`none`\"\u003e`none`\u003c/span\u003e results in a weighted-round-robin scheme with no hashing. Default: \"none\"; must be one of [\"consumer\", \"cookie\", \"header\", \"ip\", \"none\", \"path\", \"query*arg\", \"uri*capture\"]\n"},"hashOnCookie":{"type":"string","description":"The cookie name to take the value from as hash input. Only required when \u003cspan pulumi-lang-nodejs=\"`hashOn`\" pulumi-lang-dotnet=\"`HashOn`\" pulumi-lang-go=\"`hashOn`\" pulumi-lang-python=\"`hash_on`\" pulumi-lang-yaml=\"`hashOn`\" pulumi-lang-java=\"`hashOn`\"\u003e`hash_on`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`hashFallback`\" pulumi-lang-dotnet=\"`HashFallback`\" pulumi-lang-go=\"`hashFallback`\" pulumi-lang-python=\"`hash_fallback`\" pulumi-lang-yaml=\"`hashFallback`\" pulumi-lang-java=\"`hashFallback`\"\u003e`hash_fallback`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`cookie`\" pulumi-lang-dotnet=\"`Cookie`\" pulumi-lang-go=\"`cookie`\" pulumi-lang-python=\"`cookie`\" pulumi-lang-yaml=\"`cookie`\" pulumi-lang-java=\"`cookie`\"\u003e`cookie`\u003c/span\u003e. If the specified cookie is not in the request, Kong will generate a value and set the cookie in the response.\n"},"hashOnCookiePath":{"type":"string","description":"The cookie path to set in the response headers. Only required when \u003cspan pulumi-lang-nodejs=\"`hashOn`\" pulumi-lang-dotnet=\"`HashOn`\" pulumi-lang-go=\"`hashOn`\" pulumi-lang-python=\"`hash_on`\" pulumi-lang-yaml=\"`hashOn`\" pulumi-lang-java=\"`hashOn`\"\u003e`hash_on`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`hashFallback`\" pulumi-lang-dotnet=\"`HashFallback`\" pulumi-lang-go=\"`hashFallback`\" pulumi-lang-python=\"`hash_fallback`\" pulumi-lang-yaml=\"`hashFallback`\" pulumi-lang-java=\"`hashFallback`\"\u003e`hash_fallback`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`cookie`\" pulumi-lang-dotnet=\"`Cookie`\" pulumi-lang-go=\"`cookie`\" pulumi-lang-python=\"`cookie`\" pulumi-lang-yaml=\"`cookie`\" pulumi-lang-java=\"`cookie`\"\u003e`cookie`\u003c/span\u003e. Default: \"/\"\n"},"hashOnHeader":{"type":"string","description":"The header name to take the value from as hash input. Only required when \u003cspan pulumi-lang-nodejs=\"`hashOn`\" pulumi-lang-dotnet=\"`HashOn`\" pulumi-lang-go=\"`hashOn`\" pulumi-lang-python=\"`hash_on`\" pulumi-lang-yaml=\"`hashOn`\" pulumi-lang-java=\"`hashOn`\"\u003e`hash_on`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`header`\" pulumi-lang-dotnet=\"`Header`\" pulumi-lang-go=\"`header`\" pulumi-lang-python=\"`header`\" pulumi-lang-yaml=\"`header`\" pulumi-lang-java=\"`header`\"\u003e`header`\u003c/span\u003e.\n"},"hashOnQueryArg":{"type":"string","description":"The name of the query string argument to take the value from as hash input. Only required when \u003cspan pulumi-lang-nodejs=\"`hashOn`\" pulumi-lang-dotnet=\"`HashOn`\" pulumi-lang-go=\"`hashOn`\" pulumi-lang-python=\"`hash_on`\" pulumi-lang-yaml=\"`hashOn`\" pulumi-lang-java=\"`hashOn`\"\u003e`hash_on`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`queryArg`\" pulumi-lang-dotnet=\"`QueryArg`\" pulumi-lang-go=\"`queryArg`\" pulumi-lang-python=\"`query_arg`\" pulumi-lang-yaml=\"`queryArg`\" pulumi-lang-java=\"`queryArg`\"\u003e`query_arg`\u003c/span\u003e.\n"},"hashOnUriCapture":{"type":"string","description":"The name of the route URI capture to take the value from as hash input. Only required when \u003cspan pulumi-lang-nodejs=\"`hashOn`\" pulumi-lang-dotnet=\"`HashOn`\" pulumi-lang-go=\"`hashOn`\" pulumi-lang-python=\"`hash_on`\" pulumi-lang-yaml=\"`hashOn`\" pulumi-lang-java=\"`hashOn`\"\u003e`hash_on`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`uriCapture`\" pulumi-lang-dotnet=\"`UriCapture`\" pulumi-lang-go=\"`uriCapture`\" pulumi-lang-python=\"`uri_capture`\" pulumi-lang-yaml=\"`uriCapture`\" pulumi-lang-java=\"`uriCapture`\"\u003e`uri_capture`\u003c/span\u003e.\n"},"healthchecks":{"$ref":"#/types/konnect:index%2FGatewayUpstreamHealthchecks:GatewayUpstreamHealthchecks","description":"The array of healthchecks.\n"},"hostHeader":{"type":"string","description":"The hostname to be used as `Host` header when proxying requests through Kong.\n"},"name":{"type":"string","description":"This is a hostname, which must be equal to the \u003cspan pulumi-lang-nodejs=\"`host`\" pulumi-lang-dotnet=\"`Host`\" pulumi-lang-go=\"`host`\" pulumi-lang-python=\"`host`\" pulumi-lang-yaml=\"`host`\" pulumi-lang-java=\"`host`\"\u003e`host`\u003c/span\u003e of a Service.\n"},"slots":{"type":"number","description":"The number of slots in the load balancer algorithm. If \u003cspan pulumi-lang-nodejs=\"`algorithm`\" pulumi-lang-dotnet=\"`Algorithm`\" pulumi-lang-go=\"`algorithm`\" pulumi-lang-python=\"`algorithm`\" pulumi-lang-yaml=\"`algorithm`\" pulumi-lang-java=\"`algorithm`\"\u003e`algorithm`\u003c/span\u003e is set to `round-robin`, this setting determines the maximum number of slots. If \u003cspan pulumi-lang-nodejs=\"`algorithm`\" pulumi-lang-dotnet=\"`Algorithm`\" pulumi-lang-go=\"`algorithm`\" pulumi-lang-python=\"`algorithm`\" pulumi-lang-yaml=\"`algorithm`\" pulumi-lang-java=\"`algorithm`\"\u003e`algorithm`\u003c/span\u003e is set to `consistent-hashing`, this setting determines the actual number of slots in the algorithm. Accepts an integer in the range \u003cspan pulumi-lang-nodejs=\"`10`\" pulumi-lang-dotnet=\"`10`\" pulumi-lang-go=\"`10`\" pulumi-lang-python=\"`10`\" pulumi-lang-yaml=\"`10`\" pulumi-lang-java=\"`10`\"\u003e`10`\u003c/span\u003e-\u003cspan pulumi-lang-nodejs=\"`65536`\" pulumi-lang-dotnet=\"`65536`\" pulumi-lang-go=\"`65536`\" pulumi-lang-python=\"`65536`\" pulumi-lang-yaml=\"`65536`\" pulumi-lang-java=\"`65536`\"\u003e`65536`\u003c/span\u003e. Default: 10000\n"},"stickySessionsCookie":{"type":"string","description":"The cookie name to keep sticky sessions.\n"},"stickySessionsCookiePath":{"type":"string","description":"A string representing a URL path, such as /path/to/resource. Must start with a forward slash (/) and must not contain empty segments (i.e., two consecutive forward slashes). Default: \"/\"\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Upstream for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"},"useSrvName":{"type":"boolean","description":"If set, the balancer will use SRV hostname(if DNS Answer has SRV record) as the proxy upstream `Host`. Default: false\n"}},"requiredInputs":["controlPlaneId"],"stateInputs":{"description":"Input properties used for looking up and filtering GatewayUpstream resources.\n","properties":{"algorithm":{"type":"string","description":"Which load balancing algorithm to use. Default: \"round-robin\"; must be one of [\"consistent-hashing\", \"latency\", \"least-connections\", \"round-robin\", \"sticky-sessions\"]\n"},"clientCertificate":{"$ref":"#/types/konnect:index%2FGatewayUpstreamClientCertificate:GatewayUpstreamClientCertificate","description":"If set, the certificate to be used as client certificate while TLS handshaking to the upstream server.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"gatewayUpstreamId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"hashFallback":{"type":"string","description":"What to use as hashing input if the primary \u003cspan pulumi-lang-nodejs=\"`hashOn`\" pulumi-lang-dotnet=\"`HashOn`\" pulumi-lang-go=\"`hashOn`\" pulumi-lang-python=\"`hash_on`\" pulumi-lang-yaml=\"`hashOn`\" pulumi-lang-java=\"`hashOn`\"\u003e`hash_on`\u003c/span\u003e does not return a hash (eg. header is missing, or no Consumer identified). Not available if \u003cspan pulumi-lang-nodejs=\"`hashOn`\" pulumi-lang-dotnet=\"`HashOn`\" pulumi-lang-go=\"`hashOn`\" pulumi-lang-python=\"`hash_on`\" pulumi-lang-yaml=\"`hashOn`\" pulumi-lang-java=\"`hashOn`\"\u003e`hash_on`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`cookie`\" pulumi-lang-dotnet=\"`Cookie`\" pulumi-lang-go=\"`cookie`\" pulumi-lang-python=\"`cookie`\" pulumi-lang-yaml=\"`cookie`\" pulumi-lang-java=\"`cookie`\"\u003e`cookie`\u003c/span\u003e. Default: \"none\"; must be one of [\"consumer\", \"cookie\", \"header\", \"ip\", \"none\", \"path\", \"query*arg\", \"uri*capture\"]\n"},"hashFallbackHeader":{"type":"string","description":"The header name to take the value from as hash input. Only required when \u003cspan pulumi-lang-nodejs=\"`hashFallback`\" pulumi-lang-dotnet=\"`HashFallback`\" pulumi-lang-go=\"`hashFallback`\" pulumi-lang-python=\"`hash_fallback`\" pulumi-lang-yaml=\"`hashFallback`\" pulumi-lang-java=\"`hashFallback`\"\u003e`hash_fallback`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`header`\" pulumi-lang-dotnet=\"`Header`\" pulumi-lang-go=\"`header`\" pulumi-lang-python=\"`header`\" pulumi-lang-yaml=\"`header`\" pulumi-lang-java=\"`header`\"\u003e`header`\u003c/span\u003e.\n"},"hashFallbackQueryArg":{"type":"string","description":"The name of the query string argument to take the value from as hash input. Only required when \u003cspan pulumi-lang-nodejs=\"`hashFallback`\" pulumi-lang-dotnet=\"`HashFallback`\" pulumi-lang-go=\"`hashFallback`\" pulumi-lang-python=\"`hash_fallback`\" pulumi-lang-yaml=\"`hashFallback`\" pulumi-lang-java=\"`hashFallback`\"\u003e`hash_fallback`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`queryArg`\" pulumi-lang-dotnet=\"`QueryArg`\" pulumi-lang-go=\"`queryArg`\" pulumi-lang-python=\"`query_arg`\" pulumi-lang-yaml=\"`queryArg`\" pulumi-lang-java=\"`queryArg`\"\u003e`query_arg`\u003c/span\u003e.\n"},"hashFallbackUriCapture":{"type":"string","description":"The name of the route URI capture to take the value from as hash input. Only required when \u003cspan pulumi-lang-nodejs=\"`hashFallback`\" pulumi-lang-dotnet=\"`HashFallback`\" pulumi-lang-go=\"`hashFallback`\" pulumi-lang-python=\"`hash_fallback`\" pulumi-lang-yaml=\"`hashFallback`\" pulumi-lang-java=\"`hashFallback`\"\u003e`hash_fallback`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`uriCapture`\" pulumi-lang-dotnet=\"`UriCapture`\" pulumi-lang-go=\"`uriCapture`\" pulumi-lang-python=\"`uri_capture`\" pulumi-lang-yaml=\"`uriCapture`\" pulumi-lang-java=\"`uriCapture`\"\u003e`uri_capture`\u003c/span\u003e.\n"},"hashOn":{"type":"string","description":"What to use as hashing input. Using \u003cspan pulumi-lang-nodejs=\"`none`\" pulumi-lang-dotnet=\"`None`\" pulumi-lang-go=\"`none`\" pulumi-lang-python=\"`none`\" pulumi-lang-yaml=\"`none`\" pulumi-lang-java=\"`none`\"\u003e`none`\u003c/span\u003e results in a weighted-round-robin scheme with no hashing. Default: \"none\"; must be one of [\"consumer\", \"cookie\", \"header\", \"ip\", \"none\", \"path\", \"query*arg\", \"uri*capture\"]\n"},"hashOnCookie":{"type":"string","description":"The cookie name to take the value from as hash input. Only required when \u003cspan pulumi-lang-nodejs=\"`hashOn`\" pulumi-lang-dotnet=\"`HashOn`\" pulumi-lang-go=\"`hashOn`\" pulumi-lang-python=\"`hash_on`\" pulumi-lang-yaml=\"`hashOn`\" pulumi-lang-java=\"`hashOn`\"\u003e`hash_on`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`hashFallback`\" pulumi-lang-dotnet=\"`HashFallback`\" pulumi-lang-go=\"`hashFallback`\" pulumi-lang-python=\"`hash_fallback`\" pulumi-lang-yaml=\"`hashFallback`\" pulumi-lang-java=\"`hashFallback`\"\u003e`hash_fallback`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`cookie`\" pulumi-lang-dotnet=\"`Cookie`\" pulumi-lang-go=\"`cookie`\" pulumi-lang-python=\"`cookie`\" pulumi-lang-yaml=\"`cookie`\" pulumi-lang-java=\"`cookie`\"\u003e`cookie`\u003c/span\u003e. If the specified cookie is not in the request, Kong will generate a value and set the cookie in the response.\n"},"hashOnCookiePath":{"type":"string","description":"The cookie path to set in the response headers. Only required when \u003cspan pulumi-lang-nodejs=\"`hashOn`\" pulumi-lang-dotnet=\"`HashOn`\" pulumi-lang-go=\"`hashOn`\" pulumi-lang-python=\"`hash_on`\" pulumi-lang-yaml=\"`hashOn`\" pulumi-lang-java=\"`hashOn`\"\u003e`hash_on`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`hashFallback`\" pulumi-lang-dotnet=\"`HashFallback`\" pulumi-lang-go=\"`hashFallback`\" pulumi-lang-python=\"`hash_fallback`\" pulumi-lang-yaml=\"`hashFallback`\" pulumi-lang-java=\"`hashFallback`\"\u003e`hash_fallback`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`cookie`\" pulumi-lang-dotnet=\"`Cookie`\" pulumi-lang-go=\"`cookie`\" pulumi-lang-python=\"`cookie`\" pulumi-lang-yaml=\"`cookie`\" pulumi-lang-java=\"`cookie`\"\u003e`cookie`\u003c/span\u003e. Default: \"/\"\n"},"hashOnHeader":{"type":"string","description":"The header name to take the value from as hash input. Only required when \u003cspan pulumi-lang-nodejs=\"`hashOn`\" pulumi-lang-dotnet=\"`HashOn`\" pulumi-lang-go=\"`hashOn`\" pulumi-lang-python=\"`hash_on`\" pulumi-lang-yaml=\"`hashOn`\" pulumi-lang-java=\"`hashOn`\"\u003e`hash_on`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`header`\" pulumi-lang-dotnet=\"`Header`\" pulumi-lang-go=\"`header`\" pulumi-lang-python=\"`header`\" pulumi-lang-yaml=\"`header`\" pulumi-lang-java=\"`header`\"\u003e`header`\u003c/span\u003e.\n"},"hashOnQueryArg":{"type":"string","description":"The name of the query string argument to take the value from as hash input. Only required when \u003cspan pulumi-lang-nodejs=\"`hashOn`\" pulumi-lang-dotnet=\"`HashOn`\" pulumi-lang-go=\"`hashOn`\" pulumi-lang-python=\"`hash_on`\" pulumi-lang-yaml=\"`hashOn`\" pulumi-lang-java=\"`hashOn`\"\u003e`hash_on`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`queryArg`\" pulumi-lang-dotnet=\"`QueryArg`\" pulumi-lang-go=\"`queryArg`\" pulumi-lang-python=\"`query_arg`\" pulumi-lang-yaml=\"`queryArg`\" pulumi-lang-java=\"`queryArg`\"\u003e`query_arg`\u003c/span\u003e.\n"},"hashOnUriCapture":{"type":"string","description":"The name of the route URI capture to take the value from as hash input. Only required when \u003cspan pulumi-lang-nodejs=\"`hashOn`\" pulumi-lang-dotnet=\"`HashOn`\" pulumi-lang-go=\"`hashOn`\" pulumi-lang-python=\"`hash_on`\" pulumi-lang-yaml=\"`hashOn`\" pulumi-lang-java=\"`hashOn`\"\u003e`hash_on`\u003c/span\u003e is set to \u003cspan pulumi-lang-nodejs=\"`uriCapture`\" pulumi-lang-dotnet=\"`UriCapture`\" pulumi-lang-go=\"`uriCapture`\" pulumi-lang-python=\"`uri_capture`\" pulumi-lang-yaml=\"`uriCapture`\" pulumi-lang-java=\"`uriCapture`\"\u003e`uri_capture`\u003c/span\u003e.\n"},"healthchecks":{"$ref":"#/types/konnect:index%2FGatewayUpstreamHealthchecks:GatewayUpstreamHealthchecks","description":"The array of healthchecks.\n"},"hostHeader":{"type":"string","description":"The hostname to be used as `Host` header when proxying requests through Kong.\n"},"name":{"type":"string","description":"This is a hostname, which must be equal to the \u003cspan pulumi-lang-nodejs=\"`host`\" pulumi-lang-dotnet=\"`Host`\" pulumi-lang-go=\"`host`\" pulumi-lang-python=\"`host`\" pulumi-lang-yaml=\"`host`\" pulumi-lang-java=\"`host`\"\u003e`host`\u003c/span\u003e of a Service.\n"},"slots":{"type":"number","description":"The number of slots in the load balancer algorithm. If \u003cspan pulumi-lang-nodejs=\"`algorithm`\" pulumi-lang-dotnet=\"`Algorithm`\" pulumi-lang-go=\"`algorithm`\" pulumi-lang-python=\"`algorithm`\" pulumi-lang-yaml=\"`algorithm`\" pulumi-lang-java=\"`algorithm`\"\u003e`algorithm`\u003c/span\u003e is set to `round-robin`, this setting determines the maximum number of slots. If \u003cspan pulumi-lang-nodejs=\"`algorithm`\" pulumi-lang-dotnet=\"`Algorithm`\" pulumi-lang-go=\"`algorithm`\" pulumi-lang-python=\"`algorithm`\" pulumi-lang-yaml=\"`algorithm`\" pulumi-lang-java=\"`algorithm`\"\u003e`algorithm`\u003c/span\u003e is set to `consistent-hashing`, this setting determines the actual number of slots in the algorithm. Accepts an integer in the range \u003cspan pulumi-lang-nodejs=\"`10`\" pulumi-lang-dotnet=\"`10`\" pulumi-lang-go=\"`10`\" pulumi-lang-python=\"`10`\" pulumi-lang-yaml=\"`10`\" pulumi-lang-java=\"`10`\"\u003e`10`\u003c/span\u003e-\u003cspan pulumi-lang-nodejs=\"`65536`\" pulumi-lang-dotnet=\"`65536`\" pulumi-lang-go=\"`65536`\" pulumi-lang-python=\"`65536`\" pulumi-lang-yaml=\"`65536`\" pulumi-lang-java=\"`65536`\"\u003e`65536`\u003c/span\u003e. Default: 10000\n"},"stickySessionsCookie":{"type":"string","description":"The cookie name to keep sticky sessions.\n"},"stickySessionsCookiePath":{"type":"string","description":"A string representing a URL path, such as /path/to/resource. Must start with a forward slash (/) and must not contain empty segments (i.e., two consecutive forward slashes). Default: \"/\"\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Upstream for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"},"useSrvName":{"type":"boolean","description":"If set, the balancer will use SRV hostname(if DNS Answer has SRV record) as the proxy upstream `Host`. Default: false\n"}},"type":"object"}},"konnect:index/gatewayVault:GatewayVault":{"description":"GatewayVault Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myGatewayvault = new konnect.GatewayVault(\"my_gatewayvault\", {\n    config: \"{ \\\"see\\\": \\\"documentation\\\" }\",\n    controlPlaneId: \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    createdAt: 4,\n    description: \"...my_description...\",\n    gatewayVaultId: \"...my_id...\",\n    name: \"...my_name...\",\n    prefix: \"...my_prefix...\",\n    tags: [\"...\"],\n    updatedAt: 4,\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_gatewayvault = konnect.GatewayVault(\"my_gatewayvault\",\n    config=\"{ \\\"see\\\": \\\"documentation\\\" }\",\n    control_plane_id=\"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n    created_at=4,\n    description=\"...my_description...\",\n    gateway_vault_id=\"...my_id...\",\n    name=\"...my_name...\",\n    prefix=\"...my_prefix...\",\n    tags=[\"...\"],\n    updated_at=4)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myGatewayvault = new Konnect.GatewayVault(\"my_gatewayvault\", new()\n    {\n        Config = \"{ \\\"see\\\": \\\"documentation\\\" }\",\n        ControlPlaneId = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\",\n        CreatedAt = 4,\n        Description = \"...my_description...\",\n        GatewayVaultId = \"...my_id...\",\n        Name = \"...my_name...\",\n        Prefix = \"...my_prefix...\",\n        Tags = new[]\n        {\n            \"...\",\n        },\n        UpdatedAt = 4,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewGatewayVault(ctx, \"my_gatewayvault\", \u0026konnect.GatewayVaultArgs{\n\t\t\tConfig:         pulumi.String(\"{ \\\"see\\\": \\\"documentation\\\" }\"),\n\t\t\tControlPlaneId: pulumi.String(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\"),\n\t\t\tCreatedAt:      pulumi.Float64(4),\n\t\t\tDescription:    pulumi.String(\"...my_description...\"),\n\t\t\tGatewayVaultId: pulumi.String(\"...my_id...\"),\n\t\t\tName:           pulumi.String(\"...my_name...\"),\n\t\t\tPrefix:         pulumi.String(\"...my_prefix...\"),\n\t\t\tTags: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"...\"),\n\t\t\t},\n\t\t\tUpdatedAt: pulumi.Float64(4),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.GatewayVault;\nimport com.pulumi.konnect.GatewayVaultArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myGatewayvault = new GatewayVault(\"myGatewayvault\", GatewayVaultArgs.builder()\n            .config(\"{ \\\"see\\\": \\\"documentation\\\" }\")\n            .controlPlaneId(\"9524ec7d-36d9-465d-a8c5-83a3c9390458\")\n            .createdAt(4.0)\n            .description(\"...my_description...\")\n            .gatewayVaultId(\"...my_id...\")\n            .name(\"...my_name...\")\n            .prefix(\"...my_prefix...\")\n            .tags(\"...\")\n            .updatedAt(4.0)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myGatewayvault:\n    type: konnect:GatewayVault\n    name: my_gatewayvault\n    properties:\n      config: '{ \"see\": \"documentation\" }'\n      controlPlaneId: 9524ec7d-36d9-465d-a8c5-83a3c9390458\n      createdAt: 4\n      description: '...my_description...'\n      gatewayVaultId: '...my_id...'\n      name: '...my_name...'\n      prefix: '...my_prefix...'\n      tags:\n        - '...'\n      updatedAt: 4\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_gateway_vault.my_konnect_gateway_vault\n\n  id = jsonencode({\n\n    control_plane_id = \"9524ec7d-36d9-465d-a8c5-83a3c9390458\"\n\n    id = \"9d4d6d19-77c6-428e-a965-9bc9647633e9\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/gatewayVault:GatewayVault my_konnect_gateway_vault '{\"control_plane_id\": \"9524ec7d-36d9-465d-a8c5-83a3c9390458\", \"id\": \"9d4d6d19-77c6-428e-a965-9bc9647633e9\"}'\n```\n\n","properties":{"config":{"type":"string","description":"The configuration properties for the Vault which can be found on the vaults' documentation page. Parsed as JSON.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"description":{"type":"string","description":"The description of the Vault entity.\n"},"gatewayVaultId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"name":{"type":"string","description":"The name of the Vault that's going to be added. Currently, the Vault implementation must be installed in every Kong instance.\n"},"prefix":{"type":"string","description":"The unique prefix (or identifier) for this Vault configuration. The prefix is used to load the right Vault configuration and implementation when referencing secrets with the other entities.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Vault for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object","required":["config","controlPlaneId","createdAt","gatewayVaultId","name","prefix","updatedAt"],"inputProperties":{"config":{"type":"string","description":"The configuration properties for the Vault which can be found on the vaults' documentation page. Parsed as JSON.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"description":{"type":"string","description":"The description of the Vault entity.\n"},"gatewayVaultId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"name":{"type":"string","description":"The name of the Vault that's going to be added. Currently, the Vault implementation must be installed in every Kong instance.\n"},"prefix":{"type":"string","description":"The unique prefix (or identifier) for this Vault configuration. The prefix is used to load the right Vault configuration and implementation when referencing secrets with the other entities.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Vault for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"requiredInputs":["controlPlaneId","prefix"],"stateInputs":{"description":"Input properties used for looking up and filtering GatewayVault resources.\n","properties":{"config":{"type":"string","description":"The configuration properties for the Vault which can be found on the vaults' documentation page. Parsed as JSON.\n"},"controlPlaneId":{"type":"string","description":"The UUID of your control plane. This variable is available in the Konnect manager. Requires replacement if changed.\n"},"createdAt":{"type":"number","description":"Unix epoch when the resource was created.\n"},"description":{"type":"string","description":"The description of the Vault entity.\n"},"gatewayVaultId":{"type":"string","description":"A string representing a UUID (universally unique identifier).\n"},"name":{"type":"string","description":"The name of the Vault that's going to be added. Currently, the Vault implementation must be installed in every Kong instance.\n"},"prefix":{"type":"string","description":"The unique prefix (or identifier) for this Vault configuration. The prefix is used to load the right Vault configuration and implementation when referencing secrets with the other entities.\n"},"tags":{"type":"array","items":{"type":"string"},"description":"An optional set of strings associated with the Vault for grouping and filtering.\n"},"updatedAt":{"type":"number","description":"Unix epoch when the resource was last updated.\n"}},"type":"object"}},"konnect:index/identityProvider:IdentityProvider":{"description":"IdentityProvider Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myIdentityprovider = new konnect.IdentityProvider(\"my_identityprovider\", {\n    config: {\n        samlIdentityProviderConfig: {\n            idpMetadataUrl: \"https://mocksaml.com/api/saml/metadata\",\n            idpMetadataXml: `\u003c?xml version=\"1.0\" encoding=\"UTF-8\"?\u003e\n\u003cEntityDescriptor xmlns=\"urn:oasis:names:tc:SAML:2.0:metadata\"\u003e\n  \u003c!-- SAML metadata content here --\u003e\n\u003c/EntityDescriptor\u003e\n`,\n        },\n    },\n    enabled: true,\n    loginPath: \"myapp\",\n    type: \"oidc\",\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_identityprovider = konnect.IdentityProvider(\"my_identityprovider\",\n    config={\n        \"saml_identity_provider_config\": {\n            \"idp_metadata_url\": \"https://mocksaml.com/api/saml/metadata\",\n            \"idp_metadata_xml\": \"\"\"\u003c?xml version=\"1.0\" encoding=\"UTF-8\"?\u003e\n\u003cEntityDescriptor xmlns=\"urn:oasis:names:tc:SAML:2.0:metadata\"\u003e\n  \u003c!-- SAML metadata content here --\u003e\n\u003c/EntityDescriptor\u003e\n\"\"\",\n        },\n    },\n    enabled=True,\n    login_path=\"myapp\",\n    type=\"oidc\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myIdentityprovider = new Konnect.IdentityProvider(\"my_identityprovider\", new()\n    {\n        Config = new Konnect.Inputs.IdentityProviderConfigArgs\n        {\n            SamlIdentityProviderConfig = new Konnect.Inputs.IdentityProviderConfigSamlIdentityProviderConfigArgs\n            {\n                IdpMetadataUrl = \"https://mocksaml.com/api/saml/metadata\",\n                IdpMetadataXml = @\"\u003c?xml version=\"\"1.0\"\" encoding=\"\"UTF-8\"\"?\u003e\n\u003cEntityDescriptor xmlns=\"\"urn:oasis:names:tc:SAML:2.0:metadata\"\"\u003e\n  \u003c!-- SAML metadata content here --\u003e\n\u003c/EntityDescriptor\u003e\n\",\n            },\n        },\n        Enabled = true,\n        LoginPath = \"myapp\",\n        Type = \"oidc\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewIdentityProvider(ctx, \"my_identityprovider\", \u0026konnect.IdentityProviderArgs{\n\t\t\tConfig: \u0026konnect.IdentityProviderConfigArgs{\n\t\t\t\tSamlIdentityProviderConfig: \u0026konnect.IdentityProviderConfigSamlIdentityProviderConfigArgs{\n\t\t\t\t\tIdpMetadataUrl: pulumi.String(\"https://mocksaml.com/api/saml/metadata\"),\n\t\t\t\t\tIdpMetadataXml: pulumi.String(\"\u003c?xml version=\\\"1.0\\\" encoding=\\\"UTF-8\\\"?\u003e\\n\u003cEntityDescriptor xmlns=\\\"urn:oasis:names:tc:SAML:2.0:metadata\\\"\u003e\\n  \u003c!-- SAML metadata content here --\u003e\\n\u003c/EntityDescriptor\u003e\\n\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tEnabled:   pulumi.Bool(true),\n\t\t\tLoginPath: pulumi.String(\"myapp\"),\n\t\t\tType:      pulumi.String(\"oidc\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.IdentityProvider;\nimport com.pulumi.konnect.IdentityProviderArgs;\nimport com.pulumi.konnect.inputs.IdentityProviderConfigArgs;\nimport com.pulumi.konnect.inputs.IdentityProviderConfigSamlIdentityProviderConfigArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myIdentityprovider = new IdentityProvider(\"myIdentityprovider\", IdentityProviderArgs.builder()\n            .config(IdentityProviderConfigArgs.builder()\n                .samlIdentityProviderConfig(IdentityProviderConfigSamlIdentityProviderConfigArgs.builder()\n                    .idpMetadataUrl(\"https://mocksaml.com/api/saml/metadata\")\n                    .idpMetadataXml(\"\"\"\n\u003c?xml version=\"1.0\" encoding=\"UTF-8\"?\u003e\n\u003cEntityDescriptor xmlns=\"urn:oasis:names:tc:SAML:2.0:metadata\"\u003e\n  \u003c!-- SAML metadata content here --\u003e\n\u003c/EntityDescriptor\u003e\n                    \"\"\")\n                    .build())\n                .build())\n            .enabled(true)\n            .loginPath(\"myapp\")\n            .type(\"oidc\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myIdentityprovider:\n    type: konnect:IdentityProvider\n    name: my_identityprovider\n    properties:\n      config:\n        samlIdentityProviderConfig:\n          idpMetadataUrl: https://mocksaml.com/api/saml/metadata\n          idpMetadataXml: |\n            \u003c?xml version=\"1.0\" encoding=\"UTF-8\"?\u003e\n            \u003cEntityDescriptor xmlns=\"urn:oasis:names:tc:SAML:2.0:metadata\"\u003e\n              \u003c!-- SAML metadata content here --\u003e\n            \u003c/EntityDescriptor\u003e\n      enabled: true\n      loginPath: myapp\n      type: oidc\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_identity_provider.my_konnect_identity_provider\n\n  id = \"d32d905a-ed33-46a3-a093-d8f536af9a8a\"\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/identityProvider:IdentityProvider my_konnect_identity_provider \"d32d905a-ed33-46a3-a093-d8f536af9a8a\"\n```\n\n","properties":{"config":{"$ref":"#/types/konnect:index%2FIdentityProviderConfig:IdentityProviderConfig"},"createdAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity creation date.\n"},"enabled":{"type":"boolean","description":"Indicates whether the identity provider is enabled.\nOnly one identity provider can be active at a time, such as SAML or OIDC.\nDefault: false\n"},"loginPath":{"type":"string","description":"The path used for initiating login requests with the identity provider.\n"},"type":{"type":"string","description":"Specifies the type of identity provider. must be one of [\"oidc\", \"saml\"]; Requires replacement if changed.\n"},"updatedAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity update date.\n"}},"type":"object","required":["config","createdAt","enabled","loginPath","type","updatedAt"],"inputProperties":{"config":{"$ref":"#/types/konnect:index%2FIdentityProviderConfig:IdentityProviderConfig"},"enabled":{"type":"boolean","description":"Indicates whether the identity provider is enabled.\nOnly one identity provider can be active at a time, such as SAML or OIDC.\nDefault: false\n"},"loginPath":{"type":"string","description":"The path used for initiating login requests with the identity provider.\n"},"type":{"type":"string","description":"Specifies the type of identity provider. must be one of [\"oidc\", \"saml\"]; Requires replacement if changed.\n"}},"stateInputs":{"description":"Input properties used for looking up and filtering IdentityProvider resources.\n","properties":{"config":{"$ref":"#/types/konnect:index%2FIdentityProviderConfig:IdentityProviderConfig"},"createdAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity creation date.\n"},"enabled":{"type":"boolean","description":"Indicates whether the identity provider is enabled.\nOnly one identity provider can be active at a time, such as SAML or OIDC.\nDefault: false\n"},"loginPath":{"type":"string","description":"The path used for initiating login requests with the identity provider.\n"},"type":{"type":"string","description":"Specifies the type of identity provider. must be one of [\"oidc\", \"saml\"]; Requires replacement if changed.\n"},"updatedAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity update date.\n"}},"type":"object"}},"konnect:index/integrationInstance:IntegrationInstance":{"description":"IntegrationInstance Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myIntegrationinstance = new konnect.IntegrationInstance(\"my_integrationinstance\", {\n    config: \"{ \\\"see\\\": \\\"documentation\\\" }\",\n    description: \"...my_description...\",\n    displayName: \"AWS (prod)\",\n    integrationName: \"aws-lambda\",\n    labels: {\n        key: \"value\",\n    },\n    name: \"aws-lambda-prod\",\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_integrationinstance = konnect.IntegrationInstance(\"my_integrationinstance\",\n    config=\"{ \\\"see\\\": \\\"documentation\\\" }\",\n    description=\"...my_description...\",\n    display_name=\"AWS (prod)\",\n    integration_name=\"aws-lambda\",\n    labels={\n        \"key\": \"value\",\n    },\n    name=\"aws-lambda-prod\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myIntegrationinstance = new Konnect.IntegrationInstance(\"my_integrationinstance\", new()\n    {\n        Config = \"{ \\\"see\\\": \\\"documentation\\\" }\",\n        Description = \"...my_description...\",\n        DisplayName = \"AWS (prod)\",\n        IntegrationName = \"aws-lambda\",\n        Labels = \n        {\n            { \"key\", \"value\" },\n        },\n        Name = \"aws-lambda-prod\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewIntegrationInstance(ctx, \"my_integrationinstance\", \u0026konnect.IntegrationInstanceArgs{\n\t\t\tConfig:          pulumi.String(\"{ \\\"see\\\": \\\"documentation\\\" }\"),\n\t\t\tDescription:     pulumi.String(\"...my_description...\"),\n\t\t\tDisplayName:     pulumi.String(\"AWS (prod)\"),\n\t\t\tIntegrationName: pulumi.String(\"aws-lambda\"),\n\t\t\tLabels: pulumi.StringMap{\n\t\t\t\t\"key\": pulumi.String(\"value\"),\n\t\t\t},\n\t\t\tName: pulumi.String(\"aws-lambda-prod\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.IntegrationInstance;\nimport com.pulumi.konnect.IntegrationInstanceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myIntegrationinstance = new IntegrationInstance(\"myIntegrationinstance\", IntegrationInstanceArgs.builder()\n            .config(\"{ \\\"see\\\": \\\"documentation\\\" }\")\n            .description(\"...my_description...\")\n            .displayName(\"AWS (prod)\")\n            .integrationName(\"aws-lambda\")\n            .labels(Map.of(\"key\", \"value\"))\n            .name(\"aws-lambda-prod\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myIntegrationinstance:\n    type: konnect:IntegrationInstance\n    name: my_integrationinstance\n    properties:\n      config: '{ \"see\": \"documentation\" }'\n      description: '...my_description...'\n      displayName: AWS (prod)\n      integrationName: aws-lambda\n      labels:\n        key: value\n      name: aws-lambda-prod\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_integration_instance.my_konnect_integration_instance\n\n  id = \"3f51fa25-310a-421d-bd1a-007f859021a3\"\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/integrationInstance:IntegrationInstance my_konnect_integration_instance \"3f51fa25-310a-421d-bd1a-007f859021a3\"\n```\n\n","properties":{"authorized":{"type":"boolean","description":"Denotes whether the integration instance has been authorized within the catalog."},"config":{"type":"string","description":"JSON object representing configuration specific to the integration instance.\nThe expected schema depends on the integration type and is dynamically registered at runtime.\nParsed as JSON.\n"},"createdAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity creation date."},"description":{"type":"string","description":"Optionally provide a description of the integration instance.\n"},"displayName":{"type":"string","description":"The display name of the integration instance.\n"},"integration":{"$ref":"#/types/konnect:index%2FIntegrationInstanceIntegration:IntegrationInstanceIntegration","description":"Short-hand descriptor of an integration that omits instance metadata."},"integrationName":{"type":"string","description":"The type of integration instance to create. Requires replacement if changed.\n"},"labels":{"type":"object","additionalProperties":{"type":"string"},"description":"Labels store metadata of an entity that can be used for filtering an entity list or for searching across entity types.\n"},"name":{"type":"string","description":"The machine name of the integration instance that uniquely identifies it within the catalog.\n"},"updatedAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity update date."}},"type":"object","required":["authorized","config","createdAt","displayName","integration","integrationName","labels","name","updatedAt"],"inputProperties":{"config":{"type":"string","description":"JSON object representing configuration specific to the integration instance.\nThe expected schema depends on the integration type and is dynamically registered at runtime.\nParsed as JSON.\n"},"description":{"type":"string","description":"Optionally provide a description of the integration instance.\n"},"displayName":{"type":"string","description":"The display name of the integration instance.\n"},"integrationName":{"type":"string","description":"The type of integration instance to create. Requires replacement if changed.\n"},"labels":{"type":"object","additionalProperties":{"type":"string"},"description":"Labels store metadata of an entity that can be used for filtering an entity list or for searching across entity types.\n"},"name":{"type":"string","description":"The machine name of the integration instance that uniquely identifies it within the catalog.\n"}},"requiredInputs":["config","displayName","integrationName"],"stateInputs":{"description":"Input properties used for looking up and filtering IntegrationInstance resources.\n","properties":{"authorized":{"type":"boolean","description":"Denotes whether the integration instance has been authorized within the catalog."},"config":{"type":"string","description":"JSON object representing configuration specific to the integration instance.\nThe expected schema depends on the integration type and is dynamically registered at runtime.\nParsed as JSON.\n"},"createdAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity creation date."},"description":{"type":"string","description":"Optionally provide a description of the integration instance.\n"},"displayName":{"type":"string","description":"The display name of the integration instance.\n"},"integration":{"$ref":"#/types/konnect:index%2FIntegrationInstanceIntegration:IntegrationInstanceIntegration","description":"Short-hand descriptor of an integration that omits instance metadata."},"integrationName":{"type":"string","description":"The type of integration instance to create. Requires replacement if changed.\n"},"labels":{"type":"object","additionalProperties":{"type":"string"},"description":"Labels store metadata of an entity that can be used for filtering an entity list or for searching across entity types.\n"},"name":{"type":"string","description":"The machine name of the integration instance that uniquely identifies it within the catalog.\n"},"updatedAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity update date."}},"type":"object"}},"konnect:index/integrationInstanceAuthConfig:IntegrationInstanceAuthConfig":{"description":"IntegrationInstanceAuthConfig Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myIntegrationinstanceauthconfig = new konnect.IntegrationInstanceAuthConfig(\"my_integrationinstanceauthconfig\", {\n    integrationInstanceId: \"3f51fa25-310a-421d-bd1a-007f859021a3\",\n    oauthConfig: {\n        authorizationEndpoint: \"https://identity.service.com/oauth/authorize\",\n        clientId: \"d745213a-b7e8-4998-abe3-41f164001970\",\n        clientSecret: \"s3cr3t4p1cl13ntt0k3n1234567890abcdef\",\n        tokenEndpoint: \"https://identity.service.com/oauth/token\",\n    },\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_integrationinstanceauthconfig = konnect.IntegrationInstanceAuthConfig(\"my_integrationinstanceauthconfig\",\n    integration_instance_id=\"3f51fa25-310a-421d-bd1a-007f859021a3\",\n    oauth_config={\n        \"authorization_endpoint\": \"https://identity.service.com/oauth/authorize\",\n        \"client_id\": \"d745213a-b7e8-4998-abe3-41f164001970\",\n        \"client_secret\": \"s3cr3t4p1cl13ntt0k3n1234567890abcdef\",\n        \"token_endpoint\": \"https://identity.service.com/oauth/token\",\n    })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myIntegrationinstanceauthconfig = new Konnect.IntegrationInstanceAuthConfig(\"my_integrationinstanceauthconfig\", new()\n    {\n        IntegrationInstanceId = \"3f51fa25-310a-421d-bd1a-007f859021a3\",\n        OauthConfig = new Konnect.Inputs.IntegrationInstanceAuthConfigOauthConfigArgs\n        {\n            AuthorizationEndpoint = \"https://identity.service.com/oauth/authorize\",\n            ClientId = \"d745213a-b7e8-4998-abe3-41f164001970\",\n            ClientSecret = \"s3cr3t4p1cl13ntt0k3n1234567890abcdef\",\n            TokenEndpoint = \"https://identity.service.com/oauth/token\",\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewIntegrationInstanceAuthConfig(ctx, \"my_integrationinstanceauthconfig\", \u0026konnect.IntegrationInstanceAuthConfigArgs{\n\t\t\tIntegrationInstanceId: pulumi.String(\"3f51fa25-310a-421d-bd1a-007f859021a3\"),\n\t\t\tOauthConfig: \u0026konnect.IntegrationInstanceAuthConfigOauthConfigArgs{\n\t\t\t\tAuthorizationEndpoint: pulumi.String(\"https://identity.service.com/oauth/authorize\"),\n\t\t\t\tClientId:              pulumi.String(\"d745213a-b7e8-4998-abe3-41f164001970\"),\n\t\t\t\tClientSecret:          pulumi.String(\"s3cr3t4p1cl13ntt0k3n1234567890abcdef\"),\n\t\t\t\tTokenEndpoint:         pulumi.String(\"https://identity.service.com/oauth/token\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.IntegrationInstanceAuthConfig;\nimport com.pulumi.konnect.IntegrationInstanceAuthConfigArgs;\nimport com.pulumi.konnect.inputs.IntegrationInstanceAuthConfigOauthConfigArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myIntegrationinstanceauthconfig = new IntegrationInstanceAuthConfig(\"myIntegrationinstanceauthconfig\", IntegrationInstanceAuthConfigArgs.builder()\n            .integrationInstanceId(\"3f51fa25-310a-421d-bd1a-007f859021a3\")\n            .oauthConfig(IntegrationInstanceAuthConfigOauthConfigArgs.builder()\n                .authorizationEndpoint(\"https://identity.service.com/oauth/authorize\")\n                .clientId(\"d745213a-b7e8-4998-abe3-41f164001970\")\n                .clientSecret(\"s3cr3t4p1cl13ntt0k3n1234567890abcdef\")\n                .tokenEndpoint(\"https://identity.service.com/oauth/token\")\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myIntegrationinstanceauthconfig:\n    type: konnect:IntegrationInstanceAuthConfig\n    name: my_integrationinstanceauthconfig\n    properties:\n      integrationInstanceId: 3f51fa25-310a-421d-bd1a-007f859021a3\n      oauthConfig:\n        authorizationEndpoint: https://identity.service.com/oauth/authorize\n        clientId: d745213a-b7e8-4998-abe3-41f164001970\n        clientSecret: s3cr3t4p1cl13ntt0k3n1234567890abcdef\n        tokenEndpoint: https://identity.service.com/oauth/token\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_integration_instance_auth_config.my_konnect_integration_instance_auth_config\n\n  id = \"3f51fa25-310a-421d-bd1a-007f859021a3\"\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/integrationInstanceAuthConfig:IntegrationInstanceAuthConfig my_konnect_integration_instance_auth_config \"3f51fa25-310a-421d-bd1a-007f859021a3\"\n```\n\n","properties":{"authorizationEndpoint":{"type":"string","description":"The URL where users are redirected to authorize access.\n"},"clientId":{"type":"string","description":"The OAuth client identifier.\n"},"integrationInstanceId":{"type":"string","description":"The \u003cspan pulumi-lang-nodejs=\"`id`\" pulumi-lang-dotnet=\"`Id`\" pulumi-lang-go=\"`id`\" pulumi-lang-python=\"`id`\" pulumi-lang-yaml=\"`id`\" pulumi-lang-java=\"`id`\"\u003e`id`\u003c/span\u003e of the integration instance.\n"},"oauthAuthConfig":{"$ref":"#/types/konnect:index%2FIntegrationInstanceAuthConfigOauthAuthConfig:IntegrationInstanceAuthConfigOauthAuthConfig"},"oauthConfig":{"$ref":"#/types/konnect:index%2FIntegrationInstanceAuthConfigOauthConfig:IntegrationInstanceAuthConfigOauthConfig"},"tokenEndpoint":{"type":"string","description":"The URL used to retrieve access tokens.\n"}},"type":"object","required":["authorizationEndpoint","clientId","integrationInstanceId","oauthAuthConfig","tokenEndpoint"],"inputProperties":{"integrationInstanceId":{"type":"string","description":"The \u003cspan pulumi-lang-nodejs=\"`id`\" pulumi-lang-dotnet=\"`Id`\" pulumi-lang-go=\"`id`\" pulumi-lang-python=\"`id`\" pulumi-lang-yaml=\"`id`\" pulumi-lang-java=\"`id`\"\u003e`id`\u003c/span\u003e of the integration instance.\n"},"oauthConfig":{"$ref":"#/types/konnect:index%2FIntegrationInstanceAuthConfigOauthConfig:IntegrationInstanceAuthConfigOauthConfig"}},"requiredInputs":["integrationInstanceId"],"stateInputs":{"description":"Input properties used for looking up and filtering IntegrationInstanceAuthConfig resources.\n","properties":{"authorizationEndpoint":{"type":"string","description":"The URL where users are redirected to authorize access.\n"},"clientId":{"type":"string","description":"The OAuth client identifier.\n"},"integrationInstanceId":{"type":"string","description":"The \u003cspan pulumi-lang-nodejs=\"`id`\" pulumi-lang-dotnet=\"`Id`\" pulumi-lang-go=\"`id`\" pulumi-lang-python=\"`id`\" pulumi-lang-yaml=\"`id`\" pulumi-lang-java=\"`id`\"\u003e`id`\u003c/span\u003e of the integration instance.\n"},"oauthAuthConfig":{"$ref":"#/types/konnect:index%2FIntegrationInstanceAuthConfigOauthAuthConfig:IntegrationInstanceAuthConfigOauthAuthConfig"},"oauthConfig":{"$ref":"#/types/konnect:index%2FIntegrationInstanceAuthConfigOauthConfig:IntegrationInstanceAuthConfigOauthConfig"},"tokenEndpoint":{"type":"string","description":"The URL used to retrieve access tokens.\n"}},"type":"object"}},"konnect:index/integrationInstanceAuthCredential:IntegrationInstanceAuthCredential":{"description":"IntegrationInstanceAuthCredential Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myIntegrationinstanceauthcredential = new konnect.IntegrationInstanceAuthCredential(\"my_integrationinstanceauthcredential\", {\n    integrationInstanceId: \"3f51fa25-310a-421d-bd1a-007f859021a3\",\n    multiKeyAuth: {\n        config: {\n            headers: [{\n                key: \"...my_key...\",\n                name: \"...my_name...\",\n            }],\n        },\n    },\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_integrationinstanceauthcredential = konnect.IntegrationInstanceAuthCredential(\"my_integrationinstanceauthcredential\",\n    integration_instance_id=\"3f51fa25-310a-421d-bd1a-007f859021a3\",\n    multi_key_auth={\n        \"config\": {\n            \"headers\": [{\n                \"key\": \"...my_key...\",\n                \"name\": \"...my_name...\",\n            }],\n        },\n    })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myIntegrationinstanceauthcredential = new Konnect.IntegrationInstanceAuthCredential(\"my_integrationinstanceauthcredential\", new()\n    {\n        IntegrationInstanceId = \"3f51fa25-310a-421d-bd1a-007f859021a3\",\n        MultiKeyAuth = new Konnect.Inputs.IntegrationInstanceAuthCredentialMultiKeyAuthArgs\n        {\n            Config = new Konnect.Inputs.IntegrationInstanceAuthCredentialMultiKeyAuthConfigArgs\n            {\n                Headers = new[]\n                {\n                    new Konnect.Inputs.IntegrationInstanceAuthCredentialMultiKeyAuthConfigHeaderArgs\n                    {\n                        Key = \"...my_key...\",\n                        Name = \"...my_name...\",\n                    },\n                },\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewIntegrationInstanceAuthCredential(ctx, \"my_integrationinstanceauthcredential\", \u0026konnect.IntegrationInstanceAuthCredentialArgs{\n\t\t\tIntegrationInstanceId: pulumi.String(\"3f51fa25-310a-421d-bd1a-007f859021a3\"),\n\t\t\tMultiKeyAuth: \u0026konnect.IntegrationInstanceAuthCredentialMultiKeyAuthArgs{\n\t\t\t\tConfig: \u0026konnect.IntegrationInstanceAuthCredentialMultiKeyAuthConfigArgs{\n\t\t\t\t\tHeaders: konnect.IntegrationInstanceAuthCredentialMultiKeyAuthConfigHeaderArray{\n\t\t\t\t\t\t\u0026konnect.IntegrationInstanceAuthCredentialMultiKeyAuthConfigHeaderArgs{\n\t\t\t\t\t\t\tKey:  pulumi.String(\"...my_key...\"),\n\t\t\t\t\t\t\tName: pulumi.String(\"...my_name...\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.IntegrationInstanceAuthCredential;\nimport com.pulumi.konnect.IntegrationInstanceAuthCredentialArgs;\nimport com.pulumi.konnect.inputs.IntegrationInstanceAuthCredentialMultiKeyAuthArgs;\nimport com.pulumi.konnect.inputs.IntegrationInstanceAuthCredentialMultiKeyAuthConfigArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myIntegrationinstanceauthcredential = new IntegrationInstanceAuthCredential(\"myIntegrationinstanceauthcredential\", IntegrationInstanceAuthCredentialArgs.builder()\n            .integrationInstanceId(\"3f51fa25-310a-421d-bd1a-007f859021a3\")\n            .multiKeyAuth(IntegrationInstanceAuthCredentialMultiKeyAuthArgs.builder()\n                .config(IntegrationInstanceAuthCredentialMultiKeyAuthConfigArgs.builder()\n                    .headers(IntegrationInstanceAuthCredentialMultiKeyAuthConfigHeaderArgs.builder()\n                        .key(\"...my_key...\")\n                        .name(\"...my_name...\")\n                        .build())\n                    .build())\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myIntegrationinstanceauthcredential:\n    type: konnect:IntegrationInstanceAuthCredential\n    name: my_integrationinstanceauthcredential\n    properties:\n      integrationInstanceId: 3f51fa25-310a-421d-bd1a-007f859021a3\n      multiKeyAuth:\n        config:\n          headers:\n            - key: '...my_key...'\n              name: '...my_name...'\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_integration_instance_auth_credential.my_konnect_integration_instance_auth_credential\n\n  id = \"3f51fa25-310a-421d-bd1a-007f859021a3\"\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/integrationInstanceAuthCredential:IntegrationInstanceAuthCredential my_konnect_integration_instance_auth_credential \"3f51fa25-310a-421d-bd1a-007f859021a3\"\n```\n\n","properties":{"createdAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity creation date.\n"},"expiresAt":{"type":"string","description":"Timestamp denoting when the when the credential will expire in RFC-3339 format with a \"T\" character separating date from time within the field value.\nWhen expired, the credential must be replaced with a new valid credential to re-enable full functionality for the given integration instance.\n"},"integrationInstance":{"$ref":"#/types/konnect:index%2FIntegrationInstanceAuthCredentialIntegrationInstance:IntegrationInstanceAuthCredentialIntegrationInstance","description":"Short-hand descriptor of an integration instance."},"integrationInstanceId":{"type":"string","description":"The \u003cspan pulumi-lang-nodejs=\"`id`\" pulumi-lang-dotnet=\"`Id`\" pulumi-lang-go=\"`id`\" pulumi-lang-python=\"`id`\" pulumi-lang-yaml=\"`id`\" pulumi-lang-java=\"`id`\"\u003e`id`\u003c/span\u003e of the integration instance. Requires replacement if changed.\n"},"missingPermissions":{"type":"array","items":{"$ref":"#/types/konnect:index%2FIntegrationInstanceAuthCredentialMissingPermission:IntegrationInstanceAuthCredentialMissingPermission"},"description":"List of detected missing permissions required to enable the full functionality of the given integration instance."},"multiKeyAuth":{"$ref":"#/types/konnect:index%2FIntegrationInstanceAuthCredentialMultiKeyAuth:IntegrationInstanceAuthCredentialMultiKeyAuth","description":"Payload used to create an `Multi Key` credential for an integration instance. Requires replacement if changed.\n"},"multiKeyAuthCredential":{"$ref":"#/types/konnect:index%2FIntegrationInstanceAuthCredentialMultiKeyAuthCredential:IntegrationInstanceAuthCredentialMultiKeyAuthCredential","description":"Represents a credential scoped to an integration instance that supports the `Multi Key` authorization strategy."},"tainted":{"type":"boolean","description":"Indicates that the credential is no longer valid and must be replaced with a new valid credential."}},"type":"object","required":["createdAt","expiresAt","integrationInstance","integrationInstanceId","missingPermissions","multiKeyAuthCredential","tainted"],"inputProperties":{"integrationInstanceId":{"type":"string","description":"The \u003cspan pulumi-lang-nodejs=\"`id`\" pulumi-lang-dotnet=\"`Id`\" pulumi-lang-go=\"`id`\" pulumi-lang-python=\"`id`\" pulumi-lang-yaml=\"`id`\" pulumi-lang-java=\"`id`\"\u003e`id`\u003c/span\u003e of the integration instance. Requires replacement if changed.\n"},"multiKeyAuth":{"$ref":"#/types/konnect:index%2FIntegrationInstanceAuthCredentialMultiKeyAuth:IntegrationInstanceAuthCredentialMultiKeyAuth","description":"Payload used to create an `Multi Key` credential for an integration instance. Requires replacement if changed.\n"}},"requiredInputs":["integrationInstanceId"],"stateInputs":{"description":"Input properties used for looking up and filtering IntegrationInstanceAuthCredential resources.\n","properties":{"createdAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity creation date.\n"},"expiresAt":{"type":"string","description":"Timestamp denoting when the when the credential will expire in RFC-3339 format with a \"T\" character separating date from time within the field value.\nWhen expired, the credential must be replaced with a new valid credential to re-enable full functionality for the given integration instance.\n"},"integrationInstance":{"$ref":"#/types/konnect:index%2FIntegrationInstanceAuthCredentialIntegrationInstance:IntegrationInstanceAuthCredentialIntegrationInstance","description":"Short-hand descriptor of an integration instance."},"integrationInstanceId":{"type":"string","description":"The \u003cspan pulumi-lang-nodejs=\"`id`\" pulumi-lang-dotnet=\"`Id`\" pulumi-lang-go=\"`id`\" pulumi-lang-python=\"`id`\" pulumi-lang-yaml=\"`id`\" pulumi-lang-java=\"`id`\"\u003e`id`\u003c/span\u003e of the integration instance. Requires replacement if changed.\n"},"missingPermissions":{"type":"array","items":{"$ref":"#/types/konnect:index%2FIntegrationInstanceAuthCredentialMissingPermission:IntegrationInstanceAuthCredentialMissingPermission"},"description":"List of detected missing permissions required to enable the full functionality of the given integration instance."},"multiKeyAuth":{"$ref":"#/types/konnect:index%2FIntegrationInstanceAuthCredentialMultiKeyAuth:IntegrationInstanceAuthCredentialMultiKeyAuth","description":"Payload used to create an `Multi Key` credential for an integration instance. Requires replacement if changed.\n"},"multiKeyAuthCredential":{"$ref":"#/types/konnect:index%2FIntegrationInstanceAuthCredentialMultiKeyAuthCredential:IntegrationInstanceAuthCredentialMultiKeyAuthCredential","description":"Represents a credential scoped to an integration instance that supports the `Multi Key` authorization strategy."},"tainted":{"type":"boolean","description":"Indicates that the credential is no longer valid and must be replaced with a new valid credential."}},"type":"object"}},"konnect:index/meshControlPlane:MeshControlPlane":{"description":"MeshControlPlane Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myMeshcontrolplane = new konnect.MeshControlPlane(\"my_meshcontrolplane\", {\n    description: \"A control plane to handle traffic on development environment.\",\n    features: [{\n        hostnameGeneratorCreation: {\n            enabled: false,\n        },\n        meshCreation: {\n            enabled: false,\n        },\n        type: \"MeshCreation\",\n    }],\n    labels: {\n        key: \"value\",\n    },\n    name: \"Test control plane\",\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_meshcontrolplane = konnect.MeshControlPlane(\"my_meshcontrolplane\",\n    description=\"A control plane to handle traffic on development environment.\",\n    features=[{\n        \"hostname_generator_creation\": {\n            \"enabled\": False,\n        },\n        \"mesh_creation\": {\n            \"enabled\": False,\n        },\n        \"type\": \"MeshCreation\",\n    }],\n    labels={\n        \"key\": \"value\",\n    },\n    name=\"Test control plane\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myMeshcontrolplane = new Konnect.MeshControlPlane(\"my_meshcontrolplane\", new()\n    {\n        Description = \"A control plane to handle traffic on development environment.\",\n        Features = new[]\n        {\n            new Konnect.Inputs.MeshControlPlaneFeatureArgs\n            {\n                HostnameGeneratorCreation = new Konnect.Inputs.MeshControlPlaneFeatureHostnameGeneratorCreationArgs\n                {\n                    Enabled = false,\n                },\n                MeshCreation = new Konnect.Inputs.MeshControlPlaneFeatureMeshCreationArgs\n                {\n                    Enabled = false,\n                },\n                Type = \"MeshCreation\",\n            },\n        },\n        Labels = \n        {\n            { \"key\", \"value\" },\n        },\n        Name = \"Test control plane\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewMeshControlPlane(ctx, \"my_meshcontrolplane\", \u0026konnect.MeshControlPlaneArgs{\n\t\t\tDescription: pulumi.String(\"A control plane to handle traffic on development environment.\"),\n\t\t\tFeatures: konnect.MeshControlPlaneFeatureArray{\n\t\t\t\t\u0026konnect.MeshControlPlaneFeatureArgs{\n\t\t\t\t\tHostnameGeneratorCreation: \u0026konnect.MeshControlPlaneFeatureHostnameGeneratorCreationArgs{\n\t\t\t\t\t\tEnabled: pulumi.Bool(false),\n\t\t\t\t\t},\n\t\t\t\t\tMeshCreation: \u0026konnect.MeshControlPlaneFeatureMeshCreationArgs{\n\t\t\t\t\t\tEnabled: pulumi.Bool(false),\n\t\t\t\t\t},\n\t\t\t\t\tType: pulumi.String(\"MeshCreation\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tLabels: pulumi.StringMap{\n\t\t\t\t\"key\": pulumi.String(\"value\"),\n\t\t\t},\n\t\t\tName: pulumi.String(\"Test control plane\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.MeshControlPlane;\nimport com.pulumi.konnect.MeshControlPlaneArgs;\nimport com.pulumi.konnect.inputs.MeshControlPlaneFeatureArgs;\nimport com.pulumi.konnect.inputs.MeshControlPlaneFeatureHostnameGeneratorCreationArgs;\nimport com.pulumi.konnect.inputs.MeshControlPlaneFeatureMeshCreationArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myMeshcontrolplane = new MeshControlPlane(\"myMeshcontrolplane\", MeshControlPlaneArgs.builder()\n            .description(\"A control plane to handle traffic on development environment.\")\n            .features(MeshControlPlaneFeatureArgs.builder()\n                .hostnameGeneratorCreation(MeshControlPlaneFeatureHostnameGeneratorCreationArgs.builder()\n                    .enabled(false)\n                    .build())\n                .meshCreation(MeshControlPlaneFeatureMeshCreationArgs.builder()\n                    .enabled(false)\n                    .build())\n                .type(\"MeshCreation\")\n                .build())\n            .labels(Map.of(\"key\", \"value\"))\n            .name(\"Test control plane\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myMeshcontrolplane:\n    type: konnect:MeshControlPlane\n    name: my_meshcontrolplane\n    properties:\n      description: A control plane to handle traffic on development environment.\n      features:\n        - hostnameGeneratorCreation:\n            enabled: false\n          meshCreation:\n            enabled: false\n          type: MeshCreation\n      labels:\n        key: value\n      name: Test control plane\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_mesh_control_plane.my_konnect_mesh_control_plane\n\n  id = \"d32d905a-ed33-46a3-a093-d8f536af9a8a\"\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/meshControlPlane:MeshControlPlane my_konnect_mesh_control_plane \"d32d905a-ed33-46a3-a093-d8f536af9a8a\"\n```\n\n","properties":{"createdAt":{"type":"string"},"description":{"type":"string"},"features":{"type":"array","items":{"$ref":"#/types/konnect:index%2FMeshControlPlaneFeature:MeshControlPlaneFeature"},"description":"Requires replacement if changed.\n"},"labels":{"type":"object","additionalProperties":{"type":"string"},"description":"Labels to facilitate tagged search on control planes. Keys must be of length 1-63 characters.\n"},"name":{"type":"string","description":"The name of the control plane.\n"},"updatedAt":{"type":"string"}},"type":"object","required":["createdAt","description","features","labels","name","updatedAt"],"inputProperties":{"description":{"type":"string"},"features":{"type":"array","items":{"$ref":"#/types/konnect:index%2FMeshControlPlaneFeature:MeshControlPlaneFeature"},"description":"Requires replacement if changed.\n"},"labels":{"type":"object","additionalProperties":{"type":"string"},"description":"Labels to facilitate tagged search on control planes. Keys must be of length 1-63 characters.\n"},"name":{"type":"string","description":"The name of the control plane.\n"}},"stateInputs":{"description":"Input properties used for looking up and filtering MeshControlPlane resources.\n","properties":{"createdAt":{"type":"string"},"description":{"type":"string"},"features":{"type":"array","items":{"$ref":"#/types/konnect:index%2FMeshControlPlaneFeature:MeshControlPlaneFeature"},"description":"Requires replacement if changed.\n"},"labels":{"type":"object","additionalProperties":{"type":"string"},"description":"Labels to facilitate tagged search on control planes. Keys must be of length 1-63 characters.\n"},"name":{"type":"string","description":"The name of the control plane.\n"},"updatedAt":{"type":"string"}},"type":"object"}},"konnect:index/portal:Portal":{"description":"Portal Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myPortal = new konnect.Portal(\"my_portal\", {\n    authenticationEnabled: false,\n    autoApproveApplications: false,\n    autoApproveDevelopers: false,\n    defaultApiVisibility: \"public\",\n    defaultApplicationAuthStrategyId: \"e7d77a5f-c5f5-49db-9b2f-cabb4401add8\",\n    defaultPageVisibility: \"private\",\n    description: \"...my_description...\",\n    displayName: \"...my_display_name...\",\n    forceDestroy: \"false\",\n    labels: {\n        key: \"value\",\n    },\n    name: \"...my_name...\",\n    rbacEnabled: true,\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_portal = konnect.Portal(\"my_portal\",\n    authentication_enabled=False,\n    auto_approve_applications=False,\n    auto_approve_developers=False,\n    default_api_visibility=\"public\",\n    default_application_auth_strategy_id=\"e7d77a5f-c5f5-49db-9b2f-cabb4401add8\",\n    default_page_visibility=\"private\",\n    description=\"...my_description...\",\n    display_name=\"...my_display_name...\",\n    force_destroy=\"false\",\n    labels={\n        \"key\": \"value\",\n    },\n    name=\"...my_name...\",\n    rbac_enabled=True)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myPortal = new Konnect.Portal(\"my_portal\", new()\n    {\n        AuthenticationEnabled = false,\n        AutoApproveApplications = false,\n        AutoApproveDevelopers = false,\n        DefaultApiVisibility = \"public\",\n        DefaultApplicationAuthStrategyId = \"e7d77a5f-c5f5-49db-9b2f-cabb4401add8\",\n        DefaultPageVisibility = \"private\",\n        Description = \"...my_description...\",\n        DisplayName = \"...my_display_name...\",\n        ForceDestroy = \"false\",\n        Labels = \n        {\n            { \"key\", \"value\" },\n        },\n        Name = \"...my_name...\",\n        RbacEnabled = true,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewPortal(ctx, \"my_portal\", \u0026konnect.PortalArgs{\n\t\t\tAuthenticationEnabled:            pulumi.Bool(false),\n\t\t\tAutoApproveApplications:          pulumi.Bool(false),\n\t\t\tAutoApproveDevelopers:            pulumi.Bool(false),\n\t\t\tDefaultApiVisibility:             pulumi.String(\"public\"),\n\t\t\tDefaultApplicationAuthStrategyId: pulumi.String(\"e7d77a5f-c5f5-49db-9b2f-cabb4401add8\"),\n\t\t\tDefaultPageVisibility:            pulumi.String(\"private\"),\n\t\t\tDescription:                      pulumi.String(\"...my_description...\"),\n\t\t\tDisplayName:                      pulumi.String(\"...my_display_name...\"),\n\t\t\tForceDestroy:                     pulumi.String(\"false\"),\n\t\t\tLabels: pulumi.StringMap{\n\t\t\t\t\"key\": pulumi.String(\"value\"),\n\t\t\t},\n\t\t\tName:        pulumi.String(\"...my_name...\"),\n\t\t\tRbacEnabled: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.Portal;\nimport com.pulumi.konnect.PortalArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myPortal = new Portal(\"myPortal\", PortalArgs.builder()\n            .authenticationEnabled(false)\n            .autoApproveApplications(false)\n            .autoApproveDevelopers(false)\n            .defaultApiVisibility(\"public\")\n            .defaultApplicationAuthStrategyId(\"e7d77a5f-c5f5-49db-9b2f-cabb4401add8\")\n            .defaultPageVisibility(\"private\")\n            .description(\"...my_description...\")\n            .displayName(\"...my_display_name...\")\n            .forceDestroy(\"false\")\n            .labels(Map.of(\"key\", \"value\"))\n            .name(\"...my_name...\")\n            .rbacEnabled(true)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myPortal:\n    type: konnect:Portal\n    name: my_portal\n    properties:\n      authenticationEnabled: false\n      autoApproveApplications: false\n      autoApproveDevelopers: false\n      defaultApiVisibility: public\n      defaultApplicationAuthStrategyId: e7d77a5f-c5f5-49db-9b2f-cabb4401add8\n      defaultPageVisibility: private\n      description: '...my_description...'\n      displayName: '...my_display_name...'\n      forceDestroy: 'false'\n      labels:\n        key: value\n      name: '...my_name...'\n      rbacEnabled: true\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_portal.my_konnect_portal\n\n  id = \"5f9fd312-a987-4628-b4c5-bb4f4fddd5f7\"\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/portal:Portal my_konnect_portal \"5f9fd312-a987-4628-b4c5-bb4f4fddd5f7\"\n```\n\n","properties":{"authenticationEnabled":{"type":"boolean","description":"Whether the portal supports developer authentication. If disabled, developers cannot register for accounts or create applications. Default: true\n"},"autoApproveApplications":{"type":"boolean","description":"Whether requests from applications to register for APIs will be automatically approved, or if they will be set to pending until approved by an admin. Default: false\n"},"autoApproveDevelopers":{"type":"boolean","description":"Whether developer account registrations will be automatically approved, or if they will be set to pending until approved by an admin. Default: false\n"},"canonicalDomain":{"type":"string","description":"The canonical domain of the developer portal"},"createdAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity creation date."},"defaultApiVisibility":{"type":"string","description":"The default visibility of APIs in the portal. If set to \u003cspan pulumi-lang-nodejs=\"`public`\" pulumi-lang-dotnet=\"`Public`\" pulumi-lang-go=\"`public`\" pulumi-lang-python=\"`public`\" pulumi-lang-yaml=\"`public`\" pulumi-lang-java=\"`public`\"\u003e`public`\u003c/span\u003e, newly published APIs are visible to unauthenticated developers. If set to \u003cspan pulumi-lang-nodejs=\"`private`\" pulumi-lang-dotnet=\"`Private`\" pulumi-lang-go=\"`private`\" pulumi-lang-python=\"`private`\" pulumi-lang-yaml=\"`private`\" pulumi-lang-java=\"`private`\"\u003e`private`\u003c/span\u003e, newly published APIs are hidden from unauthenticated developers. must be one of [\"public\", \"private\"]\n"},"defaultApplicationAuthStrategyId":{"type":"string","description":"The default authentication strategy for APIs published to the portal. Newly published APIs will use this authentication strategy unless overridden during publication. If set to \u003cspan pulumi-lang-nodejs=\"`null`\" pulumi-lang-dotnet=\"`Null`\" pulumi-lang-go=\"`null`\" pulumi-lang-python=\"`null`\" pulumi-lang-yaml=\"`null`\" pulumi-lang-java=\"`null`\"\u003e`null`\u003c/span\u003e, API publications will not use an authentication strategy unless set during publication.\n"},"defaultDomain":{"type":"string","description":"The domain assigned to the portal by Konnect. This is the default place to access the portal and its API if not using a \u003cspan pulumi-lang-nodejs=\"`customDomain`\" pulumi-lang-dotnet=\"`CustomDomain`\" pulumi-lang-go=\"`customDomain`\" pulumi-lang-python=\"`custom_domain`\" pulumi-lang-yaml=\"`customDomain`\" pulumi-lang-java=\"`customDomain`\"\u003e`custom_domain`\u003c/span\u003e`."},"defaultPageVisibility":{"type":"string","description":"The default visibility of pages in the portal. If set to \u003cspan pulumi-lang-nodejs=\"`public`\" pulumi-lang-dotnet=\"`Public`\" pulumi-lang-go=\"`public`\" pulumi-lang-python=\"`public`\" pulumi-lang-yaml=\"`public`\" pulumi-lang-java=\"`public`\"\u003e`public`\u003c/span\u003e, newly created pages are visible to unauthenticated developers. If set to \u003cspan pulumi-lang-nodejs=\"`private`\" pulumi-lang-dotnet=\"`Private`\" pulumi-lang-go=\"`private`\" pulumi-lang-python=\"`private`\" pulumi-lang-yaml=\"`private`\" pulumi-lang-java=\"`private`\"\u003e`private`\u003c/span\u003e, newly created pages are hidden from unauthenticated developers. must be one of [\"public\", \"private\"]\n"},"description":{"type":"string","description":"A description of the portal.\n"},"displayName":{"type":"string","description":"The display name of the portal. This value will be the portal's \u003cspan pulumi-lang-nodejs=\"`name`\" pulumi-lang-dotnet=\"`Name`\" pulumi-lang-go=\"`name`\" pulumi-lang-python=\"`name`\" pulumi-lang-yaml=\"`name`\" pulumi-lang-java=\"`name`\"\u003e`name`\u003c/span\u003e in Portal API.\n"},"forceDestroy":{"type":"string"},"labels":{"type":"object","additionalProperties":{"type":"string"},"description":"Labels store metadata of an entity that can be used for filtering an entity list or for searching across entity types.\n"},"name":{"type":"string","description":"The name of the portal, used to distinguish it from other portals. Name must be unique.\n"},"rbacEnabled":{"type":"boolean","description":"Whether the portal resources are protected by Role Based Access Control (RBAC). If enabled, developers view or register for APIs until unless assigned to teams with access to view and consume specific APIs. Authentication must be enabled to use RBAC. Default: false"},"updatedAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity update date."}},"type":"object","required":["authenticationEnabled","autoApproveApplications","autoApproveDevelopers","canonicalDomain","createdAt","defaultApiVisibility","defaultDomain","defaultPageVisibility","displayName","forceDestroy","labels","name","rbacEnabled","updatedAt"],"inputProperties":{"authenticationEnabled":{"type":"boolean","description":"Whether the portal supports developer authentication. If disabled, developers cannot register for accounts or create applications. Default: true\n"},"autoApproveApplications":{"type":"boolean","description":"Whether requests from applications to register for APIs will be automatically approved, or if they will be set to pending until approved by an admin. Default: false\n"},"autoApproveDevelopers":{"type":"boolean","description":"Whether developer account registrations will be automatically approved, or if they will be set to pending until approved by an admin. Default: false\n"},"defaultApiVisibility":{"type":"string","description":"The default visibility of APIs in the portal. If set to \u003cspan pulumi-lang-nodejs=\"`public`\" pulumi-lang-dotnet=\"`Public`\" pulumi-lang-go=\"`public`\" pulumi-lang-python=\"`public`\" pulumi-lang-yaml=\"`public`\" pulumi-lang-java=\"`public`\"\u003e`public`\u003c/span\u003e, newly published APIs are visible to unauthenticated developers. If set to \u003cspan pulumi-lang-nodejs=\"`private`\" pulumi-lang-dotnet=\"`Private`\" pulumi-lang-go=\"`private`\" pulumi-lang-python=\"`private`\" pulumi-lang-yaml=\"`private`\" pulumi-lang-java=\"`private`\"\u003e`private`\u003c/span\u003e, newly published APIs are hidden from unauthenticated developers. must be one of [\"public\", \"private\"]\n"},"defaultApplicationAuthStrategyId":{"type":"string","description":"The default authentication strategy for APIs published to the portal. Newly published APIs will use this authentication strategy unless overridden during publication. If set to \u003cspan pulumi-lang-nodejs=\"`null`\" pulumi-lang-dotnet=\"`Null`\" pulumi-lang-go=\"`null`\" pulumi-lang-python=\"`null`\" pulumi-lang-yaml=\"`null`\" pulumi-lang-java=\"`null`\"\u003e`null`\u003c/span\u003e, API publications will not use an authentication strategy unless set during publication.\n"},"defaultPageVisibility":{"type":"string","description":"The default visibility of pages in the portal. If set to \u003cspan pulumi-lang-nodejs=\"`public`\" pulumi-lang-dotnet=\"`Public`\" pulumi-lang-go=\"`public`\" pulumi-lang-python=\"`public`\" pulumi-lang-yaml=\"`public`\" pulumi-lang-java=\"`public`\"\u003e`public`\u003c/span\u003e, newly created pages are visible to unauthenticated developers. If set to \u003cspan pulumi-lang-nodejs=\"`private`\" pulumi-lang-dotnet=\"`Private`\" pulumi-lang-go=\"`private`\" pulumi-lang-python=\"`private`\" pulumi-lang-yaml=\"`private`\" pulumi-lang-java=\"`private`\"\u003e`private`\u003c/span\u003e, newly created pages are hidden from unauthenticated developers. must be one of [\"public\", \"private\"]\n"},"description":{"type":"string","description":"A description of the portal.\n"},"displayName":{"type":"string","description":"The display name of the portal. This value will be the portal's \u003cspan pulumi-lang-nodejs=\"`name`\" pulumi-lang-dotnet=\"`Name`\" pulumi-lang-go=\"`name`\" pulumi-lang-python=\"`name`\" pulumi-lang-yaml=\"`name`\" pulumi-lang-java=\"`name`\"\u003e`name`\u003c/span\u003e in Portal API.\n"},"forceDestroy":{"type":"string"},"labels":{"type":"object","additionalProperties":{"type":"string"},"description":"Labels store metadata of an entity that can be used for filtering an entity list or for searching across entity types.\n"},"name":{"type":"string","description":"The name of the portal, used to distinguish it from other portals. Name must be unique.\n"},"rbacEnabled":{"type":"boolean","description":"Whether the portal resources are protected by Role Based Access Control (RBAC). If enabled, developers view or register for APIs until unless assigned to teams with access to view and consume specific APIs. Authentication must be enabled to use RBAC. Default: false"}},"stateInputs":{"description":"Input properties used for looking up and filtering Portal resources.\n","properties":{"authenticationEnabled":{"type":"boolean","description":"Whether the portal supports developer authentication. If disabled, developers cannot register for accounts or create applications. Default: true\n"},"autoApproveApplications":{"type":"boolean","description":"Whether requests from applications to register for APIs will be automatically approved, or if they will be set to pending until approved by an admin. Default: false\n"},"autoApproveDevelopers":{"type":"boolean","description":"Whether developer account registrations will be automatically approved, or if they will be set to pending until approved by an admin. Default: false\n"},"canonicalDomain":{"type":"string","description":"The canonical domain of the developer portal"},"createdAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity creation date."},"defaultApiVisibility":{"type":"string","description":"The default visibility of APIs in the portal. If set to \u003cspan pulumi-lang-nodejs=\"`public`\" pulumi-lang-dotnet=\"`Public`\" pulumi-lang-go=\"`public`\" pulumi-lang-python=\"`public`\" pulumi-lang-yaml=\"`public`\" pulumi-lang-java=\"`public`\"\u003e`public`\u003c/span\u003e, newly published APIs are visible to unauthenticated developers. If set to \u003cspan pulumi-lang-nodejs=\"`private`\" pulumi-lang-dotnet=\"`Private`\" pulumi-lang-go=\"`private`\" pulumi-lang-python=\"`private`\" pulumi-lang-yaml=\"`private`\" pulumi-lang-java=\"`private`\"\u003e`private`\u003c/span\u003e, newly published APIs are hidden from unauthenticated developers. must be one of [\"public\", \"private\"]\n"},"defaultApplicationAuthStrategyId":{"type":"string","description":"The default authentication strategy for APIs published to the portal. Newly published APIs will use this authentication strategy unless overridden during publication. If set to \u003cspan pulumi-lang-nodejs=\"`null`\" pulumi-lang-dotnet=\"`Null`\" pulumi-lang-go=\"`null`\" pulumi-lang-python=\"`null`\" pulumi-lang-yaml=\"`null`\" pulumi-lang-java=\"`null`\"\u003e`null`\u003c/span\u003e, API publications will not use an authentication strategy unless set during publication.\n"},"defaultDomain":{"type":"string","description":"The domain assigned to the portal by Konnect. This is the default place to access the portal and its API if not using a \u003cspan pulumi-lang-nodejs=\"`customDomain`\" pulumi-lang-dotnet=\"`CustomDomain`\" pulumi-lang-go=\"`customDomain`\" pulumi-lang-python=\"`custom_domain`\" pulumi-lang-yaml=\"`customDomain`\" pulumi-lang-java=\"`customDomain`\"\u003e`custom_domain`\u003c/span\u003e`."},"defaultPageVisibility":{"type":"string","description":"The default visibility of pages in the portal. If set to \u003cspan pulumi-lang-nodejs=\"`public`\" pulumi-lang-dotnet=\"`Public`\" pulumi-lang-go=\"`public`\" pulumi-lang-python=\"`public`\" pulumi-lang-yaml=\"`public`\" pulumi-lang-java=\"`public`\"\u003e`public`\u003c/span\u003e, newly created pages are visible to unauthenticated developers. If set to \u003cspan pulumi-lang-nodejs=\"`private`\" pulumi-lang-dotnet=\"`Private`\" pulumi-lang-go=\"`private`\" pulumi-lang-python=\"`private`\" pulumi-lang-yaml=\"`private`\" pulumi-lang-java=\"`private`\"\u003e`private`\u003c/span\u003e, newly created pages are hidden from unauthenticated developers. must be one of [\"public\", \"private\"]\n"},"description":{"type":"string","description":"A description of the portal.\n"},"displayName":{"type":"string","description":"The display name of the portal. This value will be the portal's \u003cspan pulumi-lang-nodejs=\"`name`\" pulumi-lang-dotnet=\"`Name`\" pulumi-lang-go=\"`name`\" pulumi-lang-python=\"`name`\" pulumi-lang-yaml=\"`name`\" pulumi-lang-java=\"`name`\"\u003e`name`\u003c/span\u003e in Portal API.\n"},"forceDestroy":{"type":"string"},"labels":{"type":"object","additionalProperties":{"type":"string"},"description":"Labels store metadata of an entity that can be used for filtering an entity list or for searching across entity types.\n"},"name":{"type":"string","description":"The name of the portal, used to distinguish it from other portals. Name must be unique.\n"},"rbacEnabled":{"type":"boolean","description":"Whether the portal resources are protected by Role Based Access Control (RBAC). If enabled, developers view or register for APIs until unless assigned to teams with access to view and consume specific APIs. Authentication must be enabled to use RBAC. Default: false"},"updatedAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity update date."}},"type":"object"}},"konnect:index/portalAppearance:PortalAppearance":{"description":"PortalAppearance Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myPortalappearance = new konnect.PortalAppearance(\"my_portalappearance\", {\n    customFonts: {\n        base: \"Roboto\",\n        code: \"Roboto\",\n        headings: \"Roboto\",\n    },\n    customTheme: {\n        colors: {\n            button: {\n                primaryFill: {\n                    description: \"...my_description...\",\n                    value: \"...my_value...\",\n                },\n                primaryText: {\n                    description: \"...my_description...\",\n                    value: \"...my_value...\",\n                },\n            },\n            section: {\n                accent: {\n                    description: \"...my_description...\",\n                    value: \"...my_value...\",\n                },\n                body: {\n                    description: \"...my_description...\",\n                    value: \"...my_value...\",\n                },\n                footer: {\n                    description: \"...my_description...\",\n                    value: \"...my_value...\",\n                },\n                header: {\n                    description: \"...my_description...\",\n                    value: \"...my_value...\",\n                },\n                hero: {\n                    description: \"...my_description...\",\n                    value: \"...my_value...\",\n                },\n                stroke: {\n                    description: \"...my_description...\",\n                    value: \"...my_value...\",\n                },\n                tertiary: {\n                    description: \"...my_description...\",\n                    value: \"...my_value...\",\n                },\n            },\n            text: {\n                accent: {\n                    description: \"...my_description...\",\n                    value: \"...my_value...\",\n                },\n                footer: {\n                    description: \"...my_description...\",\n                    value: \"...my_value...\",\n                },\n                header: {\n                    description: \"...my_description...\",\n                    value: \"...my_value...\",\n                },\n                headings: {\n                    description: \"...my_description...\",\n                    value: \"...my_value...\",\n                },\n                hero: {\n                    description: \"...my_description...\",\n                    value: \"...my_value...\",\n                },\n                link: {\n                    description: \"...my_description...\",\n                    value: \"...my_value...\",\n                },\n                primary: {\n                    description: \"...my_description...\",\n                    value: \"...my_value...\",\n                },\n                secondary: {\n                    description: \"...my_description...\",\n                    value: \"...my_value...\",\n                },\n            },\n        },\n    },\n    images: {\n        catalogCover: {\n            data: \"data:image/png,YW5faW1hZ2VfZmlsZQ==\",\n            filename: \"...my_filename...\",\n        },\n        favicon: {\n            data: \"data:image/png,YW5faW1hZ2VfZmlsZQ==\",\n            filename: \"...my_filename...\",\n        },\n        logo: {\n            data: \"data:image/png,YW5faW1hZ2VfZmlsZQ==\",\n            filename: \"...my_filename...\",\n        },\n    },\n    portalId: \"f32d905a-ed33-46a3-a093-d8f536af9a8a\",\n    text: {\n        catalog: {\n            primaryHeader: \"...my_primary_header...\",\n            welcomeMessage: \"...my_welcome_message...\",\n        },\n    },\n    themeName: \"mint_rocket\",\n    useCustomFonts: false,\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_portalappearance = konnect.PortalAppearance(\"my_portalappearance\",\n    custom_fonts={\n        \"base\": \"Roboto\",\n        \"code\": \"Roboto\",\n        \"headings\": \"Roboto\",\n    },\n    custom_theme={\n        \"colors\": {\n            \"button\": {\n                \"primary_fill\": {\n                    \"description\": \"...my_description...\",\n                    \"value\": \"...my_value...\",\n                },\n                \"primary_text\": {\n                    \"description\": \"...my_description...\",\n                    \"value\": \"...my_value...\",\n                },\n            },\n            \"section\": {\n                \"accent\": {\n                    \"description\": \"...my_description...\",\n                    \"value\": \"...my_value...\",\n                },\n                \"body\": {\n                    \"description\": \"...my_description...\",\n                    \"value\": \"...my_value...\",\n                },\n                \"footer\": {\n                    \"description\": \"...my_description...\",\n                    \"value\": \"...my_value...\",\n                },\n                \"header\": {\n                    \"description\": \"...my_description...\",\n                    \"value\": \"...my_value...\",\n                },\n                \"hero\": {\n                    \"description\": \"...my_description...\",\n                    \"value\": \"...my_value...\",\n                },\n                \"stroke\": {\n                    \"description\": \"...my_description...\",\n                    \"value\": \"...my_value...\",\n                },\n                \"tertiary\": {\n                    \"description\": \"...my_description...\",\n                    \"value\": \"...my_value...\",\n                },\n            },\n            \"text\": {\n                \"accent\": {\n                    \"description\": \"...my_description...\",\n                    \"value\": \"...my_value...\",\n                },\n                \"footer\": {\n                    \"description\": \"...my_description...\",\n                    \"value\": \"...my_value...\",\n                },\n                \"header\": {\n                    \"description\": \"...my_description...\",\n                    \"value\": \"...my_value...\",\n                },\n                \"headings\": {\n                    \"description\": \"...my_description...\",\n                    \"value\": \"...my_value...\",\n                },\n                \"hero\": {\n                    \"description\": \"...my_description...\",\n                    \"value\": \"...my_value...\",\n                },\n                \"link\": {\n                    \"description\": \"...my_description...\",\n                    \"value\": \"...my_value...\",\n                },\n                \"primary\": {\n                    \"description\": \"...my_description...\",\n                    \"value\": \"...my_value...\",\n                },\n                \"secondary\": {\n                    \"description\": \"...my_description...\",\n                    \"value\": \"...my_value...\",\n                },\n            },\n        },\n    },\n    images={\n        \"catalog_cover\": {\n            \"data\": \"data:image/png,YW5faW1hZ2VfZmlsZQ==\",\n            \"filename\": \"...my_filename...\",\n        },\n        \"favicon\": {\n            \"data\": \"data:image/png,YW5faW1hZ2VfZmlsZQ==\",\n            \"filename\": \"...my_filename...\",\n        },\n        \"logo\": {\n            \"data\": \"data:image/png,YW5faW1hZ2VfZmlsZQ==\",\n            \"filename\": \"...my_filename...\",\n        },\n    },\n    portal_id=\"f32d905a-ed33-46a3-a093-d8f536af9a8a\",\n    text={\n        \"catalog\": {\n            \"primary_header\": \"...my_primary_header...\",\n            \"welcome_message\": \"...my_welcome_message...\",\n        },\n    },\n    theme_name=\"mint_rocket\",\n    use_custom_fonts=False)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myPortalappearance = new Konnect.PortalAppearance(\"my_portalappearance\", new()\n    {\n        CustomFonts = new Konnect.Inputs.PortalAppearanceCustomFontsArgs\n        {\n            Base = \"Roboto\",\n            Code = \"Roboto\",\n            Headings = \"Roboto\",\n        },\n        CustomTheme = new Konnect.Inputs.PortalAppearanceCustomThemeArgs\n        {\n            Colors = new Konnect.Inputs.PortalAppearanceCustomThemeColorsArgs\n            {\n                Button = new Konnect.Inputs.PortalAppearanceCustomThemeColorsButtonArgs\n                {\n                    PrimaryFill = new Konnect.Inputs.PortalAppearanceCustomThemeColorsButtonPrimaryFillArgs\n                    {\n                        Description = \"...my_description...\",\n                        Value = \"...my_value...\",\n                    },\n                    PrimaryText = new Konnect.Inputs.PortalAppearanceCustomThemeColorsButtonPrimaryTextArgs\n                    {\n                        Description = \"...my_description...\",\n                        Value = \"...my_value...\",\n                    },\n                },\n                Section = new Konnect.Inputs.PortalAppearanceCustomThemeColorsSectionArgs\n                {\n                    Accent = new Konnect.Inputs.PortalAppearanceCustomThemeColorsSectionAccentArgs\n                    {\n                        Description = \"...my_description...\",\n                        Value = \"...my_value...\",\n                    },\n                    Body = new Konnect.Inputs.PortalAppearanceCustomThemeColorsSectionBodyArgs\n                    {\n                        Description = \"...my_description...\",\n                        Value = \"...my_value...\",\n                    },\n                    Footer = new Konnect.Inputs.PortalAppearanceCustomThemeColorsSectionFooterArgs\n                    {\n                        Description = \"...my_description...\",\n                        Value = \"...my_value...\",\n                    },\n                    Header = new Konnect.Inputs.PortalAppearanceCustomThemeColorsSectionHeaderArgs\n                    {\n                        Description = \"...my_description...\",\n                        Value = \"...my_value...\",\n                    },\n                    Hero = new Konnect.Inputs.PortalAppearanceCustomThemeColorsSectionHeroArgs\n                    {\n                        Description = \"...my_description...\",\n                        Value = \"...my_value...\",\n                    },\n                    Stroke = new Konnect.Inputs.PortalAppearanceCustomThemeColorsSectionStrokeArgs\n                    {\n                        Description = \"...my_description...\",\n                        Value = \"...my_value...\",\n                    },\n                    Tertiary = new Konnect.Inputs.PortalAppearanceCustomThemeColorsSectionTertiaryArgs\n                    {\n                        Description = \"...my_description...\",\n                        Value = \"...my_value...\",\n                    },\n                },\n                Text = new Konnect.Inputs.PortalAppearanceCustomThemeColorsTextArgs\n                {\n                    Accent = new Konnect.Inputs.PortalAppearanceCustomThemeColorsTextAccentArgs\n                    {\n                        Description = \"...my_description...\",\n                        Value = \"...my_value...\",\n                    },\n                    Footer = new Konnect.Inputs.PortalAppearanceCustomThemeColorsTextFooterArgs\n                    {\n                        Description = \"...my_description...\",\n                        Value = \"...my_value...\",\n                    },\n                    Header = new Konnect.Inputs.PortalAppearanceCustomThemeColorsTextHeaderArgs\n                    {\n                        Description = \"...my_description...\",\n                        Value = \"...my_value...\",\n                    },\n                    Headings = new Konnect.Inputs.PortalAppearanceCustomThemeColorsTextHeadingsArgs\n                    {\n                        Description = \"...my_description...\",\n                        Value = \"...my_value...\",\n                    },\n                    Hero = new Konnect.Inputs.PortalAppearanceCustomThemeColorsTextHeroArgs\n                    {\n                        Description = \"...my_description...\",\n                        Value = \"...my_value...\",\n                    },\n                    Link = new Konnect.Inputs.PortalAppearanceCustomThemeColorsTextLinkArgs\n                    {\n                        Description = \"...my_description...\",\n                        Value = \"...my_value...\",\n                    },\n                    Primary = new Konnect.Inputs.PortalAppearanceCustomThemeColorsTextPrimaryArgs\n                    {\n                        Description = \"...my_description...\",\n                        Value = \"...my_value...\",\n                    },\n                    Secondary = new Konnect.Inputs.PortalAppearanceCustomThemeColorsTextSecondaryArgs\n                    {\n                        Description = \"...my_description...\",\n                        Value = \"...my_value...\",\n                    },\n                },\n            },\n        },\n        Images = new Konnect.Inputs.PortalAppearanceImagesArgs\n        {\n            CatalogCover = new Konnect.Inputs.PortalAppearanceImagesCatalogCoverArgs\n            {\n                Data = \"data:image/png,YW5faW1hZ2VfZmlsZQ==\",\n                Filename = \"...my_filename...\",\n            },\n            Favicon = new Konnect.Inputs.PortalAppearanceImagesFaviconArgs\n            {\n                Data = \"data:image/png,YW5faW1hZ2VfZmlsZQ==\",\n                Filename = \"...my_filename...\",\n            },\n            Logo = new Konnect.Inputs.PortalAppearanceImagesLogoArgs\n            {\n                Data = \"data:image/png,YW5faW1hZ2VfZmlsZQ==\",\n                Filename = \"...my_filename...\",\n            },\n        },\n        PortalId = \"f32d905a-ed33-46a3-a093-d8f536af9a8a\",\n        Text = new Konnect.Inputs.PortalAppearanceTextArgs\n        {\n            Catalog = new Konnect.Inputs.PortalAppearanceTextCatalogArgs\n            {\n                PrimaryHeader = \"...my_primary_header...\",\n                WelcomeMessage = \"...my_welcome_message...\",\n            },\n        },\n        ThemeName = \"mint_rocket\",\n        UseCustomFonts = false,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewPortalAppearance(ctx, \"my_portalappearance\", \u0026konnect.PortalAppearanceArgs{\n\t\t\tCustomFonts: \u0026konnect.PortalAppearanceCustomFontsArgs{\n\t\t\t\tBase:     pulumi.String(\"Roboto\"),\n\t\t\t\tCode:     pulumi.String(\"Roboto\"),\n\t\t\t\tHeadings: pulumi.String(\"Roboto\"),\n\t\t\t},\n\t\t\tCustomTheme: \u0026konnect.PortalAppearanceCustomThemeArgs{\n\t\t\t\tColors: \u0026konnect.PortalAppearanceCustomThemeColorsArgs{\n\t\t\t\t\tButton: \u0026konnect.PortalAppearanceCustomThemeColorsButtonArgs{\n\t\t\t\t\t\tPrimaryFill: \u0026konnect.PortalAppearanceCustomThemeColorsButtonPrimaryFillArgs{\n\t\t\t\t\t\t\tDescription: pulumi.String(\"...my_description...\"),\n\t\t\t\t\t\t\tValue:       pulumi.String(\"...my_value...\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\tPrimaryText: \u0026konnect.PortalAppearanceCustomThemeColorsButtonPrimaryTextArgs{\n\t\t\t\t\t\t\tDescription: pulumi.String(\"...my_description...\"),\n\t\t\t\t\t\t\tValue:       pulumi.String(\"...my_value...\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tSection: \u0026konnect.PortalAppearanceCustomThemeColorsSectionArgs{\n\t\t\t\t\t\tAccent: \u0026konnect.PortalAppearanceCustomThemeColorsSectionAccentArgs{\n\t\t\t\t\t\t\tDescription: pulumi.String(\"...my_description...\"),\n\t\t\t\t\t\t\tValue:       pulumi.String(\"...my_value...\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\tBody: \u0026konnect.PortalAppearanceCustomThemeColorsSectionBodyArgs{\n\t\t\t\t\t\t\tDescription: pulumi.String(\"...my_description...\"),\n\t\t\t\t\t\t\tValue:       pulumi.String(\"...my_value...\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\tFooter: \u0026konnect.PortalAppearanceCustomThemeColorsSectionFooterArgs{\n\t\t\t\t\t\t\tDescription: pulumi.String(\"...my_description...\"),\n\t\t\t\t\t\t\tValue:       pulumi.String(\"...my_value...\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\tHeader: \u0026konnect.PortalAppearanceCustomThemeColorsSectionHeaderArgs{\n\t\t\t\t\t\t\tDescription: pulumi.String(\"...my_description...\"),\n\t\t\t\t\t\t\tValue:       pulumi.String(\"...my_value...\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\tHero: \u0026konnect.PortalAppearanceCustomThemeColorsSectionHeroArgs{\n\t\t\t\t\t\t\tDescription: pulumi.String(\"...my_description...\"),\n\t\t\t\t\t\t\tValue:       pulumi.String(\"...my_value...\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\tStroke: \u0026konnect.PortalAppearanceCustomThemeColorsSectionStrokeArgs{\n\t\t\t\t\t\t\tDescription: pulumi.String(\"...my_description...\"),\n\t\t\t\t\t\t\tValue:       pulumi.String(\"...my_value...\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\tTertiary: \u0026konnect.PortalAppearanceCustomThemeColorsSectionTertiaryArgs{\n\t\t\t\t\t\t\tDescription: pulumi.String(\"...my_description...\"),\n\t\t\t\t\t\t\tValue:       pulumi.String(\"...my_value...\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tText: \u0026konnect.PortalAppearanceCustomThemeColorsTextArgs{\n\t\t\t\t\t\tAccent: \u0026konnect.PortalAppearanceCustomThemeColorsTextAccentArgs{\n\t\t\t\t\t\t\tDescription: pulumi.String(\"...my_description...\"),\n\t\t\t\t\t\t\tValue:       pulumi.String(\"...my_value...\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\tFooter: \u0026konnect.PortalAppearanceCustomThemeColorsTextFooterArgs{\n\t\t\t\t\t\t\tDescription: pulumi.String(\"...my_description...\"),\n\t\t\t\t\t\t\tValue:       pulumi.String(\"...my_value...\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\tHeader: \u0026konnect.PortalAppearanceCustomThemeColorsTextHeaderArgs{\n\t\t\t\t\t\t\tDescription: pulumi.String(\"...my_description...\"),\n\t\t\t\t\t\t\tValue:       pulumi.String(\"...my_value...\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\tHeadings: \u0026konnect.PortalAppearanceCustomThemeColorsTextHeadingsArgs{\n\t\t\t\t\t\t\tDescription: pulumi.String(\"...my_description...\"),\n\t\t\t\t\t\t\tValue:       pulumi.String(\"...my_value...\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\tHero: \u0026konnect.PortalAppearanceCustomThemeColorsTextHeroArgs{\n\t\t\t\t\t\t\tDescription: pulumi.String(\"...my_description...\"),\n\t\t\t\t\t\t\tValue:       pulumi.String(\"...my_value...\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\tLink: \u0026konnect.PortalAppearanceCustomThemeColorsTextLinkArgs{\n\t\t\t\t\t\t\tDescription: pulumi.String(\"...my_description...\"),\n\t\t\t\t\t\t\tValue:       pulumi.String(\"...my_value...\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\tPrimary: \u0026konnect.PortalAppearanceCustomThemeColorsTextPrimaryArgs{\n\t\t\t\t\t\t\tDescription: pulumi.String(\"...my_description...\"),\n\t\t\t\t\t\t\tValue:       pulumi.String(\"...my_value...\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\tSecondary: \u0026konnect.PortalAppearanceCustomThemeColorsTextSecondaryArgs{\n\t\t\t\t\t\t\tDescription: pulumi.String(\"...my_description...\"),\n\t\t\t\t\t\t\tValue:       pulumi.String(\"...my_value...\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tImages: \u0026konnect.PortalAppearanceImagesArgs{\n\t\t\t\tCatalogCover: \u0026konnect.PortalAppearanceImagesCatalogCoverArgs{\n\t\t\t\t\tData:     pulumi.String(\"data:image/png,YW5faW1hZ2VfZmlsZQ==\"),\n\t\t\t\t\tFilename: pulumi.String(\"...my_filename...\"),\n\t\t\t\t},\n\t\t\t\tFavicon: \u0026konnect.PortalAppearanceImagesFaviconArgs{\n\t\t\t\t\tData:     pulumi.String(\"data:image/png,YW5faW1hZ2VfZmlsZQ==\"),\n\t\t\t\t\tFilename: pulumi.String(\"...my_filename...\"),\n\t\t\t\t},\n\t\t\t\tLogo: \u0026konnect.PortalAppearanceImagesLogoArgs{\n\t\t\t\t\tData:     pulumi.String(\"data:image/png,YW5faW1hZ2VfZmlsZQ==\"),\n\t\t\t\t\tFilename: pulumi.String(\"...my_filename...\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tPortalId: pulumi.String(\"f32d905a-ed33-46a3-a093-d8f536af9a8a\"),\n\t\t\tText: \u0026konnect.PortalAppearanceTextArgs{\n\t\t\t\tCatalog: \u0026konnect.PortalAppearanceTextCatalogArgs{\n\t\t\t\t\tPrimaryHeader:  pulumi.String(\"...my_primary_header...\"),\n\t\t\t\t\tWelcomeMessage: pulumi.String(\"...my_welcome_message...\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tThemeName:      pulumi.String(\"mint_rocket\"),\n\t\t\tUseCustomFonts: pulumi.Bool(false),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.PortalAppearance;\nimport com.pulumi.konnect.PortalAppearanceArgs;\nimport com.pulumi.konnect.inputs.PortalAppearanceCustomFontsArgs;\nimport com.pulumi.konnect.inputs.PortalAppearanceCustomThemeArgs;\nimport com.pulumi.konnect.inputs.PortalAppearanceCustomThemeColorsArgs;\nimport com.pulumi.konnect.inputs.PortalAppearanceCustomThemeColorsButtonArgs;\nimport com.pulumi.konnect.inputs.PortalAppearanceCustomThemeColorsButtonPrimaryFillArgs;\nimport com.pulumi.konnect.inputs.PortalAppearanceCustomThemeColorsButtonPrimaryTextArgs;\nimport com.pulumi.konnect.inputs.PortalAppearanceCustomThemeColorsSectionArgs;\nimport com.pulumi.konnect.inputs.PortalAppearanceCustomThemeColorsSectionAccentArgs;\nimport com.pulumi.konnect.inputs.PortalAppearanceCustomThemeColorsSectionBodyArgs;\nimport com.pulumi.konnect.inputs.PortalAppearanceCustomThemeColorsSectionFooterArgs;\nimport com.pulumi.konnect.inputs.PortalAppearanceCustomThemeColorsSectionHeaderArgs;\nimport com.pulumi.konnect.inputs.PortalAppearanceCustomThemeColorsSectionHeroArgs;\nimport com.pulumi.konnect.inputs.PortalAppearanceCustomThemeColorsSectionStrokeArgs;\nimport com.pulumi.konnect.inputs.PortalAppearanceCustomThemeColorsSectionTertiaryArgs;\nimport com.pulumi.konnect.inputs.PortalAppearanceCustomThemeColorsTextArgs;\nimport com.pulumi.konnect.inputs.PortalAppearanceCustomThemeColorsTextAccentArgs;\nimport com.pulumi.konnect.inputs.PortalAppearanceCustomThemeColorsTextFooterArgs;\nimport com.pulumi.konnect.inputs.PortalAppearanceCustomThemeColorsTextHeaderArgs;\nimport com.pulumi.konnect.inputs.PortalAppearanceCustomThemeColorsTextHeadingsArgs;\nimport com.pulumi.konnect.inputs.PortalAppearanceCustomThemeColorsTextHeroArgs;\nimport com.pulumi.konnect.inputs.PortalAppearanceCustomThemeColorsTextLinkArgs;\nimport com.pulumi.konnect.inputs.PortalAppearanceCustomThemeColorsTextPrimaryArgs;\nimport com.pulumi.konnect.inputs.PortalAppearanceCustomThemeColorsTextSecondaryArgs;\nimport com.pulumi.konnect.inputs.PortalAppearanceImagesArgs;\nimport com.pulumi.konnect.inputs.PortalAppearanceImagesCatalogCoverArgs;\nimport com.pulumi.konnect.inputs.PortalAppearanceImagesFaviconArgs;\nimport com.pulumi.konnect.inputs.PortalAppearanceImagesLogoArgs;\nimport com.pulumi.konnect.inputs.PortalAppearanceTextArgs;\nimport com.pulumi.konnect.inputs.PortalAppearanceTextCatalogArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myPortalappearance = new PortalAppearance(\"myPortalappearance\", PortalAppearanceArgs.builder()\n            .customFonts(PortalAppearanceCustomFontsArgs.builder()\n                .base(\"Roboto\")\n                .code(\"Roboto\")\n                .headings(\"Roboto\")\n                .build())\n            .customTheme(PortalAppearanceCustomThemeArgs.builder()\n                .colors(PortalAppearanceCustomThemeColorsArgs.builder()\n                    .button(PortalAppearanceCustomThemeColorsButtonArgs.builder()\n                        .primaryFill(PortalAppearanceCustomThemeColorsButtonPrimaryFillArgs.builder()\n                            .description(\"...my_description...\")\n                            .value(\"...my_value...\")\n                            .build())\n                        .primaryText(PortalAppearanceCustomThemeColorsButtonPrimaryTextArgs.builder()\n                            .description(\"...my_description...\")\n                            .value(\"...my_value...\")\n                            .build())\n                        .build())\n                    .section(PortalAppearanceCustomThemeColorsSectionArgs.builder()\n                        .accent(PortalAppearanceCustomThemeColorsSectionAccentArgs.builder()\n                            .description(\"...my_description...\")\n                            .value(\"...my_value...\")\n                            .build())\n                        .body(PortalAppearanceCustomThemeColorsSectionBodyArgs.builder()\n                            .description(\"...my_description...\")\n                            .value(\"...my_value...\")\n                            .build())\n                        .footer(PortalAppearanceCustomThemeColorsSectionFooterArgs.builder()\n                            .description(\"...my_description...\")\n                            .value(\"...my_value...\")\n                            .build())\n                        .header(PortalAppearanceCustomThemeColorsSectionHeaderArgs.builder()\n                            .description(\"...my_description...\")\n                            .value(\"...my_value...\")\n                            .build())\n                        .hero(PortalAppearanceCustomThemeColorsSectionHeroArgs.builder()\n                            .description(\"...my_description...\")\n                            .value(\"...my_value...\")\n                            .build())\n                        .stroke(PortalAppearanceCustomThemeColorsSectionStrokeArgs.builder()\n                            .description(\"...my_description...\")\n                            .value(\"...my_value...\")\n                            .build())\n                        .tertiary(PortalAppearanceCustomThemeColorsSectionTertiaryArgs.builder()\n                            .description(\"...my_description...\")\n                            .value(\"...my_value...\")\n                            .build())\n                        .build())\n                    .text(PortalAppearanceCustomThemeColorsTextArgs.builder()\n                        .accent(PortalAppearanceCustomThemeColorsTextAccentArgs.builder()\n                            .description(\"...my_description...\")\n                            .value(\"...my_value...\")\n                            .build())\n                        .footer(PortalAppearanceCustomThemeColorsTextFooterArgs.builder()\n                            .description(\"...my_description...\")\n                            .value(\"...my_value...\")\n                            .build())\n                        .header(PortalAppearanceCustomThemeColorsTextHeaderArgs.builder()\n                            .description(\"...my_description...\")\n                            .value(\"...my_value...\")\n                            .build())\n                        .headings(PortalAppearanceCustomThemeColorsTextHeadingsArgs.builder()\n                            .description(\"...my_description...\")\n                            .value(\"...my_value...\")\n                            .build())\n                        .hero(PortalAppearanceCustomThemeColorsTextHeroArgs.builder()\n                            .description(\"...my_description...\")\n                            .value(\"...my_value...\")\n                            .build())\n                        .link(PortalAppearanceCustomThemeColorsTextLinkArgs.builder()\n                            .description(\"...my_description...\")\n                            .value(\"...my_value...\")\n                            .build())\n                        .primary(PortalAppearanceCustomThemeColorsTextPrimaryArgs.builder()\n                            .description(\"...my_description...\")\n                            .value(\"...my_value...\")\n                            .build())\n                        .secondary(PortalAppearanceCustomThemeColorsTextSecondaryArgs.builder()\n                            .description(\"...my_description...\")\n                            .value(\"...my_value...\")\n                            .build())\n                        .build())\n                    .build())\n                .build())\n            .images(PortalAppearanceImagesArgs.builder()\n                .catalogCover(PortalAppearanceImagesCatalogCoverArgs.builder()\n                    .data(\"data:image/png,YW5faW1hZ2VfZmlsZQ==\")\n                    .filename(\"...my_filename...\")\n                    .build())\n                .favicon(PortalAppearanceImagesFaviconArgs.builder()\n                    .data(\"data:image/png,YW5faW1hZ2VfZmlsZQ==\")\n                    .filename(\"...my_filename...\")\n                    .build())\n                .logo(PortalAppearanceImagesLogoArgs.builder()\n                    .data(\"data:image/png,YW5faW1hZ2VfZmlsZQ==\")\n                    .filename(\"...my_filename...\")\n                    .build())\n                .build())\n            .portalId(\"f32d905a-ed33-46a3-a093-d8f536af9a8a\")\n            .text(PortalAppearanceTextArgs.builder()\n                .catalog(PortalAppearanceTextCatalogArgs.builder()\n                    .primaryHeader(\"...my_primary_header...\")\n                    .welcomeMessage(\"...my_welcome_message...\")\n                    .build())\n                .build())\n            .themeName(\"mint_rocket\")\n            .useCustomFonts(false)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myPortalappearance:\n    type: konnect:PortalAppearance\n    name: my_portalappearance\n    properties:\n      customFonts:\n        base: Roboto\n        code: Roboto\n        headings: Roboto\n      customTheme:\n        colors:\n          button:\n            primaryFill:\n              description: '...my_description...'\n              value: '...my_value...'\n            primaryText:\n              description: '...my_description...'\n              value: '...my_value...'\n          section:\n            accent:\n              description: '...my_description...'\n              value: '...my_value...'\n            body:\n              description: '...my_description...'\n              value: '...my_value...'\n            footer:\n              description: '...my_description...'\n              value: '...my_value...'\n            header:\n              description: '...my_description...'\n              value: '...my_value...'\n            hero:\n              description: '...my_description...'\n              value: '...my_value...'\n            stroke:\n              description: '...my_description...'\n              value: '...my_value...'\n            tertiary:\n              description: '...my_description...'\n              value: '...my_value...'\n          text:\n            accent:\n              description: '...my_description...'\n              value: '...my_value...'\n            footer:\n              description: '...my_description...'\n              value: '...my_value...'\n            header:\n              description: '...my_description...'\n              value: '...my_value...'\n            headings:\n              description: '...my_description...'\n              value: '...my_value...'\n            hero:\n              description: '...my_description...'\n              value: '...my_value...'\n            link:\n              description: '...my_description...'\n              value: '...my_value...'\n            primary:\n              description: '...my_description...'\n              value: '...my_value...'\n            secondary:\n              description: '...my_description...'\n              value: '...my_value...'\n      images:\n        catalogCover:\n          data: data:image/png,YW5faW1hZ2VfZmlsZQ==\n          filename: '...my_filename...'\n        favicon:\n          data: data:image/png,YW5faW1hZ2VfZmlsZQ==\n          filename: '...my_filename...'\n        logo:\n          data: data:image/png,YW5faW1hZ2VfZmlsZQ==\n          filename: '...my_filename...'\n      portalId: f32d905a-ed33-46a3-a093-d8f536af9a8a\n      text:\n        catalog:\n          primaryHeader: '...my_primary_header...'\n          welcomeMessage: '...my_welcome_message...'\n      themeName: mint_rocket\n      useCustomFonts: false\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_portal_appearance.my_konnect_portal_appearance\n\n  id = \"f32d905a-ed33-46a3-a093-d8f536af9a8a\"\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/portalAppearance:PortalAppearance my_konnect_portal_appearance \"f32d905a-ed33-46a3-a093-d8f536af9a8a\"\n```\n\n","properties":{"customFonts":{"$ref":"#/types/konnect:index%2FPortalAppearanceCustomFonts:PortalAppearanceCustomFonts","description":"Font selections to render text in the portal user interface. Must set use*custom*fonts to true to enable using custom font values.\n"},"customTheme":{"$ref":"#/types/konnect:index%2FPortalAppearanceCustomTheme:PortalAppearanceCustomTheme","description":"Groups of variables for configuring visual details of the portal user interface. Set theme*name to 'custom' to use custom values for theme variables.\n"},"images":{"$ref":"#/types/konnect:index%2FPortalAppearanceImages:PortalAppearanceImages","description":"A collection of binary image data to customize images in the portal\n"},"portalId":{"type":"string","description":"The Portal identifier\n"},"text":{"$ref":"#/types/konnect:index%2FPortalAppearanceText:PortalAppearanceText","description":"Values to display for customizable text in the portal user interface\n"},"themeName":{"type":"string","description":"Select a pre-existing default theme or specify 'custom' to use custom*theme variables. must be one of [\"mint*rocket\", \u003cspan pulumi-lang-nodejs=\"\"darkMode\"\" pulumi-lang-dotnet=\"\"DarkMode\"\" pulumi-lang-go=\"\"darkMode\"\" pulumi-lang-python=\"\"dark_mode\"\" pulumi-lang-yaml=\"\"darkMode\"\" pulumi-lang-java=\"\"darkMode\"\"\u003e\"dark_mode\"\u003c/span\u003e, \"custom\"]\n"},"useCustomFonts":{"type":"boolean","description":"If true, fonts in\u003cspan pulumi-lang-nodejs=\" customFonts \" pulumi-lang-dotnet=\" CustomFonts \" pulumi-lang-go=\" customFonts \" pulumi-lang-python=\" custom_fonts \" pulumi-lang-yaml=\" customFonts \" pulumi-lang-java=\" customFonts \"\u003e custom_fonts \u003c/span\u003ewill be used over the theme's default fonts\n"}},"type":"object","required":["customFonts","customTheme","images","portalId","text","themeName","useCustomFonts"],"inputProperties":{"customFonts":{"$ref":"#/types/konnect:index%2FPortalAppearanceCustomFonts:PortalAppearanceCustomFonts","description":"Font selections to render text in the portal user interface. Must set use*custom*fonts to true to enable using custom font values.\n"},"customTheme":{"$ref":"#/types/konnect:index%2FPortalAppearanceCustomTheme:PortalAppearanceCustomTheme","description":"Groups of variables for configuring visual details of the portal user interface. Set theme*name to 'custom' to use custom values for theme variables.\n"},"images":{"$ref":"#/types/konnect:index%2FPortalAppearanceImages:PortalAppearanceImages","description":"A collection of binary image data to customize images in the portal\n"},"portalId":{"type":"string","description":"The Portal identifier\n"},"text":{"$ref":"#/types/konnect:index%2FPortalAppearanceText:PortalAppearanceText","description":"Values to display for customizable text in the portal user interface\n"},"themeName":{"type":"string","description":"Select a pre-existing default theme or specify 'custom' to use custom*theme variables. must be one of [\"mint*rocket\", \u003cspan pulumi-lang-nodejs=\"\"darkMode\"\" pulumi-lang-dotnet=\"\"DarkMode\"\" pulumi-lang-go=\"\"darkMode\"\" pulumi-lang-python=\"\"dark_mode\"\" pulumi-lang-yaml=\"\"darkMode\"\" pulumi-lang-java=\"\"darkMode\"\"\u003e\"dark_mode\"\u003c/span\u003e, \"custom\"]\n"},"useCustomFonts":{"type":"boolean","description":"If true, fonts in\u003cspan pulumi-lang-nodejs=\" customFonts \" pulumi-lang-dotnet=\" CustomFonts \" pulumi-lang-go=\" customFonts \" pulumi-lang-python=\" custom_fonts \" pulumi-lang-yaml=\" customFonts \" pulumi-lang-java=\" customFonts \"\u003e custom_fonts \u003c/span\u003ewill be used over the theme's default fonts\n"}},"requiredInputs":["portalId"],"stateInputs":{"description":"Input properties used for looking up and filtering PortalAppearance resources.\n","properties":{"customFonts":{"$ref":"#/types/konnect:index%2FPortalAppearanceCustomFonts:PortalAppearanceCustomFonts","description":"Font selections to render text in the portal user interface. Must set use*custom*fonts to true to enable using custom font values.\n"},"customTheme":{"$ref":"#/types/konnect:index%2FPortalAppearanceCustomTheme:PortalAppearanceCustomTheme","description":"Groups of variables for configuring visual details of the portal user interface. Set theme*name to 'custom' to use custom values for theme variables.\n"},"images":{"$ref":"#/types/konnect:index%2FPortalAppearanceImages:PortalAppearanceImages","description":"A collection of binary image data to customize images in the portal\n"},"portalId":{"type":"string","description":"The Portal identifier\n"},"text":{"$ref":"#/types/konnect:index%2FPortalAppearanceText:PortalAppearanceText","description":"Values to display for customizable text in the portal user interface\n"},"themeName":{"type":"string","description":"Select a pre-existing default theme or specify 'custom' to use custom*theme variables. must be one of [\"mint*rocket\", \u003cspan pulumi-lang-nodejs=\"\"darkMode\"\" pulumi-lang-dotnet=\"\"DarkMode\"\" pulumi-lang-go=\"\"darkMode\"\" pulumi-lang-python=\"\"dark_mode\"\" pulumi-lang-yaml=\"\"darkMode\"\" pulumi-lang-java=\"\"darkMode\"\"\u003e\"dark_mode\"\u003c/span\u003e, \"custom\"]\n"},"useCustomFonts":{"type":"boolean","description":"If true, fonts in\u003cspan pulumi-lang-nodejs=\" customFonts \" pulumi-lang-dotnet=\" CustomFonts \" pulumi-lang-go=\" customFonts \" pulumi-lang-python=\" custom_fonts \" pulumi-lang-yaml=\" customFonts \" pulumi-lang-java=\" customFonts \"\u003e custom_fonts \u003c/span\u003ewill be used over the theme's default fonts\n"}},"type":"object"}},"konnect:index/portalAuth:PortalAuth":{"description":"PortalAuth Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myPortalauth = new konnect.PortalAuth(\"my_portalauth\", {\n    basicAuthEnabled: true,\n    idpMappingEnabled: true,\n    konnectMappingEnabled: false,\n    oidcAuthEnabled: false,\n    oidcClaimMappings: {\n        email: \"email\",\n        groups: \"custom-group-claim\",\n        name: \"name\",\n    },\n    oidcClientId: \"x7id0o42lklas0blidl2\",\n    oidcClientSecret: \"...my_oidc_client_secret...\",\n    oidcIssuer: \"https://identity.example.com/v2\",\n    oidcScopes: [\n        \"email\",\n        \"openid\",\n        \"profile\",\n    ],\n    oidcTeamMappingEnabled: true,\n    portalId: \"f32d905a-ed33-46a3-a093-d8f536af9a8a\",\n    samlAuthEnabled: false,\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_portalauth = konnect.PortalAuth(\"my_portalauth\",\n    basic_auth_enabled=True,\n    idp_mapping_enabled=True,\n    konnect_mapping_enabled=False,\n    oidc_auth_enabled=False,\n    oidc_claim_mappings={\n        \"email\": \"email\",\n        \"groups\": \"custom-group-claim\",\n        \"name\": \"name\",\n    },\n    oidc_client_id=\"x7id0o42lklas0blidl2\",\n    oidc_client_secret=\"...my_oidc_client_secret...\",\n    oidc_issuer=\"https://identity.example.com/v2\",\n    oidc_scopes=[\n        \"email\",\n        \"openid\",\n        \"profile\",\n    ],\n    oidc_team_mapping_enabled=True,\n    portal_id=\"f32d905a-ed33-46a3-a093-d8f536af9a8a\",\n    saml_auth_enabled=False)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myPortalauth = new Konnect.PortalAuth(\"my_portalauth\", new()\n    {\n        BasicAuthEnabled = true,\n        IdpMappingEnabled = true,\n        KonnectMappingEnabled = false,\n        OidcAuthEnabled = false,\n        OidcClaimMappings = new Konnect.Inputs.PortalAuthOidcClaimMappingsArgs\n        {\n            Email = \"email\",\n            Groups = \"custom-group-claim\",\n            Name = \"name\",\n        },\n        OidcClientId = \"x7id0o42lklas0blidl2\",\n        OidcClientSecret = \"...my_oidc_client_secret...\",\n        OidcIssuer = \"https://identity.example.com/v2\",\n        OidcScopes = new[]\n        {\n            \"email\",\n            \"openid\",\n            \"profile\",\n        },\n        OidcTeamMappingEnabled = true,\n        PortalId = \"f32d905a-ed33-46a3-a093-d8f536af9a8a\",\n        SamlAuthEnabled = false,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewPortalAuth(ctx, \"my_portalauth\", \u0026konnect.PortalAuthArgs{\n\t\t\tBasicAuthEnabled:      pulumi.Bool(true),\n\t\t\tIdpMappingEnabled:     pulumi.Bool(true),\n\t\t\tKonnectMappingEnabled: pulumi.Bool(false),\n\t\t\tOidcAuthEnabled:       pulumi.Bool(false),\n\t\t\tOidcClaimMappings: \u0026konnect.PortalAuthOidcClaimMappingsArgs{\n\t\t\t\tEmail:  pulumi.String(\"email\"),\n\t\t\t\tGroups: pulumi.String(\"custom-group-claim\"),\n\t\t\t\tName:   pulumi.String(\"name\"),\n\t\t\t},\n\t\t\tOidcClientId:     pulumi.String(\"x7id0o42lklas0blidl2\"),\n\t\t\tOidcClientSecret: pulumi.String(\"...my_oidc_client_secret...\"),\n\t\t\tOidcIssuer:       pulumi.String(\"https://identity.example.com/v2\"),\n\t\t\tOidcScopes: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"email\"),\n\t\t\t\tpulumi.String(\"openid\"),\n\t\t\t\tpulumi.String(\"profile\"),\n\t\t\t},\n\t\t\tOidcTeamMappingEnabled: pulumi.Bool(true),\n\t\t\tPortalId:               pulumi.String(\"f32d905a-ed33-46a3-a093-d8f536af9a8a\"),\n\t\t\tSamlAuthEnabled:        pulumi.Bool(false),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.PortalAuth;\nimport com.pulumi.konnect.PortalAuthArgs;\nimport com.pulumi.konnect.inputs.PortalAuthOidcClaimMappingsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myPortalauth = new PortalAuth(\"myPortalauth\", PortalAuthArgs.builder()\n            .basicAuthEnabled(true)\n            .idpMappingEnabled(true)\n            .konnectMappingEnabled(false)\n            .oidcAuthEnabled(false)\n            .oidcClaimMappings(PortalAuthOidcClaimMappingsArgs.builder()\n                .email(\"email\")\n                .groups(\"custom-group-claim\")\n                .name(\"name\")\n                .build())\n            .oidcClientId(\"x7id0o42lklas0blidl2\")\n            .oidcClientSecret(\"...my_oidc_client_secret...\")\n            .oidcIssuer(\"https://identity.example.com/v2\")\n            .oidcScopes(            \n                \"email\",\n                \"openid\",\n                \"profile\")\n            .oidcTeamMappingEnabled(true)\n            .portalId(\"f32d905a-ed33-46a3-a093-d8f536af9a8a\")\n            .samlAuthEnabled(false)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myPortalauth:\n    type: konnect:PortalAuth\n    name: my_portalauth\n    properties:\n      basicAuthEnabled: true\n      idpMappingEnabled: true\n      konnectMappingEnabled: false\n      oidcAuthEnabled: false\n      oidcClaimMappings:\n        email: email\n        groups: custom-group-claim\n        name: name\n      oidcClientId: x7id0o42lklas0blidl2\n      oidcClientSecret: '...my_oidc_client_secret...'\n      oidcIssuer: https://identity.example.com/v2\n      oidcScopes:\n        - email\n        - openid\n        - profile\n      oidcTeamMappingEnabled: true\n      portalId: f32d905a-ed33-46a3-a093-d8f536af9a8a\n      samlAuthEnabled: false\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_portal_auth.my_konnect_portal_auth\n\n  id = \"f32d905a-ed33-46a3-a093-d8f536af9a8a\"\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/portalAuth:PortalAuth my_konnect_portal_auth \"f32d905a-ed33-46a3-a093-d8f536af9a8a\"\n```\n\n","properties":{"basicAuthEnabled":{"type":"boolean","description":"The organization has basic auth enabled.\n"},"idpMappingEnabled":{"type":"boolean","description":"Whether IdP groups determine the Konnect Portal teams a developer has.\n"},"konnectMappingEnabled":{"type":"boolean","description":"Whether a Konnect Identity Admin assigns teams to a developer.\n"},"oidcAuthEnabled":{"type":"boolean","description":"Deprecated. Use the [Identity Provider API](https://developer.konghq.com/api/konnect/portal-management/v3/#/operations/update-portal-identity-provider) instead.\n","deprecationMessage":"Deprecated"},"oidcClaimMappings":{"$ref":"#/types/konnect:index%2FPortalAuthOidcClaimMappings:PortalAuthOidcClaimMappings","description":"Deprecated. Use the [Identity Provider API](https://developer.konghq.com/api/konnect/portal-management/v3/#/operations/update-portal-identity-provider) instead.\n","deprecationMessage":"Deprecated"},"oidcClientId":{"type":"string","description":"Deprecated. Use the [Identity Provider API](https://developer.konghq.com/api/konnect/portal-management/v3/#/operations/update-portal-identity-provider) instead.\n","deprecationMessage":"Deprecated"},"oidcClientSecret":{"type":"string","description":"Deprecated. Use the [Identity Provider API](https://developer.konghq.com/api/konnect/portal-management/v3/#/operations/update-portal-identity-provider) instead.\n","deprecationMessage":"Deprecated"},"oidcConfig":{"$ref":"#/types/konnect:index%2FPortalAuthOidcConfig:PortalAuthOidcConfig","description":"Configuration properties for an OpenID Connect Identity Provider.\n","deprecationMessage":"Deprecated"},"oidcIssuer":{"type":"string","description":"Deprecated. Use the [Identity Provider API](https://developer.konghq.com/api/konnect/portal-management/v3/#/operations/update-portal-identity-provider) instead.\n","deprecationMessage":"Deprecated"},"oidcScopes":{"type":"array","items":{"type":"string"},"description":"Deprecated. Use the [Identity Provider API](https://developer.konghq.com/api/konnect/portal-management/v3/#/operations/update-portal-identity-provider) instead.\n","deprecationMessage":"Deprecated"},"oidcTeamMappingEnabled":{"type":"boolean","description":"IdP groups determine the Portal Teams a developer has. Replaced by idp*mapping*enabled.\n","deprecationMessage":"Deprecated"},"portalId":{"type":"string","description":"The Portal identifier\n"},"samlAuthEnabled":{"type":"boolean","description":"Deprecated. Use the [Identity Provider API](https://developer.konghq.com/api/konnect/portal-management/v3/#/operations/update-portal-identity-provider) instead.\n","deprecationMessage":"Deprecated"}},"type":"object","required":["basicAuthEnabled","idpMappingEnabled","konnectMappingEnabled","oidcAuthEnabled","oidcClaimMappings","oidcConfig","oidcTeamMappingEnabled","portalId","samlAuthEnabled"],"inputProperties":{"basicAuthEnabled":{"type":"boolean","description":"The organization has basic auth enabled.\n"},"idpMappingEnabled":{"type":"boolean","description":"Whether IdP groups determine the Konnect Portal teams a developer has.\n"},"konnectMappingEnabled":{"type":"boolean","description":"Whether a Konnect Identity Admin assigns teams to a developer.\n"},"oidcAuthEnabled":{"type":"boolean","description":"Deprecated. Use the [Identity Provider API](https://developer.konghq.com/api/konnect/portal-management/v3/#/operations/update-portal-identity-provider) instead.\n","deprecationMessage":"Deprecated"},"oidcClaimMappings":{"$ref":"#/types/konnect:index%2FPortalAuthOidcClaimMappings:PortalAuthOidcClaimMappings","description":"Deprecated. Use the [Identity Provider API](https://developer.konghq.com/api/konnect/portal-management/v3/#/operations/update-portal-identity-provider) instead.\n","deprecationMessage":"Deprecated"},"oidcClientId":{"type":"string","description":"Deprecated. Use the [Identity Provider API](https://developer.konghq.com/api/konnect/portal-management/v3/#/operations/update-portal-identity-provider) instead.\n","deprecationMessage":"Deprecated"},"oidcClientSecret":{"type":"string","description":"Deprecated. Use the [Identity Provider API](https://developer.konghq.com/api/konnect/portal-management/v3/#/operations/update-portal-identity-provider) instead.\n","deprecationMessage":"Deprecated"},"oidcIssuer":{"type":"string","description":"Deprecated. Use the [Identity Provider API](https://developer.konghq.com/api/konnect/portal-management/v3/#/operations/update-portal-identity-provider) instead.\n","deprecationMessage":"Deprecated"},"oidcScopes":{"type":"array","items":{"type":"string"},"description":"Deprecated. Use the [Identity Provider API](https://developer.konghq.com/api/konnect/portal-management/v3/#/operations/update-portal-identity-provider) instead.\n","deprecationMessage":"Deprecated"},"oidcTeamMappingEnabled":{"type":"boolean","description":"IdP groups determine the Portal Teams a developer has. Replaced by idp*mapping*enabled.\n","deprecationMessage":"Deprecated"},"portalId":{"type":"string","description":"The Portal identifier\n"},"samlAuthEnabled":{"type":"boolean","description":"Deprecated. Use the [Identity Provider API](https://developer.konghq.com/api/konnect/portal-management/v3/#/operations/update-portal-identity-provider) instead.\n","deprecationMessage":"Deprecated"}},"requiredInputs":["portalId"],"stateInputs":{"description":"Input properties used for looking up and filtering PortalAuth resources.\n","properties":{"basicAuthEnabled":{"type":"boolean","description":"The organization has basic auth enabled.\n"},"idpMappingEnabled":{"type":"boolean","description":"Whether IdP groups determine the Konnect Portal teams a developer has.\n"},"konnectMappingEnabled":{"type":"boolean","description":"Whether a Konnect Identity Admin assigns teams to a developer.\n"},"oidcAuthEnabled":{"type":"boolean","description":"Deprecated. Use the [Identity Provider API](https://developer.konghq.com/api/konnect/portal-management/v3/#/operations/update-portal-identity-provider) instead.\n","deprecationMessage":"Deprecated"},"oidcClaimMappings":{"$ref":"#/types/konnect:index%2FPortalAuthOidcClaimMappings:PortalAuthOidcClaimMappings","description":"Deprecated. Use the [Identity Provider API](https://developer.konghq.com/api/konnect/portal-management/v3/#/operations/update-portal-identity-provider) instead.\n","deprecationMessage":"Deprecated"},"oidcClientId":{"type":"string","description":"Deprecated. Use the [Identity Provider API](https://developer.konghq.com/api/konnect/portal-management/v3/#/operations/update-portal-identity-provider) instead.\n","deprecationMessage":"Deprecated"},"oidcClientSecret":{"type":"string","description":"Deprecated. Use the [Identity Provider API](https://developer.konghq.com/api/konnect/portal-management/v3/#/operations/update-portal-identity-provider) instead.\n","deprecationMessage":"Deprecated"},"oidcConfig":{"$ref":"#/types/konnect:index%2FPortalAuthOidcConfig:PortalAuthOidcConfig","description":"Configuration properties for an OpenID Connect Identity Provider.\n","deprecationMessage":"Deprecated"},"oidcIssuer":{"type":"string","description":"Deprecated. Use the [Identity Provider API](https://developer.konghq.com/api/konnect/portal-management/v3/#/operations/update-portal-identity-provider) instead.\n","deprecationMessage":"Deprecated"},"oidcScopes":{"type":"array","items":{"type":"string"},"description":"Deprecated. Use the [Identity Provider API](https://developer.konghq.com/api/konnect/portal-management/v3/#/operations/update-portal-identity-provider) instead.\n","deprecationMessage":"Deprecated"},"oidcTeamMappingEnabled":{"type":"boolean","description":"IdP groups determine the Portal Teams a developer has. Replaced by idp*mapping*enabled.\n","deprecationMessage":"Deprecated"},"portalId":{"type":"string","description":"The Portal identifier\n"},"samlAuthEnabled":{"type":"boolean","description":"Deprecated. Use the [Identity Provider API](https://developer.konghq.com/api/konnect/portal-management/v3/#/operations/update-portal-identity-provider) instead.\n","deprecationMessage":"Deprecated"}},"type":"object"}},"konnect:index/portalClassic:PortalClassic":{"description":"PortalClassic Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myPortalclassic = new konnect.PortalClassic(\"my_portalclassic\", {\n    autoApproveApplications: false,\n    autoApproveDevelopers: false,\n    customClientDomain: \"frugal-juggernaut.name\",\n    customDomain: \"smoggy-draw.info\",\n    defaultApplicationAuthStrategyId: \"5f9fd312-a987-4628-b4c5-bb4f4fddd5f7\",\n    description: \"...my_description...\",\n    displayName: \"...my_display_name...\",\n    force: \"false\",\n    isPublic: true,\n    labels: {\n        key: \"value\",\n    },\n    name: \"...my_name...\",\n    rbacEnabled: true,\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_portalclassic = konnect.PortalClassic(\"my_portalclassic\",\n    auto_approve_applications=False,\n    auto_approve_developers=False,\n    custom_client_domain=\"frugal-juggernaut.name\",\n    custom_domain=\"smoggy-draw.info\",\n    default_application_auth_strategy_id=\"5f9fd312-a987-4628-b4c5-bb4f4fddd5f7\",\n    description=\"...my_description...\",\n    display_name=\"...my_display_name...\",\n    force=\"false\",\n    is_public=True,\n    labels={\n        \"key\": \"value\",\n    },\n    name=\"...my_name...\",\n    rbac_enabled=True)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myPortalclassic = new Konnect.PortalClassic(\"my_portalclassic\", new()\n    {\n        AutoApproveApplications = false,\n        AutoApproveDevelopers = false,\n        CustomClientDomain = \"frugal-juggernaut.name\",\n        CustomDomain = \"smoggy-draw.info\",\n        DefaultApplicationAuthStrategyId = \"5f9fd312-a987-4628-b4c5-bb4f4fddd5f7\",\n        Description = \"...my_description...\",\n        DisplayName = \"...my_display_name...\",\n        Force = \"false\",\n        IsPublic = true,\n        Labels = \n        {\n            { \"key\", \"value\" },\n        },\n        Name = \"...my_name...\",\n        RbacEnabled = true,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewPortalClassic(ctx, \"my_portalclassic\", \u0026konnect.PortalClassicArgs{\n\t\t\tAutoApproveApplications:          pulumi.Bool(false),\n\t\t\tAutoApproveDevelopers:            pulumi.Bool(false),\n\t\t\tCustomClientDomain:               pulumi.String(\"frugal-juggernaut.name\"),\n\t\t\tCustomDomain:                     pulumi.String(\"smoggy-draw.info\"),\n\t\t\tDefaultApplicationAuthStrategyId: pulumi.String(\"5f9fd312-a987-4628-b4c5-bb4f4fddd5f7\"),\n\t\t\tDescription:                      pulumi.String(\"...my_description...\"),\n\t\t\tDisplayName:                      pulumi.String(\"...my_display_name...\"),\n\t\t\tForce:                            pulumi.String(\"false\"),\n\t\t\tIsPublic:                         pulumi.Bool(true),\n\t\t\tLabels: pulumi.StringMap{\n\t\t\t\t\"key\": pulumi.String(\"value\"),\n\t\t\t},\n\t\t\tName:        pulumi.String(\"...my_name...\"),\n\t\t\tRbacEnabled: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.PortalClassic;\nimport com.pulumi.konnect.PortalClassicArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myPortalclassic = new PortalClassic(\"myPortalclassic\", PortalClassicArgs.builder()\n            .autoApproveApplications(false)\n            .autoApproveDevelopers(false)\n            .customClientDomain(\"frugal-juggernaut.name\")\n            .customDomain(\"smoggy-draw.info\")\n            .defaultApplicationAuthStrategyId(\"5f9fd312-a987-4628-b4c5-bb4f4fddd5f7\")\n            .description(\"...my_description...\")\n            .displayName(\"...my_display_name...\")\n            .force(\"false\")\n            .isPublic(true)\n            .labels(Map.of(\"key\", \"value\"))\n            .name(\"...my_name...\")\n            .rbacEnabled(true)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myPortalclassic:\n    type: konnect:PortalClassic\n    name: my_portalclassic\n    properties:\n      autoApproveApplications: false\n      autoApproveDevelopers: false\n      customClientDomain: frugal-juggernaut.name\n      customDomain: smoggy-draw.info\n      defaultApplicationAuthStrategyId: 5f9fd312-a987-4628-b4c5-bb4f4fddd5f7\n      description: '...my_description...'\n      displayName: '...my_display_name...'\n      force: 'false'\n      isPublic: true\n      labels:\n        key: value\n      name: '...my_name...'\n      rbacEnabled: true\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_portal_classic.my_konnect_portal_classic\n\n  id = \"5f9fd312-a987-4628-b4c5-bb4f4fddd5f7\"\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/portalClassic:PortalClassic my_konnect_portal_classic \"5f9fd312-a987-4628-b4c5-bb4f4fddd5f7\"\n```\n\n","properties":{"applicationCount":{"type":"number","description":"Number of applications created in the portal."},"autoApproveApplications":{"type":"boolean","description":"Whether the requests from applications to register for products will be automatically approved, or if they will be set to pending until approved by an admin.\n"},"autoApproveDevelopers":{"type":"boolean","description":"Whether the developer account registrations will be automatically approved, or if they will be set to pending until approved by an admin.\n"},"createdAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity creation date."},"customClientDomain":{"type":"string","description":"The custom domain to access a self-hosted customized developer portal client. If this is set, the Konnect-hosted portal will no longer be available.  \u003cspan pulumi-lang-nodejs=\"`customDomain`\" pulumi-lang-dotnet=\"`CustomDomain`\" pulumi-lang-go=\"`customDomain`\" pulumi-lang-python=\"`custom_domain`\" pulumi-lang-yaml=\"`customDomain`\" pulumi-lang-java=\"`customDomain`\"\u003e`custom_domain`\u003c/span\u003e must be also set for this value to be set. See https://github.com/Kong/konnect-portal for information on how to get started deploying and customizing your own Konnect portal.\n"},"customDomain":{"type":"string","description":"The custom domain to access the developer portal. A CNAME for the portal's default domain must be able to be set for the custom domain for it to be valid. After setting a valid CNAME, an SSL/TLS certificate will be automatically manged for the custom domain, and traffic will be able to use the custom domain to route to the portal's web client and API.\n"},"defaultApplicationAuthStrategyId":{"type":"string","description":"Default strategy ID applied on applications for the portal\n"},"defaultDomain":{"type":"string","description":"The domain assigned to the portal by Konnect. This is the default place to access the portal and its API if not using a \u003cspan pulumi-lang-nodejs=\"`customDomain`\" pulumi-lang-dotnet=\"`CustomDomain`\" pulumi-lang-go=\"`customDomain`\" pulumi-lang-python=\"`custom_domain`\" pulumi-lang-yaml=\"`customDomain`\" pulumi-lang-java=\"`customDomain`\"\u003e`custom_domain`\u003c/span\u003e`."},"description":{"type":"string","description":"The description of the portal.\n"},"developerCount":{"type":"number","description":"Number of developers using the portal."},"displayName":{"type":"string","description":"The display name of the portal. This value will be the portal's \u003cspan pulumi-lang-nodejs=\"`name`\" pulumi-lang-dotnet=\"`Name`\" pulumi-lang-go=\"`name`\" pulumi-lang-python=\"`name`\" pulumi-lang-yaml=\"`name`\" pulumi-lang-java=\"`name`\"\u003e`name`\u003c/span\u003e in Portal API.\n"},"force":{"type":"string","description":"If true, delete specified portal and all related entities, even if there are developers registered to portal or if there are portal product versions with application registration enabled. If false, do not allow deletion if there are developers registered to portal or if there are portal product versions with application registration enabled. Default: \"false\"; must be one of [\"true\", \"false\"]\n"},"isPublic":{"type":"boolean","description":"Whether the portal catalog can be accessed publicly without any developer authentication. Developer accounts and applications cannot be created if the portal is public.\n"},"labels":{"type":"object","additionalProperties":{"type":"string"},"description":"Labels store metadata of an entity that can be used for filtering an entity list or for searching across entity types.\n"},"name":{"type":"string","description":"The name of the portal, used to distinguish it from other portals. Name must be unique.\n"},"publishedProductCount":{"type":"number","description":"Number of api products published to the portal"},"rbacEnabled":{"type":"boolean","description":"Whether the portal resources are protected by Role Based Access Control (RBAC). If enabled, developers view or register for products until unless assigned to teams with access to view and consume specific products."},"updatedAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity update date."}},"type":"object","required":["applicationCount","createdAt","defaultApplicationAuthStrategyId","defaultDomain","developerCount","displayName","force","labels","name","publishedProductCount","updatedAt"],"inputProperties":{"autoApproveApplications":{"type":"boolean","description":"Whether the requests from applications to register for products will be automatically approved, or if they will be set to pending until approved by an admin.\n"},"autoApproveDevelopers":{"type":"boolean","description":"Whether the developer account registrations will be automatically approved, or if they will be set to pending until approved by an admin.\n"},"customClientDomain":{"type":"string","description":"The custom domain to access a self-hosted customized developer portal client. If this is set, the Konnect-hosted portal will no longer be available.  \u003cspan pulumi-lang-nodejs=\"`customDomain`\" pulumi-lang-dotnet=\"`CustomDomain`\" pulumi-lang-go=\"`customDomain`\" pulumi-lang-python=\"`custom_domain`\" pulumi-lang-yaml=\"`customDomain`\" pulumi-lang-java=\"`customDomain`\"\u003e`custom_domain`\u003c/span\u003e must be also set for this value to be set. See https://github.com/Kong/konnect-portal for information on how to get started deploying and customizing your own Konnect portal.\n"},"customDomain":{"type":"string","description":"The custom domain to access the developer portal. A CNAME for the portal's default domain must be able to be set for the custom domain for it to be valid. After setting a valid CNAME, an SSL/TLS certificate will be automatically manged for the custom domain, and traffic will be able to use the custom domain to route to the portal's web client and API.\n"},"defaultApplicationAuthStrategyId":{"type":"string","description":"Default strategy ID applied on applications for the portal\n"},"description":{"type":"string","description":"The description of the portal.\n"},"displayName":{"type":"string","description":"The display name of the portal. This value will be the portal's \u003cspan pulumi-lang-nodejs=\"`name`\" pulumi-lang-dotnet=\"`Name`\" pulumi-lang-go=\"`name`\" pulumi-lang-python=\"`name`\" pulumi-lang-yaml=\"`name`\" pulumi-lang-java=\"`name`\"\u003e`name`\u003c/span\u003e in Portal API.\n"},"force":{"type":"string","description":"If true, delete specified portal and all related entities, even if there are developers registered to portal or if there are portal product versions with application registration enabled. If false, do not allow deletion if there are developers registered to portal or if there are portal product versions with application registration enabled. Default: \"false\"; must be one of [\"true\", \"false\"]\n"},"isPublic":{"type":"boolean","description":"Whether the portal catalog can be accessed publicly without any developer authentication. Developer accounts and applications cannot be created if the portal is public.\n"},"labels":{"type":"object","additionalProperties":{"type":"string"},"description":"Labels store metadata of an entity that can be used for filtering an entity list or for searching across entity types.\n"},"name":{"type":"string","description":"The name of the portal, used to distinguish it from other portals. Name must be unique.\n"},"rbacEnabled":{"type":"boolean","description":"Whether the portal resources are protected by Role Based Access Control (RBAC). If enabled, developers view or register for products until unless assigned to teams with access to view and consume specific products."}},"stateInputs":{"description":"Input properties used for looking up and filtering PortalClassic resources.\n","properties":{"applicationCount":{"type":"number","description":"Number of applications created in the portal."},"autoApproveApplications":{"type":"boolean","description":"Whether the requests from applications to register for products will be automatically approved, or if they will be set to pending until approved by an admin.\n"},"autoApproveDevelopers":{"type":"boolean","description":"Whether the developer account registrations will be automatically approved, or if they will be set to pending until approved by an admin.\n"},"createdAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity creation date."},"customClientDomain":{"type":"string","description":"The custom domain to access a self-hosted customized developer portal client. If this is set, the Konnect-hosted portal will no longer be available.  \u003cspan pulumi-lang-nodejs=\"`customDomain`\" pulumi-lang-dotnet=\"`CustomDomain`\" pulumi-lang-go=\"`customDomain`\" pulumi-lang-python=\"`custom_domain`\" pulumi-lang-yaml=\"`customDomain`\" pulumi-lang-java=\"`customDomain`\"\u003e`custom_domain`\u003c/span\u003e must be also set for this value to be set. See https://github.com/Kong/konnect-portal for information on how to get started deploying and customizing your own Konnect portal.\n"},"customDomain":{"type":"string","description":"The custom domain to access the developer portal. A CNAME for the portal's default domain must be able to be set for the custom domain for it to be valid. After setting a valid CNAME, an SSL/TLS certificate will be automatically manged for the custom domain, and traffic will be able to use the custom domain to route to the portal's web client and API.\n"},"defaultApplicationAuthStrategyId":{"type":"string","description":"Default strategy ID applied on applications for the portal\n"},"defaultDomain":{"type":"string","description":"The domain assigned to the portal by Konnect. This is the default place to access the portal and its API if not using a \u003cspan pulumi-lang-nodejs=\"`customDomain`\" pulumi-lang-dotnet=\"`CustomDomain`\" pulumi-lang-go=\"`customDomain`\" pulumi-lang-python=\"`custom_domain`\" pulumi-lang-yaml=\"`customDomain`\" pulumi-lang-java=\"`customDomain`\"\u003e`custom_domain`\u003c/span\u003e`."},"description":{"type":"string","description":"The description of the portal.\n"},"developerCount":{"type":"number","description":"Number of developers using the portal."},"displayName":{"type":"string","description":"The display name of the portal. This value will be the portal's \u003cspan pulumi-lang-nodejs=\"`name`\" pulumi-lang-dotnet=\"`Name`\" pulumi-lang-go=\"`name`\" pulumi-lang-python=\"`name`\" pulumi-lang-yaml=\"`name`\" pulumi-lang-java=\"`name`\"\u003e`name`\u003c/span\u003e in Portal API.\n"},"force":{"type":"string","description":"If true, delete specified portal and all related entities, even if there are developers registered to portal or if there are portal product versions with application registration enabled. If false, do not allow deletion if there are developers registered to portal or if there are portal product versions with application registration enabled. Default: \"false\"; must be one of [\"true\", \"false\"]\n"},"isPublic":{"type":"boolean","description":"Whether the portal catalog can be accessed publicly without any developer authentication. Developer accounts and applications cannot be created if the portal is public.\n"},"labels":{"type":"object","additionalProperties":{"type":"string"},"description":"Labels store metadata of an entity that can be used for filtering an entity list or for searching across entity types.\n"},"name":{"type":"string","description":"The name of the portal, used to distinguish it from other portals. Name must be unique.\n"},"publishedProductCount":{"type":"number","description":"Number of api products published to the portal"},"rbacEnabled":{"type":"boolean","description":"Whether the portal resources are protected by Role Based Access Control (RBAC). If enabled, developers view or register for products until unless assigned to teams with access to view and consume specific products."},"updatedAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity update date."}},"type":"object"}},"konnect:index/portalCustomDomain:PortalCustomDomain":{"description":"PortalCustomDomain Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myPortalcustomdomain = new konnect.PortalCustomDomain(\"my_portalcustomdomain\", {\n    enabled: false,\n    hostname: \"...my_hostname...\",\n    portalId: \"f32d905a-ed33-46a3-a093-d8f536af9a8a\",\n    ssl: {\n        customCertificate: \"...my_custom_certificate...\",\n        customPrivateKey: \"...my_custom_private_key...\",\n        domainVerificationMethod: \"custom_certificate\",\n        skipCaCheck: true,\n    },\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_portalcustomdomain = konnect.PortalCustomDomain(\"my_portalcustomdomain\",\n    enabled=False,\n    hostname=\"...my_hostname...\",\n    portal_id=\"f32d905a-ed33-46a3-a093-d8f536af9a8a\",\n    ssl={\n        \"custom_certificate\": \"...my_custom_certificate...\",\n        \"custom_private_key\": \"...my_custom_private_key...\",\n        \"domain_verification_method\": \"custom_certificate\",\n        \"skip_ca_check\": True,\n    })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myPortalcustomdomain = new Konnect.PortalCustomDomain(\"my_portalcustomdomain\", new()\n    {\n        Enabled = false,\n        Hostname = \"...my_hostname...\",\n        PortalId = \"f32d905a-ed33-46a3-a093-d8f536af9a8a\",\n        Ssl = new Konnect.Inputs.PortalCustomDomainSslArgs\n        {\n            CustomCertificate = \"...my_custom_certificate...\",\n            CustomPrivateKey = \"...my_custom_private_key...\",\n            DomainVerificationMethod = \"custom_certificate\",\n            SkipCaCheck = true,\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewPortalCustomDomain(ctx, \"my_portalcustomdomain\", \u0026konnect.PortalCustomDomainArgs{\n\t\t\tEnabled:  pulumi.Bool(false),\n\t\t\tHostname: pulumi.String(\"...my_hostname...\"),\n\t\t\tPortalId: pulumi.String(\"f32d905a-ed33-46a3-a093-d8f536af9a8a\"),\n\t\t\tSsl: \u0026konnect.PortalCustomDomainSslArgs{\n\t\t\t\tCustomCertificate:        pulumi.String(\"...my_custom_certificate...\"),\n\t\t\t\tCustomPrivateKey:         pulumi.String(\"...my_custom_private_key...\"),\n\t\t\t\tDomainVerificationMethod: pulumi.String(\"custom_certificate\"),\n\t\t\t\tSkipCaCheck:              pulumi.Bool(true),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.PortalCustomDomain;\nimport com.pulumi.konnect.PortalCustomDomainArgs;\nimport com.pulumi.konnect.inputs.PortalCustomDomainSslArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myPortalcustomdomain = new PortalCustomDomain(\"myPortalcustomdomain\", PortalCustomDomainArgs.builder()\n            .enabled(false)\n            .hostname(\"...my_hostname...\")\n            .portalId(\"f32d905a-ed33-46a3-a093-d8f536af9a8a\")\n            .ssl(PortalCustomDomainSslArgs.builder()\n                .customCertificate(\"...my_custom_certificate...\")\n                .customPrivateKey(\"...my_custom_private_key...\")\n                .domainVerificationMethod(\"custom_certificate\")\n                .skipCaCheck(true)\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myPortalcustomdomain:\n    type: konnect:PortalCustomDomain\n    name: my_portalcustomdomain\n    properties:\n      enabled: false\n      hostname: '...my_hostname...'\n      portalId: f32d905a-ed33-46a3-a093-d8f536af9a8a\n      ssl:\n        customCertificate: '...my_custom_certificate...'\n        customPrivateKey: '...my_custom_private_key...'\n        domainVerificationMethod: custom_certificate\n        skipCaCheck: true\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_portal_custom_domain.my_konnect_portal_custom_domain\n\n  id = \"f32d905a-ed33-46a3-a093-d8f536af9a8a\"\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/portalCustomDomain:PortalCustomDomain my_konnect_portal_custom_domain \"f32d905a-ed33-46a3-a093-d8f536af9a8a\"\n```\n\n","properties":{"cnameStatus":{"type":"string"},"createdAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity creation date.\n"},"enabled":{"type":"boolean"},"hostname":{"type":"string","description":"Requires replacement if changed.\n"},"portalId":{"type":"string","description":"The Portal identifier\n"},"ssl":{"$ref":"#/types/konnect:index%2FPortalCustomDomainSsl:PortalCustomDomainSsl","description":"Requires replacement if changed.\n"},"updatedAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity update date.\n"}},"type":"object","required":["cnameStatus","createdAt","enabled","hostname","portalId","ssl","updatedAt"],"inputProperties":{"enabled":{"type":"boolean"},"hostname":{"type":"string","description":"Requires replacement if changed.\n"},"portalId":{"type":"string","description":"The Portal identifier\n"},"ssl":{"$ref":"#/types/konnect:index%2FPortalCustomDomainSsl:PortalCustomDomainSsl","description":"Requires replacement if changed.\n"}},"requiredInputs":["enabled","hostname","portalId","ssl"],"stateInputs":{"description":"Input properties used for looking up and filtering PortalCustomDomain resources.\n","properties":{"cnameStatus":{"type":"string"},"createdAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity creation date.\n"},"enabled":{"type":"boolean"},"hostname":{"type":"string","description":"Requires replacement if changed.\n"},"portalId":{"type":"string","description":"The Portal identifier\n"},"ssl":{"$ref":"#/types/konnect:index%2FPortalCustomDomainSsl:PortalCustomDomainSsl","description":"Requires replacement if changed.\n"},"updatedAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity update date.\n"}},"type":"object"}},"konnect:index/portalCustomization:PortalCustomization":{"description":"PortalCustomization Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myPortalcustomization = new konnect.PortalCustomization(\"my_portalcustomization\", {\n    css: \"...my_css...\",\n    layout: \"...my_layout...\",\n    menu: {\n        footerBottoms: [{\n            external: false,\n            path: \"/about/company\",\n            title: \"My Page\",\n            visibility: \"public\",\n        }],\n        footerSections: [{\n            items: [{\n                external: true,\n                path: \"/about/company\",\n                title: \"My Page\",\n                visibility: \"public\",\n            }],\n            title: \"...my_title...\",\n        }],\n        mains: [{\n            external: true,\n            path: \"/about/company\",\n            title: \"My Page\",\n            visibility: \"public\",\n        }],\n    },\n    portalId: \"f32d905a-ed33-46a3-a093-d8f536af9a8a\",\n    robots: \"...my_robots...\",\n    specRenderer: {\n        allowCustomServerUrls: true,\n        hideDeprecated: true,\n        hideInternal: false,\n        infiniteScroll: false,\n        showSchemas: false,\n        tryItInsomnia: false,\n        tryItUi: false,\n    },\n    theme: {\n        colors: {\n            primary: \"#000000\",\n        },\n        mode: \"system\",\n        name: \"...my_name...\",\n    },\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_portalcustomization = konnect.PortalCustomization(\"my_portalcustomization\",\n    css=\"...my_css...\",\n    layout=\"...my_layout...\",\n    menu={\n        \"footer_bottoms\": [{\n            \"external\": False,\n            \"path\": \"/about/company\",\n            \"title\": \"My Page\",\n            \"visibility\": \"public\",\n        }],\n        \"footer_sections\": [{\n            \"items\": [{\n                \"external\": True,\n                \"path\": \"/about/company\",\n                \"title\": \"My Page\",\n                \"visibility\": \"public\",\n            }],\n            \"title\": \"...my_title...\",\n        }],\n        \"mains\": [{\n            \"external\": True,\n            \"path\": \"/about/company\",\n            \"title\": \"My Page\",\n            \"visibility\": \"public\",\n        }],\n    },\n    portal_id=\"f32d905a-ed33-46a3-a093-d8f536af9a8a\",\n    robots=\"...my_robots...\",\n    spec_renderer={\n        \"allow_custom_server_urls\": True,\n        \"hide_deprecated\": True,\n        \"hide_internal\": False,\n        \"infinite_scroll\": False,\n        \"show_schemas\": False,\n        \"try_it_insomnia\": False,\n        \"try_it_ui\": False,\n    },\n    theme={\n        \"colors\": {\n            \"primary\": \"#000000\",\n        },\n        \"mode\": \"system\",\n        \"name\": \"...my_name...\",\n    })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myPortalcustomization = new Konnect.PortalCustomization(\"my_portalcustomization\", new()\n    {\n        Css = \"...my_css...\",\n        Layout = \"...my_layout...\",\n        Menu = new Konnect.Inputs.PortalCustomizationMenuArgs\n        {\n            FooterBottoms = new[]\n            {\n                new Konnect.Inputs.PortalCustomizationMenuFooterBottomArgs\n                {\n                    External = false,\n                    Path = \"/about/company\",\n                    Title = \"My Page\",\n                    Visibility = \"public\",\n                },\n            },\n            FooterSections = new[]\n            {\n                new Konnect.Inputs.PortalCustomizationMenuFooterSectionArgs\n                {\n                    Items = new[]\n                    {\n                        new Konnect.Inputs.PortalCustomizationMenuFooterSectionItemArgs\n                        {\n                            External = true,\n                            Path = \"/about/company\",\n                            Title = \"My Page\",\n                            Visibility = \"public\",\n                        },\n                    },\n                    Title = \"...my_title...\",\n                },\n            },\n            Mains = new[]\n            {\n                new Konnect.Inputs.PortalCustomizationMenuMainArgs\n                {\n                    External = true,\n                    Path = \"/about/company\",\n                    Title = \"My Page\",\n                    Visibility = \"public\",\n                },\n            },\n        },\n        PortalId = \"f32d905a-ed33-46a3-a093-d8f536af9a8a\",\n        Robots = \"...my_robots...\",\n        SpecRenderer = new Konnect.Inputs.PortalCustomizationSpecRendererArgs\n        {\n            AllowCustomServerUrls = true,\n            HideDeprecated = true,\n            HideInternal = false,\n            InfiniteScroll = false,\n            ShowSchemas = false,\n            TryItInsomnia = false,\n            TryItUi = false,\n        },\n        Theme = new Konnect.Inputs.PortalCustomizationThemeArgs\n        {\n            Colors = new Konnect.Inputs.PortalCustomizationThemeColorsArgs\n            {\n                Primary = \"#000000\",\n            },\n            Mode = \"system\",\n            Name = \"...my_name...\",\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewPortalCustomization(ctx, \"my_portalcustomization\", \u0026konnect.PortalCustomizationArgs{\n\t\t\tCss:    pulumi.String(\"...my_css...\"),\n\t\t\tLayout: pulumi.String(\"...my_layout...\"),\n\t\t\tMenu: \u0026konnect.PortalCustomizationMenuArgs{\n\t\t\t\tFooterBottoms: konnect.PortalCustomizationMenuFooterBottomArray{\n\t\t\t\t\t\u0026konnect.PortalCustomizationMenuFooterBottomArgs{\n\t\t\t\t\t\tExternal:   pulumi.Bool(false),\n\t\t\t\t\t\tPath:       pulumi.String(\"/about/company\"),\n\t\t\t\t\t\tTitle:      pulumi.String(\"My Page\"),\n\t\t\t\t\t\tVisibility: pulumi.String(\"public\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tFooterSections: konnect.PortalCustomizationMenuFooterSectionArray{\n\t\t\t\t\t\u0026konnect.PortalCustomizationMenuFooterSectionArgs{\n\t\t\t\t\t\tItems: konnect.PortalCustomizationMenuFooterSectionItemArray{\n\t\t\t\t\t\t\t\u0026konnect.PortalCustomizationMenuFooterSectionItemArgs{\n\t\t\t\t\t\t\t\tExternal:   pulumi.Bool(true),\n\t\t\t\t\t\t\t\tPath:       pulumi.String(\"/about/company\"),\n\t\t\t\t\t\t\t\tTitle:      pulumi.String(\"My Page\"),\n\t\t\t\t\t\t\t\tVisibility: pulumi.String(\"public\"),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t\tTitle: pulumi.String(\"...my_title...\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tMains: konnect.PortalCustomizationMenuMainArray{\n\t\t\t\t\t\u0026konnect.PortalCustomizationMenuMainArgs{\n\t\t\t\t\t\tExternal:   pulumi.Bool(true),\n\t\t\t\t\t\tPath:       pulumi.String(\"/about/company\"),\n\t\t\t\t\t\tTitle:      pulumi.String(\"My Page\"),\n\t\t\t\t\t\tVisibility: pulumi.String(\"public\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tPortalId: pulumi.String(\"f32d905a-ed33-46a3-a093-d8f536af9a8a\"),\n\t\t\tRobots:   pulumi.String(\"...my_robots...\"),\n\t\t\tSpecRenderer: \u0026konnect.PortalCustomizationSpecRendererArgs{\n\t\t\t\tAllowCustomServerUrls: pulumi.Bool(true),\n\t\t\t\tHideDeprecated:        pulumi.Bool(true),\n\t\t\t\tHideInternal:          pulumi.Bool(false),\n\t\t\t\tInfiniteScroll:        pulumi.Bool(false),\n\t\t\t\tShowSchemas:           pulumi.Bool(false),\n\t\t\t\tTryItInsomnia:         pulumi.Bool(false),\n\t\t\t\tTryItUi:               pulumi.Bool(false),\n\t\t\t},\n\t\t\tTheme: \u0026konnect.PortalCustomizationThemeArgs{\n\t\t\t\tColors: \u0026konnect.PortalCustomizationThemeColorsArgs{\n\t\t\t\t\tPrimary: pulumi.String(\"#000000\"),\n\t\t\t\t},\n\t\t\t\tMode: pulumi.String(\"system\"),\n\t\t\t\tName: pulumi.String(\"...my_name...\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.PortalCustomization;\nimport com.pulumi.konnect.PortalCustomizationArgs;\nimport com.pulumi.konnect.inputs.PortalCustomizationMenuArgs;\nimport com.pulumi.konnect.inputs.PortalCustomizationSpecRendererArgs;\nimport com.pulumi.konnect.inputs.PortalCustomizationThemeArgs;\nimport com.pulumi.konnect.inputs.PortalCustomizationThemeColorsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myPortalcustomization = new PortalCustomization(\"myPortalcustomization\", PortalCustomizationArgs.builder()\n            .css(\"...my_css...\")\n            .layout(\"...my_layout...\")\n            .menu(PortalCustomizationMenuArgs.builder()\n                .footerBottoms(PortalCustomizationMenuFooterBottomArgs.builder()\n                    .external(false)\n                    .path(\"/about/company\")\n                    .title(\"My Page\")\n                    .visibility(\"public\")\n                    .build())\n                .footerSections(PortalCustomizationMenuFooterSectionArgs.builder()\n                    .items(PortalCustomizationMenuFooterSectionItemArgs.builder()\n                        .external(true)\n                        .path(\"/about/company\")\n                        .title(\"My Page\")\n                        .visibility(\"public\")\n                        .build())\n                    .title(\"...my_title...\")\n                    .build())\n                .mains(PortalCustomizationMenuMainArgs.builder()\n                    .external(true)\n                    .path(\"/about/company\")\n                    .title(\"My Page\")\n                    .visibility(\"public\")\n                    .build())\n                .build())\n            .portalId(\"f32d905a-ed33-46a3-a093-d8f536af9a8a\")\n            .robots(\"...my_robots...\")\n            .specRenderer(PortalCustomizationSpecRendererArgs.builder()\n                .allowCustomServerUrls(true)\n                .hideDeprecated(true)\n                .hideInternal(false)\n                .infiniteScroll(false)\n                .showSchemas(false)\n                .tryItInsomnia(false)\n                .tryItUi(false)\n                .build())\n            .theme(PortalCustomizationThemeArgs.builder()\n                .colors(PortalCustomizationThemeColorsArgs.builder()\n                    .primary(\"#000000\")\n                    .build())\n                .mode(\"system\")\n                .name(\"...my_name...\")\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myPortalcustomization:\n    type: konnect:PortalCustomization\n    name: my_portalcustomization\n    properties:\n      css: '...my_css...'\n      layout: '...my_layout...'\n      menu:\n        footerBottoms:\n          - external: false\n            path: /about/company\n            title: My Page\n            visibility: public\n        footerSections:\n          - items:\n              - external: true\n                path: /about/company\n                title: My Page\n                visibility: public\n            title: '...my_title...'\n        mains:\n          - external: true\n            path: /about/company\n            title: My Page\n            visibility: public\n      portalId: f32d905a-ed33-46a3-a093-d8f536af9a8a\n      robots: '...my_robots...'\n      specRenderer:\n        allowCustomServerUrls: true\n        hideDeprecated: true\n        hideInternal: false\n        infiniteScroll: false\n        showSchemas: false\n        tryItInsomnia: false\n        tryItUi: false\n      theme:\n        colors:\n          primary: '#000000'\n        mode: system\n        name: '...my_name...'\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_portal_customization.my_konnect_portal_customization\n\n  id = \"f32d905a-ed33-46a3-a093-d8f536af9a8a\"\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/portalCustomization:PortalCustomization my_konnect_portal_customization \"f32d905a-ed33-46a3-a093-d8f536af9a8a\"\n```\n\n","properties":{"css":{"type":"string"},"layout":{"type":"string"},"menu":{"$ref":"#/types/konnect:index%2FPortalCustomizationMenu:PortalCustomizationMenu"},"portalId":{"type":"string","description":"The Portal identifier\n"},"robots":{"type":"string"},"specRenderer":{"$ref":"#/types/konnect:index%2FPortalCustomizationSpecRenderer:PortalCustomizationSpecRenderer"},"theme":{"$ref":"#/types/konnect:index%2FPortalCustomizationTheme:PortalCustomizationTheme"}},"type":"object","required":["portalId"],"inputProperties":{"css":{"type":"string"},"layout":{"type":"string"},"menu":{"$ref":"#/types/konnect:index%2FPortalCustomizationMenu:PortalCustomizationMenu"},"portalId":{"type":"string","description":"The Portal identifier\n"},"robots":{"type":"string"},"specRenderer":{"$ref":"#/types/konnect:index%2FPortalCustomizationSpecRenderer:PortalCustomizationSpecRenderer"},"theme":{"$ref":"#/types/konnect:index%2FPortalCustomizationTheme:PortalCustomizationTheme"}},"requiredInputs":["portalId"],"stateInputs":{"description":"Input properties used for looking up and filtering PortalCustomization resources.\n","properties":{"css":{"type":"string"},"layout":{"type":"string"},"menu":{"$ref":"#/types/konnect:index%2FPortalCustomizationMenu:PortalCustomizationMenu"},"portalId":{"type":"string","description":"The Portal identifier\n"},"robots":{"type":"string"},"specRenderer":{"$ref":"#/types/konnect:index%2FPortalCustomizationSpecRenderer:PortalCustomizationSpecRenderer"},"theme":{"$ref":"#/types/konnect:index%2FPortalCustomizationTheme:PortalCustomizationTheme"}},"type":"object"}},"konnect:index/portalFavicon:PortalFavicon":{"description":"PortalFavicon Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myPortalfavicon = new konnect.PortalFavicon(\"my_portalfavicon\", {\n    data: \"data:image/png;base64,YW5faW1hZ2VfZmlsZQ==\",\n    portalId: \"f32d905a-ed33-46a3-a093-d8f536af9a8a\",\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_portalfavicon = konnect.PortalFavicon(\"my_portalfavicon\",\n    data=\"data:image/png;base64,YW5faW1hZ2VfZmlsZQ==\",\n    portal_id=\"f32d905a-ed33-46a3-a093-d8f536af9a8a\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myPortalfavicon = new Konnect.PortalFavicon(\"my_portalfavicon\", new()\n    {\n        Data = \"data:image/png;base64,YW5faW1hZ2VfZmlsZQ==\",\n        PortalId = \"f32d905a-ed33-46a3-a093-d8f536af9a8a\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewPortalFavicon(ctx, \"my_portalfavicon\", \u0026konnect.PortalFaviconArgs{\n\t\t\tData:     pulumi.String(\"data:image/png;base64,YW5faW1hZ2VfZmlsZQ==\"),\n\t\t\tPortalId: pulumi.String(\"f32d905a-ed33-46a3-a093-d8f536af9a8a\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.PortalFavicon;\nimport com.pulumi.konnect.PortalFaviconArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myPortalfavicon = new PortalFavicon(\"myPortalfavicon\", PortalFaviconArgs.builder()\n            .data(\"data:image/png;base64,YW5faW1hZ2VfZmlsZQ==\")\n            .portalId(\"f32d905a-ed33-46a3-a093-d8f536af9a8a\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myPortalfavicon:\n    type: konnect:PortalFavicon\n    name: my_portalfavicon\n    properties:\n      data: data:image/png;base64,YW5faW1hZ2VfZmlsZQ==\n      portalId: f32d905a-ed33-46a3-a093-d8f536af9a8a\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_portal_favicon.my_konnect_portal_favicon\n\n  id = \"f32d905a-ed33-46a3-a093-d8f536af9a8a\"\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/portalFavicon:PortalFavicon my_konnect_portal_favicon \"f32d905a-ed33-46a3-a093-d8f536af9a8a\"\n```\n\n","properties":{"data":{"type":"string","description":"must be a data URL with base64 image data, e.g., data:image/jpeg;base64,\\n\\n\n"},"portalId":{"type":"string","description":"The Portal identifier\n"}},"type":"object","required":["data","portalId"],"inputProperties":{"data":{"type":"string","description":"must be a data URL with base64 image data, e.g., data:image/jpeg;base64,\\n\\n\n"},"portalId":{"type":"string","description":"The Portal identifier\n"}},"requiredInputs":["data","portalId"],"stateInputs":{"description":"Input properties used for looking up and filtering PortalFavicon resources.\n","properties":{"data":{"type":"string","description":"must be a data URL with base64 image data, e.g., data:image/jpeg;base64,\\n\\n\n"},"portalId":{"type":"string","description":"The Portal identifier\n"}},"type":"object"}},"konnect:index/portalLogo:PortalLogo":{"description":"PortalLogo Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myPortallogo = new konnect.PortalLogo(\"my_portallogo\", {\n    data: \"data:image/png;base64,YW5faW1hZ2VfZmlsZQ==\",\n    portalId: \"f32d905a-ed33-46a3-a093-d8f536af9a8a\",\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_portallogo = konnect.PortalLogo(\"my_portallogo\",\n    data=\"data:image/png;base64,YW5faW1hZ2VfZmlsZQ==\",\n    portal_id=\"f32d905a-ed33-46a3-a093-d8f536af9a8a\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myPortallogo = new Konnect.PortalLogo(\"my_portallogo\", new()\n    {\n        Data = \"data:image/png;base64,YW5faW1hZ2VfZmlsZQ==\",\n        PortalId = \"f32d905a-ed33-46a3-a093-d8f536af9a8a\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewPortalLogo(ctx, \"my_portallogo\", \u0026konnect.PortalLogoArgs{\n\t\t\tData:     pulumi.String(\"data:image/png;base64,YW5faW1hZ2VfZmlsZQ==\"),\n\t\t\tPortalId: pulumi.String(\"f32d905a-ed33-46a3-a093-d8f536af9a8a\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.PortalLogo;\nimport com.pulumi.konnect.PortalLogoArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myPortallogo = new PortalLogo(\"myPortallogo\", PortalLogoArgs.builder()\n            .data(\"data:image/png;base64,YW5faW1hZ2VfZmlsZQ==\")\n            .portalId(\"f32d905a-ed33-46a3-a093-d8f536af9a8a\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myPortallogo:\n    type: konnect:PortalLogo\n    name: my_portallogo\n    properties:\n      data: data:image/png;base64,YW5faW1hZ2VfZmlsZQ==\n      portalId: f32d905a-ed33-46a3-a093-d8f536af9a8a\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_portal_logo.my_konnect_portal_logo\n\n  id = \"f32d905a-ed33-46a3-a093-d8f536af9a8a\"\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/portalLogo:PortalLogo my_konnect_portal_logo \"f32d905a-ed33-46a3-a093-d8f536af9a8a\"\n```\n\n","properties":{"data":{"type":"string","description":"must be a data URL with base64 image data, e.g., data:image/jpeg;base64,\\n\\n\n"},"portalId":{"type":"string","description":"The Portal identifier\n"}},"type":"object","required":["data","portalId"],"inputProperties":{"data":{"type":"string","description":"must be a data URL with base64 image data, e.g., data:image/jpeg;base64,\\n\\n\n"},"portalId":{"type":"string","description":"The Portal identifier\n"}},"requiredInputs":["data","portalId"],"stateInputs":{"description":"Input properties used for looking up and filtering PortalLogo resources.\n","properties":{"data":{"type":"string","description":"must be a data URL with base64 image data, e.g., data:image/jpeg;base64,\\n\\n\n"},"portalId":{"type":"string","description":"The Portal identifier\n"}},"type":"object"}},"konnect:index/portalPage:PortalPage":{"description":"PortalPage Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myPortalpage = new konnect.PortalPage(\"my_portalpage\", {\n    content: \"# Welcome to My Page\",\n    description: \"A custom page about developer portals\",\n    parentPageId: \"824a28d9-7024-426a-aed4-03b504521824\",\n    portalId: \"f32d905a-ed33-46a3-a093-d8f536af9a8a\",\n    slug: \"/my-page\",\n    status: \"published\",\n    title: \"My Page\",\n    visibility: \"public\",\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_portalpage = konnect.PortalPage(\"my_portalpage\",\n    content=\"# Welcome to My Page\",\n    description=\"A custom page about developer portals\",\n    parent_page_id=\"824a28d9-7024-426a-aed4-03b504521824\",\n    portal_id=\"f32d905a-ed33-46a3-a093-d8f536af9a8a\",\n    slug=\"/my-page\",\n    status=\"published\",\n    title=\"My Page\",\n    visibility=\"public\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myPortalpage = new Konnect.PortalPage(\"my_portalpage\", new()\n    {\n        Content = \"# Welcome to My Page\",\n        Description = \"A custom page about developer portals\",\n        ParentPageId = \"824a28d9-7024-426a-aed4-03b504521824\",\n        PortalId = \"f32d905a-ed33-46a3-a093-d8f536af9a8a\",\n        Slug = \"/my-page\",\n        Status = \"published\",\n        Title = \"My Page\",\n        Visibility = \"public\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewPortalPage(ctx, \"my_portalpage\", \u0026konnect.PortalPageArgs{\n\t\t\tContent:      pulumi.String(\"# Welcome to My Page\"),\n\t\t\tDescription:  pulumi.String(\"A custom page about developer portals\"),\n\t\t\tParentPageId: pulumi.String(\"824a28d9-7024-426a-aed4-03b504521824\"),\n\t\t\tPortalId:     pulumi.String(\"f32d905a-ed33-46a3-a093-d8f536af9a8a\"),\n\t\t\tSlug:         pulumi.String(\"/my-page\"),\n\t\t\tStatus:       pulumi.String(\"published\"),\n\t\t\tTitle:        pulumi.String(\"My Page\"),\n\t\t\tVisibility:   pulumi.String(\"public\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.PortalPage;\nimport com.pulumi.konnect.PortalPageArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myPortalpage = new PortalPage(\"myPortalpage\", PortalPageArgs.builder()\n            .content(\"# Welcome to My Page\")\n            .description(\"A custom page about developer portals\")\n            .parentPageId(\"824a28d9-7024-426a-aed4-03b504521824\")\n            .portalId(\"f32d905a-ed33-46a3-a093-d8f536af9a8a\")\n            .slug(\"/my-page\")\n            .status(\"published\")\n            .title(\"My Page\")\n            .visibility(\"public\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myPortalpage:\n    type: konnect:PortalPage\n    name: my_portalpage\n    properties:\n      content: '# Welcome to My Page'\n      description: A custom page about developer portals\n      parentPageId: 824a28d9-7024-426a-aed4-03b504521824\n      portalId: f32d905a-ed33-46a3-a093-d8f536af9a8a\n      slug: /my-page\n      status: published\n      title: My Page\n      visibility: public\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_portal_page.my_konnect_portal_page\n\n  id = jsonencode({\n\n    id = \"ebbac5b0-ac89-45c3-9d2e-c4542c657e79\"\n\n    portal_id = \"f32d905a-ed33-46a3-a093-d8f536af9a8a\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/portalPage:PortalPage my_konnect_portal_page '{\"id\": \"ebbac5b0-ac89-45c3-9d2e-c4542c657e79\", \"portal_id\": \"f32d905a-ed33-46a3-a093-d8f536af9a8a\"}'\n```\n\n","properties":{"content":{"type":"string","description":"The renderable markdown content of a page in a portal.\n"},"createdAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity creation date."},"description":{"type":"string"},"parentPageId":{"type":"string","description":"Pages may be rendered as a tree of files.\n"},"portalId":{"type":"string","description":"The Portal identifier\n"},"slug":{"type":"string","description":"The slug of a page in a portal, used to compute its full URL path within the portal hierarchy.\nWhen a page has a \u003cspan pulumi-lang-nodejs=\"`parentPageId`\" pulumi-lang-dotnet=\"`ParentPageId`\" pulumi-lang-go=\"`parentPageId`\" pulumi-lang-python=\"`parent_page_id`\" pulumi-lang-yaml=\"`parentPageId`\" pulumi-lang-java=\"`parentPageId`\"\u003e`parent_page_id`\u003c/span\u003e, its full path is built by joining the parent’s slug with its own.\nFor example, if a parent page has the slug \u003cspan pulumi-lang-nodejs=\"`slug1`\" pulumi-lang-dotnet=\"`Slug1`\" pulumi-lang-go=\"`slug1`\" pulumi-lang-python=\"`slug1`\" pulumi-lang-yaml=\"`slug1`\" pulumi-lang-java=\"`slug1`\"\u003e`slug1`\u003c/span\u003e and this page’s slug is \u003cspan pulumi-lang-nodejs=\"`slug2`\" pulumi-lang-dotnet=\"`Slug2`\" pulumi-lang-go=\"`slug2`\" pulumi-lang-python=\"`slug2`\" pulumi-lang-yaml=\"`slug2`\" pulumi-lang-java=\"`slug2`\"\u003e`slug2`\u003c/span\u003e, the resulting path will be `/slug1/slug2`.\nThis enables nested page structures like `/slug1/slug2/slug3`.\n"},"status":{"type":"string","description":"Whether the resource is visible on a given portal. Defaults to unpublished. must be one of [\"published\", \"unpublished\"]"},"title":{"type":"string","description":"The title of a page in a portal."},"updatedAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity update date."},"visibility":{"type":"string","description":"Whether a page is publicly accessible to non-authenticated users.\nIf not provided, the\u003cspan pulumi-lang-nodejs=\" defaultPageVisibility \" pulumi-lang-dotnet=\" DefaultPageVisibility \" pulumi-lang-go=\" defaultPageVisibility \" pulumi-lang-python=\" default_page_visibility \" pulumi-lang-yaml=\" defaultPageVisibility \" pulumi-lang-java=\" defaultPageVisibility \"\u003e default_page_visibility \u003c/span\u003evalue of the portal will be used.\nmust be one of [\"public\", \"private\"]"}},"type":"object","required":["content","createdAt","description","portalId","slug","status","title","updatedAt","visibility"],"inputProperties":{"content":{"type":"string","description":"The renderable markdown content of a page in a portal.\n"},"description":{"type":"string"},"parentPageId":{"type":"string","description":"Pages may be rendered as a tree of files.\n"},"portalId":{"type":"string","description":"The Portal identifier\n"},"slug":{"type":"string","description":"The slug of a page in a portal, used to compute its full URL path within the portal hierarchy.\nWhen a page has a \u003cspan pulumi-lang-nodejs=\"`parentPageId`\" pulumi-lang-dotnet=\"`ParentPageId`\" pulumi-lang-go=\"`parentPageId`\" pulumi-lang-python=\"`parent_page_id`\" pulumi-lang-yaml=\"`parentPageId`\" pulumi-lang-java=\"`parentPageId`\"\u003e`parent_page_id`\u003c/span\u003e, its full path is built by joining the parent’s slug with its own.\nFor example, if a parent page has the slug \u003cspan pulumi-lang-nodejs=\"`slug1`\" pulumi-lang-dotnet=\"`Slug1`\" pulumi-lang-go=\"`slug1`\" pulumi-lang-python=\"`slug1`\" pulumi-lang-yaml=\"`slug1`\" pulumi-lang-java=\"`slug1`\"\u003e`slug1`\u003c/span\u003e and this page’s slug is \u003cspan pulumi-lang-nodejs=\"`slug2`\" pulumi-lang-dotnet=\"`Slug2`\" pulumi-lang-go=\"`slug2`\" pulumi-lang-python=\"`slug2`\" pulumi-lang-yaml=\"`slug2`\" pulumi-lang-java=\"`slug2`\"\u003e`slug2`\u003c/span\u003e, the resulting path will be `/slug1/slug2`.\nThis enables nested page structures like `/slug1/slug2/slug3`.\n"},"status":{"type":"string","description":"Whether the resource is visible on a given portal. Defaults to unpublished. must be one of [\"published\", \"unpublished\"]"},"title":{"type":"string","description":"The title of a page in a portal."},"visibility":{"type":"string","description":"Whether a page is publicly accessible to non-authenticated users.\nIf not provided, the\u003cspan pulumi-lang-nodejs=\" defaultPageVisibility \" pulumi-lang-dotnet=\" DefaultPageVisibility \" pulumi-lang-go=\" defaultPageVisibility \" pulumi-lang-python=\" default_page_visibility \" pulumi-lang-yaml=\" defaultPageVisibility \" pulumi-lang-java=\" defaultPageVisibility \"\u003e default_page_visibility \u003c/span\u003evalue of the portal will be used.\nmust be one of [\"public\", \"private\"]"}},"requiredInputs":["content","portalId","slug"],"stateInputs":{"description":"Input properties used for looking up and filtering PortalPage resources.\n","properties":{"content":{"type":"string","description":"The renderable markdown content of a page in a portal.\n"},"createdAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity creation date."},"description":{"type":"string"},"parentPageId":{"type":"string","description":"Pages may be rendered as a tree of files.\n"},"portalId":{"type":"string","description":"The Portal identifier\n"},"slug":{"type":"string","description":"The slug of a page in a portal, used to compute its full URL path within the portal hierarchy.\nWhen a page has a \u003cspan pulumi-lang-nodejs=\"`parentPageId`\" pulumi-lang-dotnet=\"`ParentPageId`\" pulumi-lang-go=\"`parentPageId`\" pulumi-lang-python=\"`parent_page_id`\" pulumi-lang-yaml=\"`parentPageId`\" pulumi-lang-java=\"`parentPageId`\"\u003e`parent_page_id`\u003c/span\u003e, its full path is built by joining the parent’s slug with its own.\nFor example, if a parent page has the slug \u003cspan pulumi-lang-nodejs=\"`slug1`\" pulumi-lang-dotnet=\"`Slug1`\" pulumi-lang-go=\"`slug1`\" pulumi-lang-python=\"`slug1`\" pulumi-lang-yaml=\"`slug1`\" pulumi-lang-java=\"`slug1`\"\u003e`slug1`\u003c/span\u003e and this page’s slug is \u003cspan pulumi-lang-nodejs=\"`slug2`\" pulumi-lang-dotnet=\"`Slug2`\" pulumi-lang-go=\"`slug2`\" pulumi-lang-python=\"`slug2`\" pulumi-lang-yaml=\"`slug2`\" pulumi-lang-java=\"`slug2`\"\u003e`slug2`\u003c/span\u003e, the resulting path will be `/slug1/slug2`.\nThis enables nested page structures like `/slug1/slug2/slug3`.\n"},"status":{"type":"string","description":"Whether the resource is visible on a given portal. Defaults to unpublished. must be one of [\"published\", \"unpublished\"]"},"title":{"type":"string","description":"The title of a page in a portal."},"updatedAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity update date."},"visibility":{"type":"string","description":"Whether a page is publicly accessible to non-authenticated users.\nIf not provided, the\u003cspan pulumi-lang-nodejs=\" defaultPageVisibility \" pulumi-lang-dotnet=\" DefaultPageVisibility \" pulumi-lang-go=\" defaultPageVisibility \" pulumi-lang-python=\" default_page_visibility \" pulumi-lang-yaml=\" defaultPageVisibility \" pulumi-lang-java=\" defaultPageVisibility \"\u003e default_page_visibility \u003c/span\u003evalue of the portal will be used.\nmust be one of [\"public\", \"private\"]"}},"type":"object"}},"konnect:index/portalProductVersion:PortalProductVersion":{"description":"PortalProductVersion Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myPortalproductversion = new konnect.PortalProductVersion(\"my_portalproductversion\", {\n    applicationRegistrationEnabled: true,\n    authStrategyIds: [],\n    autoApproveRegistration: true,\n    deprecated: false,\n    notifyDevelopers: false,\n    portalId: \"f32d905a-ed33-46a3-a093-d8f536af9a8a\",\n    productVersionId: \"5f9fd312-a987-4628-b4c5-bb4f4fddd5f7\",\n    publishStatus: \"published\",\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_portalproductversion = konnect.PortalProductVersion(\"my_portalproductversion\",\n    application_registration_enabled=True,\n    auth_strategy_ids=[],\n    auto_approve_registration=True,\n    deprecated=False,\n    notify_developers=False,\n    portal_id=\"f32d905a-ed33-46a3-a093-d8f536af9a8a\",\n    product_version_id=\"5f9fd312-a987-4628-b4c5-bb4f4fddd5f7\",\n    publish_status=\"published\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myPortalproductversion = new Konnect.PortalProductVersion(\"my_portalproductversion\", new()\n    {\n        ApplicationRegistrationEnabled = true,\n        AuthStrategyIds = new[] {},\n        AutoApproveRegistration = true,\n        Deprecated = false,\n        NotifyDevelopers = false,\n        PortalId = \"f32d905a-ed33-46a3-a093-d8f536af9a8a\",\n        ProductVersionId = \"5f9fd312-a987-4628-b4c5-bb4f4fddd5f7\",\n        PublishStatus = \"published\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewPortalProductVersion(ctx, \"my_portalproductversion\", \u0026konnect.PortalProductVersionArgs{\n\t\t\tApplicationRegistrationEnabled: pulumi.Bool(true),\n\t\t\tAuthStrategyIds:                pulumi.StringArray{},\n\t\t\tAutoApproveRegistration:        pulumi.Bool(true),\n\t\t\tDeprecated:                     pulumi.Bool(false),\n\t\t\tNotifyDevelopers:               pulumi.Bool(false),\n\t\t\tPortalId:                       pulumi.String(\"f32d905a-ed33-46a3-a093-d8f536af9a8a\"),\n\t\t\tProductVersionId:               pulumi.String(\"5f9fd312-a987-4628-b4c5-bb4f4fddd5f7\"),\n\t\t\tPublishStatus:                  pulumi.String(\"published\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.PortalProductVersion;\nimport com.pulumi.konnect.PortalProductVersionArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myPortalproductversion = new PortalProductVersion(\"myPortalproductversion\", PortalProductVersionArgs.builder()\n            .applicationRegistrationEnabled(true)\n            .authStrategyIds()\n            .autoApproveRegistration(true)\n            .deprecated(false)\n            .notifyDevelopers(false)\n            .portalId(\"f32d905a-ed33-46a3-a093-d8f536af9a8a\")\n            .productVersionId(\"5f9fd312-a987-4628-b4c5-bb4f4fddd5f7\")\n            .publishStatus(\"published\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myPortalproductversion:\n    type: konnect:PortalProductVersion\n    name: my_portalproductversion\n    properties:\n      applicationRegistrationEnabled: true\n      authStrategyIds: []\n      autoApproveRegistration: true\n      deprecated: false\n      notifyDevelopers: false\n      portalId: f32d905a-ed33-46a3-a093-d8f536af9a8a\n      productVersionId: 5f9fd312-a987-4628-b4c5-bb4f4fddd5f7\n      publishStatus: published\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_portal_product_version.my_konnect_portal_product_version\n\n  id = jsonencode({\n\n    portal_id = \"f32d905a-ed33-46a3-a093-d8f536af9a8a\"\n\n    product_version_id = \"5f9fd312-a987-4628-b4c5-bb4f4fddd5f7\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/portalProductVersion:PortalProductVersion my_konnect_portal_product_version '{\"portal_id\": \"f32d905a-ed33-46a3-a093-d8f536af9a8a\", \"product_version_id\": \"5f9fd312-a987-4628-b4c5-bb4f4fddd5f7\"}'\n```\n\n","properties":{"applicationRegistrationEnabled":{"type":"boolean","description":"Whether the application registration on this portal for the api product version is enabled\n"},"authStrategies":{"type":"array","items":{"$ref":"#/types/konnect:index%2FPortalProductVersionAuthStrategy:PortalProductVersionAuthStrategy"},"description":"A list of authentication strategies\n"},"authStrategyIds":{"type":"array","items":{"type":"string"},"description":"A list of authentication strategy IDs\n"},"autoApproveRegistration":{"type":"boolean","description":"Whether the application registration auto approval on this portal for the api product version is enabled\n"},"createdAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity creation date.\n"},"deprecated":{"type":"boolean","description":"Whether the api product version on the portal is deprecated\n"},"notifyDevelopers":{"type":"boolean","description":"Whether to notify developers who are affected by this change\n"},"portalId":{"type":"string","description":"The Portal identifier\n"},"productVersionId":{"type":"string","description":"API product version identifier\n"},"publishStatus":{"type":"string","description":"Publication status of the API product version on the portal. must be one of [\"published\", \"unpublished\"]\n"},"updatedAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity update date.\n"}},"type":"object","required":["applicationRegistrationEnabled","authStrategies","authStrategyIds","autoApproveRegistration","createdAt","deprecated","portalId","productVersionId","publishStatus","updatedAt"],"inputProperties":{"applicationRegistrationEnabled":{"type":"boolean","description":"Whether the application registration on this portal for the api product version is enabled\n"},"authStrategyIds":{"type":"array","items":{"type":"string"},"description":"A list of authentication strategy IDs\n"},"autoApproveRegistration":{"type":"boolean","description":"Whether the application registration auto approval on this portal for the api product version is enabled\n"},"deprecated":{"type":"boolean","description":"Whether the api product version on the portal is deprecated\n"},"notifyDevelopers":{"type":"boolean","description":"Whether to notify developers who are affected by this change\n"},"portalId":{"type":"string","description":"The Portal identifier\n"},"productVersionId":{"type":"string","description":"API product version identifier\n"},"publishStatus":{"type":"string","description":"Publication status of the API product version on the portal. must be one of [\"published\", \"unpublished\"]\n"}},"requiredInputs":["applicationRegistrationEnabled","authStrategyIds","autoApproveRegistration","deprecated","portalId","productVersionId","publishStatus"],"stateInputs":{"description":"Input properties used for looking up and filtering PortalProductVersion resources.\n","properties":{"applicationRegistrationEnabled":{"type":"boolean","description":"Whether the application registration on this portal for the api product version is enabled\n"},"authStrategies":{"type":"array","items":{"$ref":"#/types/konnect:index%2FPortalProductVersionAuthStrategy:PortalProductVersionAuthStrategy"},"description":"A list of authentication strategies\n"},"authStrategyIds":{"type":"array","items":{"type":"string"},"description":"A list of authentication strategy IDs\n"},"autoApproveRegistration":{"type":"boolean","description":"Whether the application registration auto approval on this portal for the api product version is enabled\n"},"createdAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity creation date.\n"},"deprecated":{"type":"boolean","description":"Whether the api product version on the portal is deprecated\n"},"notifyDevelopers":{"type":"boolean","description":"Whether to notify developers who are affected by this change\n"},"portalId":{"type":"string","description":"The Portal identifier\n"},"productVersionId":{"type":"string","description":"API product version identifier\n"},"publishStatus":{"type":"string","description":"Publication status of the API product version on the portal. must be one of [\"published\", \"unpublished\"]\n"},"updatedAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity update date.\n"}},"type":"object"}},"konnect:index/portalSnippet:PortalSnippet":{"description":"PortalSnippet Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myPortalsnippet = new konnect.PortalSnippet(\"my_portalsnippet\", {\n    content: \"# Welcome to My Snippet\",\n    description: \"A custom page about developer portals\",\n    name: \"my-snippet\",\n    portalId: \"f32d905a-ed33-46a3-a093-d8f536af9a8a\",\n    status: \"published\",\n    title: \"My Snippet\",\n    visibility: \"public\",\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_portalsnippet = konnect.PortalSnippet(\"my_portalsnippet\",\n    content=\"# Welcome to My Snippet\",\n    description=\"A custom page about developer portals\",\n    name=\"my-snippet\",\n    portal_id=\"f32d905a-ed33-46a3-a093-d8f536af9a8a\",\n    status=\"published\",\n    title=\"My Snippet\",\n    visibility=\"public\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myPortalsnippet = new Konnect.PortalSnippet(\"my_portalsnippet\", new()\n    {\n        Content = \"# Welcome to My Snippet\",\n        Description = \"A custom page about developer portals\",\n        Name = \"my-snippet\",\n        PortalId = \"f32d905a-ed33-46a3-a093-d8f536af9a8a\",\n        Status = \"published\",\n        Title = \"My Snippet\",\n        Visibility = \"public\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewPortalSnippet(ctx, \"my_portalsnippet\", \u0026konnect.PortalSnippetArgs{\n\t\t\tContent:     pulumi.String(\"# Welcome to My Snippet\"),\n\t\t\tDescription: pulumi.String(\"A custom page about developer portals\"),\n\t\t\tName:        pulumi.String(\"my-snippet\"),\n\t\t\tPortalId:    pulumi.String(\"f32d905a-ed33-46a3-a093-d8f536af9a8a\"),\n\t\t\tStatus:      pulumi.String(\"published\"),\n\t\t\tTitle:       pulumi.String(\"My Snippet\"),\n\t\t\tVisibility:  pulumi.String(\"public\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.PortalSnippet;\nimport com.pulumi.konnect.PortalSnippetArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myPortalsnippet = new PortalSnippet(\"myPortalsnippet\", PortalSnippetArgs.builder()\n            .content(\"# Welcome to My Snippet\")\n            .description(\"A custom page about developer portals\")\n            .name(\"my-snippet\")\n            .portalId(\"f32d905a-ed33-46a3-a093-d8f536af9a8a\")\n            .status(\"published\")\n            .title(\"My Snippet\")\n            .visibility(\"public\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myPortalsnippet:\n    type: konnect:PortalSnippet\n    name: my_portalsnippet\n    properties:\n      content: '# Welcome to My Snippet'\n      description: A custom page about developer portals\n      name: my-snippet\n      portalId: f32d905a-ed33-46a3-a093-d8f536af9a8a\n      status: published\n      title: My Snippet\n      visibility: public\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_portal_snippet.my_konnect_portal_snippet\n\n  id = jsonencode({\n\n    id = \"ebbac5b0-ac89-45c3-9d2e-c4542c657e79\"\n\n    portal_id = \"f32d905a-ed33-46a3-a093-d8f536af9a8a\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/portalSnippet:PortalSnippet my_konnect_portal_snippet '{\"id\": \"ebbac5b0-ac89-45c3-9d2e-c4542c657e79\", \"portal_id\": \"f32d905a-ed33-46a3-a093-d8f536af9a8a\"}'\n```\n\n","properties":{"content":{"type":"string","description":"The renderable markdown content of a page in a portal.\n"},"createdAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity creation date.\n"},"description":{"type":"string"},"name":{"type":"string","description":"The unique name of a snippet in a portal.\n"},"portalId":{"type":"string","description":"The Portal identifier\n"},"status":{"type":"string","description":"Whether the resource is visible on a given portal. Defaults to unpublished. must be one of [\"published\", \"unpublished\"]\n"},"title":{"type":"string","description":"The display title of a snippet in a portal.\n"},"updatedAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity update date.\n"},"visibility":{"type":"string","description":"Whether a snippet is publicly accessible to non-authenticated users.\nIf not provided, the default*page*visibility value of the portal will be used.\nmust be one of [\"public\", \"private\"]\n"}},"type":"object","required":["content","createdAt","description","name","portalId","status","title","updatedAt","visibility"],"inputProperties":{"content":{"type":"string","description":"The renderable markdown content of a page in a portal.\n"},"description":{"type":"string"},"name":{"type":"string","description":"The unique name of a snippet in a portal.\n"},"portalId":{"type":"string","description":"The Portal identifier\n"},"status":{"type":"string","description":"Whether the resource is visible on a given portal. Defaults to unpublished. must be one of [\"published\", \"unpublished\"]\n"},"title":{"type":"string","description":"The display title of a snippet in a portal.\n"},"visibility":{"type":"string","description":"Whether a snippet is publicly accessible to non-authenticated users.\nIf not provided, the default*page*visibility value of the portal will be used.\nmust be one of [\"public\", \"private\"]\n"}},"requiredInputs":["content","portalId"],"stateInputs":{"description":"Input properties used for looking up and filtering PortalSnippet resources.\n","properties":{"content":{"type":"string","description":"The renderable markdown content of a page in a portal.\n"},"createdAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity creation date.\n"},"description":{"type":"string"},"name":{"type":"string","description":"The unique name of a snippet in a portal.\n"},"portalId":{"type":"string","description":"The Portal identifier\n"},"status":{"type":"string","description":"Whether the resource is visible on a given portal. Defaults to unpublished. must be one of [\"published\", \"unpublished\"]\n"},"title":{"type":"string","description":"The display title of a snippet in a portal.\n"},"updatedAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity update date.\n"},"visibility":{"type":"string","description":"Whether a snippet is publicly accessible to non-authenticated users.\nIf not provided, the default*page*visibility value of the portal will be used.\nmust be one of [\"public\", \"private\"]\n"}},"type":"object"}},"konnect:index/portalTeam:PortalTeam":{"description":"PortalTeam Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myPortalteam = new konnect.PortalTeam(\"my_portalteam\", {\n    description: \"The Identity Management (IDM) team.\",\n    name: \"IDM - Developers\",\n    portalId: \"f32d905a-ed33-46a3-a093-d8f536af9a8a\",\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_portalteam = konnect.PortalTeam(\"my_portalteam\",\n    description=\"The Identity Management (IDM) team.\",\n    name=\"IDM - Developers\",\n    portal_id=\"f32d905a-ed33-46a3-a093-d8f536af9a8a\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myPortalteam = new Konnect.PortalTeam(\"my_portalteam\", new()\n    {\n        Description = \"The Identity Management (IDM) team.\",\n        Name = \"IDM - Developers\",\n        PortalId = \"f32d905a-ed33-46a3-a093-d8f536af9a8a\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewPortalTeam(ctx, \"my_portalteam\", \u0026konnect.PortalTeamArgs{\n\t\t\tDescription: pulumi.String(\"The Identity Management (IDM) team.\"),\n\t\t\tName:        pulumi.String(\"IDM - Developers\"),\n\t\t\tPortalId:    pulumi.String(\"f32d905a-ed33-46a3-a093-d8f536af9a8a\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.PortalTeam;\nimport com.pulumi.konnect.PortalTeamArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myPortalteam = new PortalTeam(\"myPortalteam\", PortalTeamArgs.builder()\n            .description(\"The Identity Management (IDM) team.\")\n            .name(\"IDM - Developers\")\n            .portalId(\"f32d905a-ed33-46a3-a093-d8f536af9a8a\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myPortalteam:\n    type: konnect:PortalTeam\n    name: my_portalteam\n    properties:\n      description: The Identity Management (IDM) team.\n      name: IDM - Developers\n      portalId: f32d905a-ed33-46a3-a093-d8f536af9a8a\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_portal_team.my_konnect_portal_team\n\n  id = jsonencode({\n\n    id = \"d32d905a-ed33-46a3-a093-d8f536af9a8a\"\n\n    portal_id = \"f32d905a-ed33-46a3-a093-d8f536af9a8a\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/portalTeam:PortalTeam my_konnect_portal_team '{\"id\": \"d32d905a-ed33-46a3-a093-d8f536af9a8a\", \"portal_id\": \"f32d905a-ed33-46a3-a093-d8f536af9a8a\"}'\n```\n\n","properties":{"createdAt":{"type":"string"},"description":{"type":"string"},"name":{"type":"string"},"portalId":{"type":"string","description":"The Portal identifier\n"},"updatedAt":{"type":"string"}},"type":"object","required":["createdAt","name","portalId","updatedAt"],"inputProperties":{"description":{"type":"string"},"name":{"type":"string"},"portalId":{"type":"string","description":"The Portal identifier\n"}},"requiredInputs":["portalId"],"stateInputs":{"description":"Input properties used for looking up and filtering PortalTeam resources.\n","properties":{"createdAt":{"type":"string"},"description":{"type":"string"},"name":{"type":"string"},"portalId":{"type":"string","description":"The Portal identifier\n"},"updatedAt":{"type":"string"}},"type":"object"}},"konnect:index/realm:Realm":{"description":"Realm Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myRealm = new konnect.Realm(\"my_realm\", {\n    allowAllControlPlanes: true,\n    allowedControlPlanes: [\"...\"],\n    consumerGroups: [\"...\"],\n    forceDestroy: \"false\",\n    name: \"...my_name...\",\n    negativeTtl: 11,\n    ttl: 15,\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_realm = konnect.Realm(\"my_realm\",\n    allow_all_control_planes=True,\n    allowed_control_planes=[\"...\"],\n    consumer_groups=[\"...\"],\n    force_destroy=\"false\",\n    name=\"...my_name...\",\n    negative_ttl=11,\n    ttl=15)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myRealm = new Konnect.Realm(\"my_realm\", new()\n    {\n        AllowAllControlPlanes = true,\n        AllowedControlPlanes = new[]\n        {\n            \"...\",\n        },\n        ConsumerGroups = new[]\n        {\n            \"...\",\n        },\n        ForceDestroy = \"false\",\n        Name = \"...my_name...\",\n        NegativeTtl = 11,\n        Ttl = 15,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewRealm(ctx, \"my_realm\", \u0026konnect.RealmArgs{\n\t\t\tAllowAllControlPlanes: pulumi.Bool(true),\n\t\t\tAllowedControlPlanes: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"...\"),\n\t\t\t},\n\t\t\tConsumerGroups: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"...\"),\n\t\t\t},\n\t\t\tForceDestroy: pulumi.String(\"false\"),\n\t\t\tName:         pulumi.String(\"...my_name...\"),\n\t\t\tNegativeTtl:  pulumi.Float64(11),\n\t\t\tTtl:          pulumi.Float64(15),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.Realm;\nimport com.pulumi.konnect.RealmArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myRealm = new Realm(\"myRealm\", RealmArgs.builder()\n            .allowAllControlPlanes(true)\n            .allowedControlPlanes(\"...\")\n            .consumerGroups(\"...\")\n            .forceDestroy(\"false\")\n            .name(\"...my_name...\")\n            .negativeTtl(11.0)\n            .ttl(15.0)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myRealm:\n    type: konnect:Realm\n    name: my_realm\n    properties:\n      allowAllControlPlanes: true\n      allowedControlPlanes:\n        - '...'\n      consumerGroups:\n        - '...'\n      forceDestroy: 'false'\n      name: '...my_name...'\n      negativeTtl: 11\n      ttl: 15\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_realm.my_konnect_realm\n\n  id = \"...\"\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/realm:Realm my_konnect_realm \"...\"\n```\n\n","properties":{"allowAllControlPlanes":{"type":"boolean","description":"Allow all control planes to use the realm. When this value is set it takes precedence on \u003cspan pulumi-lang-nodejs=\"`allowedControlPlanes`\" pulumi-lang-dotnet=\"`AllowedControlPlanes`\" pulumi-lang-go=\"`allowedControlPlanes`\" pulumi-lang-python=\"`allowed_control_planes`\" pulumi-lang-yaml=\"`allowedControlPlanes`\" pulumi-lang-java=\"`allowedControlPlanes`\"\u003e`allowed_control_planes`\u003c/span\u003e.\n"},"allowedControlPlanes":{"type":"array","items":{"type":"string"},"description":"List of control plane ids that are allowed to use the realm. This is used when \u003cspan pulumi-lang-nodejs=\"`allowAllControlPlanes`\" pulumi-lang-dotnet=\"`AllowAllControlPlanes`\" pulumi-lang-go=\"`allowAllControlPlanes`\" pulumi-lang-python=\"`allow_all_control_planes`\" pulumi-lang-yaml=\"`allowAllControlPlanes`\" pulumi-lang-java=\"`allowAllControlPlanes`\"\u003e`allow_all_control_planes`\u003c/span\u003e value\nis set to false.\n"},"consumerGroups":{"type":"array","items":{"type":"string"},"description":"A list of consumer groups to automatically add to any consumers created within this Realm.\nIf \u003cspan pulumi-lang-nodejs=\"`consumerGroups`\" pulumi-lang-dotnet=\"`ConsumerGroups`\" pulumi-lang-go=\"`consumerGroups`\" pulumi-lang-python=\"`consumer_groups`\" pulumi-lang-yaml=\"`consumerGroups`\" pulumi-lang-java=\"`consumerGroups`\"\u003e`consumer_groups`\u003c/span\u003e are provided on the Consumer object *and* on the Realm, the Consumer will be placed in all defined consumer groups.\n"},"createdAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity creation date."},"forceDestroy":{"type":"string"},"name":{"type":"string"},"negativeTtl":{"type":"number","description":"If a running Gateway triggers a lookup for a Consumer that cannot be authenticated this realm, a \u003cspan pulumi-lang-nodejs=\"`negativeTtl`\" pulumi-lang-dotnet=\"`NegativeTtl`\" pulumi-lang-go=\"`negativeTtl`\" pulumi-lang-python=\"`negative_ttl`\" pulumi-lang-yaml=\"`negativeTtl`\" pulumi-lang-java=\"`negativeTtl`\"\u003e`negative_ttl`\u003c/span\u003e\nis set. The Gateway will not try to lookup the Consumer in Konnect for \u003cspan pulumi-lang-nodejs=\"`negativeTtl`\" pulumi-lang-dotnet=\"`NegativeTtl`\" pulumi-lang-go=\"`negativeTtl`\" pulumi-lang-python=\"`negative_ttl`\" pulumi-lang-yaml=\"`negativeTtl`\" pulumi-lang-java=\"`negativeTtl`\"\u003e`negative_ttl`\u003c/span\u003e minutes.\n"},"ttl":{"type":"number","description":"The time in minutes that the Consumer will be cached in memory on a running Gateway if it is\nsuccessfully loaded from Konnect.\nDefault: 10"},"updatedAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity update date."}},"type":"object","required":["allowAllControlPlanes","allowedControlPlanes","consumerGroups","createdAt","forceDestroy","name","negativeTtl","ttl","updatedAt"],"inputProperties":{"allowAllControlPlanes":{"type":"boolean","description":"Allow all control planes to use the realm. When this value is set it takes precedence on \u003cspan pulumi-lang-nodejs=\"`allowedControlPlanes`\" pulumi-lang-dotnet=\"`AllowedControlPlanes`\" pulumi-lang-go=\"`allowedControlPlanes`\" pulumi-lang-python=\"`allowed_control_planes`\" pulumi-lang-yaml=\"`allowedControlPlanes`\" pulumi-lang-java=\"`allowedControlPlanes`\"\u003e`allowed_control_planes`\u003c/span\u003e.\n"},"allowedControlPlanes":{"type":"array","items":{"type":"string"},"description":"List of control plane ids that are allowed to use the realm. This is used when \u003cspan pulumi-lang-nodejs=\"`allowAllControlPlanes`\" pulumi-lang-dotnet=\"`AllowAllControlPlanes`\" pulumi-lang-go=\"`allowAllControlPlanes`\" pulumi-lang-python=\"`allow_all_control_planes`\" pulumi-lang-yaml=\"`allowAllControlPlanes`\" pulumi-lang-java=\"`allowAllControlPlanes`\"\u003e`allow_all_control_planes`\u003c/span\u003e value\nis set to false.\n"},"consumerGroups":{"type":"array","items":{"type":"string"},"description":"A list of consumer groups to automatically add to any consumers created within this Realm.\nIf \u003cspan pulumi-lang-nodejs=\"`consumerGroups`\" pulumi-lang-dotnet=\"`ConsumerGroups`\" pulumi-lang-go=\"`consumerGroups`\" pulumi-lang-python=\"`consumer_groups`\" pulumi-lang-yaml=\"`consumerGroups`\" pulumi-lang-java=\"`consumerGroups`\"\u003e`consumer_groups`\u003c/span\u003e are provided on the Consumer object *and* on the Realm, the Consumer will be placed in all defined consumer groups.\n"},"forceDestroy":{"type":"string"},"name":{"type":"string"},"negativeTtl":{"type":"number","description":"If a running Gateway triggers a lookup for a Consumer that cannot be authenticated this realm, a \u003cspan pulumi-lang-nodejs=\"`negativeTtl`\" pulumi-lang-dotnet=\"`NegativeTtl`\" pulumi-lang-go=\"`negativeTtl`\" pulumi-lang-python=\"`negative_ttl`\" pulumi-lang-yaml=\"`negativeTtl`\" pulumi-lang-java=\"`negativeTtl`\"\u003e`negative_ttl`\u003c/span\u003e\nis set. The Gateway will not try to lookup the Consumer in Konnect for \u003cspan pulumi-lang-nodejs=\"`negativeTtl`\" pulumi-lang-dotnet=\"`NegativeTtl`\" pulumi-lang-go=\"`negativeTtl`\" pulumi-lang-python=\"`negative_ttl`\" pulumi-lang-yaml=\"`negativeTtl`\" pulumi-lang-java=\"`negativeTtl`\"\u003e`negative_ttl`\u003c/span\u003e minutes.\n"},"ttl":{"type":"number","description":"The time in minutes that the Consumer will be cached in memory on a running Gateway if it is\nsuccessfully loaded from Konnect.\nDefault: 10"}},"stateInputs":{"description":"Input properties used for looking up and filtering Realm resources.\n","properties":{"allowAllControlPlanes":{"type":"boolean","description":"Allow all control planes to use the realm. When this value is set it takes precedence on \u003cspan pulumi-lang-nodejs=\"`allowedControlPlanes`\" pulumi-lang-dotnet=\"`AllowedControlPlanes`\" pulumi-lang-go=\"`allowedControlPlanes`\" pulumi-lang-python=\"`allowed_control_planes`\" pulumi-lang-yaml=\"`allowedControlPlanes`\" pulumi-lang-java=\"`allowedControlPlanes`\"\u003e`allowed_control_planes`\u003c/span\u003e.\n"},"allowedControlPlanes":{"type":"array","items":{"type":"string"},"description":"List of control plane ids that are allowed to use the realm. This is used when \u003cspan pulumi-lang-nodejs=\"`allowAllControlPlanes`\" pulumi-lang-dotnet=\"`AllowAllControlPlanes`\" pulumi-lang-go=\"`allowAllControlPlanes`\" pulumi-lang-python=\"`allow_all_control_planes`\" pulumi-lang-yaml=\"`allowAllControlPlanes`\" pulumi-lang-java=\"`allowAllControlPlanes`\"\u003e`allow_all_control_planes`\u003c/span\u003e value\nis set to false.\n"},"consumerGroups":{"type":"array","items":{"type":"string"},"description":"A list of consumer groups to automatically add to any consumers created within this Realm.\nIf \u003cspan pulumi-lang-nodejs=\"`consumerGroups`\" pulumi-lang-dotnet=\"`ConsumerGroups`\" pulumi-lang-go=\"`consumerGroups`\" pulumi-lang-python=\"`consumer_groups`\" pulumi-lang-yaml=\"`consumerGroups`\" pulumi-lang-java=\"`consumerGroups`\"\u003e`consumer_groups`\u003c/span\u003e are provided on the Consumer object *and* on the Realm, the Consumer will be placed in all defined consumer groups.\n"},"createdAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity creation date."},"forceDestroy":{"type":"string"},"name":{"type":"string"},"negativeTtl":{"type":"number","description":"If a running Gateway triggers a lookup for a Consumer that cannot be authenticated this realm, a \u003cspan pulumi-lang-nodejs=\"`negativeTtl`\" pulumi-lang-dotnet=\"`NegativeTtl`\" pulumi-lang-go=\"`negativeTtl`\" pulumi-lang-python=\"`negative_ttl`\" pulumi-lang-yaml=\"`negativeTtl`\" pulumi-lang-java=\"`negativeTtl`\"\u003e`negative_ttl`\u003c/span\u003e\nis set. The Gateway will not try to lookup the Consumer in Konnect for \u003cspan pulumi-lang-nodejs=\"`negativeTtl`\" pulumi-lang-dotnet=\"`NegativeTtl`\" pulumi-lang-go=\"`negativeTtl`\" pulumi-lang-python=\"`negative_ttl`\" pulumi-lang-yaml=\"`negativeTtl`\" pulumi-lang-java=\"`negativeTtl`\"\u003e`negative_ttl`\u003c/span\u003e minutes.\n"},"ttl":{"type":"number","description":"The time in minutes that the Consumer will be cached in memory on a running Gateway if it is\nsuccessfully loaded from Konnect.\nDefault: 10"},"updatedAt":{"type":"string","description":"An ISO-8601 timestamp representation of entity update date."}},"type":"object"}},"konnect:index/serverlessCloudGateway:ServerlessCloudGateway":{"description":"ServerlessCloudGateway Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myServerlesscloudgateway = new konnect.ServerlessCloudGateway(\"my_serverlesscloudgateway\", {\n    clusterCert: \"-----BEGIN CERTIFICATE----- MIICRDCCAa2gAwIBAgIBADANBgkqhkiG9w0BAQ0FADA/MQswCQYDVQQGEwJ1czEL MAkGA1UECAwCVFgxDTALBgNVBAoMBFRlc3QxFDASBgNVBAMMC2V4YW1wbGUuY29t MB4XDTI0MDQyNjA5NTA1OVoXDTI1MDQyNjA5NTA1OVowPzELMAkGA1UEBhMCdXMx CzAJBgNVBAgMAlRYMQ0wCwYDVQQKDARUZXN0MRQwEgYDVQQDDAtleGFtcGxlLmNv bTCBnzANBgkqhkiG9w0BAQEFAAOBjQAwgYkCgYEA8FaJZmPsthBT1XkTyqUJiuQV 4p4KaLpNMioNQtIdeGKFXelmZlVfW0bfLGBgFmkwo19KIzFtOlITUjb0Qqlub2Dn TIPoDs7rXA8aw6umJu73Z6647U3+alxNCpwTuYOY2CJQ+HWEIuOuwAdtQkndEp9r 7ZWA2xLatQKBYEvEmykCAwEAAaNQME4wHQYDVR0OBBYEFGUznNeZK74vlA4bqKHb 706tyMwcMB8GA1UdIwQYMBaAFGUznNeZK74vlA4bqKHb706tyMwcMAwGA1UdEwQF MAMBAf8wDQYJKoZIhvcNAQENBQADgYEARmnu/2vUcmJYLlg86MN0prXGC3CGXsem fDtPF4SBPxfchdG7HJKywTloIiCBKGEQALkCHiJcQJNcSHmzH3/Qk+SrOJNH01gt HsKA4SNFJZR5fCRpT6USCukyE2Wlr+PWPscrFCWbLXhK4Ql/t0oog1255B10HqKk 1qDkNrzCd/o= -----END CERTIFICATE-----\\n\",\n    clusterCertKey: \"-----BEGIN PRIVATE KEY----- MIICeAIBADANBgkqhkiG9w0BAQEFAASCAmIwggJeAgEAAoGBAPBWiWZj7LYQU9V5 E8qlCYrkFeKeCmi6TTIqDULSHXhihV3pZmZVX1tG3yxgYBZpMKNfSiMxbTpSE1I2 9EKpbm9g50yD6A7O61wPGsOrpibu92euuO1N/mpcTQqcE7mDmNgiUPh1hCLjrsAH bUJJ3RKfa+2VgNsS2rUCgWBLxJspAgMBAAECgYEAvA7qqozL/1ZdUu/P1cQ36E86 9L03ZeVJXFRdVgj2eGqW8vob3z00RUb6gE3VQhQDNALvDwSw9G6eoblQfgz31Hju sb+j6bGOm2BqzYrx6rpcgme7k9ScV0tEbtiBNX0E/ToHvNywHtdOBvDocN2wh42Z 6bS9um51H+SXR036mgUCQQD4T7WrJHL97Hj8TtHnTw895xWKaGn94H7ZQa2lo1nk 7CQ4Oi8rFX5tDdyV7UU6fekBWuhpmIhSGJhyHD7UThBjAkEA98ef9ey2Qx+j+R8S tgpgJAF3LVNJJicEHCS/Vltgc84X/vidVAMa2+TYPxPrrUjxBr0STCeB5wZhvvsB D8cOAwJBAJ5JqaQPUx1dDe7Ai/vooO20Dj4xu0c0QYha3sfU7qwIgDo7lO/g/ruj 93a3TscvlkXf3oHZ0ySKOzual86ciMMCQQDGOLgaWHVy+4QFTzt70I8bHuUFqKRT VlEuZqN/ZXijDFQcES5jwFwjYE8zHy+ioEDaIDXcIJsGhA98Zndx9M+bAkA4IFdx 4YIDhuk1MJAYPqVQs5szEF/0BGymLNVYlIox48bZg+TH3uXwTVRVySxvpRa8dd3O 0gHs3EIV6GFUl7ev -----END PRIVATE KEY-----\\n\",\n    controlPlane: {\n        id: \"d32d905a-ed33-46a3-a093-d8f536af9a8a\",\n        prefix: \"518da50bf7\",\n        region: \"us\",\n    },\n    labels: {\n        key: \"value\",\n    },\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_serverlesscloudgateway = konnect.ServerlessCloudGateway(\"my_serverlesscloudgateway\",\n    cluster_cert=\"-----BEGIN CERTIFICATE----- MIICRDCCAa2gAwIBAgIBADANBgkqhkiG9w0BAQ0FADA/MQswCQYDVQQGEwJ1czEL MAkGA1UECAwCVFgxDTALBgNVBAoMBFRlc3QxFDASBgNVBAMMC2V4YW1wbGUuY29t MB4XDTI0MDQyNjA5NTA1OVoXDTI1MDQyNjA5NTA1OVowPzELMAkGA1UEBhMCdXMx CzAJBgNVBAgMAlRYMQ0wCwYDVQQKDARUZXN0MRQwEgYDVQQDDAtleGFtcGxlLmNv bTCBnzANBgkqhkiG9w0BAQEFAAOBjQAwgYkCgYEA8FaJZmPsthBT1XkTyqUJiuQV 4p4KaLpNMioNQtIdeGKFXelmZlVfW0bfLGBgFmkwo19KIzFtOlITUjb0Qqlub2Dn TIPoDs7rXA8aw6umJu73Z6647U3+alxNCpwTuYOY2CJQ+HWEIuOuwAdtQkndEp9r 7ZWA2xLatQKBYEvEmykCAwEAAaNQME4wHQYDVR0OBBYEFGUznNeZK74vlA4bqKHb 706tyMwcMB8GA1UdIwQYMBaAFGUznNeZK74vlA4bqKHb706tyMwcMAwGA1UdEwQF MAMBAf8wDQYJKoZIhvcNAQENBQADgYEARmnu/2vUcmJYLlg86MN0prXGC3CGXsem fDtPF4SBPxfchdG7HJKywTloIiCBKGEQALkCHiJcQJNcSHmzH3/Qk+SrOJNH01gt HsKA4SNFJZR5fCRpT6USCukyE2Wlr+PWPscrFCWbLXhK4Ql/t0oog1255B10HqKk 1qDkNrzCd/o= -----END CERTIFICATE-----\\n\",\n    cluster_cert_key=\"-----BEGIN PRIVATE KEY----- MIICeAIBADANBgkqhkiG9w0BAQEFAASCAmIwggJeAgEAAoGBAPBWiWZj7LYQU9V5 E8qlCYrkFeKeCmi6TTIqDULSHXhihV3pZmZVX1tG3yxgYBZpMKNfSiMxbTpSE1I2 9EKpbm9g50yD6A7O61wPGsOrpibu92euuO1N/mpcTQqcE7mDmNgiUPh1hCLjrsAH bUJJ3RKfa+2VgNsS2rUCgWBLxJspAgMBAAECgYEAvA7qqozL/1ZdUu/P1cQ36E86 9L03ZeVJXFRdVgj2eGqW8vob3z00RUb6gE3VQhQDNALvDwSw9G6eoblQfgz31Hju sb+j6bGOm2BqzYrx6rpcgme7k9ScV0tEbtiBNX0E/ToHvNywHtdOBvDocN2wh42Z 6bS9um51H+SXR036mgUCQQD4T7WrJHL97Hj8TtHnTw895xWKaGn94H7ZQa2lo1nk 7CQ4Oi8rFX5tDdyV7UU6fekBWuhpmIhSGJhyHD7UThBjAkEA98ef9ey2Qx+j+R8S tgpgJAF3LVNJJicEHCS/Vltgc84X/vidVAMa2+TYPxPrrUjxBr0STCeB5wZhvvsB D8cOAwJBAJ5JqaQPUx1dDe7Ai/vooO20Dj4xu0c0QYha3sfU7qwIgDo7lO/g/ruj 93a3TscvlkXf3oHZ0ySKOzual86ciMMCQQDGOLgaWHVy+4QFTzt70I8bHuUFqKRT VlEuZqN/ZXijDFQcES5jwFwjYE8zHy+ioEDaIDXcIJsGhA98Zndx9M+bAkA4IFdx 4YIDhuk1MJAYPqVQs5szEF/0BGymLNVYlIox48bZg+TH3uXwTVRVySxvpRa8dd3O 0gHs3EIV6GFUl7ev -----END PRIVATE KEY-----\\n\",\n    control_plane={\n        \"id\": \"d32d905a-ed33-46a3-a093-d8f536af9a8a\",\n        \"prefix\": \"518da50bf7\",\n        \"region\": \"us\",\n    },\n    labels={\n        \"key\": \"value\",\n    })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myServerlesscloudgateway = new Konnect.ServerlessCloudGateway(\"my_serverlesscloudgateway\", new()\n    {\n        ClusterCert = @\"-----BEGIN CERTIFICATE----- MIICRDCCAa2gAwIBAgIBADANBgkqhkiG9w0BAQ0FADA/MQswCQYDVQQGEwJ1czEL MAkGA1UECAwCVFgxDTALBgNVBAoMBFRlc3QxFDASBgNVBAMMC2V4YW1wbGUuY29t MB4XDTI0MDQyNjA5NTA1OVoXDTI1MDQyNjA5NTA1OVowPzELMAkGA1UEBhMCdXMx CzAJBgNVBAgMAlRYMQ0wCwYDVQQKDARUZXN0MRQwEgYDVQQDDAtleGFtcGxlLmNv bTCBnzANBgkqhkiG9w0BAQEFAAOBjQAwgYkCgYEA8FaJZmPsthBT1XkTyqUJiuQV 4p4KaLpNMioNQtIdeGKFXelmZlVfW0bfLGBgFmkwo19KIzFtOlITUjb0Qqlub2Dn TIPoDs7rXA8aw6umJu73Z6647U3+alxNCpwTuYOY2CJQ+HWEIuOuwAdtQkndEp9r 7ZWA2xLatQKBYEvEmykCAwEAAaNQME4wHQYDVR0OBBYEFGUznNeZK74vlA4bqKHb 706tyMwcMB8GA1UdIwQYMBaAFGUznNeZK74vlA4bqKHb706tyMwcMAwGA1UdEwQF MAMBAf8wDQYJKoZIhvcNAQENBQADgYEARmnu/2vUcmJYLlg86MN0prXGC3CGXsem fDtPF4SBPxfchdG7HJKywTloIiCBKGEQALkCHiJcQJNcSHmzH3/Qk+SrOJNH01gt HsKA4SNFJZR5fCRpT6USCukyE2Wlr+PWPscrFCWbLXhK4Ql/t0oog1255B10HqKk 1qDkNrzCd/o= -----END CERTIFICATE-----\n\",\n        ClusterCertKey = @\"-----BEGIN PRIVATE KEY----- MIICeAIBADANBgkqhkiG9w0BAQEFAASCAmIwggJeAgEAAoGBAPBWiWZj7LYQU9V5 E8qlCYrkFeKeCmi6TTIqDULSHXhihV3pZmZVX1tG3yxgYBZpMKNfSiMxbTpSE1I2 9EKpbm9g50yD6A7O61wPGsOrpibu92euuO1N/mpcTQqcE7mDmNgiUPh1hCLjrsAH bUJJ3RKfa+2VgNsS2rUCgWBLxJspAgMBAAECgYEAvA7qqozL/1ZdUu/P1cQ36E86 9L03ZeVJXFRdVgj2eGqW8vob3z00RUb6gE3VQhQDNALvDwSw9G6eoblQfgz31Hju sb+j6bGOm2BqzYrx6rpcgme7k9ScV0tEbtiBNX0E/ToHvNywHtdOBvDocN2wh42Z 6bS9um51H+SXR036mgUCQQD4T7WrJHL97Hj8TtHnTw895xWKaGn94H7ZQa2lo1nk 7CQ4Oi8rFX5tDdyV7UU6fekBWuhpmIhSGJhyHD7UThBjAkEA98ef9ey2Qx+j+R8S tgpgJAF3LVNJJicEHCS/Vltgc84X/vidVAMa2+TYPxPrrUjxBr0STCeB5wZhvvsB D8cOAwJBAJ5JqaQPUx1dDe7Ai/vooO20Dj4xu0c0QYha3sfU7qwIgDo7lO/g/ruj 93a3TscvlkXf3oHZ0ySKOzual86ciMMCQQDGOLgaWHVy+4QFTzt70I8bHuUFqKRT VlEuZqN/ZXijDFQcES5jwFwjYE8zHy+ioEDaIDXcIJsGhA98Zndx9M+bAkA4IFdx 4YIDhuk1MJAYPqVQs5szEF/0BGymLNVYlIox48bZg+TH3uXwTVRVySxvpRa8dd3O 0gHs3EIV6GFUl7ev -----END PRIVATE KEY-----\n\",\n        ControlPlane = new Konnect.Inputs.ServerlessCloudGatewayControlPlaneArgs\n        {\n            Id = \"d32d905a-ed33-46a3-a093-d8f536af9a8a\",\n            Prefix = \"518da50bf7\",\n            Region = \"us\",\n        },\n        Labels = \n        {\n            { \"key\", \"value\" },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewServerlessCloudGateway(ctx, \"my_serverlesscloudgateway\", \u0026konnect.ServerlessCloudGatewayArgs{\n\t\t\tClusterCert:    pulumi.String(\"-----BEGIN CERTIFICATE----- MIICRDCCAa2gAwIBAgIBADANBgkqhkiG9w0BAQ0FADA/MQswCQYDVQQGEwJ1czEL MAkGA1UECAwCVFgxDTALBgNVBAoMBFRlc3QxFDASBgNVBAMMC2V4YW1wbGUuY29t MB4XDTI0MDQyNjA5NTA1OVoXDTI1MDQyNjA5NTA1OVowPzELMAkGA1UEBhMCdXMx CzAJBgNVBAgMAlRYMQ0wCwYDVQQKDARUZXN0MRQwEgYDVQQDDAtleGFtcGxlLmNv bTCBnzANBgkqhkiG9w0BAQEFAAOBjQAwgYkCgYEA8FaJZmPsthBT1XkTyqUJiuQV 4p4KaLpNMioNQtIdeGKFXelmZlVfW0bfLGBgFmkwo19KIzFtOlITUjb0Qqlub2Dn TIPoDs7rXA8aw6umJu73Z6647U3+alxNCpwTuYOY2CJQ+HWEIuOuwAdtQkndEp9r 7ZWA2xLatQKBYEvEmykCAwEAAaNQME4wHQYDVR0OBBYEFGUznNeZK74vlA4bqKHb 706tyMwcMB8GA1UdIwQYMBaAFGUznNeZK74vlA4bqKHb706tyMwcMAwGA1UdEwQF MAMBAf8wDQYJKoZIhvcNAQENBQADgYEARmnu/2vUcmJYLlg86MN0prXGC3CGXsem fDtPF4SBPxfchdG7HJKywTloIiCBKGEQALkCHiJcQJNcSHmzH3/Qk+SrOJNH01gt HsKA4SNFJZR5fCRpT6USCukyE2Wlr+PWPscrFCWbLXhK4Ql/t0oog1255B10HqKk 1qDkNrzCd/o= -----END CERTIFICATE-----\\n\"),\n\t\t\tClusterCertKey: pulumi.String(\"-----BEGIN PRIVATE KEY----- MIICeAIBADANBgkqhkiG9w0BAQEFAASCAmIwggJeAgEAAoGBAPBWiWZj7LYQU9V5 E8qlCYrkFeKeCmi6TTIqDULSHXhihV3pZmZVX1tG3yxgYBZpMKNfSiMxbTpSE1I2 9EKpbm9g50yD6A7O61wPGsOrpibu92euuO1N/mpcTQqcE7mDmNgiUPh1hCLjrsAH bUJJ3RKfa+2VgNsS2rUCgWBLxJspAgMBAAECgYEAvA7qqozL/1ZdUu/P1cQ36E86 9L03ZeVJXFRdVgj2eGqW8vob3z00RUb6gE3VQhQDNALvDwSw9G6eoblQfgz31Hju sb+j6bGOm2BqzYrx6rpcgme7k9ScV0tEbtiBNX0E/ToHvNywHtdOBvDocN2wh42Z 6bS9um51H+SXR036mgUCQQD4T7WrJHL97Hj8TtHnTw895xWKaGn94H7ZQa2lo1nk 7CQ4Oi8rFX5tDdyV7UU6fekBWuhpmIhSGJhyHD7UThBjAkEA98ef9ey2Qx+j+R8S tgpgJAF3LVNJJicEHCS/Vltgc84X/vidVAMa2+TYPxPrrUjxBr0STCeB5wZhvvsB D8cOAwJBAJ5JqaQPUx1dDe7Ai/vooO20Dj4xu0c0QYha3sfU7qwIgDo7lO/g/ruj 93a3TscvlkXf3oHZ0ySKOzual86ciMMCQQDGOLgaWHVy+4QFTzt70I8bHuUFqKRT VlEuZqN/ZXijDFQcES5jwFwjYE8zHy+ioEDaIDXcIJsGhA98Zndx9M+bAkA4IFdx 4YIDhuk1MJAYPqVQs5szEF/0BGymLNVYlIox48bZg+TH3uXwTVRVySxvpRa8dd3O 0gHs3EIV6GFUl7ev -----END PRIVATE KEY-----\\n\"),\n\t\t\tControlPlane: \u0026konnect.ServerlessCloudGatewayControlPlaneArgs{\n\t\t\t\tId:     pulumi.String(\"d32d905a-ed33-46a3-a093-d8f536af9a8a\"),\n\t\t\t\tPrefix: pulumi.String(\"518da50bf7\"),\n\t\t\t\tRegion: pulumi.String(\"us\"),\n\t\t\t},\n\t\t\tLabels: pulumi.StringMap{\n\t\t\t\t\"key\": pulumi.String(\"value\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.ServerlessCloudGateway;\nimport com.pulumi.konnect.ServerlessCloudGatewayArgs;\nimport com.pulumi.konnect.inputs.ServerlessCloudGatewayControlPlaneArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myServerlesscloudgateway = new ServerlessCloudGateway(\"myServerlesscloudgateway\", ServerlessCloudGatewayArgs.builder()\n            .clusterCert(\"\"\"\n-----BEGIN CERTIFICATE----- MIICRDCCAa2gAwIBAgIBADANBgkqhkiG9w0BAQ0FADA/MQswCQYDVQQGEwJ1czEL MAkGA1UECAwCVFgxDTALBgNVBAoMBFRlc3QxFDASBgNVBAMMC2V4YW1wbGUuY29t MB4XDTI0MDQyNjA5NTA1OVoXDTI1MDQyNjA5NTA1OVowPzELMAkGA1UEBhMCdXMx CzAJBgNVBAgMAlRYMQ0wCwYDVQQKDARUZXN0MRQwEgYDVQQDDAtleGFtcGxlLmNv bTCBnzANBgkqhkiG9w0BAQEFAAOBjQAwgYkCgYEA8FaJZmPsthBT1XkTyqUJiuQV 4p4KaLpNMioNQtIdeGKFXelmZlVfW0bfLGBgFmkwo19KIzFtOlITUjb0Qqlub2Dn TIPoDs7rXA8aw6umJu73Z6647U3+alxNCpwTuYOY2CJQ+HWEIuOuwAdtQkndEp9r 7ZWA2xLatQKBYEvEmykCAwEAAaNQME4wHQYDVR0OBBYEFGUznNeZK74vlA4bqKHb 706tyMwcMB8GA1UdIwQYMBaAFGUznNeZK74vlA4bqKHb706tyMwcMAwGA1UdEwQF MAMBAf8wDQYJKoZIhvcNAQENBQADgYEARmnu/2vUcmJYLlg86MN0prXGC3CGXsem fDtPF4SBPxfchdG7HJKywTloIiCBKGEQALkCHiJcQJNcSHmzH3/Qk+SrOJNH01gt HsKA4SNFJZR5fCRpT6USCukyE2Wlr+PWPscrFCWbLXhK4Ql/t0oog1255B10HqKk 1qDkNrzCd/o= -----END CERTIFICATE-----\n            \"\"\")\n            .clusterCertKey(\"\"\"\n-----BEGIN PRIVATE KEY----- MIICeAIBADANBgkqhkiG9w0BAQEFAASCAmIwggJeAgEAAoGBAPBWiWZj7LYQU9V5 E8qlCYrkFeKeCmi6TTIqDULSHXhihV3pZmZVX1tG3yxgYBZpMKNfSiMxbTpSE1I2 9EKpbm9g50yD6A7O61wPGsOrpibu92euuO1N/mpcTQqcE7mDmNgiUPh1hCLjrsAH bUJJ3RKfa+2VgNsS2rUCgWBLxJspAgMBAAECgYEAvA7qqozL/1ZdUu/P1cQ36E86 9L03ZeVJXFRdVgj2eGqW8vob3z00RUb6gE3VQhQDNALvDwSw9G6eoblQfgz31Hju sb+j6bGOm2BqzYrx6rpcgme7k9ScV0tEbtiBNX0E/ToHvNywHtdOBvDocN2wh42Z 6bS9um51H+SXR036mgUCQQD4T7WrJHL97Hj8TtHnTw895xWKaGn94H7ZQa2lo1nk 7CQ4Oi8rFX5tDdyV7UU6fekBWuhpmIhSGJhyHD7UThBjAkEA98ef9ey2Qx+j+R8S tgpgJAF3LVNJJicEHCS/Vltgc84X/vidVAMa2+TYPxPrrUjxBr0STCeB5wZhvvsB D8cOAwJBAJ5JqaQPUx1dDe7Ai/vooO20Dj4xu0c0QYha3sfU7qwIgDo7lO/g/ruj 93a3TscvlkXf3oHZ0ySKOzual86ciMMCQQDGOLgaWHVy+4QFTzt70I8bHuUFqKRT VlEuZqN/ZXijDFQcES5jwFwjYE8zHy+ioEDaIDXcIJsGhA98Zndx9M+bAkA4IFdx 4YIDhuk1MJAYPqVQs5szEF/0BGymLNVYlIox48bZg+TH3uXwTVRVySxvpRa8dd3O 0gHs3EIV6GFUl7ev -----END PRIVATE KEY-----\n            \"\"\")\n            .controlPlane(ServerlessCloudGatewayControlPlaneArgs.builder()\n                .id(\"d32d905a-ed33-46a3-a093-d8f536af9a8a\")\n                .prefix(\"518da50bf7\")\n                .region(\"us\")\n                .build())\n            .labels(Map.of(\"key\", \"value\"))\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myServerlesscloudgateway:\n    type: konnect:ServerlessCloudGateway\n    name: my_serverlesscloudgateway\n    properties:\n      clusterCert: |\n        -----BEGIN CERTIFICATE----- MIICRDCCAa2gAwIBAgIBADANBgkqhkiG9w0BAQ0FADA/MQswCQYDVQQGEwJ1czEL MAkGA1UECAwCVFgxDTALBgNVBAoMBFRlc3QxFDASBgNVBAMMC2V4YW1wbGUuY29t MB4XDTI0MDQyNjA5NTA1OVoXDTI1MDQyNjA5NTA1OVowPzELMAkGA1UEBhMCdXMx CzAJBgNVBAgMAlRYMQ0wCwYDVQQKDARUZXN0MRQwEgYDVQQDDAtleGFtcGxlLmNv bTCBnzANBgkqhkiG9w0BAQEFAAOBjQAwgYkCgYEA8FaJZmPsthBT1XkTyqUJiuQV 4p4KaLpNMioNQtIdeGKFXelmZlVfW0bfLGBgFmkwo19KIzFtOlITUjb0Qqlub2Dn TIPoDs7rXA8aw6umJu73Z6647U3+alxNCpwTuYOY2CJQ+HWEIuOuwAdtQkndEp9r 7ZWA2xLatQKBYEvEmykCAwEAAaNQME4wHQYDVR0OBBYEFGUznNeZK74vlA4bqKHb 706tyMwcMB8GA1UdIwQYMBaAFGUznNeZK74vlA4bqKHb706tyMwcMAwGA1UdEwQF MAMBAf8wDQYJKoZIhvcNAQENBQADgYEARmnu/2vUcmJYLlg86MN0prXGC3CGXsem fDtPF4SBPxfchdG7HJKywTloIiCBKGEQALkCHiJcQJNcSHmzH3/Qk+SrOJNH01gt HsKA4SNFJZR5fCRpT6USCukyE2Wlr+PWPscrFCWbLXhK4Ql/t0oog1255B10HqKk 1qDkNrzCd/o= -----END CERTIFICATE-----\n      clusterCertKey: |\n        -----BEGIN PRIVATE KEY----- MIICeAIBADANBgkqhkiG9w0BAQEFAASCAmIwggJeAgEAAoGBAPBWiWZj7LYQU9V5 E8qlCYrkFeKeCmi6TTIqDULSHXhihV3pZmZVX1tG3yxgYBZpMKNfSiMxbTpSE1I2 9EKpbm9g50yD6A7O61wPGsOrpibu92euuO1N/mpcTQqcE7mDmNgiUPh1hCLjrsAH bUJJ3RKfa+2VgNsS2rUCgWBLxJspAgMBAAECgYEAvA7qqozL/1ZdUu/P1cQ36E86 9L03ZeVJXFRdVgj2eGqW8vob3z00RUb6gE3VQhQDNALvDwSw9G6eoblQfgz31Hju sb+j6bGOm2BqzYrx6rpcgme7k9ScV0tEbtiBNX0E/ToHvNywHtdOBvDocN2wh42Z 6bS9um51H+SXR036mgUCQQD4T7WrJHL97Hj8TtHnTw895xWKaGn94H7ZQa2lo1nk 7CQ4Oi8rFX5tDdyV7UU6fekBWuhpmIhSGJhyHD7UThBjAkEA98ef9ey2Qx+j+R8S tgpgJAF3LVNJJicEHCS/Vltgc84X/vidVAMa2+TYPxPrrUjxBr0STCeB5wZhvvsB D8cOAwJBAJ5JqaQPUx1dDe7Ai/vooO20Dj4xu0c0QYha3sfU7qwIgDo7lO/g/ruj 93a3TscvlkXf3oHZ0ySKOzual86ciMMCQQDGOLgaWHVy+4QFTzt70I8bHuUFqKRT VlEuZqN/ZXijDFQcES5jwFwjYE8zHy+ioEDaIDXcIJsGhA98Zndx9M+bAkA4IFdx 4YIDhuk1MJAYPqVQs5szEF/0BGymLNVYlIox48bZg+TH3uXwTVRVySxvpRa8dd3O 0gHs3EIV6GFUl7ev -----END PRIVATE KEY-----\n      controlPlane:\n        id: d32d905a-ed33-46a3-a093-d8f536af9a8a\n        prefix: 518da50bf7\n        region: us\n      labels:\n        key: value\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_serverless_cloud_gateway.my_konnect_serverless_cloud_gateway\n\n  id = \"d32d905a-ed33-46a3-a093-d8f536af9a8a\"\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/serverlessCloudGateway:ServerlessCloudGateway my_konnect_serverless_cloud_gateway \"d32d905a-ed33-46a3-a093-d8f536af9a8a\"\n```\n\n","properties":{"clusterCert":{"type":"string","description":"The cluster certificate (public key). Requires replacement if changed.\n"},"clusterCertKey":{"type":"string","description":"The cluster certificate key (private key). Requires replacement if changed.\n","secret":true},"controlPlane":{"$ref":"#/types/konnect:index%2FServerlessCloudGatewayControlPlane:ServerlessCloudGatewayControlPlane","description":"Requires replacement if changed.\n"},"createdAt":{"type":"string"},"gatewayEndpoint":{"type":"string","description":"Endpoint for the serverless cloud gateway.\n"},"labels":{"type":"object","additionalProperties":{"type":"string"},"description":"Labels to facilitate tagged search on serverless cloud gateways. Keys must be of length 1-63 characters, and cannot start with 'kong', 'konnect', 'mesh', 'kic', or '_'. Requires replacement if changed.\n"},"updatedAt":{"type":"string"}},"type":"object","required":["clusterCert","clusterCertKey","controlPlane","createdAt","gatewayEndpoint","labels","updatedAt"],"inputProperties":{"clusterCert":{"type":"string","description":"The cluster certificate (public key). Requires replacement if changed.\n"},"clusterCertKey":{"type":"string","description":"The cluster certificate key (private key). Requires replacement if changed.\n","secret":true},"controlPlane":{"$ref":"#/types/konnect:index%2FServerlessCloudGatewayControlPlane:ServerlessCloudGatewayControlPlane","description":"Requires replacement if changed.\n"},"labels":{"type":"object","additionalProperties":{"type":"string"},"description":"Labels to facilitate tagged search on serverless cloud gateways. Keys must be of length 1-63 characters, and cannot start with 'kong', 'konnect', 'mesh', 'kic', or '_'. Requires replacement if changed.\n"}},"requiredInputs":["clusterCert","clusterCertKey","controlPlane"],"stateInputs":{"description":"Input properties used for looking up and filtering ServerlessCloudGateway resources.\n","properties":{"clusterCert":{"type":"string","description":"The cluster certificate (public key). Requires replacement if changed.\n"},"clusterCertKey":{"type":"string","description":"The cluster certificate key (private key). Requires replacement if changed.\n","secret":true},"controlPlane":{"$ref":"#/types/konnect:index%2FServerlessCloudGatewayControlPlane:ServerlessCloudGatewayControlPlane","description":"Requires replacement if changed.\n"},"createdAt":{"type":"string"},"gatewayEndpoint":{"type":"string","description":"Endpoint for the serverless cloud gateway.\n"},"labels":{"type":"object","additionalProperties":{"type":"string"},"description":"Labels to facilitate tagged search on serverless cloud gateways. Keys must be of length 1-63 characters, and cannot start with 'kong', 'konnect', 'mesh', 'kic', or '_'. Requires replacement if changed.\n"},"updatedAt":{"type":"string"}},"type":"object"}},"konnect:index/systemAccount:SystemAccount":{"description":"SystemAccount Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst mySystemaccount = new konnect.SystemAccount(\"my_systemaccount\", {\n    description: \"...my_description...\",\n    konnectManaged: false,\n    name: \"...my_name...\",\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_systemaccount = konnect.SystemAccount(\"my_systemaccount\",\n    description=\"...my_description...\",\n    konnect_managed=False,\n    name=\"...my_name...\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var mySystemaccount = new Konnect.SystemAccount(\"my_systemaccount\", new()\n    {\n        Description = \"...my_description...\",\n        KonnectManaged = false,\n        Name = \"...my_name...\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewSystemAccount(ctx, \"my_systemaccount\", \u0026konnect.SystemAccountArgs{\n\t\t\tDescription:    pulumi.String(\"...my_description...\"),\n\t\t\tKonnectManaged: pulumi.Bool(false),\n\t\t\tName:           pulumi.String(\"...my_name...\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.SystemAccount;\nimport com.pulumi.konnect.SystemAccountArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var mySystemaccount = new SystemAccount(\"mySystemaccount\", SystemAccountArgs.builder()\n            .description(\"...my_description...\")\n            .konnectManaged(false)\n            .name(\"...my_name...\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  mySystemaccount:\n    type: konnect:SystemAccount\n    name: my_systemaccount\n    properties:\n      description: '...my_description...'\n      konnectManaged: false\n      name: '...my_name...'\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_system_account.my_konnect_system_account\n\n  id = \"...\"\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/systemAccount:SystemAccount my_konnect_system_account \"...\"\n```\n\n","properties":{"createdAt":{"type":"string","description":"Timestamp of when the system account was created.\n"},"description":{"type":"string","description":"Description of the system account. Useful when the system account name is not sufficient to differentiate one system account from another.\n"},"konnectManaged":{"type":"boolean","description":"The system account is managed by Konnect (true/false). Requires replacement if changed.\n"},"name":{"type":"string","description":"Name of the system account.\n"},"updatedAt":{"type":"string","description":"Timestamp of when the system account was last updated.\n"}},"type":"object","required":["createdAt","description","name","updatedAt"],"inputProperties":{"description":{"type":"string","description":"Description of the system account. Useful when the system account name is not sufficient to differentiate one system account from another.\n"},"konnectManaged":{"type":"boolean","description":"The system account is managed by Konnect (true/false). Requires replacement if changed.\n"},"name":{"type":"string","description":"Name of the system account.\n"}},"requiredInputs":["description"],"stateInputs":{"description":"Input properties used for looking up and filtering SystemAccount resources.\n","properties":{"createdAt":{"type":"string","description":"Timestamp of when the system account was created.\n"},"description":{"type":"string","description":"Description of the system account. Useful when the system account name is not sufficient to differentiate one system account from another.\n"},"konnectManaged":{"type":"boolean","description":"The system account is managed by Konnect (true/false). Requires replacement if changed.\n"},"name":{"type":"string","description":"Name of the system account.\n"},"updatedAt":{"type":"string","description":"Timestamp of when the system account was last updated.\n"}},"type":"object"}},"konnect:index/systemAccountAccessToken:SystemAccountAccessToken":{"description":"SystemAccountAccessToken Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst mySystemaccountaccesstoken = new konnect.SystemAccountAccessToken(\"my_systemaccountaccesstoken\", {\n    accountId: \"...my_account_id...\",\n    expiresAt: \"2022-08-24T03:41:29.965Z\",\n    name: \"...my_name...\",\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_systemaccountaccesstoken = konnect.SystemAccountAccessToken(\"my_systemaccountaccesstoken\",\n    account_id=\"...my_account_id...\",\n    expires_at=\"2022-08-24T03:41:29.965Z\",\n    name=\"...my_name...\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var mySystemaccountaccesstoken = new Konnect.SystemAccountAccessToken(\"my_systemaccountaccesstoken\", new()\n    {\n        AccountId = \"...my_account_id...\",\n        ExpiresAt = \"2022-08-24T03:41:29.965Z\",\n        Name = \"...my_name...\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewSystemAccountAccessToken(ctx, \"my_systemaccountaccesstoken\", \u0026konnect.SystemAccountAccessTokenArgs{\n\t\t\tAccountId: pulumi.String(\"...my_account_id...\"),\n\t\t\tExpiresAt: pulumi.String(\"2022-08-24T03:41:29.965Z\"),\n\t\t\tName:      pulumi.String(\"...my_name...\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.SystemAccountAccessToken;\nimport com.pulumi.konnect.SystemAccountAccessTokenArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var mySystemaccountaccesstoken = new SystemAccountAccessToken(\"mySystemaccountaccesstoken\", SystemAccountAccessTokenArgs.builder()\n            .accountId(\"...my_account_id...\")\n            .expiresAt(\"2022-08-24T03:41:29.965Z\")\n            .name(\"...my_name...\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  mySystemaccountaccesstoken:\n    type: konnect:SystemAccountAccessToken\n    name: my_systemaccountaccesstoken\n    properties:\n      accountId: '...my_account_id...'\n      expiresAt: 2022-08-24T03:41:29.965Z\n      name: '...my_name...'\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_system_account_access_token.my_konnect_system_account_access_token\n\n  id = jsonencode({\n\n    account_id = \"...\"\n\n    id = \"...\"\n\n  })\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/systemAccountAccessToken:SystemAccountAccessToken my_konnect_system_account_access_token '{\"account_id\": \"...\", \"id\": \"...\"}'\n```\n\n","properties":{"accountId":{"type":"string","description":"ID of the system account.\n"},"createdAt":{"type":"string","description":"Timestamp of when the system account access token was created.\n"},"expiresAt":{"type":"string","description":"Timestamp of when the system account access token will expire. Requires replacement if changed.\n"},"lastUsedAt":{"type":"string","description":"Timestamp of when the system account access token was last used.\n"},"name":{"type":"string","description":"Name of the system account access token.\n"},"token":{"type":"string","description":"The token of the system account access token.\n","secret":true},"updatedAt":{"type":"string","description":"Timestamp of when the system account access token was last updated.\n"}},"type":"object","required":["accountId","createdAt","expiresAt","lastUsedAt","name","token","updatedAt"],"inputProperties":{"accountId":{"type":"string","description":"ID of the system account.\n"},"expiresAt":{"type":"string","description":"Timestamp of when the system account access token will expire. Requires replacement if changed.\n"},"name":{"type":"string","description":"Name of the system account access token.\n"}},"requiredInputs":["accountId","expiresAt"],"stateInputs":{"description":"Input properties used for looking up and filtering SystemAccountAccessToken resources.\n","properties":{"accountId":{"type":"string","description":"ID of the system account.\n"},"createdAt":{"type":"string","description":"Timestamp of when the system account access token was created.\n"},"expiresAt":{"type":"string","description":"Timestamp of when the system account access token will expire. Requires replacement if changed.\n"},"lastUsedAt":{"type":"string","description":"Timestamp of when the system account access token was last used.\n"},"name":{"type":"string","description":"Name of the system account access token.\n"},"token":{"type":"string","description":"The token of the system account access token.\n","secret":true},"updatedAt":{"type":"string","description":"Timestamp of when the system account access token was last updated.\n"}},"type":"object"}},"konnect:index/systemAccountRole:SystemAccountRole":{"description":"SystemAccountRole Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst mySystemaccountrole = new konnect.SystemAccountRole(\"my_systemaccountrole\", {\n    accountId: \"...my_account_id...\",\n    entityId: \"e67490ce-44dc-4cbd-b65e-b52c746fc26a\",\n    entityRegion: \"eu\",\n    entityTypeName: \"Control Planes\",\n    roleName: \"Viewer\",\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_systemaccountrole = konnect.SystemAccountRole(\"my_systemaccountrole\",\n    account_id=\"...my_account_id...\",\n    entity_id=\"e67490ce-44dc-4cbd-b65e-b52c746fc26a\",\n    entity_region=\"eu\",\n    entity_type_name=\"Control Planes\",\n    role_name=\"Viewer\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var mySystemaccountrole = new Konnect.SystemAccountRole(\"my_systemaccountrole\", new()\n    {\n        AccountId = \"...my_account_id...\",\n        EntityId = \"e67490ce-44dc-4cbd-b65e-b52c746fc26a\",\n        EntityRegion = \"eu\",\n        EntityTypeName = \"Control Planes\",\n        RoleName = \"Viewer\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewSystemAccountRole(ctx, \"my_systemaccountrole\", \u0026konnect.SystemAccountRoleArgs{\n\t\t\tAccountId:      pulumi.String(\"...my_account_id...\"),\n\t\t\tEntityId:       pulumi.String(\"e67490ce-44dc-4cbd-b65e-b52c746fc26a\"),\n\t\t\tEntityRegion:   pulumi.String(\"eu\"),\n\t\t\tEntityTypeName: pulumi.String(\"Control Planes\"),\n\t\t\tRoleName:       pulumi.String(\"Viewer\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.SystemAccountRole;\nimport com.pulumi.konnect.SystemAccountRoleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var mySystemaccountrole = new SystemAccountRole(\"mySystemaccountrole\", SystemAccountRoleArgs.builder()\n            .accountId(\"...my_account_id...\")\n            .entityId(\"e67490ce-44dc-4cbd-b65e-b52c746fc26a\")\n            .entityRegion(\"eu\")\n            .entityTypeName(\"Control Planes\")\n            .roleName(\"Viewer\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  mySystemaccountrole:\n    type: konnect:SystemAccountRole\n    name: my_systemaccountrole\n    properties:\n      accountId: '...my_account_id...'\n      entityId: e67490ce-44dc-4cbd-b65e-b52c746fc26a\n      entityRegion: eu\n      entityTypeName: Control Planes\n      roleName: Viewer\n```\n\u003c!--End PulumiCodeChooser --\u003e\n","properties":{"accountId":{"type":"string","description":"ID of the system account. Requires replacement if changed.\n"},"entityId":{"type":"string","description":"The ID of the entity. Requires replacement if changed.\n"},"entityRegion":{"type":"string","description":"Region of the team. must be one of [\"us\", \"eu\", \"au\", \"me\", \"in\", \"sg\", \"*\"]; Requires replacement if changed.\n"},"entityTypeName":{"type":"string","description":"The type of entity. must be one of [\"APIs\", \"API Products\", \"Application Auth Strategies\", \"Audit Logs\", \"Control Planes\", \"Dashboards\", \"DCR Providers\", \"Identity\", \"Mesh Control Planes\", \"Networks\", \"Portals\", \"Reports\", \"Service Hub\"]; Requires replacement if changed.\n"},"roleName":{"type":"string","description":"The desired role. must be one of [\"Admin\", \"Appearance Maintainer\", \"Application Registration\", \"Certificate Admin\", \"Cloud Gateway Cluster Admin\", \"Cloud Gateway Cluster Viewer\", \"Consumer Admin\", \"Connector\", \"Creator\", \"Deployer\", \"Discovery Admin\", \"Discovery Viewer\", \"Editor\", \"Gateway Service Admin\", \"Integration Admin\", \"Integration Viewer\", \"Key Admin\", \"Maintainer\", \"Network Admin\", \"Network Creator\", \"Network Viewer\", \"Plugin Admin\", \"Plugins Admin\", \"Product Publisher\", \"Publisher\", \"Route Admin\", \"SNI Admin\", \"Scorecard Admin\", \"Scorecard Viewer\", \"Service Admin\", \"Service Creator\", \"Service Viewer\", \"Upstream Admin\", \"Vault Admin\", \"Viewer\"]; Requires replacement if changed.\n"}},"type":"object","required":["accountId","entityRegion"],"inputProperties":{"accountId":{"type":"string","description":"ID of the system account. Requires replacement if changed.\n"},"entityId":{"type":"string","description":"The ID of the entity. Requires replacement if changed.\n"},"entityRegion":{"type":"string","description":"Region of the team. must be one of [\"us\", \"eu\", \"au\", \"me\", \"in\", \"sg\", \"*\"]; Requires replacement if changed.\n"},"entityTypeName":{"type":"string","description":"The type of entity. must be one of [\"APIs\", \"API Products\", \"Application Auth Strategies\", \"Audit Logs\", \"Control Planes\", \"Dashboards\", \"DCR Providers\", \"Identity\", \"Mesh Control Planes\", \"Networks\", \"Portals\", \"Reports\", \"Service Hub\"]; Requires replacement if changed.\n"},"roleName":{"type":"string","description":"The desired role. must be one of [\"Admin\", \"Appearance Maintainer\", \"Application Registration\", \"Certificate Admin\", \"Cloud Gateway Cluster Admin\", \"Cloud Gateway Cluster Viewer\", \"Consumer Admin\", \"Connector\", \"Creator\", \"Deployer\", \"Discovery Admin\", \"Discovery Viewer\", \"Editor\", \"Gateway Service Admin\", \"Integration Admin\", \"Integration Viewer\", \"Key Admin\", \"Maintainer\", \"Network Admin\", \"Network Creator\", \"Network Viewer\", \"Plugin Admin\", \"Plugins Admin\", \"Product Publisher\", \"Publisher\", \"Route Admin\", \"SNI Admin\", \"Scorecard Admin\", \"Scorecard Viewer\", \"Service Admin\", \"Service Creator\", \"Service Viewer\", \"Upstream Admin\", \"Vault Admin\", \"Viewer\"]; Requires replacement if changed.\n"}},"requiredInputs":["accountId"],"stateInputs":{"description":"Input properties used for looking up and filtering SystemAccountRole resources.\n","properties":{"accountId":{"type":"string","description":"ID of the system account. Requires replacement if changed.\n"},"entityId":{"type":"string","description":"The ID of the entity. Requires replacement if changed.\n"},"entityRegion":{"type":"string","description":"Region of the team. must be one of [\"us\", \"eu\", \"au\", \"me\", \"in\", \"sg\", \"*\"]; Requires replacement if changed.\n"},"entityTypeName":{"type":"string","description":"The type of entity. must be one of [\"APIs\", \"API Products\", \"Application Auth Strategies\", \"Audit Logs\", \"Control Planes\", \"Dashboards\", \"DCR Providers\", \"Identity\", \"Mesh Control Planes\", \"Networks\", \"Portals\", \"Reports\", \"Service Hub\"]; Requires replacement if changed.\n"},"roleName":{"type":"string","description":"The desired role. must be one of [\"Admin\", \"Appearance Maintainer\", \"Application Registration\", \"Certificate Admin\", \"Cloud Gateway Cluster Admin\", \"Cloud Gateway Cluster Viewer\", \"Consumer Admin\", \"Connector\", \"Creator\", \"Deployer\", \"Discovery Admin\", \"Discovery Viewer\", \"Editor\", \"Gateway Service Admin\", \"Integration Admin\", \"Integration Viewer\", \"Key Admin\", \"Maintainer\", \"Network Admin\", \"Network Creator\", \"Network Viewer\", \"Plugin Admin\", \"Plugins Admin\", \"Product Publisher\", \"Publisher\", \"Route Admin\", \"SNI Admin\", \"Scorecard Admin\", \"Scorecard Viewer\", \"Service Admin\", \"Service Creator\", \"Service Viewer\", \"Upstream Admin\", \"Vault Admin\", \"Viewer\"]; Requires replacement if changed.\n"}},"type":"object"}},"konnect:index/systemAccountTeam:SystemAccountTeam":{"description":"SystemAccountTeam Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst mySystemaccountteam = new konnect.SystemAccountTeam(\"my_systemaccountteam\", {\n    accountId: \"c4b96f55-77c4-4232-b713-71c27e575e9a\",\n    teamId: \"...my_team_id...\",\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_systemaccountteam = konnect.SystemAccountTeam(\"my_systemaccountteam\",\n    account_id=\"c4b96f55-77c4-4232-b713-71c27e575e9a\",\n    team_id=\"...my_team_id...\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var mySystemaccountteam = new Konnect.SystemAccountTeam(\"my_systemaccountteam\", new()\n    {\n        AccountId = \"c4b96f55-77c4-4232-b713-71c27e575e9a\",\n        TeamId = \"...my_team_id...\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewSystemAccountTeam(ctx, \"my_systemaccountteam\", \u0026konnect.SystemAccountTeamArgs{\n\t\t\tAccountId: pulumi.String(\"c4b96f55-77c4-4232-b713-71c27e575e9a\"),\n\t\t\tTeamId:    pulumi.String(\"...my_team_id...\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.SystemAccountTeam;\nimport com.pulumi.konnect.SystemAccountTeamArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var mySystemaccountteam = new SystemAccountTeam(\"mySystemaccountteam\", SystemAccountTeamArgs.builder()\n            .accountId(\"c4b96f55-77c4-4232-b713-71c27e575e9a\")\n            .teamId(\"...my_team_id...\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  mySystemaccountteam:\n    type: konnect:SystemAccountTeam\n    name: my_systemaccountteam\n    properties:\n      accountId: c4b96f55-77c4-4232-b713-71c27e575e9a\n      teamId: '...my_team_id...'\n```\n\u003c!--End PulumiCodeChooser --\u003e\n","properties":{"accountId":{"type":"string","description":"ID of the system account. Requires replacement if changed.\n"},"teamId":{"type":"string","description":"ID of the team. Requires replacement if changed.\n"}},"type":"object","required":["teamId"],"inputProperties":{"accountId":{"type":"string","description":"ID of the system account. Requires replacement if changed.\n"},"teamId":{"type":"string","description":"ID of the team. Requires replacement if changed.\n"}},"requiredInputs":["teamId"],"stateInputs":{"description":"Input properties used for looking up and filtering SystemAccountTeam resources.\n","properties":{"accountId":{"type":"string","description":"ID of the system account. Requires replacement if changed.\n"},"teamId":{"type":"string","description":"ID of the team. Requires replacement if changed.\n"}},"type":"object"}},"konnect:index/team:Team":{"description":"Team Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myTeam = new konnect.Team(\"my_team\", {\n    description: \"The Identity Management (IDM) team.\",\n    labels: {\n        key: \"value\",\n    },\n    name: \"IDM - Developers\",\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_team = konnect.Team(\"my_team\",\n    description=\"The Identity Management (IDM) team.\",\n    labels={\n        \"key\": \"value\",\n    },\n    name=\"IDM - Developers\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myTeam = new Konnect.Team(\"my_team\", new()\n    {\n        Description = \"The Identity Management (IDM) team.\",\n        Labels = \n        {\n            { \"key\", \"value\" },\n        },\n        Name = \"IDM - Developers\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewTeam(ctx, \"my_team\", \u0026konnect.TeamArgs{\n\t\t\tDescription: pulumi.String(\"The Identity Management (IDM) team.\"),\n\t\t\tLabels: pulumi.StringMap{\n\t\t\t\t\"key\": pulumi.String(\"value\"),\n\t\t\t},\n\t\t\tName: pulumi.String(\"IDM - Developers\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.Team;\nimport com.pulumi.konnect.TeamArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myTeam = new Team(\"myTeam\", TeamArgs.builder()\n            .description(\"The Identity Management (IDM) team.\")\n            .labels(Map.of(\"key\", \"value\"))\n            .name(\"IDM - Developers\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myTeam:\n    type: konnect:Team\n    name: my_team\n    properties:\n      description: The Identity Management (IDM) team.\n      labels:\n        key: value\n      name: IDM - Developers\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Import\n\nIn Terraform v1.5.0 and later, the `import` block can be used with the `id` attribute, for example:\n\nterraform\n\nimport {\n\n  to = konnect_team.my_konnect_team\n\n  id = \"7f9fd312-a987-4628-b4c5-bb4f4fddd5f7\"\n\n}\n\nThe `pulumi import` command can be used, for example:\n\n```sh\n$ pulumi import konnect:index/team:Team my_konnect_team \"7f9fd312-a987-4628-b4c5-bb4f4fddd5f7\"\n```\n\n","properties":{"createdAt":{"type":"string","description":"A Unix timestamp representation of team creation."},"description":{"type":"string","description":"The description of the new team.\n"},"labels":{"type":"object","additionalProperties":{"type":"string"},"description":"Labels store metadata of an entity that can be used for filtering an entity list or for searching across entity types.\n"},"name":{"type":"string","description":"A name for the team being created.\n"},"systemTeam":{"type":"boolean","description":"Returns True if a user belongs to a \u003cspan pulumi-lang-nodejs=\"`systemTeam`\" pulumi-lang-dotnet=\"`SystemTeam`\" pulumi-lang-go=\"`systemTeam`\" pulumi-lang-python=\"`system_team`\" pulumi-lang-yaml=\"`systemTeam`\" pulumi-lang-java=\"`systemTeam`\"\u003e`system_team`\u003c/span\u003e. System teams are teams that can manage Konnect objects, like \"Organization Admin\", or \"Service\". Default: false"},"updatedAt":{"type":"string","description":"A Unix timestamp representation of the most recent change to the team object in Konnect."}},"type":"object","required":["createdAt","labels","name","systemTeam","updatedAt"],"inputProperties":{"description":{"type":"string","description":"The description of the new team.\n"},"labels":{"type":"object","additionalProperties":{"type":"string"},"description":"Labels store metadata of an entity that can be used for filtering an entity list or for searching across entity types.\n"},"name":{"type":"string","description":"A name for the team being created.\n"}},"stateInputs":{"description":"Input properties used for looking up and filtering Team resources.\n","properties":{"createdAt":{"type":"string","description":"A Unix timestamp representation of team creation."},"description":{"type":"string","description":"The description of the new team.\n"},"labels":{"type":"object","additionalProperties":{"type":"string"},"description":"Labels store metadata of an entity that can be used for filtering an entity list or for searching across entity types.\n"},"name":{"type":"string","description":"A name for the team being created.\n"},"systemTeam":{"type":"boolean","description":"Returns True if a user belongs to a \u003cspan pulumi-lang-nodejs=\"`systemTeam`\" pulumi-lang-dotnet=\"`SystemTeam`\" pulumi-lang-go=\"`systemTeam`\" pulumi-lang-python=\"`system_team`\" pulumi-lang-yaml=\"`systemTeam`\" pulumi-lang-java=\"`systemTeam`\"\u003e`system_team`\u003c/span\u003e. System teams are teams that can manage Konnect objects, like \"Organization Admin\", or \"Service\". Default: false"},"updatedAt":{"type":"string","description":"A Unix timestamp representation of the most recent change to the team object in Konnect."}},"type":"object"}},"konnect:index/teamRole:TeamRole":{"description":"TeamRole Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myTeamrole = new konnect.TeamRole(\"my_teamrole\", {\n    entityId: \"e67490ce-44dc-4cbd-b65e-b52c746fc26a\",\n    entityRegion: \"eu\",\n    entityTypeName: \"Control Planes\",\n    roleName: \"Viewer\",\n    teamId: \"e81bc3e5-e9db-4764-b7dd-e81e39072cbe\",\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_teamrole = konnect.TeamRole(\"my_teamrole\",\n    entity_id=\"e67490ce-44dc-4cbd-b65e-b52c746fc26a\",\n    entity_region=\"eu\",\n    entity_type_name=\"Control Planes\",\n    role_name=\"Viewer\",\n    team_id=\"e81bc3e5-e9db-4764-b7dd-e81e39072cbe\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myTeamrole = new Konnect.TeamRole(\"my_teamrole\", new()\n    {\n        EntityId = \"e67490ce-44dc-4cbd-b65e-b52c746fc26a\",\n        EntityRegion = \"eu\",\n        EntityTypeName = \"Control Planes\",\n        RoleName = \"Viewer\",\n        TeamId = \"e81bc3e5-e9db-4764-b7dd-e81e39072cbe\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewTeamRole(ctx, \"my_teamrole\", \u0026konnect.TeamRoleArgs{\n\t\t\tEntityId:       pulumi.String(\"e67490ce-44dc-4cbd-b65e-b52c746fc26a\"),\n\t\t\tEntityRegion:   pulumi.String(\"eu\"),\n\t\t\tEntityTypeName: pulumi.String(\"Control Planes\"),\n\t\t\tRoleName:       pulumi.String(\"Viewer\"),\n\t\t\tTeamId:         pulumi.String(\"e81bc3e5-e9db-4764-b7dd-e81e39072cbe\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.TeamRole;\nimport com.pulumi.konnect.TeamRoleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myTeamrole = new TeamRole(\"myTeamrole\", TeamRoleArgs.builder()\n            .entityId(\"e67490ce-44dc-4cbd-b65e-b52c746fc26a\")\n            .entityRegion(\"eu\")\n            .entityTypeName(\"Control Planes\")\n            .roleName(\"Viewer\")\n            .teamId(\"e81bc3e5-e9db-4764-b7dd-e81e39072cbe\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myTeamrole:\n    type: konnect:TeamRole\n    name: my_teamrole\n    properties:\n      entityId: e67490ce-44dc-4cbd-b65e-b52c746fc26a\n      entityRegion: eu\n      entityTypeName: Control Planes\n      roleName: Viewer\n      teamId: e81bc3e5-e9db-4764-b7dd-e81e39072cbe\n```\n\u003c!--End PulumiCodeChooser --\u003e\n","properties":{"entityId":{"type":"string","description":"The ID of the entity. Requires replacement if changed.\n"},"entityRegion":{"type":"string","description":"Region of the team. must be one of [\"us\", \"eu\", \"au\", \"me\", \"in\", \"sg\", \"*\"]; Requires replacement if changed.\n"},"entityTypeName":{"type":"string","description":"The type of entity. must be one of [\"APIs\", \"API Products\", \"Application Auth Strategies\", \"Audit Logs\", \"Control Planes\", \"Dashboards\", \"DCR Providers\", \"Identity\", \"Mesh Control Planes\", \"Networks\", \"Portals\", \"Reports\", \"Service Hub\"]; Requires replacement if changed.\n"},"roleName":{"type":"string","description":"The desired role. must be one of [\"Admin\", \"Appearance Maintainer\", \"Application Registration\", \"Certificate Admin\", \"Cloud Gateway Cluster Admin\", \"Cloud Gateway Cluster Viewer\", \"Consumer Admin\", \"Connector\", \"Creator\", \"Deployer\", \"Discovery Admin\", \"Discovery Viewer\", \"Editor\", \"Gateway Service Admin\", \"Integration Admin\", \"Integration Viewer\", \"Key Admin\", \"Maintainer\", \"Network Admin\", \"Network Creator\", \"Network Viewer\", \"Plugin Admin\", \"Plugins Admin\", \"Product Publisher\", \"Publisher\", \"Route Admin\", \"SNI Admin\", \"Scorecard Admin\", \"Scorecard Viewer\", \"Service Admin\", \"Service Creator\", \"Service Viewer\", \"Upstream Admin\", \"Vault Admin\", \"Viewer\"]; Requires replacement if changed.\n"},"teamId":{"type":"string","description":"The team ID. Requires replacement if changed.\n"}},"type":"object","required":["entityRegion","teamId"],"inputProperties":{"entityId":{"type":"string","description":"The ID of the entity. Requires replacement if changed.\n"},"entityRegion":{"type":"string","description":"Region of the team. must be one of [\"us\", \"eu\", \"au\", \"me\", \"in\", \"sg\", \"*\"]; Requires replacement if changed.\n"},"entityTypeName":{"type":"string","description":"The type of entity. must be one of [\"APIs\", \"API Products\", \"Application Auth Strategies\", \"Audit Logs\", \"Control Planes\", \"Dashboards\", \"DCR Providers\", \"Identity\", \"Mesh Control Planes\", \"Networks\", \"Portals\", \"Reports\", \"Service Hub\"]; Requires replacement if changed.\n"},"roleName":{"type":"string","description":"The desired role. must be one of [\"Admin\", \"Appearance Maintainer\", \"Application Registration\", \"Certificate Admin\", \"Cloud Gateway Cluster Admin\", \"Cloud Gateway Cluster Viewer\", \"Consumer Admin\", \"Connector\", \"Creator\", \"Deployer\", \"Discovery Admin\", \"Discovery Viewer\", \"Editor\", \"Gateway Service Admin\", \"Integration Admin\", \"Integration Viewer\", \"Key Admin\", \"Maintainer\", \"Network Admin\", \"Network Creator\", \"Network Viewer\", \"Plugin Admin\", \"Plugins Admin\", \"Product Publisher\", \"Publisher\", \"Route Admin\", \"SNI Admin\", \"Scorecard Admin\", \"Scorecard Viewer\", \"Service Admin\", \"Service Creator\", \"Service Viewer\", \"Upstream Admin\", \"Vault Admin\", \"Viewer\"]; Requires replacement if changed.\n"},"teamId":{"type":"string","description":"The team ID. Requires replacement if changed.\n"}},"requiredInputs":["teamId"],"stateInputs":{"description":"Input properties used for looking up and filtering TeamRole resources.\n","properties":{"entityId":{"type":"string","description":"The ID of the entity. Requires replacement if changed.\n"},"entityRegion":{"type":"string","description":"Region of the team. must be one of [\"us\", \"eu\", \"au\", \"me\", \"in\", \"sg\", \"*\"]; Requires replacement if changed.\n"},"entityTypeName":{"type":"string","description":"The type of entity. must be one of [\"APIs\", \"API Products\", \"Application Auth Strategies\", \"Audit Logs\", \"Control Planes\", \"Dashboards\", \"DCR Providers\", \"Identity\", \"Mesh Control Planes\", \"Networks\", \"Portals\", \"Reports\", \"Service Hub\"]; Requires replacement if changed.\n"},"roleName":{"type":"string","description":"The desired role. must be one of [\"Admin\", \"Appearance Maintainer\", \"Application Registration\", \"Certificate Admin\", \"Cloud Gateway Cluster Admin\", \"Cloud Gateway Cluster Viewer\", \"Consumer Admin\", \"Connector\", \"Creator\", \"Deployer\", \"Discovery Admin\", \"Discovery Viewer\", \"Editor\", \"Gateway Service Admin\", \"Integration Admin\", \"Integration Viewer\", \"Key Admin\", \"Maintainer\", \"Network Admin\", \"Network Creator\", \"Network Viewer\", \"Plugin Admin\", \"Plugins Admin\", \"Product Publisher\", \"Publisher\", \"Route Admin\", \"SNI Admin\", \"Scorecard Admin\", \"Scorecard Viewer\", \"Service Admin\", \"Service Creator\", \"Service Viewer\", \"Upstream Admin\", \"Vault Admin\", \"Viewer\"]; Requires replacement if changed.\n"},"teamId":{"type":"string","description":"The team ID. Requires replacement if changed.\n"}},"type":"object"}},"konnect:index/teamUser:TeamUser":{"description":"TeamUser Resource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myTeamuser = new konnect.TeamUser(\"my_teamuser\", {\n    teamId: \"d32d905a-ed33-46a3-a093-d8f536af9a8a\",\n    userId: \"df120cb4-f60b-47bc-a2f8-6a28e6a3c63b\",\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_teamuser = konnect.TeamUser(\"my_teamuser\",\n    team_id=\"d32d905a-ed33-46a3-a093-d8f536af9a8a\",\n    user_id=\"df120cb4-f60b-47bc-a2f8-6a28e6a3c63b\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myTeamuser = new Konnect.TeamUser(\"my_teamuser\", new()\n    {\n        TeamId = \"d32d905a-ed33-46a3-a093-d8f536af9a8a\",\n        UserId = \"df120cb4-f60b-47bc-a2f8-6a28e6a3c63b\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.NewTeamUser(ctx, \"my_teamuser\", \u0026konnect.TeamUserArgs{\n\t\t\tTeamId: pulumi.String(\"d32d905a-ed33-46a3-a093-d8f536af9a8a\"),\n\t\t\tUserId: pulumi.String(\"df120cb4-f60b-47bc-a2f8-6a28e6a3c63b\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.TeamUser;\nimport com.pulumi.konnect.TeamUserArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var myTeamuser = new TeamUser(\"myTeamuser\", TeamUserArgs.builder()\n            .teamId(\"d32d905a-ed33-46a3-a093-d8f536af9a8a\")\n            .userId(\"df120cb4-f60b-47bc-a2f8-6a28e6a3c63b\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  myTeamuser:\n    type: konnect:TeamUser\n    name: my_teamuser\n    properties:\n      teamId: d32d905a-ed33-46a3-a093-d8f536af9a8a\n      userId: df120cb4-f60b-47bc-a2f8-6a28e6a3c63b\n```\n\u003c!--End PulumiCodeChooser --\u003e\n","properties":{"teamId":{"type":"string","description":"ID of the team. Requires replacement if changed.\n"},"userId":{"type":"string","description":"The user ID for the user being added to a team. Requires replacement if changed.\n"}},"type":"object","required":["teamId","userId"],"inputProperties":{"teamId":{"type":"string","description":"ID of the team. Requires replacement if changed.\n"},"userId":{"type":"string","description":"The user ID for the user being added to a team. Requires replacement if changed.\n"}},"requiredInputs":["teamId","userId"],"stateInputs":{"description":"Input properties used for looking up and filtering TeamUser resources.\n","properties":{"teamId":{"type":"string","description":"ID of the team. Requires replacement if changed.\n"},"userId":{"type":"string","description":"The user ID for the user being added to a team. Requires replacement if changed.\n"}},"type":"object"}}},"functions":{"konnect:index/getCloudGatewayProviderAccountList:getCloudGatewayProviderAccountList":{"description":"CloudGatewayProviderAccountList DataSource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myCloudgatewayprovideraccountlist = konnect.getCloudGatewayProviderAccountList({});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_cloudgatewayprovideraccountlist = konnect.get_cloud_gateway_provider_account_list()\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myCloudgatewayprovideraccountlist = Konnect.GetCloudGatewayProviderAccountList.Invoke();\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.GetCloudGatewayProviderAccountList(ctx, map[string]interface{}{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.KonnectFunctions;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var myCloudgatewayprovideraccountlist = KonnectFunctions.getCloudGatewayProviderAccountList(%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference);\n\n    }\n}\n```\n```yaml\nvariables:\n  myCloudgatewayprovideraccountlist:\n    fn::invoke:\n      function: konnect:getCloudGatewayProviderAccountList\n      arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n","outputs":{"description":"A collection of values returned by getCloudGatewayProviderAccountList.\n","properties":{"datas":{"items":{"$ref":"#/types/konnect:index%2FgetCloudGatewayProviderAccountListData:getCloudGatewayProviderAccountListData"},"type":"array"},"id":{"description":"The provider-assigned unique ID for this managed resource.","type":"string"}},"required":["datas","id"],"type":"object"}},"konnect:index/getGatewayControlPlane:getGatewayControlPlane":{"description":"GatewayControlPlane DataSource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myGatewaycontrolplane = konnect.getGatewayControlPlane({\n    filter: {\n        cloudGateway: true,\n        clusterType: {\n            eq: \"...my_eq...\",\n            neq: \"...my_neq...\",\n        },\n        id: {\n            eq: \"...my_eq...\",\n            oeq: \"...my_oeq...\",\n        },\n        name: {\n            contains: \"...my_contains...\",\n            eq: \"...my_eq...\",\n            neq: \"...my_neq...\",\n        },\n    },\n    filterLabels: \"key:value,existCheck\",\n    sort: \"created_at desc\",\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_gatewaycontrolplane = konnect.get_gateway_control_plane(filter={\n        \"cloud_gateway\": True,\n        \"cluster_type\": {\n            \"eq\": \"...my_eq...\",\n            \"neq\": \"...my_neq...\",\n        },\n        \"id\": {\n            \"eq\": \"...my_eq...\",\n            \"oeq\": \"...my_oeq...\",\n        },\n        \"name\": {\n            \"contains\": \"...my_contains...\",\n            \"eq\": \"...my_eq...\",\n            \"neq\": \"...my_neq...\",\n        },\n    },\n    filter_labels=\"key:value,existCheck\",\n    sort=\"created_at desc\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myGatewaycontrolplane = Konnect.GetGatewayControlPlane.Invoke(new()\n    {\n        Filter = new Konnect.Inputs.GetGatewayControlPlaneFilterInputArgs\n        {\n            CloudGateway = true,\n            ClusterType = new Konnect.Inputs.GetGatewayControlPlaneFilterClusterTypeInputArgs\n            {\n                Eq = \"...my_eq...\",\n                Neq = \"...my_neq...\",\n            },\n            Id = new Konnect.Inputs.GetGatewayControlPlaneFilterIdInputArgs\n            {\n                Eq = \"...my_eq...\",\n                Oeq = \"...my_oeq...\",\n            },\n            Name = new Konnect.Inputs.GetGatewayControlPlaneFilterNameInputArgs\n            {\n                Contains = \"...my_contains...\",\n                Eq = \"...my_eq...\",\n                Neq = \"...my_neq...\",\n            },\n        },\n        FilterLabels = \"key:value,existCheck\",\n        Sort = \"created_at desc\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.LookupGatewayControlPlane(ctx, \u0026konnect.LookupGatewayControlPlaneArgs{\n\t\t\tFilter: konnect.GetGatewayControlPlaneFilter{\n\t\t\t\tCloudGateway: pulumi.BoolRef(true),\n\t\t\t\tClusterType: konnect.GetGatewayControlPlaneFilterClusterType{\n\t\t\t\t\tEq:  pulumi.StringRef(\"...my_eq...\"),\n\t\t\t\t\tNeq: pulumi.StringRef(\"...my_neq...\"),\n\t\t\t\t},\n\t\t\t\tId: konnect.GetGatewayControlPlaneFilterId{\n\t\t\t\t\tEq:  pulumi.StringRef(\"...my_eq...\"),\n\t\t\t\t\tOeq: pulumi.StringRef(\"...my_oeq...\"),\n\t\t\t\t},\n\t\t\t\tName: konnect.GetGatewayControlPlaneFilterName{\n\t\t\t\t\tContains: pulumi.StringRef(\"...my_contains...\"),\n\t\t\t\t\tEq:       pulumi.StringRef(\"...my_eq...\"),\n\t\t\t\t\tNeq:      pulumi.StringRef(\"...my_neq...\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tFilterLabels: pulumi.StringRef(\"key:value,existCheck\"),\n\t\t\tSort:         pulumi.StringRef(\"created_at desc\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.KonnectFunctions;\nimport com.pulumi.konnect.inputs.GetGatewayControlPlaneArgs;\nimport com.pulumi.konnect.inputs.GetGatewayControlPlaneFilterArgs;\nimport com.pulumi.konnect.inputs.GetGatewayControlPlaneFilterClusterTypeArgs;\nimport com.pulumi.konnect.inputs.GetGatewayControlPlaneFilterIdArgs;\nimport com.pulumi.konnect.inputs.GetGatewayControlPlaneFilterNameArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var myGatewaycontrolplane = KonnectFunctions.getGatewayControlPlane(GetGatewayControlPlaneArgs.builder()\n            .filter(GetGatewayControlPlaneFilterArgs.builder()\n                .cloudGateway(true)\n                .clusterType(GetGatewayControlPlaneFilterClusterTypeArgs.builder()\n                    .eq(\"...my_eq...\")\n                    .neq(\"...my_neq...\")\n                    .build())\n                .id(GetGatewayControlPlaneFilterIdArgs.builder()\n                    .eq(\"...my_eq...\")\n                    .oeq(\"...my_oeq...\")\n                    .build())\n                .name(GetGatewayControlPlaneFilterNameArgs.builder()\n                    .contains(\"...my_contains...\")\n                    .eq(\"...my_eq...\")\n                    .neq(\"...my_neq...\")\n                    .build())\n                .build())\n            .filterLabels(\"key:value,existCheck\")\n            .sort(\"created_at desc\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  myGatewaycontrolplane:\n    fn::invoke:\n      function: konnect:getGatewayControlPlane\n      arguments:\n        filter:\n          cloudGateway: true\n          clusterType:\n            eq: '...my_eq...'\n            neq: '...my_neq...'\n          id:\n            eq: '...my_eq...'\n            oeq: '...my_oeq...'\n          name:\n            contains: '...my_contains...'\n            eq: '...my_eq...'\n            neq: '...my_neq...'\n        filterLabels: key:value,existCheck\n        sort: created_at desc\n```\n\u003c!--End PulumiCodeChooser --\u003e\n","inputs":{"description":"A collection of arguments for invoking getGatewayControlPlane.\n","properties":{"filter":{"$ref":"#/types/konnect:index%2FgetGatewayControlPlaneFilter:getGatewayControlPlaneFilter"},"filterLabels":{"type":"string"},"sort":{"type":"string"}},"type":"object"},"outputs":{"description":"A collection of values returned by getGatewayControlPlane.\n","properties":{"config":{"$ref":"#/types/konnect:index%2FgetGatewayControlPlaneConfig:getGatewayControlPlaneConfig"},"description":{"type":"string"},"filter":{"$ref":"#/types/konnect:index%2FgetGatewayControlPlaneFilter:getGatewayControlPlaneFilter"},"filterLabels":{"type":"string"},"id":{"type":"string"},"labels":{"additionalProperties":{"type":"string"},"type":"object"},"name":{"type":"string"},"sort":{"type":"string"}},"required":["config","description","id","labels","name"],"type":"object"}},"konnect:index/getGatewayControlPlaneList:getGatewayControlPlaneList":{"description":"GatewayControlPlaneList DataSource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myGatewaycontrolplanelist = konnect.getGatewayControlPlaneList({\n    filter: {\n        cloudGateway: true,\n        clusterType: {\n            eq: \"...my_eq...\",\n            neq: \"...my_neq...\",\n        },\n        id: {\n            eq: \"...my_eq...\",\n            oeq: \"...my_oeq...\",\n        },\n        name: {\n            contains: \"...my_contains...\",\n            eq: \"...my_eq...\",\n            neq: \"...my_neq...\",\n        },\n    },\n    filterLabels: \"key:value,existCheck\",\n    sort: \"created_at desc\",\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_gatewaycontrolplanelist = konnect.get_gateway_control_plane_list(filter={\n        \"cloud_gateway\": True,\n        \"cluster_type\": {\n            \"eq\": \"...my_eq...\",\n            \"neq\": \"...my_neq...\",\n        },\n        \"id\": {\n            \"eq\": \"...my_eq...\",\n            \"oeq\": \"...my_oeq...\",\n        },\n        \"name\": {\n            \"contains\": \"...my_contains...\",\n            \"eq\": \"...my_eq...\",\n            \"neq\": \"...my_neq...\",\n        },\n    },\n    filter_labels=\"key:value,existCheck\",\n    sort=\"created_at desc\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myGatewaycontrolplanelist = Konnect.GetGatewayControlPlaneList.Invoke(new()\n    {\n        Filter = new Konnect.Inputs.GetGatewayControlPlaneListFilterInputArgs\n        {\n            CloudGateway = true,\n            ClusterType = new Konnect.Inputs.GetGatewayControlPlaneListFilterClusterTypeInputArgs\n            {\n                Eq = \"...my_eq...\",\n                Neq = \"...my_neq...\",\n            },\n            Id = new Konnect.Inputs.GetGatewayControlPlaneListFilterIdInputArgs\n            {\n                Eq = \"...my_eq...\",\n                Oeq = \"...my_oeq...\",\n            },\n            Name = new Konnect.Inputs.GetGatewayControlPlaneListFilterNameInputArgs\n            {\n                Contains = \"...my_contains...\",\n                Eq = \"...my_eq...\",\n                Neq = \"...my_neq...\",\n            },\n        },\n        FilterLabels = \"key:value,existCheck\",\n        Sort = \"created_at desc\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.GetGatewayControlPlaneList(ctx, \u0026konnect.GetGatewayControlPlaneListArgs{\n\t\t\tFilter: konnect.GetGatewayControlPlaneListFilter{\n\t\t\t\tCloudGateway: pulumi.BoolRef(true),\n\t\t\t\tClusterType: konnect.GetGatewayControlPlaneListFilterClusterType{\n\t\t\t\t\tEq:  pulumi.StringRef(\"...my_eq...\"),\n\t\t\t\t\tNeq: pulumi.StringRef(\"...my_neq...\"),\n\t\t\t\t},\n\t\t\t\tId: konnect.GetGatewayControlPlaneListFilterId{\n\t\t\t\t\tEq:  pulumi.StringRef(\"...my_eq...\"),\n\t\t\t\t\tOeq: pulumi.StringRef(\"...my_oeq...\"),\n\t\t\t\t},\n\t\t\t\tName: konnect.GetGatewayControlPlaneListFilterName{\n\t\t\t\t\tContains: pulumi.StringRef(\"...my_contains...\"),\n\t\t\t\t\tEq:       pulumi.StringRef(\"...my_eq...\"),\n\t\t\t\t\tNeq:      pulumi.StringRef(\"...my_neq...\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tFilterLabels: pulumi.StringRef(\"key:value,existCheck\"),\n\t\t\tSort:         pulumi.StringRef(\"created_at desc\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.KonnectFunctions;\nimport com.pulumi.konnect.inputs.GetGatewayControlPlaneListArgs;\nimport com.pulumi.konnect.inputs.GetGatewayControlPlaneListFilterArgs;\nimport com.pulumi.konnect.inputs.GetGatewayControlPlaneListFilterClusterTypeArgs;\nimport com.pulumi.konnect.inputs.GetGatewayControlPlaneListFilterIdArgs;\nimport com.pulumi.konnect.inputs.GetGatewayControlPlaneListFilterNameArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var myGatewaycontrolplanelist = KonnectFunctions.getGatewayControlPlaneList(GetGatewayControlPlaneListArgs.builder()\n            .filter(GetGatewayControlPlaneListFilterArgs.builder()\n                .cloudGateway(true)\n                .clusterType(GetGatewayControlPlaneListFilterClusterTypeArgs.builder()\n                    .eq(\"...my_eq...\")\n                    .neq(\"...my_neq...\")\n                    .build())\n                .id(GetGatewayControlPlaneListFilterIdArgs.builder()\n                    .eq(\"...my_eq...\")\n                    .oeq(\"...my_oeq...\")\n                    .build())\n                .name(GetGatewayControlPlaneListFilterNameArgs.builder()\n                    .contains(\"...my_contains...\")\n                    .eq(\"...my_eq...\")\n                    .neq(\"...my_neq...\")\n                    .build())\n                .build())\n            .filterLabels(\"key:value,existCheck\")\n            .sort(\"created_at desc\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  myGatewaycontrolplanelist:\n    fn::invoke:\n      function: konnect:getGatewayControlPlaneList\n      arguments:\n        filter:\n          cloudGateway: true\n          clusterType:\n            eq: '...my_eq...'\n            neq: '...my_neq...'\n          id:\n            eq: '...my_eq...'\n            oeq: '...my_oeq...'\n          name:\n            contains: '...my_contains...'\n            eq: '...my_eq...'\n            neq: '...my_neq...'\n        filterLabels: key:value,existCheck\n        sort: created_at desc\n```\n\u003c!--End PulumiCodeChooser --\u003e\n","inputs":{"description":"A collection of arguments for invoking getGatewayControlPlaneList.\n","properties":{"filter":{"$ref":"#/types/konnect:index%2FgetGatewayControlPlaneListFilter:getGatewayControlPlaneListFilter"},"filterLabels":{"type":"string"},"sort":{"type":"string"}},"type":"object"},"outputs":{"description":"A collection of values returned by getGatewayControlPlaneList.\n","properties":{"datas":{"items":{"$ref":"#/types/konnect:index%2FgetGatewayControlPlaneListData:getGatewayControlPlaneListData"},"type":"array"},"filter":{"$ref":"#/types/konnect:index%2FgetGatewayControlPlaneListFilter:getGatewayControlPlaneListFilter"},"filterLabels":{"type":"string"},"id":{"description":"The provider-assigned unique ID for this managed resource.","type":"string"},"sort":{"type":"string"}},"required":["datas","id"],"type":"object"}},"konnect:index/getMeshControlPlanes:getMeshControlPlanes":{"description":"MeshControlPlanes DataSource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myMeshcontrolplanes = konnect.getMeshControlPlanes({});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_meshcontrolplanes = konnect.get_mesh_control_planes()\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myMeshcontrolplanes = Konnect.GetMeshControlPlanes.Invoke();\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.GetMeshControlPlanes(ctx, map[string]interface{}{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.KonnectFunctions;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var myMeshcontrolplanes = KonnectFunctions.getMeshControlPlanes(%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference);\n\n    }\n}\n```\n```yaml\nvariables:\n  myMeshcontrolplanes:\n    fn::invoke:\n      function: konnect:getMeshControlPlanes\n      arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n","outputs":{"description":"A collection of values returned by getMeshControlPlanes.\n","properties":{"datas":{"items":{"$ref":"#/types/konnect:index%2FgetMeshControlPlanesData:getMeshControlPlanesData"},"type":"array"},"id":{"description":"The provider-assigned unique ID for this managed resource.","type":"string"}},"required":["datas","id"],"type":"object"}},"konnect:index/getPlatformIpAddresses:getPlatformIpAddresses":{"description":"PlatformIPAddresses DataSource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myPlatformipaddresses = konnect.getPlatformIpAddresses({});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_platformipaddresses = konnect.get_platform_ip_addresses()\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myPlatformipaddresses = Konnect.GetPlatformIpAddresses.Invoke();\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.GetPlatformIpAddresses(ctx, map[string]interface{}{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.KonnectFunctions;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var myPlatformipaddresses = KonnectFunctions.getPlatformIpAddresses(%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference);\n\n    }\n}\n```\n```yaml\nvariables:\n  myPlatformipaddresses:\n    fn::invoke:\n      function: konnect:getPlatformIpAddresses\n      arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n","outputs":{"description":"A collection of values returned by getPlatformIpAddresses.\n","properties":{"egressIps":{"additionalProperties":{"items":{"type":"string"},"type":"array"},"description":"Mapping of region code to egress IP addresses. Each region maps to a list of IP\naddresses representing outbound IPs used by Konnect.\n","type":"object"},"id":{"description":"The provider-assigned unique ID for this managed resource.","type":"string"},"ingressIps":{"additionalProperties":{"items":{"type":"string"},"type":"array"},"description":"Mapping of region code to ingress IP addresses. Each region maps to a list of IP\naddresses representing inbound entry points for the Konnect service.\n","type":"object"},"regions":{"additionalProperties":{"additionalProperties":{"items":{"type":"string"},"type":"array"},"type":"object"},"description":"Mapping of region code to hostname/IP lists.\n","type":"object"},"updateDate":{"description":"Timestamp of the last update in \"YYYY-MM-DD-HH-mm-ss\" format.\n","type":"string"}},"required":["egressIps","id","ingressIps","regions","updateDate"],"type":"object"}},"konnect:index/getPortal:getPortal":{"description":"Portal DataSource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myPortal = konnect.getPortal({\n    filter: {\n        authenticationEnabled: false,\n        autoApproveApplications: true,\n        autoApproveDevelopers: true,\n        canonicalDomain: {\n            contains: \"...my_contains...\",\n            eq: \"...my_eq...\",\n            neq: \"...my_neq...\",\n            ocontains: \"...my_ocontains...\",\n            oeq: \"...my_oeq...\",\n        },\n        defaultApiVisibility: {\n            contains: \"...my_contains...\",\n            eq: \"...my_eq...\",\n            neq: \"...my_neq...\",\n            ocontains: \"...my_ocontains...\",\n            oeq: \"...my_oeq...\",\n        },\n        defaultApplicationAuthStrategyId: {\n            eq: \"...my_eq...\",\n            neq: \"...my_neq...\",\n            oeq: \"...my_oeq...\",\n        },\n        defaultDomain: {\n            contains: \"...my_contains...\",\n            eq: \"...my_eq...\",\n            neq: \"...my_neq...\",\n            ocontains: \"...my_ocontains...\",\n            oeq: \"...my_oeq...\",\n        },\n        defaultPageVisibility: {\n            contains: \"...my_contains...\",\n            eq: \"...my_eq...\",\n            neq: \"...my_neq...\",\n            ocontains: \"...my_ocontains...\",\n            oeq: \"...my_oeq...\",\n        },\n        description: {\n            contains: \"...my_contains...\",\n            eq: \"...my_eq...\",\n            neq: \"...my_neq...\",\n            ocontains: \"...my_ocontains...\",\n            oeq: \"...my_oeq...\",\n        },\n        id: {\n            eq: \"...my_eq...\",\n            neq: \"...my_neq...\",\n            oeq: \"...my_oeq...\",\n        },\n        name: {\n            contains: \"...my_contains...\",\n            eq: \"...my_eq...\",\n            neq: \"...my_neq...\",\n            ocontains: \"...my_ocontains...\",\n            oeq: \"...my_oeq...\",\n        },\n        rbacEnabled: true,\n    },\n    sort: \"...my_sort...\",\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_portal = konnect.get_portal(filter={\n        \"authentication_enabled\": False,\n        \"auto_approve_applications\": True,\n        \"auto_approve_developers\": True,\n        \"canonical_domain\": {\n            \"contains\": \"...my_contains...\",\n            \"eq\": \"...my_eq...\",\n            \"neq\": \"...my_neq...\",\n            \"ocontains\": \"...my_ocontains...\",\n            \"oeq\": \"...my_oeq...\",\n        },\n        \"default_api_visibility\": {\n            \"contains\": \"...my_contains...\",\n            \"eq\": \"...my_eq...\",\n            \"neq\": \"...my_neq...\",\n            \"ocontains\": \"...my_ocontains...\",\n            \"oeq\": \"...my_oeq...\",\n        },\n        \"default_application_auth_strategy_id\": {\n            \"eq\": \"...my_eq...\",\n            \"neq\": \"...my_neq...\",\n            \"oeq\": \"...my_oeq...\",\n        },\n        \"default_domain\": {\n            \"contains\": \"...my_contains...\",\n            \"eq\": \"...my_eq...\",\n            \"neq\": \"...my_neq...\",\n            \"ocontains\": \"...my_ocontains...\",\n            \"oeq\": \"...my_oeq...\",\n        },\n        \"default_page_visibility\": {\n            \"contains\": \"...my_contains...\",\n            \"eq\": \"...my_eq...\",\n            \"neq\": \"...my_neq...\",\n            \"ocontains\": \"...my_ocontains...\",\n            \"oeq\": \"...my_oeq...\",\n        },\n        \"description\": {\n            \"contains\": \"...my_contains...\",\n            \"eq\": \"...my_eq...\",\n            \"neq\": \"...my_neq...\",\n            \"ocontains\": \"...my_ocontains...\",\n            \"oeq\": \"...my_oeq...\",\n        },\n        \"id\": {\n            \"eq\": \"...my_eq...\",\n            \"neq\": \"...my_neq...\",\n            \"oeq\": \"...my_oeq...\",\n        },\n        \"name\": {\n            \"contains\": \"...my_contains...\",\n            \"eq\": \"...my_eq...\",\n            \"neq\": \"...my_neq...\",\n            \"ocontains\": \"...my_ocontains...\",\n            \"oeq\": \"...my_oeq...\",\n        },\n        \"rbac_enabled\": True,\n    },\n    sort=\"...my_sort...\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myPortal = Konnect.GetPortal.Invoke(new()\n    {\n        Filter = new Konnect.Inputs.GetPortalFilterInputArgs\n        {\n            AuthenticationEnabled = false,\n            AutoApproveApplications = true,\n            AutoApproveDevelopers = true,\n            CanonicalDomain = new Konnect.Inputs.GetPortalFilterCanonicalDomainInputArgs\n            {\n                Contains = \"...my_contains...\",\n                Eq = \"...my_eq...\",\n                Neq = \"...my_neq...\",\n                Ocontains = \"...my_ocontains...\",\n                Oeq = \"...my_oeq...\",\n            },\n            DefaultApiVisibility = new Konnect.Inputs.GetPortalFilterDefaultApiVisibilityInputArgs\n            {\n                Contains = \"...my_contains...\",\n                Eq = \"...my_eq...\",\n                Neq = \"...my_neq...\",\n                Ocontains = \"...my_ocontains...\",\n                Oeq = \"...my_oeq...\",\n            },\n            DefaultApplicationAuthStrategyId = new Konnect.Inputs.GetPortalFilterDefaultApplicationAuthStrategyIdInputArgs\n            {\n                Eq = \"...my_eq...\",\n                Neq = \"...my_neq...\",\n                Oeq = \"...my_oeq...\",\n            },\n            DefaultDomain = new Konnect.Inputs.GetPortalFilterDefaultDomainInputArgs\n            {\n                Contains = \"...my_contains...\",\n                Eq = \"...my_eq...\",\n                Neq = \"...my_neq...\",\n                Ocontains = \"...my_ocontains...\",\n                Oeq = \"...my_oeq...\",\n            },\n            DefaultPageVisibility = new Konnect.Inputs.GetPortalFilterDefaultPageVisibilityInputArgs\n            {\n                Contains = \"...my_contains...\",\n                Eq = \"...my_eq...\",\n                Neq = \"...my_neq...\",\n                Ocontains = \"...my_ocontains...\",\n                Oeq = \"...my_oeq...\",\n            },\n            Description = new Konnect.Inputs.GetPortalFilterDescriptionInputArgs\n            {\n                Contains = \"...my_contains...\",\n                Eq = \"...my_eq...\",\n                Neq = \"...my_neq...\",\n                Ocontains = \"...my_ocontains...\",\n                Oeq = \"...my_oeq...\",\n            },\n            Id = new Konnect.Inputs.GetPortalFilterIdInputArgs\n            {\n                Eq = \"...my_eq...\",\n                Neq = \"...my_neq...\",\n                Oeq = \"...my_oeq...\",\n            },\n            Name = new Konnect.Inputs.GetPortalFilterNameInputArgs\n            {\n                Contains = \"...my_contains...\",\n                Eq = \"...my_eq...\",\n                Neq = \"...my_neq...\",\n                Ocontains = \"...my_ocontains...\",\n                Oeq = \"...my_oeq...\",\n            },\n            RbacEnabled = true,\n        },\n        Sort = \"...my_sort...\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.LookupPortal(ctx, \u0026konnect.LookupPortalArgs{\n\t\t\tFilter: konnect.GetPortalFilter{\n\t\t\t\tAuthenticationEnabled:   pulumi.BoolRef(false),\n\t\t\t\tAutoApproveApplications: pulumi.BoolRef(true),\n\t\t\t\tAutoApproveDevelopers:   pulumi.BoolRef(true),\n\t\t\t\tCanonicalDomain: konnect.GetPortalFilterCanonicalDomain{\n\t\t\t\t\tContains:  pulumi.StringRef(\"...my_contains...\"),\n\t\t\t\t\tEq:        pulumi.StringRef(\"...my_eq...\"),\n\t\t\t\t\tNeq:       pulumi.StringRef(\"...my_neq...\"),\n\t\t\t\t\tOcontains: pulumi.StringRef(\"...my_ocontains...\"),\n\t\t\t\t\tOeq:       pulumi.StringRef(\"...my_oeq...\"),\n\t\t\t\t},\n\t\t\t\tDefaultApiVisibility: konnect.GetPortalFilterDefaultApiVisibility{\n\t\t\t\t\tContains:  pulumi.StringRef(\"...my_contains...\"),\n\t\t\t\t\tEq:        pulumi.StringRef(\"...my_eq...\"),\n\t\t\t\t\tNeq:       pulumi.StringRef(\"...my_neq...\"),\n\t\t\t\t\tOcontains: pulumi.StringRef(\"...my_ocontains...\"),\n\t\t\t\t\tOeq:       pulumi.StringRef(\"...my_oeq...\"),\n\t\t\t\t},\n\t\t\t\tDefaultApplicationAuthStrategyId: konnect.GetPortalFilterDefaultApplicationAuthStrategyId{\n\t\t\t\t\tEq:  pulumi.StringRef(\"...my_eq...\"),\n\t\t\t\t\tNeq: pulumi.StringRef(\"...my_neq...\"),\n\t\t\t\t\tOeq: pulumi.StringRef(\"...my_oeq...\"),\n\t\t\t\t},\n\t\t\t\tDefaultDomain: konnect.GetPortalFilterDefaultDomain{\n\t\t\t\t\tContains:  pulumi.StringRef(\"...my_contains...\"),\n\t\t\t\t\tEq:        pulumi.StringRef(\"...my_eq...\"),\n\t\t\t\t\tNeq:       pulumi.StringRef(\"...my_neq...\"),\n\t\t\t\t\tOcontains: pulumi.StringRef(\"...my_ocontains...\"),\n\t\t\t\t\tOeq:       pulumi.StringRef(\"...my_oeq...\"),\n\t\t\t\t},\n\t\t\t\tDefaultPageVisibility: konnect.GetPortalFilterDefaultPageVisibility{\n\t\t\t\t\tContains:  pulumi.StringRef(\"...my_contains...\"),\n\t\t\t\t\tEq:        pulumi.StringRef(\"...my_eq...\"),\n\t\t\t\t\tNeq:       pulumi.StringRef(\"...my_neq...\"),\n\t\t\t\t\tOcontains: pulumi.StringRef(\"...my_ocontains...\"),\n\t\t\t\t\tOeq:       pulumi.StringRef(\"...my_oeq...\"),\n\t\t\t\t},\n\t\t\t\tDescription: konnect.GetPortalFilterDescription{\n\t\t\t\t\tContains:  pulumi.StringRef(\"...my_contains...\"),\n\t\t\t\t\tEq:        pulumi.StringRef(\"...my_eq...\"),\n\t\t\t\t\tNeq:       pulumi.StringRef(\"...my_neq...\"),\n\t\t\t\t\tOcontains: pulumi.StringRef(\"...my_ocontains...\"),\n\t\t\t\t\tOeq:       pulumi.StringRef(\"...my_oeq...\"),\n\t\t\t\t},\n\t\t\t\tId: konnect.GetPortalFilterId{\n\t\t\t\t\tEq:  pulumi.StringRef(\"...my_eq...\"),\n\t\t\t\t\tNeq: pulumi.StringRef(\"...my_neq...\"),\n\t\t\t\t\tOeq: pulumi.StringRef(\"...my_oeq...\"),\n\t\t\t\t},\n\t\t\t\tName: konnect.GetPortalFilterName{\n\t\t\t\t\tContains:  pulumi.StringRef(\"...my_contains...\"),\n\t\t\t\t\tEq:        pulumi.StringRef(\"...my_eq...\"),\n\t\t\t\t\tNeq:       pulumi.StringRef(\"...my_neq...\"),\n\t\t\t\t\tOcontains: pulumi.StringRef(\"...my_ocontains...\"),\n\t\t\t\t\tOeq:       pulumi.StringRef(\"...my_oeq...\"),\n\t\t\t\t},\n\t\t\t\tRbacEnabled: pulumi.BoolRef(true),\n\t\t\t},\n\t\t\tSort: pulumi.StringRef(\"...my_sort...\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.KonnectFunctions;\nimport com.pulumi.konnect.inputs.GetPortalArgs;\nimport com.pulumi.konnect.inputs.GetPortalFilterArgs;\nimport com.pulumi.konnect.inputs.GetPortalFilterCanonicalDomainArgs;\nimport com.pulumi.konnect.inputs.GetPortalFilterDefaultApiVisibilityArgs;\nimport com.pulumi.konnect.inputs.GetPortalFilterDefaultApplicationAuthStrategyIdArgs;\nimport com.pulumi.konnect.inputs.GetPortalFilterDefaultDomainArgs;\nimport com.pulumi.konnect.inputs.GetPortalFilterDefaultPageVisibilityArgs;\nimport com.pulumi.konnect.inputs.GetPortalFilterDescriptionArgs;\nimport com.pulumi.konnect.inputs.GetPortalFilterIdArgs;\nimport com.pulumi.konnect.inputs.GetPortalFilterNameArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var myPortal = KonnectFunctions.getPortal(GetPortalArgs.builder()\n            .filter(GetPortalFilterArgs.builder()\n                .authenticationEnabled(false)\n                .autoApproveApplications(true)\n                .autoApproveDevelopers(true)\n                .canonicalDomain(GetPortalFilterCanonicalDomainArgs.builder()\n                    .contains(\"...my_contains...\")\n                    .eq(\"...my_eq...\")\n                    .neq(\"...my_neq...\")\n                    .ocontains(\"...my_ocontains...\")\n                    .oeq(\"...my_oeq...\")\n                    .build())\n                .defaultApiVisibility(GetPortalFilterDefaultApiVisibilityArgs.builder()\n                    .contains(\"...my_contains...\")\n                    .eq(\"...my_eq...\")\n                    .neq(\"...my_neq...\")\n                    .ocontains(\"...my_ocontains...\")\n                    .oeq(\"...my_oeq...\")\n                    .build())\n                .defaultApplicationAuthStrategyId(GetPortalFilterDefaultApplicationAuthStrategyIdArgs.builder()\n                    .eq(\"...my_eq...\")\n                    .neq(\"...my_neq...\")\n                    .oeq(\"...my_oeq...\")\n                    .build())\n                .defaultDomain(GetPortalFilterDefaultDomainArgs.builder()\n                    .contains(\"...my_contains...\")\n                    .eq(\"...my_eq...\")\n                    .neq(\"...my_neq...\")\n                    .ocontains(\"...my_ocontains...\")\n                    .oeq(\"...my_oeq...\")\n                    .build())\n                .defaultPageVisibility(GetPortalFilterDefaultPageVisibilityArgs.builder()\n                    .contains(\"...my_contains...\")\n                    .eq(\"...my_eq...\")\n                    .neq(\"...my_neq...\")\n                    .ocontains(\"...my_ocontains...\")\n                    .oeq(\"...my_oeq...\")\n                    .build())\n                .description(GetPortalFilterDescriptionArgs.builder()\n                    .contains(\"...my_contains...\")\n                    .eq(\"...my_eq...\")\n                    .neq(\"...my_neq...\")\n                    .ocontains(\"...my_ocontains...\")\n                    .oeq(\"...my_oeq...\")\n                    .build())\n                .id(GetPortalFilterIdArgs.builder()\n                    .eq(\"...my_eq...\")\n                    .neq(\"...my_neq...\")\n                    .oeq(\"...my_oeq...\")\n                    .build())\n                .name(GetPortalFilterNameArgs.builder()\n                    .contains(\"...my_contains...\")\n                    .eq(\"...my_eq...\")\n                    .neq(\"...my_neq...\")\n                    .ocontains(\"...my_ocontains...\")\n                    .oeq(\"...my_oeq...\")\n                    .build())\n                .rbacEnabled(true)\n                .build())\n            .sort(\"...my_sort...\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  myPortal:\n    fn::invoke:\n      function: konnect:getPortal\n      arguments:\n        filter:\n          authenticationEnabled: false\n          autoApproveApplications: true\n          autoApproveDevelopers: true\n          canonicalDomain:\n            contains: '...my_contains...'\n            eq: '...my_eq...'\n            neq: '...my_neq...'\n            ocontains: '...my_ocontains...'\n            oeq: '...my_oeq...'\n          defaultApiVisibility:\n            contains: '...my_contains...'\n            eq: '...my_eq...'\n            neq: '...my_neq...'\n            ocontains: '...my_ocontains...'\n            oeq: '...my_oeq...'\n          defaultApplicationAuthStrategyId:\n            eq: '...my_eq...'\n            neq: '...my_neq...'\n            oeq: '...my_oeq...'\n          defaultDomain:\n            contains: '...my_contains...'\n            eq: '...my_eq...'\n            neq: '...my_neq...'\n            ocontains: '...my_ocontains...'\n            oeq: '...my_oeq...'\n          defaultPageVisibility:\n            contains: '...my_contains...'\n            eq: '...my_eq...'\n            neq: '...my_neq...'\n            ocontains: '...my_ocontains...'\n            oeq: '...my_oeq...'\n          description:\n            contains: '...my_contains...'\n            eq: '...my_eq...'\n            neq: '...my_neq...'\n            ocontains: '...my_ocontains...'\n            oeq: '...my_oeq...'\n          id:\n            eq: '...my_eq...'\n            neq: '...my_neq...'\n            oeq: '...my_oeq...'\n          name:\n            contains: '...my_contains...'\n            eq: '...my_eq...'\n            neq: '...my_neq...'\n            ocontains: '...my_ocontains...'\n            oeq: '...my_oeq...'\n          rbacEnabled: true\n        sort: '...my_sort...'\n```\n\u003c!--End PulumiCodeChooser --\u003e\n","inputs":{"description":"A collection of arguments for invoking getPortal.\n","properties":{"filter":{"$ref":"#/types/konnect:index%2FgetPortalFilter:getPortalFilter"},"sort":{"type":"string"}},"type":"object"},"outputs":{"description":"A collection of values returned by getPortal.\n","properties":{"authenticationEnabled":{"type":"boolean"},"autoApproveApplications":{"type":"boolean"},"autoApproveDevelopers":{"type":"boolean"},"canonicalDomain":{"type":"string"},"createdAt":{"type":"string"},"defaultApiVisibility":{"type":"string"},"defaultApplicationAuthStrategyId":{"type":"string"},"defaultDomain":{"type":"string"},"defaultPageVisibility":{"type":"string"},"description":{"type":"string"},"displayName":{"type":"string"},"filter":{"$ref":"#/types/konnect:index%2FgetPortalFilter:getPortalFilter"},"id":{"type":"string"},"labels":{"additionalProperties":{"type":"string"},"type":"object"},"name":{"type":"string"},"rbacEnabled":{"type":"boolean"},"sort":{"type":"string"},"updatedAt":{"type":"string"}},"required":["authenticationEnabled","autoApproveApplications","autoApproveDevelopers","canonicalDomain","createdAt","defaultApiVisibility","defaultApplicationAuthStrategyId","defaultDomain","defaultPageVisibility","description","displayName","id","labels","name","rbacEnabled","updatedAt"],"type":"object"}},"konnect:index/getPortalClassicList:getPortalClassicList":{"description":"PortalClassicList DataSource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myPortalclassiclist = konnect.getPortalClassicList({\n    sort: \"...my_sort...\",\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_portalclassiclist = konnect.get_portal_classic_list(sort=\"...my_sort...\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myPortalclassiclist = Konnect.GetPortalClassicList.Invoke(new()\n    {\n        Sort = \"...my_sort...\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.GetPortalClassicList(ctx, \u0026konnect.GetPortalClassicListArgs{\n\t\t\tSort: pulumi.StringRef(\"...my_sort...\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.KonnectFunctions;\nimport com.pulumi.konnect.inputs.GetPortalClassicListArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var myPortalclassiclist = KonnectFunctions.getPortalClassicList(GetPortalClassicListArgs.builder()\n            .sort(\"...my_sort...\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  myPortalclassiclist:\n    fn::invoke:\n      function: konnect:getPortalClassicList\n      arguments:\n        sort: '...my_sort...'\n```\n\u003c!--End PulumiCodeChooser --\u003e\n","inputs":{"description":"A collection of arguments for invoking getPortalClassicList.\n","properties":{"sort":{"type":"string"}},"type":"object"},"outputs":{"description":"A collection of values returned by getPortalClassicList.\n","properties":{"datas":{"items":{"$ref":"#/types/konnect:index%2FgetPortalClassicListData:getPortalClassicListData"},"type":"array"},"id":{"description":"The provider-assigned unique ID for this managed resource.","type":"string"},"sort":{"type":"string"}},"required":["datas","id"],"type":"object"}},"konnect:index/getSystemAccount:getSystemAccount":{"description":"SystemAccount DataSource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst mySystemaccount = konnect.getSystemAccount({\n    filter: {\n        description: {\n            contains: \"...my_contains...\",\n            eq: \"...my_eq...\",\n        },\n        konnectManaged: true,\n        name: {\n            contains: \"...my_contains...\",\n            eq: \"...my_eq...\",\n        },\n    },\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_systemaccount = konnect.get_system_account(filter={\n    \"description\": {\n        \"contains\": \"...my_contains...\",\n        \"eq\": \"...my_eq...\",\n    },\n    \"konnect_managed\": True,\n    \"name\": {\n        \"contains\": \"...my_contains...\",\n        \"eq\": \"...my_eq...\",\n    },\n})\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var mySystemaccount = Konnect.GetSystemAccount.Invoke(new()\n    {\n        Filter = new Konnect.Inputs.GetSystemAccountFilterInputArgs\n        {\n            Description = new Konnect.Inputs.GetSystemAccountFilterDescriptionInputArgs\n            {\n                Contains = \"...my_contains...\",\n                Eq = \"...my_eq...\",\n            },\n            KonnectManaged = true,\n            Name = new Konnect.Inputs.GetSystemAccountFilterNameInputArgs\n            {\n                Contains = \"...my_contains...\",\n                Eq = \"...my_eq...\",\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.LookupSystemAccount(ctx, \u0026konnect.LookupSystemAccountArgs{\n\t\t\tFilter: konnect.GetSystemAccountFilter{\n\t\t\t\tDescription: konnect.GetSystemAccountFilterDescription{\n\t\t\t\t\tContains: pulumi.StringRef(\"...my_contains...\"),\n\t\t\t\t\tEq:       pulumi.StringRef(\"...my_eq...\"),\n\t\t\t\t},\n\t\t\t\tKonnectManaged: pulumi.BoolRef(true),\n\t\t\t\tName: konnect.GetSystemAccountFilterName{\n\t\t\t\t\tContains: pulumi.StringRef(\"...my_contains...\"),\n\t\t\t\t\tEq:       pulumi.StringRef(\"...my_eq...\"),\n\t\t\t\t},\n\t\t\t},\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.KonnectFunctions;\nimport com.pulumi.konnect.inputs.GetSystemAccountArgs;\nimport com.pulumi.konnect.inputs.GetSystemAccountFilterArgs;\nimport com.pulumi.konnect.inputs.GetSystemAccountFilterDescriptionArgs;\nimport com.pulumi.konnect.inputs.GetSystemAccountFilterNameArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var mySystemaccount = KonnectFunctions.getSystemAccount(GetSystemAccountArgs.builder()\n            .filter(GetSystemAccountFilterArgs.builder()\n                .description(GetSystemAccountFilterDescriptionArgs.builder()\n                    .contains(\"...my_contains...\")\n                    .eq(\"...my_eq...\")\n                    .build())\n                .konnectManaged(true)\n                .name(GetSystemAccountFilterNameArgs.builder()\n                    .contains(\"...my_contains...\")\n                    .eq(\"...my_eq...\")\n                    .build())\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  mySystemaccount:\n    fn::invoke:\n      function: konnect:getSystemAccount\n      arguments:\n        filter:\n          description:\n            contains: '...my_contains...'\n            eq: '...my_eq...'\n          konnectManaged: true\n          name:\n            contains: '...my_contains...'\n            eq: '...my_eq...'\n```\n\u003c!--End PulumiCodeChooser --\u003e\n","inputs":{"description":"A collection of arguments for invoking getSystemAccount.\n","properties":{"filter":{"$ref":"#/types/konnect:index%2FgetSystemAccountFilter:getSystemAccountFilter","description":"Filter system accounts returned in the response.\n"}},"type":"object"},"outputs":{"description":"A collection of values returned by getSystemAccount.\n","properties":{"createdAt":{"description":"Timestamp of when the system account was created.\n","type":"string"},"description":{"description":"Description of the system account.\n","type":"string"},"filter":{"$ref":"#/types/konnect:index%2FgetSystemAccountFilter:getSystemAccountFilter","description":"Filter system accounts returned in the response.\n"},"id":{"description":"ID of the system account.\n","type":"string"},"konnectManaged":{"description":"The system account is managed by Konnect (true/false).\n","type":"boolean"},"name":{"description":"Name of the system account.\n","type":"string"},"updatedAt":{"description":"Timestamp of when the system account was last updated.\n","type":"string"}},"required":["createdAt","description","id","konnectManaged","name","updatedAt"],"type":"object"}},"konnect:index/getSystemAccountList:getSystemAccountList":{"description":"SystemAccountList DataSource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst mySystemaccountlist = konnect.getSystemAccountList({\n    filter: {\n        description: {\n            contains: \"...my_contains...\",\n            eq: \"...my_eq...\",\n        },\n        konnectManaged: true,\n        name: {\n            contains: \"...my_contains...\",\n            eq: \"...my_eq...\",\n        },\n    },\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_systemaccountlist = konnect.get_system_account_list(filter={\n    \"description\": {\n        \"contains\": \"...my_contains...\",\n        \"eq\": \"...my_eq...\",\n    },\n    \"konnect_managed\": True,\n    \"name\": {\n        \"contains\": \"...my_contains...\",\n        \"eq\": \"...my_eq...\",\n    },\n})\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var mySystemaccountlist = Konnect.GetSystemAccountList.Invoke(new()\n    {\n        Filter = new Konnect.Inputs.GetSystemAccountListFilterInputArgs\n        {\n            Description = new Konnect.Inputs.GetSystemAccountListFilterDescriptionInputArgs\n            {\n                Contains = \"...my_contains...\",\n                Eq = \"...my_eq...\",\n            },\n            KonnectManaged = true,\n            Name = new Konnect.Inputs.GetSystemAccountListFilterNameInputArgs\n            {\n                Contains = \"...my_contains...\",\n                Eq = \"...my_eq...\",\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.GetSystemAccountList(ctx, \u0026konnect.GetSystemAccountListArgs{\n\t\t\tFilter: konnect.GetSystemAccountListFilter{\n\t\t\t\tDescription: konnect.GetSystemAccountListFilterDescription{\n\t\t\t\t\tContains: pulumi.StringRef(\"...my_contains...\"),\n\t\t\t\t\tEq:       pulumi.StringRef(\"...my_eq...\"),\n\t\t\t\t},\n\t\t\t\tKonnectManaged: pulumi.BoolRef(true),\n\t\t\t\tName: konnect.GetSystemAccountListFilterName{\n\t\t\t\t\tContains: pulumi.StringRef(\"...my_contains...\"),\n\t\t\t\t\tEq:       pulumi.StringRef(\"...my_eq...\"),\n\t\t\t\t},\n\t\t\t},\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.KonnectFunctions;\nimport com.pulumi.konnect.inputs.GetSystemAccountListArgs;\nimport com.pulumi.konnect.inputs.GetSystemAccountListFilterArgs;\nimport com.pulumi.konnect.inputs.GetSystemAccountListFilterDescriptionArgs;\nimport com.pulumi.konnect.inputs.GetSystemAccountListFilterNameArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var mySystemaccountlist = KonnectFunctions.getSystemAccountList(GetSystemAccountListArgs.builder()\n            .filter(GetSystemAccountListFilterArgs.builder()\n                .description(GetSystemAccountListFilterDescriptionArgs.builder()\n                    .contains(\"...my_contains...\")\n                    .eq(\"...my_eq...\")\n                    .build())\n                .konnectManaged(true)\n                .name(GetSystemAccountListFilterNameArgs.builder()\n                    .contains(\"...my_contains...\")\n                    .eq(\"...my_eq...\")\n                    .build())\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  mySystemaccountlist:\n    fn::invoke:\n      function: konnect:getSystemAccountList\n      arguments:\n        filter:\n          description:\n            contains: '...my_contains...'\n            eq: '...my_eq...'\n          konnectManaged: true\n          name:\n            contains: '...my_contains...'\n            eq: '...my_eq...'\n```\n\u003c!--End PulumiCodeChooser --\u003e\n","inputs":{"description":"A collection of arguments for invoking getSystemAccountList.\n","properties":{"filter":{"$ref":"#/types/konnect:index%2FgetSystemAccountListFilter:getSystemAccountListFilter","description":"Filter system accounts returned in the response.\n"}},"type":"object"},"outputs":{"description":"A collection of values returned by getSystemAccountList.\n","properties":{"datas":{"items":{"$ref":"#/types/konnect:index%2FgetSystemAccountListData:getSystemAccountListData"},"type":"array"},"filter":{"$ref":"#/types/konnect:index%2FgetSystemAccountListFilter:getSystemAccountListFilter","description":"Filter system accounts returned in the response.\n"},"id":{"description":"The provider-assigned unique ID for this managed resource.","type":"string"}},"required":["datas","id"],"type":"object"}},"konnect:index/getTeam:getTeam":{"description":"Team DataSource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myTeam = konnect.getTeam({\n    filter: {\n        name: {\n            contains: \"...my_contains...\",\n            eq: \"...my_eq...\",\n        },\n    },\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_team = konnect.get_team(filter={\n    \"name\": {\n        \"contains\": \"...my_contains...\",\n        \"eq\": \"...my_eq...\",\n    },\n})\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myTeam = Konnect.GetTeam.Invoke(new()\n    {\n        Filter = new Konnect.Inputs.GetTeamFilterInputArgs\n        {\n            Name = new Konnect.Inputs.GetTeamFilterNameInputArgs\n            {\n                Contains = \"...my_contains...\",\n                Eq = \"...my_eq...\",\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.LookupTeam(ctx, \u0026konnect.LookupTeamArgs{\n\t\t\tFilter: konnect.GetTeamFilter{\n\t\t\t\tName: konnect.GetTeamFilterName{\n\t\t\t\t\tContains: pulumi.StringRef(\"...my_contains...\"),\n\t\t\t\t\tEq:       pulumi.StringRef(\"...my_eq...\"),\n\t\t\t\t},\n\t\t\t},\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.KonnectFunctions;\nimport com.pulumi.konnect.inputs.GetTeamArgs;\nimport com.pulumi.konnect.inputs.GetTeamFilterArgs;\nimport com.pulumi.konnect.inputs.GetTeamFilterNameArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var myTeam = KonnectFunctions.getTeam(GetTeamArgs.builder()\n            .filter(GetTeamFilterArgs.builder()\n                .name(GetTeamFilterNameArgs.builder()\n                    .contains(\"...my_contains...\")\n                    .eq(\"...my_eq...\")\n                    .build())\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  myTeam:\n    fn::invoke:\n      function: konnect:getTeam\n      arguments:\n        filter:\n          name:\n            contains: '...my_contains...'\n            eq: '...my_eq...'\n```\n\u003c!--End PulumiCodeChooser --\u003e\n","inputs":{"description":"A collection of arguments for invoking getTeam.\n","properties":{"filter":{"$ref":"#/types/konnect:index%2FgetTeamFilter:getTeamFilter","description":"Filter teams returned in the response.\n"}},"type":"object"},"outputs":{"description":"A collection of values returned by getTeam.\n","properties":{"createdAt":{"description":"A Unix timestamp representation of team creation.\n","type":"string"},"description":{"description":"The team description in Konnect.\n","type":"string"},"filter":{"$ref":"#/types/konnect:index%2FgetTeamFilter:getTeamFilter","description":"Filter teams returned in the response.\n"},"id":{"description":"The team ID.\n","type":"string"},"labels":{"additionalProperties":{"type":"string"},"description":"Labels store metadata of an entity that can be used for filtering an entity list or for searching across entity types.\n","type":"object"},"name":{"type":"string"},"systemTeam":{"type":"boolean"},"updatedAt":{"type":"string"}},"required":["createdAt","description","id","labels","name","systemTeam","updatedAt"],"type":"object"}},"konnect:index/getTeamList:getTeamList":{"description":"TeamList DataSource\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as konnect from \"@pulumi/konnect\";\n\nconst myTeamlist = konnect.getTeamList({\n    filter: {\n        name: {\n            contains: \"...my_contains...\",\n            eq: \"...my_eq...\",\n        },\n    },\n});\n```\n```python\nimport pulumi\nimport pulumi_konnect as konnect\n\nmy_teamlist = konnect.get_team_list(filter={\n    \"name\": {\n        \"contains\": \"...my_contains...\",\n        \"eq\": \"...my_eq...\",\n    },\n})\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Konnect = Pulumi.Konnect;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var myTeamlist = Konnect.GetTeamList.Invoke(new()\n    {\n        Filter = new Konnect.Inputs.GetTeamListFilterInputArgs\n        {\n            Name = new Konnect.Inputs.GetTeamListFilterNameInputArgs\n            {\n                Contains = \"...my_contains...\",\n                Eq = \"...my_eq...\",\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-terraform-provider/sdks/go/konnect/v3/konnect\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := konnect.GetTeamList(ctx, \u0026konnect.GetTeamListArgs{\n\t\t\tFilter: konnect.GetTeamListFilter{\n\t\t\t\tName: konnect.GetTeamListFilterName{\n\t\t\t\t\tContains: pulumi.StringRef(\"...my_contains...\"),\n\t\t\t\t\tEq:       pulumi.StringRef(\"...my_eq...\"),\n\t\t\t\t},\n\t\t\t},\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.konnect.KonnectFunctions;\nimport com.pulumi.konnect.inputs.GetTeamListArgs;\nimport com.pulumi.konnect.inputs.GetTeamListFilterArgs;\nimport com.pulumi.konnect.inputs.GetTeamListFilterNameArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var myTeamlist = KonnectFunctions.getTeamList(GetTeamListArgs.builder()\n            .filter(GetTeamListFilterArgs.builder()\n                .name(GetTeamListFilterNameArgs.builder()\n                    .contains(\"...my_contains...\")\n                    .eq(\"...my_eq...\")\n                    .build())\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  myTeamlist:\n    fn::invoke:\n      function: konnect:getTeamList\n      arguments:\n        filter:\n          name:\n            contains: '...my_contains...'\n            eq: '...my_eq...'\n```\n\u003c!--End PulumiCodeChooser --\u003e\n","inputs":{"description":"A collection of arguments for invoking getTeamList.\n","properties":{"filter":{"$ref":"#/types/konnect:index%2FgetTeamListFilter:getTeamListFilter","description":"Filter teams returned in the response.\n"}},"type":"object"},"outputs":{"description":"A collection of values returned by getTeamList.\n","properties":{"datas":{"items":{"$ref":"#/types/konnect:index%2FgetTeamListData:getTeamListData"},"type":"array"},"filter":{"$ref":"#/types/konnect:index%2FgetTeamListFilter:getTeamListFilter","description":"Filter teams returned in the response.\n"},"id":{"description":"The provider-assigned unique ID for this managed resource.","type":"string"}},"required":["datas","id"],"type":"object"}},"pulumi:providers:konnect/terraformConfig":{"description":"This function returns a Terraform config object with terraform-namecased keys,to be used with the Terraform Module Provider.","inputs":{"properties":{"__self__":{"$ref":"#/resources/pulumi:providers:konnect"}},"type":"object","required":["__self__"]},"outputs":{"properties":{"result":{"additionalProperties":{"$ref":"pulumi.json#/Any"},"type":"object"}},"required":["result"],"type":"object"}}},"parameterization":{"baseProvider":{"name":"terraform-provider","version":"1.0.1"},"parameter":"eyJyZW1vdGUiOnsidXJsIjoicmVnaXN0cnkub3BlbnRvZnUub3JnL2tvbmcva29ubmVjdCIsInZlcnNpb24iOiIzLjkuMCJ9fQ=="}}