AssociateMemberToFarm

enum_MembershipLevel := [ "VIEWER", "CONTRIBUTOR", "OWNER", "MANAGER" ]
enum_PrincipalType := [ "USER", "GROUP" ]

valid {
    input.Body.principalType == enum_PrincipalType[_]
    input.Body.identityStoreId == STRING
    input.Body.membershipLevel == enum_MembershipLevel[_]
    input.ReqMap.farmId == STRING
    input.ReqMap.principalId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

AssociateMemberToFleet

enum_MembershipLevel := [ "VIEWER", "CONTRIBUTOR", "OWNER", "MANAGER" ]
enum_PrincipalType := [ "USER", "GROUP" ]

valid {
    input.Body.principalType == enum_PrincipalType[_]
    input.Body.identityStoreId == STRING
    input.Body.membershipLevel == enum_MembershipLevel[_]
    input.ReqMap.farmId == STRING
    input.ReqMap.fleetId == STRING
    input.ReqMap.principalId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

AssociateMemberToJob

enum_MembershipLevel := [ "VIEWER", "CONTRIBUTOR", "OWNER", "MANAGER" ]
enum_PrincipalType := [ "USER", "GROUP" ]

valid {
    input.Body.principalType == enum_PrincipalType[_]
    input.Body.identityStoreId == STRING
    input.Body.membershipLevel == enum_MembershipLevel[_]
    input.ReqMap.farmId == STRING
    input.ReqMap.queueId == STRING
    input.ReqMap.jobId == STRING
    input.ReqMap.principalId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

AssociateMemberToQueue

enum_MembershipLevel := [ "VIEWER", "CONTRIBUTOR", "OWNER", "MANAGER" ]
enum_PrincipalType := [ "USER", "GROUP" ]

valid {
    input.Body.principalType == enum_PrincipalType[_]
    input.Body.identityStoreId == STRING
    input.Body.membershipLevel == enum_MembershipLevel[_]
    input.ReqMap.farmId == STRING
    input.ReqMap.queueId == STRING
    input.ReqMap.principalId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

AssumeFleetRoleForRead

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

AssumeFleetRoleForWorker

valid {
    input.ReqMap.farmId == STRING
    input.ReqMap.fleetId == STRING
    input.ReqMap.workerId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

AssumeQueueRoleForRead

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

AssumeQueueRoleForUser

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

AssumeQueueRoleForWorker

valid {
    input.ReqMap.farmId == STRING
    input.ReqMap.fleetId == STRING
    input.ReqMap.workerId == STRING
    input.Qs.queueId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

BatchGetJobEntity

valid {
    input.Body.identifiers[_].jobDetails.jobId == STRING
    input.Body.identifiers[_].jobAttachmentDetails.jobId == STRING
    input.Body.identifiers[_].stepDetails.jobId == STRING
    input.Body.identifiers[_].stepDetails.stepId == STRING
    input.Body.identifiers[_].environmentDetails.jobId == STRING
    input.Body.identifiers[_].environmentDetails.environmentId == STRING
    input.ReqMap.farmId == STRING
    input.ReqMap.fleetId == STRING
    input.ReqMap.workerId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

CopyJobTemplate

valid {
    input.Body.targetS3Location.bucketName == STRING
    input.Body.targetS3Location.key == STRING
    input.ReqMap.farmId == STRING
    input.ReqMap.jobId == STRING
    input.ReqMap.queueId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

CreateBudget

enum_BudgetActionType := [ "STOP_SCHEDULING_AND_COMPLETE_TASKS", "STOP_SCHEDULING_AND_CANCEL_TASKS" ]

valid {
    input.Body.usageTrackingResource.queueId == STRING
    input.Body.displayName == STRING
    input.Body.description == STRING
    input.Body.approximateDollarLimit == FLOAT
    input.Body.actions[_].type == enum_BudgetActionType[_]
    input.Body.actions[_].thresholdPercentage == FLOAT
    input.Body.actions[_].description == STRING
    input.Body.schedule.fixed.startTime == TIMESTAMP
    input.Body.schedule.fixed.endTime == TIMESTAMP
    input.ReqMap.farmId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

CreateFarm

valid {
    input.Body.displayName == STRING
    input.Body.description == STRING
    input.Body.kmsKeyArn == STRING
    input.Body.tags.STRING == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

CreateFleet

enum_AcceleratorName := [ "t4", "a10g", "l4", "l40s" ]
enum_AcceleratorType := [ "gpu" ]
enum_AutoScalingMode := [ "NO_SCALING", "EVENT_BASED_AUTO_SCALING" ]
enum_CpuArchitectureType := [ "x86_64", "arm64" ]
enum_CustomerManagedFleetOperatingSystemFamily := [ "WINDOWS", "LINUX", "MACOS" ]
enum_Ec2MarketType := [ "on-demand", "spot" ]
enum_ServiceManagedFleetOperatingSystemFamily := [ "WINDOWS", "LINUX" ]

valid {
    input.Body.displayName == STRING
    input.Body.description == STRING
    input.Body.roleArn == STRING
    input.Body.minWorkerCount == INTEGER
    input.Body.maxWorkerCount == INTEGER
    input.Body.configuration.customerManaged.mode == enum_AutoScalingMode[_]
    input.Body.configuration.customerManaged.workerCapabilities.vCpuCount.min == INTEGER
    input.Body.configuration.customerManaged.workerCapabilities.vCpuCount.max == INTEGER
    input.Body.configuration.customerManaged.workerCapabilities.memoryMiB.min == INTEGER
    input.Body.configuration.customerManaged.workerCapabilities.memoryMiB.max == INTEGER
    input.Body.configuration.customerManaged.workerCapabilities.acceleratorTypes[_] == enum_AcceleratorType[_]
    input.Body.configuration.customerManaged.workerCapabilities.acceleratorCount.min == INTEGER
    input.Body.configuration.customerManaged.workerCapabilities.acceleratorCount.max == INTEGER
    input.Body.configuration.customerManaged.workerCapabilities.acceleratorTotalMemoryMiB.min == INTEGER
    input.Body.configuration.customerManaged.workerCapabilities.acceleratorTotalMemoryMiB.max == INTEGER
    input.Body.configuration.customerManaged.workerCapabilities.osFamily == enum_CustomerManagedFleetOperatingSystemFamily[_]
    input.Body.configuration.customerManaged.workerCapabilities.cpuArchitectureType == enum_CpuArchitectureType[_]
    input.Body.configuration.customerManaged.workerCapabilities.customAmounts[_].name == STRING
    input.Body.configuration.customerManaged.workerCapabilities.customAmounts[_].min == FLOAT
    input.Body.configuration.customerManaged.workerCapabilities.customAmounts[_].max == FLOAT
    input.Body.configuration.customerManaged.workerCapabilities.customAttributes[_].name == STRING
    input.Body.configuration.customerManaged.workerCapabilities.customAttributes[_].values[_] == STRING
    input.Body.configuration.customerManaged.storageProfileId == STRING
    input.Body.configuration.serviceManagedEc2.instanceCapabilities.vCpuCount.min == INTEGER
    input.Body.configuration.serviceManagedEc2.instanceCapabilities.vCpuCount.max == INTEGER
    input.Body.configuration.serviceManagedEc2.instanceCapabilities.memoryMiB.min == INTEGER
    input.Body.configuration.serviceManagedEc2.instanceCapabilities.memoryMiB.max == INTEGER
    input.Body.configuration.serviceManagedEc2.instanceCapabilities.osFamily == enum_ServiceManagedFleetOperatingSystemFamily[_]
    input.Body.configuration.serviceManagedEc2.instanceCapabilities.cpuArchitectureType == enum_CpuArchitectureType[_]
    input.Body.configuration.serviceManagedEc2.instanceCapabilities.rootEbsVolume.sizeGiB == INTEGER
    input.Body.configuration.serviceManagedEc2.instanceCapabilities.rootEbsVolume.iops == INTEGER
    input.Body.configuration.serviceManagedEc2.instanceCapabilities.rootEbsVolume.throughputMiB == INTEGER
    input.Body.configuration.serviceManagedEc2.instanceCapabilities.acceleratorCapabilities.selections[_].name == enum_AcceleratorName[_]
    input.Body.configuration.serviceManagedEc2.instanceCapabilities.acceleratorCapabilities.selections[_].runtime == STRING
    input.Body.configuration.serviceManagedEc2.instanceCapabilities.acceleratorCapabilities.count.min == INTEGER
    input.Body.configuration.serviceManagedEc2.instanceCapabilities.acceleratorCapabilities.count.max == INTEGER
    input.Body.configuration.serviceManagedEc2.instanceCapabilities.allowedInstanceTypes[_] == STRING
    input.Body.configuration.serviceManagedEc2.instanceCapabilities.excludedInstanceTypes[_] == STRING
    input.Body.configuration.serviceManagedEc2.instanceCapabilities.customAmounts[_].name == STRING
    input.Body.configuration.serviceManagedEc2.instanceCapabilities.customAmounts[_].min == FLOAT
    input.Body.configuration.serviceManagedEc2.instanceCapabilities.customAmounts[_].max == FLOAT
    input.Body.configuration.serviceManagedEc2.instanceCapabilities.customAttributes[_].name == STRING
    input.Body.configuration.serviceManagedEc2.instanceCapabilities.customAttributes[_].values[_] == STRING
    input.Body.configuration.serviceManagedEc2.instanceMarketOptions.type == enum_Ec2MarketType[_]
    input.Body.tags.STRING == STRING
    input.ReqMap.farmId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

CreateJob

enum_CreateJobTargetTaskRunStatus := [ "READY", "SUSPENDED" ]
enum_JobAttachmentsFileSystem := [ "COPIED", "VIRTUAL" ]
enum_JobTemplateType := [ "JSON", "YAML" ]
enum_PathFormat := [ "windows", "posix" ]

valid {
    input.Body.template == STRING
    input.Body.templateType == enum_JobTemplateType[_]
    input.Body.priority == INTEGER
    input.Body.parameters.STRING.int == STRING
    input.Body.parameters.STRING.float == STRING
    input.Body.parameters.STRING.string == STRING
    input.Body.parameters.STRING.path == STRING
    input.Body.attachments.manifests[_].fileSystemLocationName == STRING
    input.Body.attachments.manifests[_].rootPath == STRING
    input.Body.attachments.manifests[_].rootPathFormat == enum_PathFormat[_]
    input.Body.attachments.manifests[_].outputRelativeDirectories[_] == STRING
    input.Body.attachments.manifests[_].inputManifestPath == STRING
    input.Body.attachments.manifests[_].inputManifestHash == STRING
    input.Body.attachments.fileSystem == enum_JobAttachmentsFileSystem[_]
    input.Body.storageProfileId == STRING
    input.Body.targetTaskRunStatus == enum_CreateJobTargetTaskRunStatus[_]
    input.Body.maxFailedTasksCount == INTEGER
    input.Body.maxRetriesPerTask == INTEGER
    input.Body.sourceJobId == STRING
    input.ReqMap.farmId == STRING
    input.ReqMap.queueId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

CreateLicenseEndpoint

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

CreateMonitor

valid {
    input.Body.displayName == STRING
    input.Body.identityCenterInstanceArn == STRING
    input.Body.subdomain == STRING
    input.Body.roleArn == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

CreateQueue

enum_DefaultQueueBudgetAction := [ "NONE", "STOP_SCHEDULING_AND_COMPLETE_TASKS", "STOP_SCHEDULING_AND_CANCEL_TASKS" ]
enum_RunAs := [ "QUEUE_CONFIGURED_USER", "WORKER_AGENT_USER" ]

valid {
    input.Body.displayName == STRING
    input.Body.description == STRING
    input.Body.defaultBudgetAction == enum_DefaultQueueBudgetAction[_]
    input.Body.jobAttachmentSettings.s3BucketName == STRING
    input.Body.jobAttachmentSettings.rootPrefix == STRING
    input.Body.roleArn == STRING
    input.Body.jobRunAsUser.posix.user == STRING
    input.Body.jobRunAsUser.posix.group == STRING
    input.Body.jobRunAsUser.windows.user == STRING
    input.Body.jobRunAsUser.windows.passwordArn == STRING
    input.Body.jobRunAsUser.runAs == enum_RunAs[_]
    input.Body.requiredFileSystemLocationNames[_] == STRING
    input.Body.allowedStorageProfileIds[_] == STRING
    input.Body.tags.STRING == STRING
    input.ReqMap.farmId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

CreateQueueEnvironment

enum_EnvironmentTemplateType := [ "JSON", "YAML" ]

valid {
    input.Body.priority == INTEGER
    input.Body.templateType == enum_EnvironmentTemplateType[_]
    input.Body.template == STRING
    input.ReqMap.farmId == STRING
    input.ReqMap.queueId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

CreateQueueFleetAssociation

valid {
    input.Body.queueId == STRING
    input.Body.fleetId == STRING
    input.ReqMap.farmId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

CreateStorageProfile

enum_FileSystemLocationType := [ "SHARED", "LOCAL" ]
enum_StorageProfileOperatingSystemFamily := [ "WINDOWS", "LINUX", "MACOS" ]

valid {
    input.Body.displayName == STRING
    input.Body.osFamily == enum_StorageProfileOperatingSystemFamily[_]
    input.Body.fileSystemLocations[_].name == STRING
    input.Body.fileSystemLocations[_].path == STRING
    input.Body.fileSystemLocations[_].type == enum_FileSystemLocationType[_]
    input.ReqMap.farmId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

CreateWorker

valid {
    input.Body.hostProperties.ipAddresses.ipV4Addresses[_] == STRING
    input.Body.hostProperties.ipAddresses.ipV6Addresses[_] == STRING
    input.Body.hostProperties.hostName == STRING
    input.ReqMap.farmId == STRING
    input.ReqMap.fleetId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

DeleteBudget

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

DeleteFarm

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

DeleteFleet

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

DeleteLicenseEndpoint

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

DeleteMeteredProduct

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

DeleteMonitor

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

DeleteQueue

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

DeleteQueueEnvironment

valid {
    input.ReqMap.farmId == STRING
    input.ReqMap.queueId == STRING
    input.ReqMap.queueEnvironmentId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

DeleteQueueFleetAssociation

valid {
    input.ReqMap.farmId == STRING
    input.ReqMap.queueId == STRING
    input.ReqMap.fleetId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

DeleteStorageProfile

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

DeleteWorker

valid {
    input.ReqMap.farmId == STRING
    input.ReqMap.fleetId == STRING
    input.ReqMap.workerId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

DisassociateMemberFromFarm

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

DisassociateMemberFromFleet

valid {
    input.ReqMap.farmId == STRING
    input.ReqMap.fleetId == STRING
    input.ReqMap.principalId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

DisassociateMemberFromJob

valid {
    input.ReqMap.farmId == STRING
    input.ReqMap.queueId == STRING
    input.ReqMap.jobId == STRING
    input.ReqMap.principalId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

DisassociateMemberFromQueue

valid {
    input.ReqMap.farmId == STRING
    input.ReqMap.queueId == STRING
    input.ReqMap.principalId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

GetBudget

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

GetFarm

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

GetFleet

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

GetJob

valid {
    input.ReqMap.farmId == STRING
    input.ReqMap.jobId == STRING
    input.ReqMap.queueId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

GetLicenseEndpoint

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

GetMonitor

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

GetQueue

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

GetQueueEnvironment

valid {
    input.ReqMap.farmId == STRING
    input.ReqMap.queueId == STRING
    input.ReqMap.queueEnvironmentId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

GetQueueFleetAssociation

valid {
    input.ReqMap.farmId == STRING
    input.ReqMap.queueId == STRING
    input.ReqMap.fleetId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

GetSession

valid {
    input.ReqMap.farmId == STRING
    input.ReqMap.queueId == STRING
    input.ReqMap.jobId == STRING
    input.ReqMap.sessionId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

GetSessionAction

valid {
    input.ReqMap.farmId == STRING
    input.ReqMap.queueId == STRING
    input.ReqMap.jobId == STRING
    input.ReqMap.sessionActionId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

GetSessionsStatisticsAggregation

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

GetStep

valid {
    input.ReqMap.farmId == STRING
    input.ReqMap.queueId == STRING
    input.ReqMap.jobId == STRING
    input.ReqMap.stepId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

GetStorageProfile

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

GetStorageProfileForQueue

valid {
    input.ReqMap.farmId == STRING
    input.ReqMap.queueId == STRING
    input.ReqMap.storageProfileId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

GetTask

valid {
    input.ReqMap.farmId == STRING
    input.ReqMap.queueId == STRING
    input.ReqMap.jobId == STRING
    input.ReqMap.stepId == STRING
    input.ReqMap.taskId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

GetWorker

valid {
    input.ReqMap.farmId == STRING
    input.ReqMap.fleetId == STRING
    input.ReqMap.workerId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

ListAvailableMeteredProducts

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

ListBudgets

enum_BudgetStatus := [ "ACTIVE", "INACTIVE" ]

valid {
    input.ReqMap.farmId == STRING
    input.Qs.nextToken == STRING
    input.Qs.maxResults == INTEGER
    input.Qs.status == enum_BudgetStatus[_]
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

ListFarmMembers

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

ListFarms

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

ListFleetMembers

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

ListFleets

enum_FleetStatus := [ "ACTIVE", "CREATE_IN_PROGRESS", "UPDATE_IN_PROGRESS", "CREATE_FAILED", "UPDATE_FAILED" ]

valid {
    input.ReqMap.farmId == STRING
    input.Qs.principalId == STRING
    input.Qs.displayName == STRING
    input.Qs.status == enum_FleetStatus[_]
    input.Qs.nextToken == STRING
    input.Qs.maxResults == INTEGER
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

ListJobMembers

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

ListJobParameterDefinitions

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

ListJobs

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

ListLicenseEndpoints

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

ListMeteredProducts

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

ListMonitors

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

ListQueueEnvironments

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

ListQueueFleetAssociations

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

ListQueueMembers

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

ListQueues

enum_QueueStatus := [ "IDLE", "SCHEDULING", "SCHEDULING_BLOCKED" ]

valid {
    input.ReqMap.farmId == STRING
    input.Qs.principalId == STRING
    input.Qs.status == enum_QueueStatus[_]
    input.Qs.nextToken == STRING
    input.Qs.maxResults == INTEGER
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

ListSessionActions

valid {
    input.ReqMap.farmId == STRING
    input.ReqMap.queueId == STRING
    input.ReqMap.jobId == STRING
    input.Qs.sessionId == STRING
    input.Qs.taskId == STRING
    input.Qs.nextToken == STRING
    input.Qs.maxResults == INTEGER
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

ListSessions

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

ListSessionsForWorker

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

ListStepConsumers

valid {
    input.ReqMap.farmId == STRING
    input.ReqMap.queueId == STRING
    input.ReqMap.jobId == STRING
    input.ReqMap.stepId == STRING
    input.Qs.nextToken == STRING
    input.Qs.maxResults == INTEGER
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

ListStepDependencies

valid {
    input.ReqMap.farmId == STRING
    input.ReqMap.queueId == STRING
    input.ReqMap.jobId == STRING
    input.ReqMap.stepId == STRING
    input.Qs.nextToken == STRING
    input.Qs.maxResults == INTEGER
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

ListSteps

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

ListStorageProfiles

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

ListStorageProfilesForQueue

valid {
    input.ReqMap.farmId == STRING
    input.ReqMap.queueId == STRING
    input.Qs.nextToken == STRING
    input.Qs.maxResults == INTEGER
    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
}

ListTasks

valid {
    input.ReqMap.farmId == STRING
    input.ReqMap.queueId == STRING
    input.ReqMap.jobId == STRING
    input.ReqMap.stepId == STRING
    input.Qs.nextToken == STRING
    input.Qs.maxResults == INTEGER
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

ListWorkers

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

PutMeteredProduct

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

SearchJobs

enum_ComparisonOperator := [ "EQUAL", "NOT_EQUAL", "GREATER_THAN_EQUAL_TO", "GREATER_THAN", "LESS_THAN_EQUAL_TO", "LESS_THAN" ]
enum_LogicalOperator := [ "AND", "OR" ]
enum_SortOrder := [ "ASCENDING", "DESCENDING" ]

valid {
    input.Body.queueIds[_] == STRING
    input.Body.filterExpressions.filters[_].dateTimeFilter.name == STRING
    input.Body.filterExpressions.filters[_].dateTimeFilter.operator == enum_ComparisonOperator[_]
    input.Body.filterExpressions.filters[_].dateTimeFilter.dateTime == TIMESTAMP
    input.Body.filterExpressions.filters[_].parameterFilter.name == STRING
    input.Body.filterExpressions.filters[_].parameterFilter.operator == enum_ComparisonOperator[_]
    input.Body.filterExpressions.filters[_].parameterFilter.value == STRING
    input.Body.filterExpressions.filters[_].searchTermFilter.searchTerm == STRING
    input.Body.filterExpressions.filters[_].stringFilter.name == STRING
    input.Body.filterExpressions.filters[_].stringFilter.operator == enum_ComparisonOperator[_]
    input.Body.filterExpressions.filters[_].stringFilter.value == STRING
    input.Body.filterExpressions.filters[_].groupFilter == NESTED
    input.Body.filterExpressions.operator == enum_LogicalOperator[_]
    input.Body.sortExpressions[_].userJobsFirst.userIdentityId == STRING
    input.Body.sortExpressions[_].fieldSort.sortOrder == enum_SortOrder[_]
    input.Body.sortExpressions[_].fieldSort.name == STRING
    input.Body.sortExpressions[_].parameterSort.sortOrder == enum_SortOrder[_]
    input.Body.sortExpressions[_].parameterSort.name == STRING
    input.Body.itemOffset == INTEGER
    input.Body.pageSize == INTEGER
    input.ReqMap.farmId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

SearchSteps

enum_ComparisonOperator := [ "EQUAL", "NOT_EQUAL", "GREATER_THAN_EQUAL_TO", "GREATER_THAN", "LESS_THAN_EQUAL_TO", "LESS_THAN" ]
enum_LogicalOperator := [ "AND", "OR" ]
enum_SortOrder := [ "ASCENDING", "DESCENDING" ]

valid {
    input.Body.queueIds[_] == STRING
    input.Body.jobId == STRING
    input.Body.filterExpressions.filters[_].dateTimeFilter.name == STRING
    input.Body.filterExpressions.filters[_].dateTimeFilter.operator == enum_ComparisonOperator[_]
    input.Body.filterExpressions.filters[_].dateTimeFilter.dateTime == TIMESTAMP
    input.Body.filterExpressions.filters[_].parameterFilter.name == STRING
    input.Body.filterExpressions.filters[_].parameterFilter.operator == enum_ComparisonOperator[_]
    input.Body.filterExpressions.filters[_].parameterFilter.value == STRING
    input.Body.filterExpressions.filters[_].searchTermFilter.searchTerm == STRING
    input.Body.filterExpressions.filters[_].stringFilter.name == STRING
    input.Body.filterExpressions.filters[_].stringFilter.operator == enum_ComparisonOperator[_]
    input.Body.filterExpressions.filters[_].stringFilter.value == STRING
    input.Body.filterExpressions.filters[_].groupFilter == NESTED
    input.Body.filterExpressions.operator == enum_LogicalOperator[_]
    input.Body.sortExpressions[_].userJobsFirst.userIdentityId == STRING
    input.Body.sortExpressions[_].fieldSort.sortOrder == enum_SortOrder[_]
    input.Body.sortExpressions[_].fieldSort.name == STRING
    input.Body.sortExpressions[_].parameterSort.sortOrder == enum_SortOrder[_]
    input.Body.sortExpressions[_].parameterSort.name == STRING
    input.Body.itemOffset == INTEGER
    input.Body.pageSize == INTEGER
    input.ReqMap.farmId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

SearchTasks

enum_ComparisonOperator := [ "EQUAL", "NOT_EQUAL", "GREATER_THAN_EQUAL_TO", "GREATER_THAN", "LESS_THAN_EQUAL_TO", "LESS_THAN" ]
enum_LogicalOperator := [ "AND", "OR" ]
enum_SortOrder := [ "ASCENDING", "DESCENDING" ]

valid {
    input.Body.queueIds[_] == STRING
    input.Body.jobId == STRING
    input.Body.filterExpressions.filters[_].dateTimeFilter.name == STRING
    input.Body.filterExpressions.filters[_].dateTimeFilter.operator == enum_ComparisonOperator[_]
    input.Body.filterExpressions.filters[_].dateTimeFilter.dateTime == TIMESTAMP
    input.Body.filterExpressions.filters[_].parameterFilter.name == STRING
    input.Body.filterExpressions.filters[_].parameterFilter.operator == enum_ComparisonOperator[_]
    input.Body.filterExpressions.filters[_].parameterFilter.value == STRING
    input.Body.filterExpressions.filters[_].searchTermFilter.searchTerm == STRING
    input.Body.filterExpressions.filters[_].stringFilter.name == STRING
    input.Body.filterExpressions.filters[_].stringFilter.operator == enum_ComparisonOperator[_]
    input.Body.filterExpressions.filters[_].stringFilter.value == STRING
    input.Body.filterExpressions.filters[_].groupFilter == NESTED
    input.Body.filterExpressions.operator == enum_LogicalOperator[_]
    input.Body.sortExpressions[_].userJobsFirst.userIdentityId == STRING
    input.Body.sortExpressions[_].fieldSort.sortOrder == enum_SortOrder[_]
    input.Body.sortExpressions[_].fieldSort.name == STRING
    input.Body.sortExpressions[_].parameterSort.sortOrder == enum_SortOrder[_]
    input.Body.sortExpressions[_].parameterSort.name == STRING
    input.Body.itemOffset == INTEGER
    input.Body.pageSize == INTEGER
    input.ReqMap.farmId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

SearchWorkers

enum_ComparisonOperator := [ "EQUAL", "NOT_EQUAL", "GREATER_THAN_EQUAL_TO", "GREATER_THAN", "LESS_THAN_EQUAL_TO", "LESS_THAN" ]
enum_LogicalOperator := [ "AND", "OR" ]
enum_SortOrder := [ "ASCENDING", "DESCENDING" ]

valid {
    input.Body.fleetIds[_] == STRING
    input.Body.filterExpressions.filters[_].dateTimeFilter.name == STRING
    input.Body.filterExpressions.filters[_].dateTimeFilter.operator == enum_ComparisonOperator[_]
    input.Body.filterExpressions.filters[_].dateTimeFilter.dateTime == TIMESTAMP
    input.Body.filterExpressions.filters[_].parameterFilter.name == STRING
    input.Body.filterExpressions.filters[_].parameterFilter.operator == enum_ComparisonOperator[_]
    input.Body.filterExpressions.filters[_].parameterFilter.value == STRING
    input.Body.filterExpressions.filters[_].searchTermFilter.searchTerm == STRING
    input.Body.filterExpressions.filters[_].stringFilter.name == STRING
    input.Body.filterExpressions.filters[_].stringFilter.operator == enum_ComparisonOperator[_]
    input.Body.filterExpressions.filters[_].stringFilter.value == STRING
    input.Body.filterExpressions.filters[_].groupFilter == NESTED
    input.Body.filterExpressions.operator == enum_LogicalOperator[_]
    input.Body.sortExpressions[_].userJobsFirst.userIdentityId == STRING
    input.Body.sortExpressions[_].fieldSort.sortOrder == enum_SortOrder[_]
    input.Body.sortExpressions[_].fieldSort.name == STRING
    input.Body.sortExpressions[_].parameterSort.sortOrder == enum_SortOrder[_]
    input.Body.sortExpressions[_].parameterSort.name == STRING
    input.Body.itemOffset == INTEGER
    input.Body.pageSize == INTEGER
    input.ReqMap.farmId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

StartSessionsStatisticsAggregation

enum_Period := [ "HOURLY", "DAILY", "WEEKLY", "MONTHLY" ]
enum_UsageGroupByField := [ "QUEUE_ID", "FLEET_ID", "JOB_ID", "USER_ID", "USAGE_TYPE", "INSTANCE_TYPE", "LICENSE_PRODUCT" ]
enum_UsageStatistic := [ "SUM", "MIN", "MAX", "AVG" ]

valid {
    input.Body.resourceIds.queueIds[_] == STRING
    input.Body.resourceIds.fleetIds[_] == STRING
    input.Body.startTime == TIMESTAMP
    input.Body.endTime == TIMESTAMP
    input.Body.timezone == STRING
    input.Body.period == enum_Period[_]
    input.Body.groupBy[_] == enum_UsageGroupByField[_]
    input.Body.statistics[_] == enum_UsageStatistic[_]
    input.ReqMap.farmId == 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
}

UpdateBudget

enum_BudgetActionType := [ "STOP_SCHEDULING_AND_COMPLETE_TASKS", "STOP_SCHEDULING_AND_CANCEL_TASKS" ]
enum_BudgetStatus := [ "ACTIVE", "INACTIVE" ]

valid {
    input.Body.displayName == STRING
    input.Body.description == STRING
    input.Body.status == enum_BudgetStatus[_]
    input.Body.approximateDollarLimit == FLOAT
    input.Body.actionsToAdd[_].type == enum_BudgetActionType[_]
    input.Body.actionsToAdd[_].thresholdPercentage == FLOAT
    input.Body.actionsToAdd[_].description == STRING
    input.Body.actionsToRemove[_].type == enum_BudgetActionType[_]
    input.Body.actionsToRemove[_].thresholdPercentage == FLOAT
    input.Body.schedule.fixed.startTime == TIMESTAMP
    input.Body.schedule.fixed.endTime == TIMESTAMP
    input.ReqMap.farmId == STRING
    input.ReqMap.budgetId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

UpdateFarm

valid {
    input.Body.displayName == STRING
    input.Body.description == STRING
    input.ReqMap.farmId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

UpdateFleet

enum_AcceleratorName := [ "t4", "a10g", "l4", "l40s" ]
enum_AcceleratorType := [ "gpu" ]
enum_AutoScalingMode := [ "NO_SCALING", "EVENT_BASED_AUTO_SCALING" ]
enum_CpuArchitectureType := [ "x86_64", "arm64" ]
enum_CustomerManagedFleetOperatingSystemFamily := [ "WINDOWS", "LINUX", "MACOS" ]
enum_Ec2MarketType := [ "on-demand", "spot" ]
enum_ServiceManagedFleetOperatingSystemFamily := [ "WINDOWS", "LINUX" ]

valid {
    input.Body.displayName == STRING
    input.Body.description == STRING
    input.Body.roleArn == STRING
    input.Body.minWorkerCount == INTEGER
    input.Body.maxWorkerCount == INTEGER
    input.Body.configuration.customerManaged.mode == enum_AutoScalingMode[_]
    input.Body.configuration.customerManaged.workerCapabilities.vCpuCount.min == INTEGER
    input.Body.configuration.customerManaged.workerCapabilities.vCpuCount.max == INTEGER
    input.Body.configuration.customerManaged.workerCapabilities.memoryMiB.min == INTEGER
    input.Body.configuration.customerManaged.workerCapabilities.memoryMiB.max == INTEGER
    input.Body.configuration.customerManaged.workerCapabilities.acceleratorTypes[_] == enum_AcceleratorType[_]
    input.Body.configuration.customerManaged.workerCapabilities.acceleratorCount.min == INTEGER
    input.Body.configuration.customerManaged.workerCapabilities.acceleratorCount.max == INTEGER
    input.Body.configuration.customerManaged.workerCapabilities.acceleratorTotalMemoryMiB.min == INTEGER
    input.Body.configuration.customerManaged.workerCapabilities.acceleratorTotalMemoryMiB.max == INTEGER
    input.Body.configuration.customerManaged.workerCapabilities.osFamily == enum_CustomerManagedFleetOperatingSystemFamily[_]
    input.Body.configuration.customerManaged.workerCapabilities.cpuArchitectureType == enum_CpuArchitectureType[_]
    input.Body.configuration.customerManaged.workerCapabilities.customAmounts[_].name == STRING
    input.Body.configuration.customerManaged.workerCapabilities.customAmounts[_].min == FLOAT
    input.Body.configuration.customerManaged.workerCapabilities.customAmounts[_].max == FLOAT
    input.Body.configuration.customerManaged.workerCapabilities.customAttributes[_].name == STRING
    input.Body.configuration.customerManaged.workerCapabilities.customAttributes[_].values[_] == STRING
    input.Body.configuration.customerManaged.storageProfileId == STRING
    input.Body.configuration.serviceManagedEc2.instanceCapabilities.vCpuCount.min == INTEGER
    input.Body.configuration.serviceManagedEc2.instanceCapabilities.vCpuCount.max == INTEGER
    input.Body.configuration.serviceManagedEc2.instanceCapabilities.memoryMiB.min == INTEGER
    input.Body.configuration.serviceManagedEc2.instanceCapabilities.memoryMiB.max == INTEGER
    input.Body.configuration.serviceManagedEc2.instanceCapabilities.osFamily == enum_ServiceManagedFleetOperatingSystemFamily[_]
    input.Body.configuration.serviceManagedEc2.instanceCapabilities.cpuArchitectureType == enum_CpuArchitectureType[_]
    input.Body.configuration.serviceManagedEc2.instanceCapabilities.rootEbsVolume.sizeGiB == INTEGER
    input.Body.configuration.serviceManagedEc2.instanceCapabilities.rootEbsVolume.iops == INTEGER
    input.Body.configuration.serviceManagedEc2.instanceCapabilities.rootEbsVolume.throughputMiB == INTEGER
    input.Body.configuration.serviceManagedEc2.instanceCapabilities.acceleratorCapabilities.selections[_].name == enum_AcceleratorName[_]
    input.Body.configuration.serviceManagedEc2.instanceCapabilities.acceleratorCapabilities.selections[_].runtime == STRING
    input.Body.configuration.serviceManagedEc2.instanceCapabilities.acceleratorCapabilities.count.min == INTEGER
    input.Body.configuration.serviceManagedEc2.instanceCapabilities.acceleratorCapabilities.count.max == INTEGER
    input.Body.configuration.serviceManagedEc2.instanceCapabilities.allowedInstanceTypes[_] == STRING
    input.Body.configuration.serviceManagedEc2.instanceCapabilities.excludedInstanceTypes[_] == STRING
    input.Body.configuration.serviceManagedEc2.instanceCapabilities.customAmounts[_].name == STRING
    input.Body.configuration.serviceManagedEc2.instanceCapabilities.customAmounts[_].min == FLOAT
    input.Body.configuration.serviceManagedEc2.instanceCapabilities.customAmounts[_].max == FLOAT
    input.Body.configuration.serviceManagedEc2.instanceCapabilities.customAttributes[_].name == STRING
    input.Body.configuration.serviceManagedEc2.instanceCapabilities.customAttributes[_].values[_] == STRING
    input.Body.configuration.serviceManagedEc2.instanceMarketOptions.type == enum_Ec2MarketType[_]
    input.ReqMap.farmId == STRING
    input.ReqMap.fleetId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

UpdateJob

enum_JobTargetTaskRunStatus := [ "READY", "FAILED", "SUCCEEDED", "CANCELED", "SUSPENDED", "PENDING" ]
enum_UpdateJobLifecycleStatus := [ "ARCHIVED" ]

valid {
    input.Body.targetTaskRunStatus == enum_JobTargetTaskRunStatus[_]
    input.Body.priority == INTEGER
    input.Body.maxFailedTasksCount == INTEGER
    input.Body.maxRetriesPerTask == INTEGER
    input.Body.lifecycleStatus == enum_UpdateJobLifecycleStatus[_]
    input.ReqMap.farmId == STRING
    input.ReqMap.queueId == STRING
    input.ReqMap.jobId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

UpdateMonitor

valid {
    input.Body.subdomain == STRING
    input.Body.displayName == STRING
    input.Body.roleArn == STRING
    input.ReqMap.monitorId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

UpdateQueue

enum_DefaultQueueBudgetAction := [ "NONE", "STOP_SCHEDULING_AND_COMPLETE_TASKS", "STOP_SCHEDULING_AND_CANCEL_TASKS" ]
enum_RunAs := [ "QUEUE_CONFIGURED_USER", "WORKER_AGENT_USER" ]

valid {
    input.Body.displayName == STRING
    input.Body.description == STRING
    input.Body.defaultBudgetAction == enum_DefaultQueueBudgetAction[_]
    input.Body.jobAttachmentSettings.s3BucketName == STRING
    input.Body.jobAttachmentSettings.rootPrefix == STRING
    input.Body.roleArn == STRING
    input.Body.jobRunAsUser.posix.user == STRING
    input.Body.jobRunAsUser.posix.group == STRING
    input.Body.jobRunAsUser.windows.user == STRING
    input.Body.jobRunAsUser.windows.passwordArn == STRING
    input.Body.jobRunAsUser.runAs == enum_RunAs[_]
    input.Body.requiredFileSystemLocationNamesToAdd[_] == STRING
    input.Body.requiredFileSystemLocationNamesToRemove[_] == STRING
    input.Body.allowedStorageProfileIdsToAdd[_] == STRING
    input.Body.allowedStorageProfileIdsToRemove[_] == STRING
    input.ReqMap.farmId == STRING
    input.ReqMap.queueId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

UpdateQueueEnvironment

enum_EnvironmentTemplateType := [ "JSON", "YAML" ]

valid {
    input.Body.priority == INTEGER
    input.Body.templateType == enum_EnvironmentTemplateType[_]
    input.Body.template == STRING
    input.ReqMap.farmId == STRING
    input.ReqMap.queueId == STRING
    input.ReqMap.queueEnvironmentId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

UpdateQueueFleetAssociation

enum_UpdateQueueFleetAssociationStatus := [ "ACTIVE", "STOP_SCHEDULING_AND_COMPLETE_TASKS", "STOP_SCHEDULING_AND_CANCEL_TASKS" ]

valid {
    input.Body.status == enum_UpdateQueueFleetAssociationStatus[_]
    input.ReqMap.farmId == STRING
    input.ReqMap.queueId == STRING
    input.ReqMap.fleetId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

UpdateSession

enum_SessionLifecycleTargetStatus := [ "ENDED" ]

valid {
    input.Body.targetLifecycleStatus == enum_SessionLifecycleTargetStatus[_]
    input.ReqMap.farmId == STRING
    input.ReqMap.queueId == STRING
    input.ReqMap.jobId == STRING
    input.ReqMap.sessionId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

UpdateStep

enum_StepTargetTaskRunStatus := [ "READY", "FAILED", "SUCCEEDED", "CANCELED", "SUSPENDED", "PENDING" ]

valid {
    input.Body.targetTaskRunStatus == enum_StepTargetTaskRunStatus[_]
    input.ReqMap.farmId == STRING
    input.ReqMap.queueId == STRING
    input.ReqMap.jobId == STRING
    input.ReqMap.stepId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

UpdateStorageProfile

enum_FileSystemLocationType := [ "SHARED", "LOCAL" ]
enum_StorageProfileOperatingSystemFamily := [ "WINDOWS", "LINUX", "MACOS" ]

valid {
    input.Body.displayName == STRING
    input.Body.osFamily == enum_StorageProfileOperatingSystemFamily[_]
    input.Body.fileSystemLocationsToAdd[_].name == STRING
    input.Body.fileSystemLocationsToAdd[_].path == STRING
    input.Body.fileSystemLocationsToAdd[_].type == enum_FileSystemLocationType[_]
    input.Body.fileSystemLocationsToRemove[_].name == STRING
    input.Body.fileSystemLocationsToRemove[_].path == STRING
    input.Body.fileSystemLocationsToRemove[_].type == enum_FileSystemLocationType[_]
    input.ReqMap.farmId == STRING
    input.ReqMap.storageProfileId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

UpdateTask

enum_TaskTargetRunStatus := [ "READY", "FAILED", "SUCCEEDED", "CANCELED", "SUSPENDED", "PENDING" ]

valid {
    input.Body.targetRunStatus == enum_TaskTargetRunStatus[_]
    input.ReqMap.farmId == STRING
    input.ReqMap.queueId == STRING
    input.ReqMap.jobId == STRING
    input.ReqMap.stepId == STRING
    input.ReqMap.taskId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

UpdateWorker

enum_UpdatedWorkerStatus := [ "STARTED", "STOPPING", "STOPPED" ]

valid {
    input.Body.status == enum_UpdatedWorkerStatus[_]
    input.Body.capabilities.amounts[_].name == STRING
    input.Body.capabilities.amounts[_].value == FLOAT
    input.Body.capabilities.attributes[_].name == STRING
    input.Body.capabilities.attributes[_].values[_] == STRING
    input.Body.hostProperties.ipAddresses.ipV4Addresses[_] == STRING
    input.Body.hostProperties.ipAddresses.ipV6Addresses[_] == STRING
    input.Body.hostProperties.hostName == STRING
    input.ReqMap.farmId == STRING
    input.ReqMap.fleetId == STRING
    input.ReqMap.workerId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

UpdateWorkerSchedule

enum_CompletedStatus := [ "SUCCEEDED", "FAILED", "INTERRUPTED", "CANCELED", "NEVER_ATTEMPTED" ]

valid {
    input.Body.updatedSessionActions.STRING.completedStatus == enum_CompletedStatus[_]
    input.Body.updatedSessionActions.STRING.processExitCode == INTEGER
    input.Body.updatedSessionActions.STRING.progressMessage == STRING
    input.Body.updatedSessionActions.STRING.startedAt == TIMESTAMP
    input.Body.updatedSessionActions.STRING.endedAt == TIMESTAMP
    input.Body.updatedSessionActions.STRING.updatedAt == TIMESTAMP
    input.Body.updatedSessionActions.STRING.progressPercent == FLOAT
    input.ReqMap.farmId == STRING
    input.ReqMap.fleetId == STRING
    input.ReqMap.workerId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}