AbortMultipartReadSetUpload

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

AcceptShare

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

BatchDeleteReadSet

valid {
    input.Body.ids[_] == STRING
    input.ReqMap.sequenceStoreId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

CancelAnnotationImportJob

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

CancelRun

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

CancelVariantImportJob

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

CompleteMultipartReadSetUpload

enum_ReadSetPartSource := [ "SOURCE1", "SOURCE2" ]

valid {
    input.Body.parts[_].checksum == STRING
    input.Body.parts[_].partNumber == INTEGER
    input.Body.parts[_].partSource == enum_ReadSetPartSource[_]
    input.ReqMap.sequenceStoreId == STRING
    input.ReqMap.uploadId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

CreateAnnotationStore

enum_AnnotationType := [ "GENERIC", "CHR_POS", "CHR_POS_REF_ALT", "CHR_START_END_ONE_BASE", "CHR_START_END_REF_ALT_ONE_BASE", "CHR_START_END_ZERO_BASE", "CHR_START_END_REF_ALT_ZERO_BASE" ]
enum_EncryptionType := [ "KMS" ]
enum_SchemaValueType := [ "LONG", "INT", "STRING", "FLOAT", "DOUBLE", "BOOLEAN" ]
enum_StoreFormat := [ "GFF", "TSV", "VCF" ]

valid {
    input.Body.description == STRING
    input.Body.name == STRING
    input.Body.reference.referenceArn == STRING
    input.Body.sseConfig.keyArn == STRING
    input.Body.sseConfig.type == enum_EncryptionType[_]
    input.Body.storeFormat == enum_StoreFormat[_]
    input.Body.storeOptions.tsvStoreOptions.annotationType == enum_AnnotationType[_]
    input.Body.storeOptions.tsvStoreOptions.formatToHeader.CHR == STRING
    input.Body.storeOptions.tsvStoreOptions.formatToHeader.START == STRING
    input.Body.storeOptions.tsvStoreOptions.formatToHeader.END == STRING
    input.Body.storeOptions.tsvStoreOptions.formatToHeader.REF == STRING
    input.Body.storeOptions.tsvStoreOptions.formatToHeader.ALT == STRING
    input.Body.storeOptions.tsvStoreOptions.formatToHeader.POS == STRING
    input.Body.storeOptions.tsvStoreOptions.schema[_].STRING == enum_SchemaValueType[_]
    input.Body.tags.STRING == STRING
    input.Body.versionName == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

CreateAnnotationStoreVersion

enum_AnnotationType := [ "GENERIC", "CHR_POS", "CHR_POS_REF_ALT", "CHR_START_END_ONE_BASE", "CHR_START_END_REF_ALT_ONE_BASE", "CHR_START_END_ZERO_BASE", "CHR_START_END_REF_ALT_ZERO_BASE" ]
enum_SchemaValueType := [ "LONG", "INT", "STRING", "FLOAT", "DOUBLE", "BOOLEAN" ]

valid {
    input.Body.description == STRING
    input.Body.tags.STRING == STRING
    input.Body.versionName == STRING
    input.Body.versionOptions.tsvVersionOptions.annotationType == enum_AnnotationType[_]
    input.Body.versionOptions.tsvVersionOptions.formatToHeader.CHR == STRING
    input.Body.versionOptions.tsvVersionOptions.formatToHeader.START == STRING
    input.Body.versionOptions.tsvVersionOptions.formatToHeader.END == STRING
    input.Body.versionOptions.tsvVersionOptions.formatToHeader.REF == STRING
    input.Body.versionOptions.tsvVersionOptions.formatToHeader.ALT == STRING
    input.Body.versionOptions.tsvVersionOptions.formatToHeader.POS == STRING
    input.Body.versionOptions.tsvVersionOptions.schema[_].STRING == enum_SchemaValueType[_]
    input.ReqMap.name == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

CreateMultipartReadSetUpload

enum_FileType := [ "FASTQ", "BAM", "CRAM", "UBAM" ]

valid {
    input.Body.clientToken == STRING
    input.Body.description == STRING
    input.Body.generatedFrom == STRING
    input.Body.name == STRING
    input.Body.referenceArn == STRING
    input.Body.sampleId == STRING
    input.Body.sourceFileType == enum_FileType[_]
    input.Body.subjectId == STRING
    input.Body.tags.STRING == STRING
    input.ReqMap.sequenceStoreId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

CreateReferenceStore

enum_EncryptionType := [ "KMS" ]

valid {
    input.Body.clientToken == STRING
    input.Body.description == STRING
    input.Body.name == STRING
    input.Body.sseConfig.keyArn == STRING
    input.Body.sseConfig.type == enum_EncryptionType[_]
    input.Body.tags.STRING == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

CreateRunGroup

valid {
    input.Body.maxCpus == INTEGER
    input.Body.maxDuration == INTEGER
    input.Body.maxGpus == INTEGER
    input.Body.maxRuns == INTEGER
    input.Body.name == STRING
    input.Body.requestId == STRING
    input.Body.tags.STRING == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

CreateSequenceStore

enum_ETagAlgorithmFamily := [ "MD5up", "SHA256up", "SHA512up" ]
enum_EncryptionType := [ "KMS" ]

valid {
    input.Body.clientToken == STRING
    input.Body.description == STRING
    input.Body.eTagAlgorithmFamily == enum_ETagAlgorithmFamily[_]
    input.Body.fallbackLocation == STRING
    input.Body.name == STRING
    input.Body.sseConfig.keyArn == STRING
    input.Body.sseConfig.type == enum_EncryptionType[_]
    input.Body.tags.STRING == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

CreateShare

valid {
    input.Body.principalSubscriber == STRING
    input.Body.resourceArn == STRING
    input.Body.shareName == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

CreateVariantStore

enum_EncryptionType := [ "KMS" ]

valid {
    input.Body.description == STRING
    input.Body.name == STRING
    input.Body.reference.referenceArn == STRING
    input.Body.sseConfig.keyArn == STRING
    input.Body.sseConfig.type == enum_EncryptionType[_]
    input.Body.tags.STRING == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

CreateWorkflow

enum_Accelerators := [ "GPU" ]
enum_WorkflowEngine := [ "WDL", "NEXTFLOW", "CWL" ]

valid {
    input.Body.accelerators == enum_Accelerators[_]
    input.Body.definitionUri == STRING
    input.Body.definitionZip == BLOB
    input.Body.description == STRING
    input.Body.engine == enum_WorkflowEngine[_]
    input.Body.main == STRING
    input.Body.name == STRING
    input.Body.parameterTemplate.STRING.description == STRING
    input.Body.parameterTemplate.STRING.optional == BOOLEAN
    input.Body.requestId == STRING
    input.Body.storageCapacity == INTEGER
    input.Body.tags.STRING == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

DeleteAnnotationStore

valid {
    input.ReqMap.name == STRING
    input.Qs.force == BOOLEAN
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

DeleteAnnotationStoreVersions

valid {
    input.Body.versions[_] == STRING
    input.ReqMap.name == STRING
    input.Qs.force == BOOLEAN
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

DeleteReference

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

DeleteReferenceStore

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

DeleteRun

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

DeleteRunGroup

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

DeleteSequenceStore

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

DeleteShare

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

DeleteVariantStore

valid {
    input.ReqMap.name == STRING
    input.Qs.force == BOOLEAN
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

DeleteWorkflow

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

GetAnnotationImportJob

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

GetAnnotationStore

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

GetAnnotationStoreVersion

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

GetReadSet

enum_ReadSetFile := [ "SOURCE1", "SOURCE2", "INDEX" ]

valid {
    input.ReqMap.id == STRING
    input.ReqMap.sequenceStoreId == STRING
    input.Qs.file == enum_ReadSetFile[_]
    input.Qs.partNumber == INTEGER
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

GetReadSetActivationJob

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

GetReadSetExportJob

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

GetReadSetImportJob

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

GetReadSetMetadata

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

GetReference

enum_ReferenceFile := [ "SOURCE", "INDEX" ]

valid {
    input.ReqMap.id == STRING
    input.ReqMap.referenceStoreId == STRING
    input.Qs.file == enum_ReferenceFile[_]
    input.Qs.partNumber == INTEGER
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

GetReferenceImportJob

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

GetReferenceMetadata

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

GetReferenceStore

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

GetRun

enum_RunExport := [ "DEFINITION" ]

valid {
    input.ReqMap.id == STRING
    input.Qs.export[_] == enum_RunExport[_]
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

GetRunGroup

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

GetRunTask

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

GetSequenceStore

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

GetShare

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

GetVariantImportJob

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

GetVariantStore

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

GetWorkflow

enum_WorkflowExport := [ "DEFINITION" ]
enum_WorkflowType := [ "PRIVATE", "READY2RUN" ]

valid {
    input.ReqMap.id == STRING
    input.Qs.export[_] == enum_WorkflowExport[_]
    input.Qs.type == enum_WorkflowType[_]
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

ListAnnotationImportJobs

enum_JobStatus := [ "SUBMITTED", "IN_PROGRESS", "CANCELLED", "COMPLETED", "FAILED", "COMPLETED_WITH_FAILURES" ]

valid {
    input.Body.filter.status == enum_JobStatus[_]
    input.Body.filter.storeName == STRING
    input.Body.ids[_] == STRING
    input.Qs.maxResults == INTEGER
    input.Qs.nextToken == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

ListAnnotationStoreVersions

enum_VersionStatus := [ "CREATING", "UPDATING", "DELETING", "ACTIVE", "FAILED" ]

valid {
    input.Body.filter.status == enum_VersionStatus[_]
    input.ReqMap.name == STRING
    input.Qs.maxResults == INTEGER
    input.Qs.nextToken == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

ListAnnotationStores

enum_StoreStatus := [ "CREATING", "UPDATING", "DELETING", "ACTIVE", "FAILED" ]

valid {
    input.Body.filter.status == enum_StoreStatus[_]
    input.Body.ids[_] == STRING
    input.Qs.maxResults == INTEGER
    input.Qs.nextToken == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

ListMultipartReadSetUploads

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

ListReadSetActivationJobs

enum_ReadSetActivationJobStatus := [ "SUBMITTED", "IN_PROGRESS", "CANCELLING", "CANCELLED", "FAILED", "COMPLETED", "COMPLETED_WITH_FAILURES" ]

valid {
    input.Body.filter.createdAfter == TIMESTAMP
    input.Body.filter.createdBefore == TIMESTAMP
    input.Body.filter.status == enum_ReadSetActivationJobStatus[_]
    input.ReqMap.sequenceStoreId == STRING
    input.Qs.maxResults == INTEGER
    input.Qs.nextToken == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

ListReadSetExportJobs

enum_ReadSetExportJobStatus := [ "SUBMITTED", "IN_PROGRESS", "CANCELLING", "CANCELLED", "FAILED", "COMPLETED", "COMPLETED_WITH_FAILURES" ]

valid {
    input.Body.filter.createdAfter == TIMESTAMP
    input.Body.filter.createdBefore == TIMESTAMP
    input.Body.filter.status == enum_ReadSetExportJobStatus[_]
    input.ReqMap.sequenceStoreId == STRING
    input.Qs.maxResults == INTEGER
    input.Qs.nextToken == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

ListReadSetImportJobs

enum_ReadSetImportJobStatus := [ "SUBMITTED", "IN_PROGRESS", "CANCELLING", "CANCELLED", "FAILED", "COMPLETED", "COMPLETED_WITH_FAILURES" ]

valid {
    input.Body.filter.createdAfter == TIMESTAMP
    input.Body.filter.createdBefore == TIMESTAMP
    input.Body.filter.status == enum_ReadSetImportJobStatus[_]
    input.ReqMap.sequenceStoreId == STRING
    input.Qs.maxResults == INTEGER
    input.Qs.nextToken == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

ListReadSetUploadParts

enum_ReadSetPartSource := [ "SOURCE1", "SOURCE2" ]

valid {
    input.Body.filter.createdAfter == TIMESTAMP
    input.Body.filter.createdBefore == TIMESTAMP
    input.Body.partSource == enum_ReadSetPartSource[_]
    input.ReqMap.sequenceStoreId == STRING
    input.ReqMap.uploadId == STRING
    input.Qs.maxResults == INTEGER
    input.Qs.nextToken == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

ListReadSets

enum_CreationType := [ "IMPORT", "UPLOAD" ]
enum_ReadSetStatus := [ "ARCHIVED", "ACTIVATING", "ACTIVE", "DELETING", "DELETED", "PROCESSING_UPLOAD", "UPLOAD_FAILED" ]

valid {
    input.Body.filter.createdAfter == TIMESTAMP
    input.Body.filter.createdBefore == TIMESTAMP
    input.Body.filter.creationType == enum_CreationType[_]
    input.Body.filter.generatedFrom == STRING
    input.Body.filter.name == STRING
    input.Body.filter.referenceArn == STRING
    input.Body.filter.sampleId == STRING
    input.Body.filter.status == enum_ReadSetStatus[_]
    input.Body.filter.subjectId == STRING
    input.ReqMap.sequenceStoreId == STRING
    input.Qs.maxResults == INTEGER
    input.Qs.nextToken == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

ListReferenceImportJobs

enum_ReferenceImportJobStatus := [ "SUBMITTED", "IN_PROGRESS", "CANCELLING", "CANCELLED", "FAILED", "COMPLETED", "COMPLETED_WITH_FAILURES" ]

valid {
    input.Body.filter.createdAfter == TIMESTAMP
    input.Body.filter.createdBefore == TIMESTAMP
    input.Body.filter.status == enum_ReferenceImportJobStatus[_]
    input.ReqMap.referenceStoreId == STRING
    input.Qs.maxResults == INTEGER
    input.Qs.nextToken == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

ListReferenceStores

valid {
    input.Body.filter.createdAfter == TIMESTAMP
    input.Body.filter.createdBefore == TIMESTAMP
    input.Body.filter.name == STRING
    input.Qs.maxResults == INTEGER
    input.Qs.nextToken == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

ListReferences

valid {
    input.Body.filter.createdAfter == TIMESTAMP
    input.Body.filter.createdBefore == TIMESTAMP
    input.Body.filter.md5 == STRING
    input.Body.filter.name == STRING
    input.ReqMap.referenceStoreId == STRING
    input.Qs.maxResults == INTEGER
    input.Qs.nextToken == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

ListRunGroups

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

ListRunTasks

enum_TaskStatus := [ "PENDING", "STARTING", "RUNNING", "STOPPING", "COMPLETED", "CANCELLED", "FAILED" ]

valid {
    input.ReqMap.id == STRING
    input.Qs.maxResults == INTEGER
    input.Qs.startingToken == STRING
    input.Qs.status == enum_TaskStatus[_]
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

ListRuns

enum_RunStatus := [ "PENDING", "STARTING", "RUNNING", "STOPPING", "COMPLETED", "DELETED", "CANCELLED", "FAILED" ]

valid {
    input.Qs.maxResults == INTEGER
    input.Qs.name == STRING
    input.Qs.runGroupId == STRING
    input.Qs.startingToken == STRING
    input.Qs.status == enum_RunStatus[_]
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

ListSequenceStores

valid {
    input.Body.filter.createdAfter == TIMESTAMP
    input.Body.filter.createdBefore == TIMESTAMP
    input.Body.filter.name == STRING
    input.Qs.maxResults == INTEGER
    input.Qs.nextToken == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

ListShares

enum_ResourceOwner := [ "SELF", "OTHER" ]
enum_ShareStatus := [ "PENDING", "ACTIVATING", "ACTIVE", "DELETING", "DELETED", "FAILED" ]

valid {
    input.Body.filter.resourceArns[_] == STRING
    input.Body.filter.status[_] == enum_ShareStatus[_]
    input.Body.resourceOwner == enum_ResourceOwner[_]
    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
}

ListVariantImportJobs

enum_JobStatus := [ "SUBMITTED", "IN_PROGRESS", "CANCELLED", "COMPLETED", "FAILED", "COMPLETED_WITH_FAILURES" ]

valid {
    input.Body.filter.status == enum_JobStatus[_]
    input.Body.filter.storeName == STRING
    input.Body.ids[_] == STRING
    input.Qs.maxResults == INTEGER
    input.Qs.nextToken == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

ListVariantStores

enum_StoreStatus := [ "CREATING", "UPDATING", "DELETING", "ACTIVE", "FAILED" ]

valid {
    input.Body.filter.status == enum_StoreStatus[_]
    input.Body.ids[_] == STRING
    input.Qs.maxResults == INTEGER
    input.Qs.nextToken == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

ListWorkflows

enum_WorkflowType := [ "PRIVATE", "READY2RUN" ]

valid {
    input.Qs.maxResults == INTEGER
    input.Qs.name == STRING
    input.Qs.startingToken == STRING
    input.Qs.type == enum_WorkflowType[_]
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

StartAnnotationImportJob

valid {
    input.Body.annotationFields.STRING == STRING
    input.Body.destinationName == STRING
    input.Body.formatOptions.tsvOptions.readOptions.comment == STRING
    input.Body.formatOptions.tsvOptions.readOptions.encoding == STRING
    input.Body.formatOptions.tsvOptions.readOptions.escape == STRING
    input.Body.formatOptions.tsvOptions.readOptions.escapeQuotes == BOOLEAN
    input.Body.formatOptions.tsvOptions.readOptions.header == BOOLEAN
    input.Body.formatOptions.tsvOptions.readOptions.lineSep == STRING
    input.Body.formatOptions.tsvOptions.readOptions.quote == STRING
    input.Body.formatOptions.tsvOptions.readOptions.quoteAll == BOOLEAN
    input.Body.formatOptions.tsvOptions.readOptions.sep == STRING
    input.Body.formatOptions.vcfOptions.ignoreFilterField == BOOLEAN
    input.Body.formatOptions.vcfOptions.ignoreQualField == BOOLEAN
    input.Body.items[_].source == STRING
    input.Body.roleArn == STRING
    input.Body.runLeftNormalization == BOOLEAN
    input.Body.versionName == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

StartReadSetActivationJob

valid {
    input.Body.clientToken == STRING
    input.Body.sources[_].readSetId == STRING
    input.ReqMap.sequenceStoreId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

StartReadSetExportJob

valid {
    input.Body.clientToken == STRING
    input.Body.destination == STRING
    input.Body.roleArn == STRING
    input.Body.sources[_].readSetId == STRING
    input.ReqMap.sequenceStoreId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

StartReadSetImportJob

enum_FileType := [ "FASTQ", "BAM", "CRAM", "UBAM" ]

valid {
    input.Body.clientToken == STRING
    input.Body.roleArn == STRING
    input.Body.sources[_].description == STRING
    input.Body.sources[_].generatedFrom == STRING
    input.Body.sources[_].name == STRING
    input.Body.sources[_].referenceArn == STRING
    input.Body.sources[_].sampleId == STRING
    input.Body.sources[_].sourceFileType == enum_FileType[_]
    input.Body.sources[_].sourceFiles.source1 == STRING
    input.Body.sources[_].sourceFiles.source2 == STRING
    input.Body.sources[_].subjectId == STRING
    input.Body.sources[_].tags.STRING == STRING
    input.ReqMap.sequenceStoreId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

StartReferenceImportJob

valid {
    input.Body.clientToken == STRING
    input.Body.roleArn == STRING
    input.Body.sources[_].description == STRING
    input.Body.sources[_].name == STRING
    input.Body.sources[_].sourceFile == STRING
    input.Body.sources[_].tags.STRING == STRING
    input.ReqMap.referenceStoreId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

StartRun

enum_RunLogLevel := [ "OFF", "FATAL", "ERROR", "ALL" ]
enum_RunRetentionMode := [ "RETAIN", "REMOVE" ]
enum_WorkflowType := [ "PRIVATE", "READY2RUN" ]

valid {
    input.Body.logLevel == enum_RunLogLevel[_]
    input.Body.name == STRING
    input.Body.outputUri == STRING
    input.Body.priority == INTEGER
    input.Body.requestId == STRING
    input.Body.retentionMode == enum_RunRetentionMode[_]
    input.Body.roleArn == STRING
    input.Body.runGroupId == STRING
    input.Body.runId == STRING
    input.Body.storageCapacity == INTEGER
    input.Body.tags.STRING == STRING
    input.Body.workflowId == STRING
    input.Body.workflowType == enum_WorkflowType[_]
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

StartVariantImportJob

valid {
    input.Body.annotationFields.STRING == STRING
    input.Body.destinationName == STRING
    input.Body.items[_].source == STRING
    input.Body.roleArn == STRING
    input.Body.runLeftNormalization == BOOLEAN
    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
}

UpdateAnnotationStore

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

UpdateAnnotationStoreVersion

valid {
    input.Body.description == STRING
    input.ReqMap.name == STRING
    input.ReqMap.versionName == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

UpdateRunGroup

valid {
    input.Body.maxCpus == INTEGER
    input.Body.maxDuration == INTEGER
    input.Body.maxGpus == INTEGER
    input.Body.maxRuns == INTEGER
    input.Body.name == STRING
    input.ReqMap.id == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

UpdateVariantStore

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

UpdateWorkflow

valid {
    input.Body.description == STRING
    input.Body.name == STRING
    input.ReqMap.id == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

UploadReadSetPart

enum_ReadSetPartSource := [ "SOURCE1", "SOURCE2" ]

valid {
    input.Body.payload == BLOB
    input.ReqMap.sequenceStoreId == STRING
    input.ReqMap.uploadId == STRING
    input.Qs.partNumber == INTEGER
    input.Qs.partSource == enum_ReadSetPartSource[_]
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}