NETWORKMANAGER

AcceptAttachment

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

AssociateConnectPeer

valid {
    input.Body.ConnectPeerId == STRING
    input.Body.DeviceId == STRING
    input.Body.LinkId == STRING
    input.ReqMap.globalNetworkId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

AssociateCustomerGateway

valid {
    input.Body.CustomerGatewayArn == STRING
    input.Body.DeviceId == STRING
    input.Body.LinkId == STRING
    input.ReqMap.globalNetworkId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

AssociateLink

valid {
    input.Body.DeviceId == STRING
    input.Body.LinkId == STRING
    input.ReqMap.globalNetworkId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

AssociateTransitGatewayConnectPeer

valid {
    input.Body.TransitGatewayConnectPeerArn == STRING
    input.Body.DeviceId == STRING
    input.Body.LinkId == STRING
    input.ReqMap.globalNetworkId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

CreateConnectAttachment

enum_TunnelProtocol := [ "GRE", "NO_ENCAP" ]

valid {
    input.Body.CoreNetworkId == STRING
    input.Body.EdgeLocation == STRING
    input.Body.TransportAttachmentId == STRING
    input.Body.Options.Protocol == enum_TunnelProtocol[_]
    input.Body.Tags[_].Key == STRING
    input.Body.Tags[_].Value == STRING
    input.Body.ClientToken == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

CreateConnectPeer

valid {
    input.Body.ConnectAttachmentId == STRING
    input.Body.CoreNetworkAddress == STRING
    input.Body.PeerAddress == STRING
    input.Body.BgpOptions.PeerAsn == LONG
    input.Body.InsideCidrBlocks[_] == STRING
    input.Body.Tags[_].Key == STRING
    input.Body.Tags[_].Value == STRING
    input.Body.ClientToken == STRING
    input.Body.SubnetArn == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

CreateConnection

valid {
    input.Body.DeviceId == STRING
    input.Body.ConnectedDeviceId == STRING
    input.Body.LinkId == STRING
    input.Body.ConnectedLinkId == STRING
    input.Body.Description == STRING
    input.Body.Tags[_].Key == STRING
    input.Body.Tags[_].Value == STRING
    input.ReqMap.globalNetworkId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

CreateCoreNetwork

valid {
    input.Body.GlobalNetworkId == STRING
    input.Body.Description == STRING
    input.Body.Tags[_].Key == STRING
    input.Body.Tags[_].Value == STRING
    input.Body.PolicyDocument == STRING
    input.Body.ClientToken == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

CreateDevice

valid {
    input.Body.AWSLocation.Zone == STRING
    input.Body.AWSLocation.SubnetArn == STRING
    input.Body.Description == STRING
    input.Body.Type == STRING
    input.Body.Vendor == STRING
    input.Body.Model == STRING
    input.Body.SerialNumber == STRING
    input.Body.Location.Address == STRING
    input.Body.Location.Latitude == STRING
    input.Body.Location.Longitude == STRING
    input.Body.SiteId == STRING
    input.Body.Tags[_].Key == STRING
    input.Body.Tags[_].Value == STRING
    input.ReqMap.globalNetworkId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

CreateGlobalNetwork

valid {
    input.Body.Description == STRING
    input.Body.Tags[_].Key == STRING
    input.Body.Tags[_].Value == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

CreateLink

valid {
    input.Body.Description == STRING
    input.Body.Type == STRING
    input.Body.Bandwidth.UploadSpeed == INTEGER
    input.Body.Bandwidth.DownloadSpeed == INTEGER
    input.Body.Provider == STRING
    input.Body.SiteId == STRING
    input.Body.Tags[_].Key == STRING
    input.Body.Tags[_].Value == STRING
    input.ReqMap.globalNetworkId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

CreateSite

valid {
    input.Body.Description == STRING
    input.Body.Location.Address == STRING
    input.Body.Location.Latitude == STRING
    input.Body.Location.Longitude == STRING
    input.Body.Tags[_].Key == STRING
    input.Body.Tags[_].Value == STRING
    input.ReqMap.globalNetworkId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

CreateSiteToSiteVpnAttachment

valid {
    input.Body.CoreNetworkId == STRING
    input.Body.VpnConnectionArn == STRING
    input.Body.Tags[_].Key == STRING
    input.Body.Tags[_].Value == STRING
    input.Body.ClientToken == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

CreateTransitGatewayPeering

valid {
    input.Body.CoreNetworkId == STRING
    input.Body.TransitGatewayArn == STRING
    input.Body.Tags[_].Key == STRING
    input.Body.Tags[_].Value == STRING
    input.Body.ClientToken == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

CreateTransitGatewayRouteTableAttachment

valid {
    input.Body.PeeringId == STRING
    input.Body.TransitGatewayRouteTableArn == STRING
    input.Body.Tags[_].Key == STRING
    input.Body.Tags[_].Value == STRING
    input.Body.ClientToken == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

CreateVpcAttachment

valid {
    input.Body.CoreNetworkId == STRING
    input.Body.VpcArn == STRING
    input.Body.SubnetArns[_] == STRING
    input.Body.Options.Ipv6Support == BOOLEAN
    input.Body.Options.ApplianceModeSupport == BOOLEAN
    input.Body.Tags[_].Key == STRING
    input.Body.Tags[_].Value == STRING
    input.Body.ClientToken == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

DeleteAttachment

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

DeleteConnectPeer

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

DeleteConnection

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

DeleteCoreNetwork

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

DeleteCoreNetworkPolicyVersion

valid {
    input.ReqMap.coreNetworkId == STRING
    input.ReqMap.policyVersionId == INTEGER
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

DeleteDevice

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

DeleteGlobalNetwork

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

DeleteLink

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

DeletePeering

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

DeleteResourcePolicy

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

DeleteSite

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

DeregisterTransitGateway

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

DescribeGlobalNetworks

valid {
    input.Qs.globalNetworkIds[_] == STRING
    input.Qs.maxResults == INTEGER
    input.Qs.nextToken == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

DisassociateConnectPeer

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

DisassociateCustomerGateway

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

DisassociateLink

valid {
    input.ReqMap.globalNetworkId == STRING
    input.Qs.deviceId == STRING
    input.Qs.linkId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

DisassociateTransitGatewayConnectPeer

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

ExecuteCoreNetworkChangeSet

valid {
    input.ReqMap.coreNetworkId == STRING
    input.ReqMap.policyVersionId == INTEGER
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

GetConnectAttachment

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

GetConnectPeer

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

GetConnectPeerAssociations

valid {
    input.ReqMap.globalNetworkId == STRING
    input.Qs.connectPeerIds[_] == STRING
    input.Qs.maxResults == INTEGER
    input.Qs.nextToken == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

GetConnections

valid {
    input.ReqMap.globalNetworkId == STRING
    input.Qs.connectionIds[_] == STRING
    input.Qs.deviceId == STRING
    input.Qs.maxResults == INTEGER
    input.Qs.nextToken == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

GetCoreNetwork

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

GetCoreNetworkChangeEvents

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

GetCoreNetworkChangeSet

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

GetCoreNetworkPolicy

enum_CoreNetworkPolicyAlias := [ "LIVE", "LATEST" ]

valid {
    input.ReqMap.coreNetworkId == STRING
    input.Qs.policyVersionId == INTEGER
    input.Qs.alias == enum_CoreNetworkPolicyAlias[_]
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

GetCustomerGatewayAssociations

valid {
    input.ReqMap.globalNetworkId == STRING
    input.Qs.customerGatewayArns[_] == STRING
    input.Qs.maxResults == INTEGER
    input.Qs.nextToken == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

GetDevices

valid {
    input.ReqMap.globalNetworkId == STRING
    input.Qs.deviceIds[_] == STRING
    input.Qs.siteId == STRING
    input.Qs.maxResults == INTEGER
    input.Qs.nextToken == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

GetLinkAssociations

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

GetLinks

valid {
    input.ReqMap.globalNetworkId == STRING
    input.Qs.linkIds[_] == STRING
    input.Qs.siteId == STRING
    input.Qs.type == STRING
    input.Qs.provider == STRING
    input.Qs.maxResults == INTEGER
    input.Qs.nextToken == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

GetNetworkResourceCounts

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

GetNetworkResourceRelationships

valid {
    input.ReqMap.globalNetworkId == STRING
    input.Qs.coreNetworkId == STRING
    input.Qs.registeredGatewayArn == STRING
    input.Qs.awsRegion == STRING
    input.Qs.accountId == STRING
    input.Qs.resourceType == STRING
    input.Qs.resourceArn == STRING
    input.Qs.maxResults == INTEGER
    input.Qs.nextToken == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

GetNetworkResources

valid {
    input.ReqMap.globalNetworkId == STRING
    input.Qs.coreNetworkId == STRING
    input.Qs.registeredGatewayArn == STRING
    input.Qs.awsRegion == STRING
    input.Qs.accountId == STRING
    input.Qs.resourceType == STRING
    input.Qs.resourceArn == STRING
    input.Qs.maxResults == INTEGER
    input.Qs.nextToken == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

GetNetworkRoutes

enum_RouteState := [ "ACTIVE", "BLACKHOLE" ]
enum_RouteType := [ "PROPAGATED", "STATIC" ]

valid {
    input.Body.RouteTableIdentifier.TransitGatewayRouteTableArn == STRING
    input.Body.RouteTableIdentifier.CoreNetworkSegmentEdge.CoreNetworkId == STRING
    input.Body.RouteTableIdentifier.CoreNetworkSegmentEdge.SegmentName == STRING
    input.Body.RouteTableIdentifier.CoreNetworkSegmentEdge.EdgeLocation == STRING
    input.Body.RouteTableIdentifier.CoreNetworkNetworkFunctionGroup.CoreNetworkId == STRING
    input.Body.RouteTableIdentifier.CoreNetworkNetworkFunctionGroup.NetworkFunctionGroupName == STRING
    input.Body.RouteTableIdentifier.CoreNetworkNetworkFunctionGroup.EdgeLocation == STRING
    input.Body.ExactCidrMatches[_] == STRING
    input.Body.LongestPrefixMatches[_] == STRING
    input.Body.SubnetOfMatches[_] == STRING
    input.Body.SupernetOfMatches[_] == STRING
    input.Body.PrefixListIds[_] == STRING
    input.Body.States[_] == enum_RouteState[_]
    input.Body.Types[_] == enum_RouteType[_]
    input.Body.DestinationFilters.STRING[_] == STRING
    input.ReqMap.globalNetworkId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

GetNetworkTelemetry

valid {
    input.ReqMap.globalNetworkId == STRING
    input.Qs.coreNetworkId == STRING
    input.Qs.registeredGatewayArn == STRING
    input.Qs.awsRegion == STRING
    input.Qs.accountId == STRING
    input.Qs.resourceType == STRING
    input.Qs.resourceArn == STRING
    input.Qs.maxResults == INTEGER
    input.Qs.nextToken == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

GetResourcePolicy

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

GetRouteAnalysis

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

GetSiteToSiteVpnAttachment

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

GetSites

valid {
    input.ReqMap.globalNetworkId == STRING
    input.Qs.siteIds[_] == STRING
    input.Qs.maxResults == INTEGER
    input.Qs.nextToken == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

GetTransitGatewayConnectPeerAssociations

valid {
    input.ReqMap.globalNetworkId == STRING
    input.Qs.transitGatewayConnectPeerArns[_] == STRING
    input.Qs.maxResults == INTEGER
    input.Qs.nextToken == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

GetTransitGatewayPeering

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

GetTransitGatewayRegistrations

valid {
    input.ReqMap.globalNetworkId == STRING
    input.Qs.transitGatewayArns[_] == STRING
    input.Qs.maxResults == INTEGER
    input.Qs.nextToken == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

GetTransitGatewayRouteTableAttachment

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

GetVpcAttachment

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

ListAttachments

enum_AttachmentState := [ "REJECTED", "PENDING_ATTACHMENT_ACCEPTANCE", "CREATING", "FAILED", "AVAILABLE", "UPDATING", "PENDING_NETWORK_UPDATE", "PENDING_TAG_ACCEPTANCE", "DELETING" ]
enum_AttachmentType := [ "CONNECT", "SITE_TO_SITE_VPN", "VPC", "TRANSIT_GATEWAY_ROUTE_TABLE" ]

valid {
    input.Qs.coreNetworkId == STRING
    input.Qs.attachmentType == enum_AttachmentType[_]
    input.Qs.edgeLocation == STRING
    input.Qs.state == enum_AttachmentState[_]
    input.Qs.maxResults == INTEGER
    input.Qs.nextToken == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

ListConnectPeers

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

ListCoreNetworkPolicyVersions

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

ListCoreNetworks

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

ListOrganizationServiceAccessStatus

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

ListPeerings

enum_PeeringState := [ "CREATING", "FAILED", "AVAILABLE", "DELETING" ]
enum_PeeringType := [ "TRANSIT_GATEWAY" ]

valid {
    input.Qs.coreNetworkId == STRING
    input.Qs.peeringType == enum_PeeringType[_]
    input.Qs.edgeLocation == STRING
    input.Qs.state == enum_PeeringState[_]
    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
}

PutCoreNetworkPolicy

valid {
    input.Body.PolicyDocument == STRING
    input.Body.Description == STRING
    input.Body.LatestVersionId == INTEGER
    input.Body.ClientToken == STRING
    input.ReqMap.coreNetworkId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

PutResourcePolicy

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

RegisterTransitGateway

valid {
    input.Body.TransitGatewayArn == STRING
    input.ReqMap.globalNetworkId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

RejectAttachment

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

RestoreCoreNetworkPolicyVersion

valid {
    input.ReqMap.coreNetworkId == STRING
    input.ReqMap.policyVersionId == INTEGER
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

StartOrganizationServiceAccessUpdate

valid {
    input.Body.Action == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

StartRouteAnalysis

valid {
    input.Body.Source.TransitGatewayAttachmentArn == STRING
    input.Body.Source.IpAddress == STRING
    input.Body.Destination.TransitGatewayAttachmentArn == STRING
    input.Body.Destination.IpAddress == STRING
    input.Body.IncludeReturnPath == BOOLEAN
    input.Body.UseMiddleboxes == BOOLEAN
    input.ReqMap.globalNetworkId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

TagResource

valid {
    input.Body.Tags[_].Key == STRING
    input.Body.Tags[_].Value == 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
}

UpdateConnection

valid {
    input.Body.LinkId == STRING
    input.Body.ConnectedLinkId == STRING
    input.Body.Description == STRING
    input.ReqMap.globalNetworkId == STRING
    input.ReqMap.connectionId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

UpdateCoreNetwork

valid {
    input.Body.Description == STRING
    input.ReqMap.coreNetworkId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

UpdateDevice

valid {
    input.Body.AWSLocation.Zone == STRING
    input.Body.AWSLocation.SubnetArn == STRING
    input.Body.Description == STRING
    input.Body.Type == STRING
    input.Body.Vendor == STRING
    input.Body.Model == STRING
    input.Body.SerialNumber == STRING
    input.Body.Location.Address == STRING
    input.Body.Location.Latitude == STRING
    input.Body.Location.Longitude == STRING
    input.Body.SiteId == STRING
    input.ReqMap.globalNetworkId == STRING
    input.ReqMap.deviceId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

UpdateGlobalNetwork

valid {
    input.Body.Description == STRING
    input.ReqMap.globalNetworkId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

UpdateLink

valid {
    input.Body.Description == STRING
    input.Body.Type == STRING
    input.Body.Bandwidth.UploadSpeed == INTEGER
    input.Body.Bandwidth.DownloadSpeed == INTEGER
    input.Body.Provider == STRING
    input.ReqMap.globalNetworkId == STRING
    input.ReqMap.linkId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

UpdateNetworkResourceMetadata

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

UpdateSite

valid {
    input.Body.Description == STRING
    input.Body.Location.Address == STRING
    input.Body.Location.Latitude == STRING
    input.Body.Location.Longitude == STRING
    input.ReqMap.globalNetworkId == STRING
    input.ReqMap.siteId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

UpdateVpcAttachment

valid {
    input.Body.AddSubnetArns[_] == STRING
    input.Body.RemoveSubnetArns[_] == STRING
    input.Body.Options.Ipv6Support == BOOLEAN
    input.Body.Options.ApplianceModeSupport == BOOLEAN
    input.ReqMap.attachmentId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}