RTBFABRIC

AcceptLink

enum_ResponderErrorMaskingAction := [ "NO_BID", "PASSTHROUGH" ]
enum_ResponderErrorMaskingLoggingType := [ "NONE", "METRIC", "RESPONSE" ]

valid {
    input.Body.attributes.responderErrorMasking[_].httpCode == STRING
    input.Body.attributes.responderErrorMasking[_].action == enum_ResponderErrorMaskingAction[_]
    input.Body.attributes.responderErrorMasking[_].loggingTypes[_] == enum_ResponderErrorMaskingLoggingType[_]
    input.Body.attributes.responderErrorMasking[_].responseLoggingPercentage == FLOAT
    input.Body.attributes.customerProvidedId == STRING
    input.Body.logSettings.applicationLogs.sampling.errorLog == DOUBLE
    input.Body.logSettings.applicationLogs.sampling.filterLog == DOUBLE
    input.ReqMap.gatewayId == STRING
    input.ReqMap.linkId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

CreateInboundExternalLink

enum_ResponderErrorMaskingAction := [ "NO_BID", "PASSTHROUGH" ]
enum_ResponderErrorMaskingLoggingType := [ "NONE", "METRIC", "RESPONSE" ]

valid {
    input.Body.clientToken == STRING
    input.Body.attributes.responderErrorMasking[_].httpCode == STRING
    input.Body.attributes.responderErrorMasking[_].action == enum_ResponderErrorMaskingAction[_]
    input.Body.attributes.responderErrorMasking[_].loggingTypes[_] == enum_ResponderErrorMaskingLoggingType[_]
    input.Body.attributes.responderErrorMasking[_].responseLoggingPercentage == FLOAT
    input.Body.attributes.customerProvidedId == STRING
    input.Body.tags.STRING == STRING
    input.ReqMap.gatewayId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

CreateLink

enum_ResponderErrorMaskingAction := [ "NO_BID", "PASSTHROUGH" ]
enum_ResponderErrorMaskingLoggingType := [ "NONE", "METRIC", "RESPONSE" ]

valid {
    input.Body.peerGatewayId == STRING
    input.Body.attributes.responderErrorMasking[_].httpCode == STRING
    input.Body.attributes.responderErrorMasking[_].action == enum_ResponderErrorMaskingAction[_]
    input.Body.attributes.responderErrorMasking[_].loggingTypes[_] == enum_ResponderErrorMaskingLoggingType[_]
    input.Body.attributes.responderErrorMasking[_].responseLoggingPercentage == FLOAT
    input.Body.attributes.customerProvidedId == STRING
    input.Body.httpResponderAllowed == BOOLEAN
    input.Body.tags.STRING == STRING
    input.Body.logSettings.applicationLogs.sampling.errorLog == DOUBLE
    input.Body.logSettings.applicationLogs.sampling.filterLog == DOUBLE
    input.ReqMap.gatewayId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

CreateOutboundExternalLink

valid {
    input.Body.clientToken == STRING
    input.Body.publicEndpoint == STRING
    input.Body.tags.STRING == STRING
    input.ReqMap.gatewayId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

CreateRequesterGateway

valid {
    input.Body.vpcId == STRING
    input.Body.subnetIds[_] == STRING
    input.Body.securityGroupIds[_] == STRING
    input.Body.clientToken == STRING
    input.Body.description == STRING
    input.Body.tags.STRING == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

CreateResponderGateway

enum_Protocol := [ "HTTP", "HTTPS" ]

valid {
    input.Body.vpcId == STRING
    input.Body.subnetIds[_] == STRING
    input.Body.securityGroupIds[_] == STRING
    input.Body.domainName == STRING
    input.Body.port == INTEGER
    input.Body.protocol == enum_Protocol[_]
    input.Body.trustStoreConfiguration.certificateAuthorityCertificates[_] == STRING
    input.Body.managedEndpointConfiguration.autoScalingGroups.autoScalingGroupNames[_] == STRING
    input.Body.managedEndpointConfiguration.autoScalingGroups.roleArn == STRING
    input.Body.managedEndpointConfiguration.eksEndpoints.endpointsResourceName == STRING
    input.Body.managedEndpointConfiguration.eksEndpoints.endpointsResourceNamespace == STRING
    input.Body.managedEndpointConfiguration.eksEndpoints.clusterApiServerEndpointUri == STRING
    input.Body.managedEndpointConfiguration.eksEndpoints.clusterApiServerCaCertificateChain == STRING
    input.Body.managedEndpointConfiguration.eksEndpoints.clusterName == STRING
    input.Body.managedEndpointConfiguration.eksEndpoints.roleArn == STRING
    input.Body.clientToken == STRING
    input.Body.description == STRING
    input.Body.tags.STRING == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

DeleteInboundExternalLink

valid {
    input.ReqMap.gatewayId == STRING
    input.ReqMap.linkId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

DeleteLink

valid {
    input.ReqMap.gatewayId == STRING
    input.ReqMap.linkId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

DeleteOutboundExternalLink

valid {
    input.ReqMap.gatewayId == STRING
    input.ReqMap.linkId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

DeleteRequesterGateway

valid {
    input.ReqMap.gatewayId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

DeleteResponderGateway

valid {
    input.ReqMap.gatewayId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

GetInboundExternalLink

valid {
    input.ReqMap.gatewayId == STRING
    input.ReqMap.linkId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

GetLink

valid {
    input.ReqMap.gatewayId == STRING
    input.ReqMap.linkId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

GetOutboundExternalLink

valid {
    input.ReqMap.gatewayId == STRING
    input.ReqMap.linkId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

GetRequesterGateway

valid {
    input.ReqMap.gatewayId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

GetResponderGateway

valid {
    input.ReqMap.gatewayId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

ListLinks

valid {
    input.ReqMap.gatewayId == STRING
    input.Qs.nextToken == STRING
    input.Qs.maxResults == INTEGER
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

ListRequesterGateways

valid {
    input.Qs.maxResults == INTEGER
    input.Qs.nextToken == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

ListResponderGateways

valid {
    input.Qs.maxResults == INTEGER
    input.Qs.nextToken == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

ListTagsForResource

valid {
    input.ReqMap.resourceArn == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

RejectLink

valid {
    input.ReqMap.gatewayId == STRING
    input.ReqMap.linkId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

TagResource

valid {
    input.Body.tags.STRING == STRING
    input.ReqMap.resourceArn == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

UntagResource

valid {
    input.ReqMap.resourceArn == STRING
    input.Qs.tagKeys[_] == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

UpdateLink

valid {
    input.Body.logSettings.applicationLogs.sampling.errorLog == DOUBLE
    input.Body.logSettings.applicationLogs.sampling.filterLog == DOUBLE
    input.ReqMap.gatewayId == STRING
    input.ReqMap.linkId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

UpdateLinkModuleFlow

enum_FilterType := [ "INCLUDE", "EXCLUDE" ]

valid {
    input.Body.clientToken == STRING
    input.Body.modules[_].version == STRING
    input.Body.modules[_].name == STRING
    input.Body.modules[_].dependsOn[_] == STRING
    input.Body.modules[_].moduleParameters.noBid.reason == STRING
    input.Body.modules[_].moduleParameters.noBid.reasonCode == INTEGER
    input.Body.modules[_].moduleParameters.noBid.passThroughPercentage == FLOAT
    input.Body.modules[_].moduleParameters.openRtbAttribute.filterType == enum_FilterType[_]
    input.Body.modules[_].moduleParameters.openRtbAttribute.filterConfiguration[_].criteria[_].path == STRING
    input.Body.modules[_].moduleParameters.openRtbAttribute.filterConfiguration[_].criteria[_].values[_] == STRING
    input.Body.modules[_].moduleParameters.openRtbAttribute.action.noBid.noBidReasonCode == INTEGER
    input.Body.modules[_].moduleParameters.openRtbAttribute.action.headerTag.name == STRING
    input.Body.modules[_].moduleParameters.openRtbAttribute.action.headerTag.value == STRING
    input.Body.modules[_].moduleParameters.openRtbAttribute.holdbackPercentage == FLOAT
    input.ReqMap.gatewayId == STRING
    input.ReqMap.linkId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

UpdateRequesterGateway

valid {
    input.Body.clientToken == STRING
    input.Body.description == STRING
    input.ReqMap.gatewayId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

UpdateResponderGateway

enum_Protocol := [ "HTTP", "HTTPS" ]

valid {
    input.Body.domainName == STRING
    input.Body.port == INTEGER
    input.Body.protocol == enum_Protocol[_]
    input.Body.trustStoreConfiguration.certificateAuthorityCertificates[_] == STRING
    input.Body.managedEndpointConfiguration.autoScalingGroups.autoScalingGroupNames[_] == STRING
    input.Body.managedEndpointConfiguration.autoScalingGroups.roleArn == STRING
    input.Body.managedEndpointConfiguration.eksEndpoints.endpointsResourceName == STRING
    input.Body.managedEndpointConfiguration.eksEndpoints.endpointsResourceNamespace == STRING
    input.Body.managedEndpointConfiguration.eksEndpoints.clusterApiServerEndpointUri == STRING
    input.Body.managedEndpointConfiguration.eksEndpoints.clusterApiServerCaCertificateChain == STRING
    input.Body.managedEndpointConfiguration.eksEndpoints.clusterName == STRING
    input.Body.managedEndpointConfiguration.eksEndpoints.roleArn == STRING
    input.Body.clientToken == STRING
    input.Body.description == STRING
    input.ReqMap.gatewayId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}