AcceptPredictions

enum_AcceptRuleBehavior := [ "ALL", "NONE" ]

valid {
    input.Body.acceptChoices[_].editedValue == STRING
    input.Body.acceptChoices[_].predictionChoice == INTEGER
    input.Body.acceptChoices[_].predictionTarget == STRING
    input.Body.acceptRule.rule == enum_AcceptRuleBehavior[_]
    input.Body.acceptRule.threshold == FLOAT
    input.Body.clientToken == STRING
    input.ReqMap.domainIdentifier == STRING
    input.ReqMap.identifier == STRING
    input.Qs.revision == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

AcceptSubscriptionRequest

valid {
    input.Body.assetScopes[_].assetId == STRING
    input.Body.assetScopes[_].filterIds[_] == STRING
    input.Body.decisionComment == STRING
    input.ReqMap.domainIdentifier == STRING
    input.ReqMap.identifier == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

AddEntityOwner

enum_DataZoneEntityType := [ "DOMAIN_UNIT" ]

valid {
    input.Body.clientToken == STRING
    input.Body.owner.group.groupIdentifier == STRING
    input.Body.owner.user.userIdentifier == STRING
    input.ReqMap.domainIdentifier == STRING
    input.ReqMap.entityIdentifier == STRING
    input.ReqMap.entityType == enum_DataZoneEntityType[_]
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

AddPolicyGrant

enum_DomainUnitDesignation := [ "OWNER" ]
enum_ManagedPolicyType := [ "CREATE_DOMAIN_UNIT", "OVERRIDE_DOMAIN_UNIT_OWNERS", "ADD_TO_PROJECT_MEMBER_POOL", "OVERRIDE_PROJECT_OWNERS", "CREATE_GLOSSARY", "CREATE_FORM_TYPE", "CREATE_ASSET_TYPE", "CREATE_PROJECT", "CREATE_ENVIRONMENT_PROFILE", "DELEGATE_CREATE_ENVIRONMENT_PROFILE", "CREATE_ENVIRONMENT", "CREATE_ENVIRONMENT_FROM_BLUEPRINT", "CREATE_PROJECT_FROM_PROJECT_PROFILE" ]
enum_ProjectDesignation := [ "OWNER", "CONTRIBUTOR", "PROJECT_CATALOG_STEWARD" ]
enum_TargetEntityType := [ "DOMAIN_UNIT", "ENVIRONMENT_BLUEPRINT_CONFIGURATION", "ENVIRONMENT_PROFILE" ]

valid {
    input.Body.clientToken == STRING
    input.Body.detail.addToProjectMemberPool.includeChildDomainUnits == BOOLEAN
    input.Body.detail.createAssetType.includeChildDomainUnits == BOOLEAN
    input.Body.detail.createDomainUnit.includeChildDomainUnits == BOOLEAN
    input.Body.detail.createEnvironment == {}
    input.Body.detail.createEnvironmentFromBlueprint == {}
    input.Body.detail.createEnvironmentProfile.domainUnitId == STRING
    input.Body.detail.createFormType.includeChildDomainUnits == BOOLEAN
    input.Body.detail.createGlossary.includeChildDomainUnits == BOOLEAN
    input.Body.detail.createProject.includeChildDomainUnits == BOOLEAN
    input.Body.detail.createProjectFromProjectProfile.includeChildDomainUnits == BOOLEAN
    input.Body.detail.createProjectFromProjectProfile.projectProfiles[_] == STRING
    input.Body.detail.delegateCreateEnvironmentProfile == {}
    input.Body.detail.overrideDomainUnitOwners.includeChildDomainUnits == BOOLEAN
    input.Body.detail.overrideProjectOwners.includeChildDomainUnits == BOOLEAN
    input.Body.policyType == enum_ManagedPolicyType[_]
    input.Body.principal.domainUnit.domainUnitDesignation == enum_DomainUnitDesignation[_]
    input.Body.principal.domainUnit.domainUnitGrantFilter.allDomainUnitsGrantFilter == {}
    input.Body.principal.domainUnit.domainUnitIdentifier == STRING
    input.Body.principal.group.groupIdentifier == STRING
    input.Body.principal.project.projectDesignation == enum_ProjectDesignation[_]
    input.Body.principal.project.projectGrantFilter.domainUnitFilter.domainUnit == STRING
    input.Body.principal.project.projectGrantFilter.domainUnitFilter.includeChildDomainUnits == BOOLEAN
    input.Body.principal.project.projectIdentifier == STRING
    input.Body.principal.user.allUsersGrantFilter == {}
    input.Body.principal.user.userIdentifier == STRING
    input.ReqMap.domainIdentifier == STRING
    input.ReqMap.entityIdentifier == STRING
    input.ReqMap.entityType == enum_TargetEntityType[_]
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

AssociateEnvironmentRole

valid {
    input.ReqMap.domainIdentifier == STRING
    input.ReqMap.environmentIdentifier == STRING
    input.ReqMap.environmentRoleArn == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

CancelMetadataGenerationRun

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

CancelSubscription

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

CreateAsset

valid {
    input.Body.clientToken == STRING
    input.Body.description == STRING
    input.Body.externalIdentifier == STRING
    input.Body.formsInput[_].content == STRING
    input.Body.formsInput[_].formName == STRING
    input.Body.formsInput[_].typeIdentifier == STRING
    input.Body.formsInput[_].typeRevision == STRING
    input.Body.glossaryTerms[_] == STRING
    input.Body.name == STRING
    input.Body.owningProjectIdentifier == STRING
    input.Body.predictionConfiguration.businessNameGeneration.enabled == BOOLEAN
    input.Body.typeIdentifier == STRING
    input.Body.typeRevision == STRING
    input.ReqMap.domainIdentifier == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

CreateAssetFilter

valid {
    input.Body.clientToken == STRING
    input.Body.configuration.columnConfiguration.includedColumnNames[_] == STRING
    input.Body.configuration.rowConfiguration.rowFilter.and[_] == NESTED
    input.Body.configuration.rowConfiguration.rowFilter.expression.equalTo.columnName == STRING
    input.Body.configuration.rowConfiguration.rowFilter.expression.equalTo.value == STRING
    input.Body.configuration.rowConfiguration.rowFilter.expression.greaterThan.columnName == STRING
    input.Body.configuration.rowConfiguration.rowFilter.expression.greaterThan.value == STRING
    input.Body.configuration.rowConfiguration.rowFilter.expression.greaterThanOrEqualTo.columnName == STRING
    input.Body.configuration.rowConfiguration.rowFilter.expression.greaterThanOrEqualTo.value == STRING
    input.Body.configuration.rowConfiguration.rowFilter.expression.in.columnName == STRING
    input.Body.configuration.rowConfiguration.rowFilter.expression.in.values[_] == STRING
    input.Body.configuration.rowConfiguration.rowFilter.expression.isNotNull.columnName == STRING
    input.Body.configuration.rowConfiguration.rowFilter.expression.isNull.columnName == STRING
    input.Body.configuration.rowConfiguration.rowFilter.expression.lessThan.columnName == STRING
    input.Body.configuration.rowConfiguration.rowFilter.expression.lessThan.value == STRING
    input.Body.configuration.rowConfiguration.rowFilter.expression.lessThanOrEqualTo.columnName == STRING
    input.Body.configuration.rowConfiguration.rowFilter.expression.lessThanOrEqualTo.value == STRING
    input.Body.configuration.rowConfiguration.rowFilter.expression.like.columnName == STRING
    input.Body.configuration.rowConfiguration.rowFilter.expression.like.value == STRING
    input.Body.configuration.rowConfiguration.rowFilter.expression.notEqualTo.columnName == STRING
    input.Body.configuration.rowConfiguration.rowFilter.expression.notEqualTo.value == STRING
    input.Body.configuration.rowConfiguration.rowFilter.expression.notIn.columnName == STRING
    input.Body.configuration.rowConfiguration.rowFilter.expression.notIn.values[_] == STRING
    input.Body.configuration.rowConfiguration.rowFilter.expression.notLike.columnName == STRING
    input.Body.configuration.rowConfiguration.rowFilter.expression.notLike.value == STRING
    input.Body.configuration.rowConfiguration.rowFilter.or[_] == NESTED
    input.Body.configuration.rowConfiguration.sensitive == BOOLEAN
    input.Body.description == STRING
    input.Body.name == STRING
    input.ReqMap.assetIdentifier == STRING
    input.ReqMap.domainIdentifier == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

CreateAssetRevision

valid {
    input.Body.clientToken == STRING
    input.Body.description == STRING
    input.Body.formsInput[_].content == STRING
    input.Body.formsInput[_].formName == STRING
    input.Body.formsInput[_].typeIdentifier == STRING
    input.Body.formsInput[_].typeRevision == STRING
    input.Body.glossaryTerms[_] == STRING
    input.Body.name == STRING
    input.Body.predictionConfiguration.businessNameGeneration.enabled == BOOLEAN
    input.Body.typeRevision == STRING
    input.ReqMap.domainIdentifier == STRING
    input.ReqMap.identifier == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

CreateAssetType

valid {
    input.Body.description == STRING
    input.Body.formsInput.STRING.required == BOOLEAN
    input.Body.formsInput.STRING.typeIdentifier == STRING
    input.Body.formsInput.STRING.typeRevision == STRING
    input.Body.name == STRING
    input.Body.owningProjectIdentifier == STRING
    input.ReqMap.domainIdentifier == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

CreateConnection

enum_AuthenticationType := [ "BASIC", "OAUTH2", "CUSTOM" ]
enum_ComputeEnvironments := [ "SPARK", "ATHENA", "PYTHON" ]
enum_GlueConnectionType := [ "SNOWFLAKE", "BIGQUERY", "DOCUMENTDB", "DYNAMODB", "MYSQL", "OPENSEARCH", "ORACLE", "POSTGRESQL", "REDSHIFT", "SAPHANA", "SQLSERVER", "TERADATA", "VERTICA" ]
enum_OAuth2GrantType := [ "AUTHORIZATION_CODE", "CLIENT_CREDENTIALS", "JWT_BEARER" ]

valid {
    input.Body.awsLocation.accessRole == STRING
    input.Body.awsLocation.awsAccountId == STRING
    input.Body.awsLocation.awsRegion == STRING
    input.Body.awsLocation.iamConnectionId == STRING
    input.Body.clientToken == STRING
    input.Body.description == STRING
    input.Body.environmentIdentifier == STRING
    input.Body.name == STRING
    input.Body.props.athenaProperties.workgroupName == STRING
    input.Body.props.glueProperties.glueConnectionInput.athenaProperties.STRING == STRING
    input.Body.props.glueProperties.glueConnectionInput.authenticationConfiguration.authenticationType == enum_AuthenticationType[_]
    input.Body.props.glueProperties.glueConnectionInput.authenticationConfiguration.basicAuthenticationCredentials.password == STRING
    input.Body.props.glueProperties.glueConnectionInput.authenticationConfiguration.basicAuthenticationCredentials.userName == STRING
    input.Body.props.glueProperties.glueConnectionInput.authenticationConfiguration.customAuthenticationCredentials.STRING == STRING
    input.Body.props.glueProperties.glueConnectionInput.authenticationConfiguration.kmsKeyArn == STRING
    input.Body.props.glueProperties.glueConnectionInput.authenticationConfiguration.oAuth2Properties.authorizationCodeProperties.authorizationCode == STRING
    input.Body.props.glueProperties.glueConnectionInput.authenticationConfiguration.oAuth2Properties.authorizationCodeProperties.redirectUri == STRING
    input.Body.props.glueProperties.glueConnectionInput.authenticationConfiguration.oAuth2Properties.oAuth2ClientApplication.aWSManagedClientApplicationReference == STRING
    input.Body.props.glueProperties.glueConnectionInput.authenticationConfiguration.oAuth2Properties.oAuth2ClientApplication.userManagedClientApplicationClientId == STRING
    input.Body.props.glueProperties.glueConnectionInput.authenticationConfiguration.oAuth2Properties.oAuth2Credentials.accessToken == STRING
    input.Body.props.glueProperties.glueConnectionInput.authenticationConfiguration.oAuth2Properties.oAuth2Credentials.jwtToken == STRING
    input.Body.props.glueProperties.glueConnectionInput.authenticationConfiguration.oAuth2Properties.oAuth2Credentials.refreshToken == STRING
    input.Body.props.glueProperties.glueConnectionInput.authenticationConfiguration.oAuth2Properties.oAuth2Credentials.userManagedClientApplicationClientSecret == STRING
    input.Body.props.glueProperties.glueConnectionInput.authenticationConfiguration.oAuth2Properties.oAuth2GrantType == enum_OAuth2GrantType[_]
    input.Body.props.glueProperties.glueConnectionInput.authenticationConfiguration.oAuth2Properties.tokenUrl == STRING
    input.Body.props.glueProperties.glueConnectionInput.authenticationConfiguration.oAuth2Properties.tokenUrlParametersMap.STRING == STRING
    input.Body.props.glueProperties.glueConnectionInput.authenticationConfiguration.secretArn == STRING
    input.Body.props.glueProperties.glueConnectionInput.connectionProperties.STRING == STRING
    input.Body.props.glueProperties.glueConnectionInput.connectionType == enum_GlueConnectionType[_]
    input.Body.props.glueProperties.glueConnectionInput.description == STRING
    input.Body.props.glueProperties.glueConnectionInput.matchCriteria == STRING
    input.Body.props.glueProperties.glueConnectionInput.name == STRING
    input.Body.props.glueProperties.glueConnectionInput.physicalConnectionRequirements.availabilityZone == STRING
    input.Body.props.glueProperties.glueConnectionInput.physicalConnectionRequirements.securityGroupIdList[_] == STRING
    input.Body.props.glueProperties.glueConnectionInput.physicalConnectionRequirements.subnetId == STRING
    input.Body.props.glueProperties.glueConnectionInput.physicalConnectionRequirements.subnetIdList[_] == STRING
    input.Body.props.glueProperties.glueConnectionInput.pythonProperties.STRING == STRING
    input.Body.props.glueProperties.glueConnectionInput.sparkProperties.STRING == STRING
    input.Body.props.glueProperties.glueConnectionInput.validateCredentials == BOOLEAN
    input.Body.props.glueProperties.glueConnectionInput.validateForComputeEnvironments[_] == enum_ComputeEnvironments[_]
    input.Body.props.hyperPodProperties.clusterName == STRING
    input.Body.props.iamProperties.glueLineageSyncEnabled == BOOLEAN
    input.Body.props.redshiftProperties.credentials.secretArn == STRING
    input.Body.props.redshiftProperties.credentials.usernamePassword.password == STRING
    input.Body.props.redshiftProperties.credentials.usernamePassword.username == STRING
    input.Body.props.redshiftProperties.databaseName == STRING
    input.Body.props.redshiftProperties.host == STRING
    input.Body.props.redshiftProperties.lineageSync.enabled == BOOLEAN
    input.Body.props.redshiftProperties.lineageSync.schedule.schedule == STRING
    input.Body.props.redshiftProperties.port == INTEGER
    input.Body.props.redshiftProperties.storage.clusterName == STRING
    input.Body.props.redshiftProperties.storage.workgroupName == STRING
    input.Body.props.sparkEmrProperties.computeArn == STRING
    input.Body.props.sparkEmrProperties.instanceProfileArn == STRING
    input.Body.props.sparkEmrProperties.javaVirtualEnv == STRING
    input.Body.props.sparkEmrProperties.logUri == STRING
    input.Body.props.sparkEmrProperties.pythonVirtualEnv == STRING
    input.Body.props.sparkEmrProperties.runtimeRole == STRING
    input.Body.props.sparkEmrProperties.trustedCertificatesS3Uri == STRING
    input.Body.props.sparkGlueProperties.additionalArgs.connection == STRING
    input.Body.props.sparkGlueProperties.glueConnectionName == STRING
    input.Body.props.sparkGlueProperties.glueVersion == STRING
    input.Body.props.sparkGlueProperties.idleTimeout == INTEGER
    input.Body.props.sparkGlueProperties.javaVirtualEnv == STRING
    input.Body.props.sparkGlueProperties.numberOfWorkers == INTEGER
    input.Body.props.sparkGlueProperties.pythonVirtualEnv == STRING
    input.Body.props.sparkGlueProperties.workerType == STRING
    input.ReqMap.domainIdentifier == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

CreateDataProduct

enum_DataProductItemType := [ "ASSET" ]

valid {
    input.Body.clientToken == STRING
    input.Body.description == STRING
    input.Body.formsInput[_].content == STRING
    input.Body.formsInput[_].formName == STRING
    input.Body.formsInput[_].typeIdentifier == STRING
    input.Body.formsInput[_].typeRevision == STRING
    input.Body.glossaryTerms[_] == STRING
    input.Body.items[_].glossaryTerms[_] == STRING
    input.Body.items[_].identifier == STRING
    input.Body.items[_].itemType == enum_DataProductItemType[_]
    input.Body.items[_].revision == STRING
    input.Body.name == STRING
    input.Body.owningProjectIdentifier == STRING
    input.ReqMap.domainIdentifier == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

CreateDataProductRevision

enum_DataProductItemType := [ "ASSET" ]

valid {
    input.Body.clientToken == STRING
    input.Body.description == STRING
    input.Body.formsInput[_].content == STRING
    input.Body.formsInput[_].formName == STRING
    input.Body.formsInput[_].typeIdentifier == STRING
    input.Body.formsInput[_].typeRevision == STRING
    input.Body.glossaryTerms[_] == STRING
    input.Body.items[_].glossaryTerms[_] == STRING
    input.Body.items[_].identifier == STRING
    input.Body.items[_].itemType == enum_DataProductItemType[_]
    input.Body.items[_].revision == STRING
    input.Body.name == STRING
    input.ReqMap.domainIdentifier == STRING
    input.ReqMap.identifier == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

CreateDataSource

enum_EnableSetting := [ "ENABLED", "DISABLED" ]
enum_FilterExpressionType := [ "INCLUDE", "EXCLUDE" ]
enum_Timezone := [ "UTC", "AFRICA_JOHANNESBURG", "AMERICA_MONTREAL", "AMERICA_SAO_PAULO", "ASIA_BAHRAIN", "ASIA_BANGKOK", "ASIA_CALCUTTA", "ASIA_DUBAI", "ASIA_HONG_KONG", "ASIA_JAKARTA", "ASIA_KUALA_LUMPUR", "ASIA_SEOUL", "ASIA_SHANGHAI", "ASIA_SINGAPORE", "ASIA_TAIPEI", "ASIA_TOKYO", "AUSTRALIA_MELBOURNE", "AUSTRALIA_SYDNEY", "CANADA_CENTRAL", "CET", "CST6CDT", "ETC_GMT", "ETC_GMT0", "ETC_GMT_ADD_0", "ETC_GMT_ADD_1", "ETC_GMT_ADD_10", "ETC_GMT_ADD_11", "ETC_GMT_ADD_12", "ETC_GMT_ADD_2", "ETC_GMT_ADD_3", "ETC_GMT_ADD_4", "ETC_GMT_ADD_5", "ETC_GMT_ADD_6", "ETC_GMT_ADD_7", "ETC_GMT_ADD_8", "ETC_GMT_ADD_9", "ETC_GMT_NEG_0", "ETC_GMT_NEG_1", "ETC_GMT_NEG_10", "ETC_GMT_NEG_11", "ETC_GMT_NEG_12", "ETC_GMT_NEG_13", "ETC_GMT_NEG_14", "ETC_GMT_NEG_2", "ETC_GMT_NEG_3", "ETC_GMT_NEG_4", "ETC_GMT_NEG_5", "ETC_GMT_NEG_6", "ETC_GMT_NEG_7", "ETC_GMT_NEG_8", "ETC_GMT_NEG_9", "EUROPE_DUBLIN", "EUROPE_LONDON", "EUROPE_PARIS", "EUROPE_STOCKHOLM", "EUROPE_ZURICH", "ISRAEL", "MEXICO_GENERAL", "MST7MDT", "PACIFIC_AUCKLAND", "US_CENTRAL", "US_EASTERN", "US_MOUNTAIN", "US_PACIFIC" ]

valid {
    input.Body.assetFormsInput[_].content == STRING
    input.Body.assetFormsInput[_].formName == STRING
    input.Body.assetFormsInput[_].typeIdentifier == STRING
    input.Body.assetFormsInput[_].typeRevision == STRING
    input.Body.clientToken == STRING
    input.Body.configuration.glueRunConfiguration.autoImportDataQualityResult == BOOLEAN
    input.Body.configuration.glueRunConfiguration.catalogName == STRING
    input.Body.configuration.glueRunConfiguration.dataAccessRole == STRING
    input.Body.configuration.glueRunConfiguration.relationalFilterConfigurations[_].databaseName == STRING
    input.Body.configuration.glueRunConfiguration.relationalFilterConfigurations[_].filterExpressions[_].expression == STRING
    input.Body.configuration.glueRunConfiguration.relationalFilterConfigurations[_].filterExpressions[_].type == enum_FilterExpressionType[_]
    input.Body.configuration.glueRunConfiguration.relationalFilterConfigurations[_].schemaName == STRING
    input.Body.configuration.redshiftRunConfiguration.dataAccessRole == STRING
    input.Body.configuration.redshiftRunConfiguration.redshiftCredentialConfiguration.secretManagerArn == STRING
    input.Body.configuration.redshiftRunConfiguration.redshiftStorage.redshiftClusterSource.clusterName == STRING
    input.Body.configuration.redshiftRunConfiguration.redshiftStorage.redshiftServerlessSource.workgroupName == STRING
    input.Body.configuration.redshiftRunConfiguration.relationalFilterConfigurations[_].databaseName == STRING
    input.Body.configuration.redshiftRunConfiguration.relationalFilterConfigurations[_].filterExpressions[_].expression == STRING
    input.Body.configuration.redshiftRunConfiguration.relationalFilterConfigurations[_].filterExpressions[_].type == enum_FilterExpressionType[_]
    input.Body.configuration.redshiftRunConfiguration.relationalFilterConfigurations[_].schemaName == STRING
    input.Body.configuration.sageMakerRunConfiguration.trackingAssets.STRING[_] == STRING
    input.Body.connectionIdentifier == STRING
    input.Body.description == STRING
    input.Body.enableSetting == enum_EnableSetting[_]
    input.Body.environmentIdentifier == STRING
    input.Body.name == STRING
    input.Body.projectIdentifier == STRING
    input.Body.publishOnImport == BOOLEAN
    input.Body.recommendation.enableBusinessNameGeneration == BOOLEAN
    input.Body.schedule.schedule == STRING
    input.Body.schedule.timezone == enum_Timezone[_]
    input.Body.type == STRING
    input.ReqMap.domainIdentifier == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

CreateDomain

enum_AuthType := [ "IAM_IDC", "DISABLED" ]
enum_DomainVersion := [ "V1", "V2" ]
enum_UserAssignment := [ "AUTOMATIC", "MANUAL" ]

valid {
    input.Body.clientToken == STRING
    input.Body.description == STRING
    input.Body.domainExecutionRole == STRING
    input.Body.domainVersion == enum_DomainVersion[_]
    input.Body.kmsKeyIdentifier == STRING
    input.Body.name == STRING
    input.Body.serviceRole == STRING
    input.Body.singleSignOn.type == enum_AuthType[_]
    input.Body.singleSignOn.userAssignment == enum_UserAssignment[_]
    input.Body.tags.STRING == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

CreateDomainUnit

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

CreateEnvironment

valid {
    input.Body.deploymentOrder == INTEGER
    input.Body.description == STRING
    input.Body.environmentAccountIdentifier == STRING
    input.Body.environmentAccountRegion == STRING
    input.Body.environmentBlueprintIdentifier == STRING
    input.Body.environmentConfigurationId == STRING
    input.Body.environmentProfileIdentifier == STRING
    input.Body.glossaryTerms[_] == STRING
    input.Body.name == STRING
    input.Body.projectIdentifier == STRING
    input.Body.userParameters[_].name == STRING
    input.Body.userParameters[_].value == STRING
    input.ReqMap.domainIdentifier == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

CreateEnvironmentAction

valid {
    input.Body.description == STRING
    input.Body.name == STRING
    input.Body.parameters.awsConsoleLink.uri == STRING
    input.ReqMap.domainIdentifier == STRING
    input.ReqMap.environmentIdentifier == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

CreateEnvironmentProfile

valid {
    input.Body.awsAccountId == STRING
    input.Body.awsAccountRegion == STRING
    input.Body.description == STRING
    input.Body.environmentBlueprintIdentifier == STRING
    input.Body.name == STRING
    input.Body.projectIdentifier == STRING
    input.Body.userParameters[_].name == STRING
    input.Body.userParameters[_].value == STRING
    input.ReqMap.domainIdentifier == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

CreateFormType

enum_FormTypeStatus := [ "ENABLED", "DISABLED" ]

valid {
    input.Body.description == STRING
    input.Body.model.smithy == STRING
    input.Body.name == STRING
    input.Body.owningProjectIdentifier == STRING
    input.Body.status == enum_FormTypeStatus[_]
    input.ReqMap.domainIdentifier == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

CreateGlossary

enum_GlossaryStatus := [ "DISABLED", "ENABLED" ]

valid {
    input.Body.clientToken == STRING
    input.Body.description == STRING
    input.Body.name == STRING
    input.Body.owningProjectIdentifier == STRING
    input.Body.status == enum_GlossaryStatus[_]
    input.ReqMap.domainIdentifier == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

CreateGlossaryTerm

enum_GlossaryTermStatus := [ "ENABLED", "DISABLED" ]

valid {
    input.Body.clientToken == STRING
    input.Body.glossaryIdentifier == STRING
    input.Body.longDescription == STRING
    input.Body.name == STRING
    input.Body.shortDescription == STRING
    input.Body.status == enum_GlossaryTermStatus[_]
    input.Body.termRelations.classifies[_] == STRING
    input.Body.termRelations.isA[_] == STRING
    input.ReqMap.domainIdentifier == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

CreateGroupProfile

valid {
    input.Body.clientToken == STRING
    input.Body.groupIdentifier == STRING
    input.ReqMap.domainIdentifier == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

CreateListingChangeSet

enum_ChangeAction := [ "PUBLISH", "UNPUBLISH" ]
enum_EntityType := [ "ASSET", "DATA_PRODUCT" ]

valid {
    input.Body.action == enum_ChangeAction[_]
    input.Body.clientToken == STRING
    input.Body.entityIdentifier == STRING
    input.Body.entityRevision == STRING
    input.Body.entityType == enum_EntityType[_]
    input.ReqMap.domainIdentifier == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

CreateProject

valid {
    input.Body.description == STRING
    input.Body.domainUnitId == STRING
    input.Body.glossaryTerms[_] == STRING
    input.Body.name == STRING
    input.Body.projectProfileId == STRING
    input.Body.userParameters[_].environmentConfigurationName == STRING
    input.Body.userParameters[_].environmentParameters[_].name == STRING
    input.Body.userParameters[_].environmentParameters[_].value == STRING
    input.ReqMap.domainIdentifier == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

CreateProjectMembership

enum_UserDesignation := [ "PROJECT_OWNER", "PROJECT_CONTRIBUTOR", "PROJECT_CATALOG_VIEWER", "PROJECT_CATALOG_CONSUMER", "PROJECT_CATALOG_STEWARD" ]

valid {
    input.Body.designation == enum_UserDesignation[_]
    input.Body.member.groupIdentifier == STRING
    input.Body.member.userIdentifier == STRING
    input.ReqMap.domainIdentifier == STRING
    input.ReqMap.projectIdentifier == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

CreateProjectProfile

enum_DeploymentMode := [ "ON_CREATE", "ON_DEMAND" ]
enum_Status := [ "ENABLED", "DISABLED" ]

valid {
    input.Body.description == STRING
    input.Body.domainUnitIdentifier == STRING
    input.Body.environmentConfigurations[_].awsAccount.awsAccountId == STRING
    input.Body.environmentConfigurations[_].awsAccount.awsAccountIdPath == STRING
    input.Body.environmentConfigurations[_].awsRegion.regionName == STRING
    input.Body.environmentConfigurations[_].awsRegion.regionNamePath == STRING
    input.Body.environmentConfigurations[_].configurationParameters.parameterOverrides[_].isEditable == BOOLEAN
    input.Body.environmentConfigurations[_].configurationParameters.parameterOverrides[_].name == STRING
    input.Body.environmentConfigurations[_].configurationParameters.parameterOverrides[_].value == STRING
    input.Body.environmentConfigurations[_].configurationParameters.resolvedParameters[_].isEditable == BOOLEAN
    input.Body.environmentConfigurations[_].configurationParameters.resolvedParameters[_].name == STRING
    input.Body.environmentConfigurations[_].configurationParameters.resolvedParameters[_].value == STRING
    input.Body.environmentConfigurations[_].configurationParameters.ssmPath == STRING
    input.Body.environmentConfigurations[_].deploymentMode == enum_DeploymentMode[_]
    input.Body.environmentConfigurations[_].deploymentOrder == INTEGER
    input.Body.environmentConfigurations[_].description == STRING
    input.Body.environmentConfigurations[_].environmentBlueprintId == STRING
    input.Body.environmentConfigurations[_].id == STRING
    input.Body.environmentConfigurations[_].name == STRING
    input.Body.name == STRING
    input.Body.status == enum_Status[_]
    input.ReqMap.domainIdentifier == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

CreateRule

enum_RuleAction := [ "CREATE_SUBSCRIPTION_REQUEST" ]
enum_RuleScopeSelectionMode := [ "ALL", "SPECIFIC" ]

valid {
    input.Body.action == enum_RuleAction[_]
    input.Body.clientToken == STRING
    input.Body.description == STRING
    input.Body.detail.metadataFormEnforcementDetail.requiredMetadataForms[_].typeIdentifier == STRING
    input.Body.detail.metadataFormEnforcementDetail.requiredMetadataForms[_].typeRevision == STRING
    input.Body.name == STRING
    input.Body.scope.assetType.selectionMode == enum_RuleScopeSelectionMode[_]
    input.Body.scope.assetType.specificAssetTypes[_] == STRING
    input.Body.scope.dataProduct == BOOLEAN
    input.Body.scope.project.selectionMode == enum_RuleScopeSelectionMode[_]
    input.Body.scope.project.specificProjects[_] == STRING
    input.Body.target.domainUnitTarget.domainUnitId == STRING
    input.Body.target.domainUnitTarget.includeChildDomainUnits == BOOLEAN
    input.ReqMap.domainIdentifier == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

CreateSubscriptionGrant

valid {
    input.Body.assetTargetNames[_].assetId == STRING
    input.Body.assetTargetNames[_].targetName == STRING
    input.Body.clientToken == STRING
    input.Body.environmentIdentifier == STRING
    input.Body.grantedEntity.listing.identifier == STRING
    input.Body.grantedEntity.listing.revision == STRING
    input.Body.subscriptionTargetIdentifier == STRING
    input.ReqMap.domainIdentifier == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

CreateSubscriptionRequest

valid {
    input.Body.clientToken == STRING
    input.Body.metadataForms[_].content == STRING
    input.Body.metadataForms[_].formName == STRING
    input.Body.metadataForms[_].typeIdentifier == STRING
    input.Body.metadataForms[_].typeRevision == STRING
    input.Body.requestReason == STRING
    input.Body.subscribedListings[_].identifier == STRING
    input.Body.subscribedPrincipals[_].project.identifier == STRING
    input.ReqMap.domainIdentifier == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

CreateSubscriptionTarget

valid {
    input.Body.applicableAssetTypes[_] == STRING
    input.Body.authorizedPrincipals[_] == STRING
    input.Body.clientToken == STRING
    input.Body.manageAccessRole == STRING
    input.Body.name == STRING
    input.Body.provider == STRING
    input.Body.subscriptionTargetConfig[_].content == STRING
    input.Body.subscriptionTargetConfig[_].formName == STRING
    input.Body.type == STRING
    input.ReqMap.domainIdentifier == STRING
    input.ReqMap.environmentIdentifier == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

CreateUserProfile

enum_UserType := [ "IAM_USER", "IAM_ROLE", "SSO_USER" ]

valid {
    input.Body.clientToken == STRING
    input.Body.userIdentifier == STRING
    input.Body.userType == enum_UserType[_]
    input.ReqMap.domainIdentifier == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

DeleteAsset

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

DeleteAssetFilter

valid {
    input.ReqMap.assetIdentifier == STRING
    input.ReqMap.domainIdentifier == STRING
    input.ReqMap.identifier == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

DeleteAssetType

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

DeleteConnection

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

DeleteDataProduct

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

DeleteDataSource

valid {
    input.ReqMap.domainIdentifier == STRING
    input.ReqMap.identifier == STRING
    input.Qs.clientToken == STRING
    input.Qs.retainPermissionsOnRevokeFailure == BOOLEAN
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

DeleteDomain

valid {
    input.ReqMap.identifier == STRING
    input.Qs.clientToken == STRING
    input.Qs.skipDeletionCheck == BOOLEAN
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

DeleteDomainUnit

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

DeleteEnvironment

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

DeleteEnvironmentAction

valid {
    input.ReqMap.domainIdentifier == STRING
    input.ReqMap.environmentIdentifier == STRING
    input.ReqMap.identifier == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

DeleteEnvironmentBlueprintConfiguration

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

DeleteEnvironmentProfile

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

DeleteFormType

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

DeleteGlossary

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

DeleteGlossaryTerm

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

DeleteListing

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

DeleteProject

valid {
    input.ReqMap.domainIdentifier == STRING
    input.ReqMap.identifier == STRING
    input.Qs.skipDeletionCheck == BOOLEAN
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

DeleteProjectMembership

valid {
    input.Body.member.groupIdentifier == STRING
    input.Body.member.userIdentifier == STRING
    input.ReqMap.domainIdentifier == STRING
    input.ReqMap.projectIdentifier == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

DeleteProjectProfile

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

DeleteRule

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

DeleteSubscriptionGrant

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

DeleteSubscriptionRequest

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

DeleteSubscriptionTarget

valid {
    input.ReqMap.domainIdentifier == STRING
    input.ReqMap.environmentIdentifier == STRING
    input.ReqMap.identifier == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

DeleteTimeSeriesDataPoints

enum_TimeSeriesEntityType := [ "ASSET", "LISTING" ]

valid {
    input.ReqMap.domainIdentifier == STRING
    input.ReqMap.entityIdentifier == STRING
    input.ReqMap.entityType == enum_TimeSeriesEntityType[_]
    input.Qs.clientToken == STRING
    input.Qs.formName == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

DisassociateEnvironmentRole

valid {
    input.ReqMap.domainIdentifier == STRING
    input.ReqMap.environmentIdentifier == STRING
    input.ReqMap.environmentRoleArn == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

GetAsset

valid {
    input.ReqMap.domainIdentifier == STRING
    input.ReqMap.identifier == STRING
    input.Qs.revision == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

GetAssetFilter

valid {
    input.ReqMap.assetIdentifier == STRING
    input.ReqMap.domainIdentifier == STRING
    input.ReqMap.identifier == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

GetAssetType

valid {
    input.ReqMap.domainIdentifier == STRING
    input.ReqMap.identifier == STRING
    input.Qs.revision == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

GetConnection

valid {
    input.ReqMap.domainIdentifier == STRING
    input.ReqMap.identifier == STRING
    input.Qs.withSecret == BOOLEAN
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

GetDataProduct

valid {
    input.ReqMap.domainIdentifier == STRING
    input.ReqMap.identifier == STRING
    input.Qs.revision == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

GetDataSource

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

GetDataSourceRun

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

GetDomain

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

GetDomainUnit

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

GetEnvironment

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

GetEnvironmentAction

valid {
    input.ReqMap.domainIdentifier == STRING
    input.ReqMap.environmentIdentifier == STRING
    input.ReqMap.identifier == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

GetEnvironmentBlueprint

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

GetEnvironmentBlueprintConfiguration

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

GetEnvironmentCredentials

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

GetEnvironmentProfile

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

GetFormType

valid {
    input.ReqMap.domainIdentifier == STRING
    input.ReqMap.formTypeIdentifier == STRING
    input.Qs.revision == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

GetGlossary

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

GetGlossaryTerm

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

GetGroupProfile

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

GetIamPortalLoginUrl

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

GetJobRun

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

GetLineageEvent

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

GetLineageNode

valid {
    input.ReqMap.domainIdentifier == STRING
    input.ReqMap.identifier == STRING
    input.Qs.timestamp == TIMESTAMP
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

GetListing

valid {
    input.ReqMap.domainIdentifier == STRING
    input.ReqMap.identifier == STRING
    input.Qs.listingRevision == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

GetMetadataGenerationRun

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

GetProject

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

GetProjectProfile

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

GetRule

valid {
    input.ReqMap.domainIdentifier == STRING
    input.ReqMap.identifier == STRING
    input.Qs.revision == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

GetSubscription

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

GetSubscriptionGrant

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

GetSubscriptionRequestDetails

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

GetSubscriptionTarget

valid {
    input.ReqMap.domainIdentifier == STRING
    input.ReqMap.environmentIdentifier == STRING
    input.ReqMap.identifier == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

GetTimeSeriesDataPoint

enum_TimeSeriesEntityType := [ "ASSET", "LISTING" ]

valid {
    input.ReqMap.domainIdentifier == STRING
    input.ReqMap.entityIdentifier == STRING
    input.ReqMap.entityType == enum_TimeSeriesEntityType[_]
    input.ReqMap.identifier == STRING
    input.Qs.formName == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

GetUserProfile

enum_UserProfileType := [ "IAM", "SSO" ]

valid {
    input.ReqMap.domainIdentifier == STRING
    input.ReqMap.userIdentifier == STRING
    input.Qs.type == enum_UserProfileType[_]
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

ListAssetFilters

enum_FilterStatus := [ "VALID", "INVALID" ]

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

ListAssetRevisions

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

ListConnections

enum_ConnectionType := [ "ATHENA", "BIGQUERY", "DATABRICKS", "DOCUMENTDB", "DYNAMODB", "HYPERPOD", "IAM", "MYSQL", "OPENSEARCH", "ORACLE", "POSTGRESQL", "REDSHIFT", "SAPHANA", "SNOWFLAKE", "SPARK", "SQLSERVER", "TERADATA", "VERTICA", "WORKFLOWS_MWAA" ]
enum_SortFieldConnection := [ "NAME" ]
enum_SortOrder := [ "ASCENDING", "DESCENDING" ]

valid {
    input.ReqMap.domainIdentifier == STRING
    input.Qs.environmentIdentifier == STRING
    input.Qs.maxResults == INTEGER
    input.Qs.name == STRING
    input.Qs.nextToken == STRING
    input.Qs.projectIdentifier == STRING
    input.Qs.sortBy == enum_SortFieldConnection[_]
    input.Qs.sortOrder == enum_SortOrder[_]
    input.Qs.type == enum_ConnectionType[_]
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

ListDataProductRevisions

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

ListDataSourceRunActivities

enum_DataAssetActivityStatus := [ "FAILED", "PUBLISHING_FAILED", "SUCCEEDED_CREATED", "SUCCEEDED_UPDATED", "SKIPPED_ALREADY_IMPORTED", "SKIPPED_ARCHIVED", "SKIPPED_NO_ACCESS", "UNCHANGED" ]

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

ListDataSourceRuns

enum_DataSourceRunStatus := [ "REQUESTED", "RUNNING", "FAILED", "PARTIALLY_SUCCEEDED", "SUCCESS" ]

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

ListDataSources

enum_DataSourceStatus := [ "CREATING", "FAILED_CREATION", "READY", "UPDATING", "FAILED_UPDATE", "RUNNING", "DELETING", "FAILED_DELETION" ]

valid {
    input.ReqMap.domainIdentifier == STRING
    input.Qs.connectionIdentifier == STRING
    input.Qs.environmentIdentifier == STRING
    input.Qs.maxResults == INTEGER
    input.Qs.name == STRING
    input.Qs.nextToken == STRING
    input.Qs.projectIdentifier == STRING
    input.Qs.status == enum_DataSourceStatus[_]
    input.Qs.type == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

ListDomainUnitsForParent

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

ListDomains

enum_DomainStatus := [ "CREATING", "AVAILABLE", "CREATION_FAILED", "DELETING", "DELETED", "DELETION_FAILED" ]

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

ListEntityOwners

enum_DataZoneEntityType := [ "DOMAIN_UNIT" ]

valid {
    input.ReqMap.domainIdentifier == STRING
    input.ReqMap.entityIdentifier == STRING
    input.ReqMap.entityType == enum_DataZoneEntityType[_]
    input.Qs.maxResults == INTEGER
    input.Qs.nextToken == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

ListEnvironmentActions

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

ListEnvironmentBlueprintConfigurations

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

ListEnvironmentBlueprints

valid {
    input.ReqMap.domainIdentifier == STRING
    input.Qs.managed == BOOLEAN
    input.Qs.maxResults == INTEGER
    input.Qs.name == STRING
    input.Qs.nextToken == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

ListEnvironmentProfiles

valid {
    input.ReqMap.domainIdentifier == STRING
    input.Qs.awsAccountId == STRING
    input.Qs.awsAccountRegion == STRING
    input.Qs.environmentBlueprintIdentifier == STRING
    input.Qs.maxResults == INTEGER
    input.Qs.name == STRING
    input.Qs.nextToken == STRING
    input.Qs.projectIdentifier == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

ListEnvironments

enum_EnvironmentStatus := [ "ACTIVE", "CREATING", "UPDATING", "DELETING", "CREATE_FAILED", "UPDATE_FAILED", "DELETE_FAILED", "VALIDATION_FAILED", "SUSPENDED", "DISABLED", "EXPIRED", "DELETED", "INACCESSIBLE" ]

valid {
    input.ReqMap.domainIdentifier == STRING
    input.Qs.awsAccountId == STRING
    input.Qs.awsAccountRegion == STRING
    input.Qs.environmentBlueprintIdentifier == STRING
    input.Qs.environmentProfileIdentifier == STRING
    input.Qs.maxResults == INTEGER
    input.Qs.name == STRING
    input.Qs.nextToken == STRING
    input.Qs.projectIdentifier == STRING
    input.Qs.provider == STRING
    input.Qs.status == enum_EnvironmentStatus[_]
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

ListJobRuns

enum_JobRunStatus := [ "SCHEDULED", "IN_PROGRESS", "SUCCESS", "PARTIALLY_SUCCEEDED", "FAILED", "ABORTED", "TIMED_OUT", "CANCELED" ]
enum_SortOrder := [ "ASCENDING", "DESCENDING" ]

valid {
    input.ReqMap.domainIdentifier == STRING
    input.ReqMap.jobIdentifier == STRING
    input.Qs.maxResults == INTEGER
    input.Qs.nextToken == STRING
    input.Qs.sortOrder == enum_SortOrder[_]
    input.Qs.status == enum_JobRunStatus[_]
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

ListLineageEvents

enum_LineageEventProcessingStatus := [ "REQUESTED", "PROCESSING", "SUCCESS", "FAILED" ]
enum_SortOrder := [ "ASCENDING", "DESCENDING" ]

valid {
    input.ReqMap.domainIdentifier == STRING
    input.Qs.maxResults == INTEGER
    input.Qs.nextToken == STRING
    input.Qs.processingStatus == enum_LineageEventProcessingStatus[_]
    input.Qs.sortOrder == enum_SortOrder[_]
    input.Qs.timestampAfter == TIMESTAMP
    input.Qs.timestampBefore == TIMESTAMP
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

ListLineageNodeHistory

enum_EdgeDirection := [ "UPSTREAM", "DOWNSTREAM" ]
enum_SortOrder := [ "ASCENDING", "DESCENDING" ]

valid {
    input.ReqMap.domainIdentifier == STRING
    input.ReqMap.identifier == STRING
    input.Qs.direction == enum_EdgeDirection[_]
    input.Qs.timestampGTE == TIMESTAMP
    input.Qs.timestampLTE == TIMESTAMP
    input.Qs.maxResults == INTEGER
    input.Qs.nextToken == STRING
    input.Qs.sortOrder == enum_SortOrder[_]
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

ListMetadataGenerationRuns

enum_MetadataGenerationRunStatus := [ "SUBMITTED", "IN_PROGRESS", "CANCELED", "SUCCEEDED", "FAILED" ]
enum_MetadataGenerationRunType := [ "BUSINESS_DESCRIPTIONS" ]

valid {
    input.ReqMap.domainIdentifier == STRING
    input.Qs.maxResults == INTEGER
    input.Qs.nextToken == STRING
    input.Qs.status == enum_MetadataGenerationRunStatus[_]
    input.Qs.type == enum_MetadataGenerationRunType[_]
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

ListNotifications

enum_NotificationType := [ "TASK", "EVENT" ]
enum_TaskStatus := [ "ACTIVE", "INACTIVE" ]

valid {
    input.ReqMap.domainIdentifier == STRING
    input.Qs.afterTimestamp == TIMESTAMP
    input.Qs.beforeTimestamp == TIMESTAMP
    input.Qs.maxResults == INTEGER
    input.Qs.nextToken == STRING
    input.Qs.subjects[_] == STRING
    input.Qs.taskStatus == enum_TaskStatus[_]
    input.Qs.type == enum_NotificationType[_]
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

ListPolicyGrants

enum_ManagedPolicyType := [ "CREATE_DOMAIN_UNIT", "OVERRIDE_DOMAIN_UNIT_OWNERS", "ADD_TO_PROJECT_MEMBER_POOL", "OVERRIDE_PROJECT_OWNERS", "CREATE_GLOSSARY", "CREATE_FORM_TYPE", "CREATE_ASSET_TYPE", "CREATE_PROJECT", "CREATE_ENVIRONMENT_PROFILE", "DELEGATE_CREATE_ENVIRONMENT_PROFILE", "CREATE_ENVIRONMENT", "CREATE_ENVIRONMENT_FROM_BLUEPRINT", "CREATE_PROJECT_FROM_PROJECT_PROFILE" ]
enum_TargetEntityType := [ "DOMAIN_UNIT", "ENVIRONMENT_BLUEPRINT_CONFIGURATION", "ENVIRONMENT_PROFILE" ]

valid {
    input.ReqMap.domainIdentifier == STRING
    input.ReqMap.entityIdentifier == STRING
    input.ReqMap.entityType == enum_TargetEntityType[_]
    input.Qs.maxResults == INTEGER
    input.Qs.nextToken == STRING
    input.Qs.policyType == enum_ManagedPolicyType[_]
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

ListProjectMemberships

enum_SortFieldProject := [ "NAME" ]
enum_SortOrder := [ "ASCENDING", "DESCENDING" ]

valid {
    input.ReqMap.domainIdentifier == STRING
    input.ReqMap.projectIdentifier == STRING
    input.Qs.maxResults == INTEGER
    input.Qs.nextToken == STRING
    input.Qs.sortBy == enum_SortFieldProject[_]
    input.Qs.sortOrder == enum_SortOrder[_]
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

ListProjectProfiles

enum_SortFieldProject := [ "NAME" ]
enum_SortOrder := [ "ASCENDING", "DESCENDING" ]

valid {
    input.ReqMap.domainIdentifier == STRING
    input.Qs.maxResults == INTEGER
    input.Qs.name == STRING
    input.Qs.nextToken == STRING
    input.Qs.sortBy == enum_SortFieldProject[_]
    input.Qs.sortOrder == enum_SortOrder[_]
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

ListProjects

valid {
    input.ReqMap.domainIdentifier == STRING
    input.Qs.groupIdentifier == STRING
    input.Qs.maxResults == INTEGER
    input.Qs.name == STRING
    input.Qs.nextToken == STRING
    input.Qs.userIdentifier == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

ListRules

enum_RuleAction := [ "CREATE_SUBSCRIPTION_REQUEST" ]
enum_RuleTargetType := [ "DOMAIN_UNIT" ]
enum_RuleType := [ "METADATA_FORM_ENFORCEMENT" ]

valid {
    input.ReqMap.domainIdentifier == STRING
    input.ReqMap.targetIdentifier == STRING
    input.ReqMap.targetType == enum_RuleTargetType[_]
    input.Qs.ruleAction == enum_RuleAction[_]
    input.Qs.assetTypes[_] == STRING
    input.Qs.dataProduct == BOOLEAN
    input.Qs.includeCascaded == BOOLEAN
    input.Qs.maxResults == INTEGER
    input.Qs.nextToken == STRING
    input.Qs.projectIds[_] == STRING
    input.Qs.ruleType == enum_RuleType[_]
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

ListSubscriptionGrants

enum_SortKey := [ "CREATED_AT", "UPDATED_AT" ]
enum_SortOrder := [ "ASCENDING", "DESCENDING" ]

valid {
    input.ReqMap.domainIdentifier == STRING
    input.Qs.environmentId == STRING
    input.Qs.maxResults == INTEGER
    input.Qs.nextToken == STRING
    input.Qs.owningProjectId == STRING
    input.Qs.sortBy == enum_SortKey[_]
    input.Qs.sortOrder == enum_SortOrder[_]
    input.Qs.subscribedListingId == STRING
    input.Qs.subscriptionId == STRING
    input.Qs.subscriptionTargetId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

ListSubscriptionRequests

enum_SortKey := [ "CREATED_AT", "UPDATED_AT" ]
enum_SortOrder := [ "ASCENDING", "DESCENDING" ]
enum_SubscriptionRequestStatus := [ "PENDING", "ACCEPTED", "REJECTED" ]

valid {
    input.ReqMap.domainIdentifier == STRING
    input.Qs.approverProjectId == STRING
    input.Qs.maxResults == INTEGER
    input.Qs.nextToken == STRING
    input.Qs.owningProjectId == STRING
    input.Qs.sortBy == enum_SortKey[_]
    input.Qs.sortOrder == enum_SortOrder[_]
    input.Qs.status == enum_SubscriptionRequestStatus[_]
    input.Qs.subscribedListingId == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

ListSubscriptionTargets

enum_SortKey := [ "CREATED_AT", "UPDATED_AT" ]
enum_SortOrder := [ "ASCENDING", "DESCENDING" ]

valid {
    input.ReqMap.domainIdentifier == STRING
    input.ReqMap.environmentIdentifier == STRING
    input.Qs.maxResults == INTEGER
    input.Qs.nextToken == STRING
    input.Qs.sortBy == enum_SortKey[_]
    input.Qs.sortOrder == enum_SortOrder[_]
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

ListSubscriptions

enum_SortKey := [ "CREATED_AT", "UPDATED_AT" ]
enum_SortOrder := [ "ASCENDING", "DESCENDING" ]
enum_SubscriptionStatus := [ "APPROVED", "REVOKED", "CANCELLED" ]

valid {
    input.ReqMap.domainIdentifier == STRING
    input.Qs.approverProjectId == STRING
    input.Qs.maxResults == INTEGER
    input.Qs.nextToken == STRING
    input.Qs.owningProjectId == STRING
    input.Qs.sortBy == enum_SortKey[_]
    input.Qs.sortOrder == enum_SortOrder[_]
    input.Qs.status == enum_SubscriptionStatus[_]
    input.Qs.subscribedListingId == STRING
    input.Qs.subscriptionRequestIdentifier == 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
}

ListTimeSeriesDataPoints

enum_TimeSeriesEntityType := [ "ASSET", "LISTING" ]

valid {
    input.ReqMap.domainIdentifier == STRING
    input.ReqMap.entityIdentifier == STRING
    input.ReqMap.entityType == enum_TimeSeriesEntityType[_]
    input.Qs.endedAt == TIMESTAMP
    input.Qs.formName == STRING
    input.Qs.maxResults == INTEGER
    input.Qs.nextToken == STRING
    input.Qs.startedAt == TIMESTAMP
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

PostLineageEvent

valid {
    input.Body.event == BLOB
    input.ReqMap.domainIdentifier == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

PostTimeSeriesDataPoints

enum_TimeSeriesEntityType := [ "ASSET", "LISTING" ]

valid {
    input.Body.clientToken == STRING
    input.Body.forms[_].content == STRING
    input.Body.forms[_].formName == STRING
    input.Body.forms[_].timestamp == TIMESTAMP
    input.Body.forms[_].typeIdentifier == STRING
    input.Body.forms[_].typeRevision == STRING
    input.ReqMap.domainIdentifier == STRING
    input.ReqMap.entityIdentifier == STRING
    input.ReqMap.entityType == enum_TimeSeriesEntityType[_]
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

PutEnvironmentBlueprintConfiguration

valid {
    input.Body.enabledRegions[_] == STRING
    input.Body.environmentRolePermissionBoundary == STRING
    input.Body.manageAccessRoleArn == STRING
    input.Body.provisioningConfigurations[_].lakeFormationConfiguration.locationRegistrationExcludeS3Locations[_] == STRING
    input.Body.provisioningConfigurations[_].lakeFormationConfiguration.locationRegistrationRole == STRING
    input.Body.provisioningRoleArn == STRING
    input.Body.regionalParameters.STRING.STRING == STRING
    input.ReqMap.domainIdentifier == STRING
    input.ReqMap.environmentBlueprintIdentifier == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

RejectPredictions

enum_RejectRuleBehavior := [ "ALL", "NONE" ]

valid {
    input.Body.clientToken == STRING
    input.Body.rejectChoices[_].predictionChoices[_] == INTEGER
    input.Body.rejectChoices[_].predictionTarget == STRING
    input.Body.rejectRule.rule == enum_RejectRuleBehavior[_]
    input.Body.rejectRule.threshold == FLOAT
    input.ReqMap.domainIdentifier == STRING
    input.ReqMap.identifier == STRING
    input.Qs.revision == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

RejectSubscriptionRequest

valid {
    input.Body.decisionComment == STRING
    input.ReqMap.domainIdentifier == STRING
    input.ReqMap.identifier == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

RemoveEntityOwner

enum_DataZoneEntityType := [ "DOMAIN_UNIT" ]

valid {
    input.Body.clientToken == STRING
    input.Body.owner.group.groupIdentifier == STRING
    input.Body.owner.user.userIdentifier == STRING
    input.ReqMap.domainIdentifier == STRING
    input.ReqMap.entityIdentifier == STRING
    input.ReqMap.entityType == enum_DataZoneEntityType[_]
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

RemovePolicyGrant

enum_DomainUnitDesignation := [ "OWNER" ]
enum_ManagedPolicyType := [ "CREATE_DOMAIN_UNIT", "OVERRIDE_DOMAIN_UNIT_OWNERS", "ADD_TO_PROJECT_MEMBER_POOL", "OVERRIDE_PROJECT_OWNERS", "CREATE_GLOSSARY", "CREATE_FORM_TYPE", "CREATE_ASSET_TYPE", "CREATE_PROJECT", "CREATE_ENVIRONMENT_PROFILE", "DELEGATE_CREATE_ENVIRONMENT_PROFILE", "CREATE_ENVIRONMENT", "CREATE_ENVIRONMENT_FROM_BLUEPRINT", "CREATE_PROJECT_FROM_PROJECT_PROFILE" ]
enum_ProjectDesignation := [ "OWNER", "CONTRIBUTOR", "PROJECT_CATALOG_STEWARD" ]
enum_TargetEntityType := [ "DOMAIN_UNIT", "ENVIRONMENT_BLUEPRINT_CONFIGURATION", "ENVIRONMENT_PROFILE" ]

valid {
    input.Body.clientToken == STRING
    input.Body.policyType == enum_ManagedPolicyType[_]
    input.Body.principal.domainUnit.domainUnitDesignation == enum_DomainUnitDesignation[_]
    input.Body.principal.domainUnit.domainUnitGrantFilter.allDomainUnitsGrantFilter == {}
    input.Body.principal.domainUnit.domainUnitIdentifier == STRING
    input.Body.principal.group.groupIdentifier == STRING
    input.Body.principal.project.projectDesignation == enum_ProjectDesignation[_]
    input.Body.principal.project.projectGrantFilter.domainUnitFilter.domainUnit == STRING
    input.Body.principal.project.projectGrantFilter.domainUnitFilter.includeChildDomainUnits == BOOLEAN
    input.Body.principal.project.projectIdentifier == STRING
    input.Body.principal.user.allUsersGrantFilter == {}
    input.Body.principal.user.userIdentifier == STRING
    input.ReqMap.domainIdentifier == STRING
    input.ReqMap.entityIdentifier == STRING
    input.ReqMap.entityType == enum_TargetEntityType[_]
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

RevokeSubscription

valid {
    input.Body.retainPermissions == BOOLEAN
    input.ReqMap.domainIdentifier == STRING
    input.ReqMap.identifier == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

Search

enum_InventorySearchScope := [ "ASSET", "GLOSSARY", "GLOSSARY_TERM", "DATA_PRODUCT" ]
enum_SearchOutputAdditionalAttribute := [ "FORMS", "TIME_SERIES_DATA_POINT_FORMS" ]
enum_SortOrder := [ "ASCENDING", "DESCENDING" ]

valid {
    input.Body.additionalAttributes[_] == enum_SearchOutputAdditionalAttribute[_]
    input.Body.filters.and[_] == NESTED
    input.Body.filters.filter.attribute == STRING
    input.Body.filters.filter.value == STRING
    input.Body.filters.or[_] == NESTED
    input.Body.maxResults == INTEGER
    input.Body.nextToken == STRING
    input.Body.owningProjectIdentifier == STRING
    input.Body.searchIn[_].attribute == STRING
    input.Body.searchScope == enum_InventorySearchScope[_]
    input.Body.searchText == STRING
    input.Body.sort.attribute == STRING
    input.Body.sort.order == enum_SortOrder[_]
    input.ReqMap.domainIdentifier == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

SearchGroupProfiles

enum_GroupSearchType := [ "SSO_GROUP", "DATAZONE_SSO_GROUP" ]

valid {
    input.Body.groupType == enum_GroupSearchType[_]
    input.Body.maxResults == INTEGER
    input.Body.nextToken == STRING
    input.Body.searchText == STRING
    input.ReqMap.domainIdentifier == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

SearchListings

enum_SearchOutputAdditionalAttribute := [ "FORMS", "TIME_SERIES_DATA_POINT_FORMS" ]
enum_SortOrder := [ "ASCENDING", "DESCENDING" ]

valid {
    input.Body.additionalAttributes[_] == enum_SearchOutputAdditionalAttribute[_]
    input.Body.filters.and[_] == NESTED
    input.Body.filters.filter.attribute == STRING
    input.Body.filters.filter.value == STRING
    input.Body.filters.or[_] == NESTED
    input.Body.maxResults == INTEGER
    input.Body.nextToken == STRING
    input.Body.searchIn[_].attribute == STRING
    input.Body.searchText == STRING
    input.Body.sort.attribute == STRING
    input.Body.sort.order == enum_SortOrder[_]
    input.ReqMap.domainIdentifier == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

SearchTypes

enum_SortOrder := [ "ASCENDING", "DESCENDING" ]
enum_TypesSearchScope := [ "ASSET_TYPE", "FORM_TYPE", "LINEAGE_NODE_TYPE" ]

valid {
    input.Body.filters.and[_] == NESTED
    input.Body.filters.filter.attribute == STRING
    input.Body.filters.filter.value == STRING
    input.Body.filters.or[_] == NESTED
    input.Body.managed == BOOLEAN
    input.Body.maxResults == INTEGER
    input.Body.nextToken == STRING
    input.Body.searchIn[_].attribute == STRING
    input.Body.searchScope == enum_TypesSearchScope[_]
    input.Body.searchText == STRING
    input.Body.sort.attribute == STRING
    input.Body.sort.order == enum_SortOrder[_]
    input.ReqMap.domainIdentifier == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

SearchUserProfiles

enum_UserSearchType := [ "SSO_USER", "DATAZONE_USER", "DATAZONE_SSO_USER", "DATAZONE_IAM_USER" ]

valid {
    input.Body.maxResults == INTEGER
    input.Body.nextToken == STRING
    input.Body.searchText == STRING
    input.Body.userType == enum_UserSearchType[_]
    input.ReqMap.domainIdentifier == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

StartDataSourceRun

valid {
    input.Body.clientToken == STRING
    input.ReqMap.dataSourceIdentifier == STRING
    input.ReqMap.domainIdentifier == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

StartMetadataGenerationRun

enum_MetadataGenerationRunType := [ "BUSINESS_DESCRIPTIONS" ]
enum_MetadataGenerationTargetType := [ "ASSET" ]

valid {
    input.Body.clientToken == STRING
    input.Body.owningProjectIdentifier == STRING
    input.Body.target.identifier == STRING
    input.Body.target.revision == STRING
    input.Body.target.type == enum_MetadataGenerationTargetType[_]
    input.Body.type == enum_MetadataGenerationRunType[_]
    input.ReqMap.domainIdentifier == 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
}

UpdateAssetFilter

valid {
    input.Body.configuration.columnConfiguration.includedColumnNames[_] == STRING
    input.Body.configuration.rowConfiguration.rowFilter.and[_] == NESTED
    input.Body.configuration.rowConfiguration.rowFilter.expression.equalTo.columnName == STRING
    input.Body.configuration.rowConfiguration.rowFilter.expression.equalTo.value == STRING
    input.Body.configuration.rowConfiguration.rowFilter.expression.greaterThan.columnName == STRING
    input.Body.configuration.rowConfiguration.rowFilter.expression.greaterThan.value == STRING
    input.Body.configuration.rowConfiguration.rowFilter.expression.greaterThanOrEqualTo.columnName == STRING
    input.Body.configuration.rowConfiguration.rowFilter.expression.greaterThanOrEqualTo.value == STRING
    input.Body.configuration.rowConfiguration.rowFilter.expression.in.columnName == STRING
    input.Body.configuration.rowConfiguration.rowFilter.expression.in.values[_] == STRING
    input.Body.configuration.rowConfiguration.rowFilter.expression.isNotNull.columnName == STRING
    input.Body.configuration.rowConfiguration.rowFilter.expression.isNull.columnName == STRING
    input.Body.configuration.rowConfiguration.rowFilter.expression.lessThan.columnName == STRING
    input.Body.configuration.rowConfiguration.rowFilter.expression.lessThan.value == STRING
    input.Body.configuration.rowConfiguration.rowFilter.expression.lessThanOrEqualTo.columnName == STRING
    input.Body.configuration.rowConfiguration.rowFilter.expression.lessThanOrEqualTo.value == STRING
    input.Body.configuration.rowConfiguration.rowFilter.expression.like.columnName == STRING
    input.Body.configuration.rowConfiguration.rowFilter.expression.like.value == STRING
    input.Body.configuration.rowConfiguration.rowFilter.expression.notEqualTo.columnName == STRING
    input.Body.configuration.rowConfiguration.rowFilter.expression.notEqualTo.value == STRING
    input.Body.configuration.rowConfiguration.rowFilter.expression.notIn.columnName == STRING
    input.Body.configuration.rowConfiguration.rowFilter.expression.notIn.values[_] == STRING
    input.Body.configuration.rowConfiguration.rowFilter.expression.notLike.columnName == STRING
    input.Body.configuration.rowConfiguration.rowFilter.expression.notLike.value == STRING
    input.Body.configuration.rowConfiguration.rowFilter.or[_] == NESTED
    input.Body.configuration.rowConfiguration.sensitive == BOOLEAN
    input.Body.description == STRING
    input.Body.name == STRING
    input.ReqMap.assetIdentifier == STRING
    input.ReqMap.domainIdentifier == STRING
    input.ReqMap.identifier == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

UpdateConnection

valid {
    input.Body.awsLocation.accessRole == STRING
    input.Body.awsLocation.awsAccountId == STRING
    input.Body.awsLocation.awsRegion == STRING
    input.Body.awsLocation.iamConnectionId == STRING
    input.Body.description == STRING
    input.Body.props.athenaProperties.workgroupName == STRING
    input.Body.props.glueProperties.glueConnectionInput.authenticationConfiguration.basicAuthenticationCredentials.password == STRING
    input.Body.props.glueProperties.glueConnectionInput.authenticationConfiguration.basicAuthenticationCredentials.userName == STRING
    input.Body.props.glueProperties.glueConnectionInput.authenticationConfiguration.secretArn == STRING
    input.Body.props.glueProperties.glueConnectionInput.connectionProperties.STRING == STRING
    input.Body.props.glueProperties.glueConnectionInput.description == STRING
    input.Body.props.iamProperties.glueLineageSyncEnabled == BOOLEAN
    input.Body.props.redshiftProperties.credentials.secretArn == STRING
    input.Body.props.redshiftProperties.credentials.usernamePassword.password == STRING
    input.Body.props.redshiftProperties.credentials.usernamePassword.username == STRING
    input.Body.props.redshiftProperties.databaseName == STRING
    input.Body.props.redshiftProperties.host == STRING
    input.Body.props.redshiftProperties.lineageSync.enabled == BOOLEAN
    input.Body.props.redshiftProperties.lineageSync.schedule.schedule == STRING
    input.Body.props.redshiftProperties.port == INTEGER
    input.Body.props.redshiftProperties.storage.clusterName == STRING
    input.Body.props.redshiftProperties.storage.workgroupName == STRING
    input.Body.props.sparkEmrProperties.computeArn == STRING
    input.Body.props.sparkEmrProperties.instanceProfileArn == STRING
    input.Body.props.sparkEmrProperties.javaVirtualEnv == STRING
    input.Body.props.sparkEmrProperties.logUri == STRING
    input.Body.props.sparkEmrProperties.pythonVirtualEnv == STRING
    input.Body.props.sparkEmrProperties.runtimeRole == STRING
    input.Body.props.sparkEmrProperties.trustedCertificatesS3Uri == STRING
    input.ReqMap.domainIdentifier == STRING
    input.ReqMap.identifier == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

UpdateDataSource

enum_EnableSetting := [ "ENABLED", "DISABLED" ]
enum_FilterExpressionType := [ "INCLUDE", "EXCLUDE" ]
enum_Timezone := [ "UTC", "AFRICA_JOHANNESBURG", "AMERICA_MONTREAL", "AMERICA_SAO_PAULO", "ASIA_BAHRAIN", "ASIA_BANGKOK", "ASIA_CALCUTTA", "ASIA_DUBAI", "ASIA_HONG_KONG", "ASIA_JAKARTA", "ASIA_KUALA_LUMPUR", "ASIA_SEOUL", "ASIA_SHANGHAI", "ASIA_SINGAPORE", "ASIA_TAIPEI", "ASIA_TOKYO", "AUSTRALIA_MELBOURNE", "AUSTRALIA_SYDNEY", "CANADA_CENTRAL", "CET", "CST6CDT", "ETC_GMT", "ETC_GMT0", "ETC_GMT_ADD_0", "ETC_GMT_ADD_1", "ETC_GMT_ADD_10", "ETC_GMT_ADD_11", "ETC_GMT_ADD_12", "ETC_GMT_ADD_2", "ETC_GMT_ADD_3", "ETC_GMT_ADD_4", "ETC_GMT_ADD_5", "ETC_GMT_ADD_6", "ETC_GMT_ADD_7", "ETC_GMT_ADD_8", "ETC_GMT_ADD_9", "ETC_GMT_NEG_0", "ETC_GMT_NEG_1", "ETC_GMT_NEG_10", "ETC_GMT_NEG_11", "ETC_GMT_NEG_12", "ETC_GMT_NEG_13", "ETC_GMT_NEG_14", "ETC_GMT_NEG_2", "ETC_GMT_NEG_3", "ETC_GMT_NEG_4", "ETC_GMT_NEG_5", "ETC_GMT_NEG_6", "ETC_GMT_NEG_7", "ETC_GMT_NEG_8", "ETC_GMT_NEG_9", "EUROPE_DUBLIN", "EUROPE_LONDON", "EUROPE_PARIS", "EUROPE_STOCKHOLM", "EUROPE_ZURICH", "ISRAEL", "MEXICO_GENERAL", "MST7MDT", "PACIFIC_AUCKLAND", "US_CENTRAL", "US_EASTERN", "US_MOUNTAIN", "US_PACIFIC" ]

valid {
    input.Body.assetFormsInput[_].content == STRING
    input.Body.assetFormsInput[_].formName == STRING
    input.Body.assetFormsInput[_].typeIdentifier == STRING
    input.Body.assetFormsInput[_].typeRevision == STRING
    input.Body.configuration.glueRunConfiguration.autoImportDataQualityResult == BOOLEAN
    input.Body.configuration.glueRunConfiguration.catalogName == STRING
    input.Body.configuration.glueRunConfiguration.dataAccessRole == STRING
    input.Body.configuration.glueRunConfiguration.relationalFilterConfigurations[_].databaseName == STRING
    input.Body.configuration.glueRunConfiguration.relationalFilterConfigurations[_].filterExpressions[_].expression == STRING
    input.Body.configuration.glueRunConfiguration.relationalFilterConfigurations[_].filterExpressions[_].type == enum_FilterExpressionType[_]
    input.Body.configuration.glueRunConfiguration.relationalFilterConfigurations[_].schemaName == STRING
    input.Body.configuration.redshiftRunConfiguration.dataAccessRole == STRING
    input.Body.configuration.redshiftRunConfiguration.redshiftCredentialConfiguration.secretManagerArn == STRING
    input.Body.configuration.redshiftRunConfiguration.redshiftStorage.redshiftClusterSource.clusterName == STRING
    input.Body.configuration.redshiftRunConfiguration.redshiftStorage.redshiftServerlessSource.workgroupName == STRING
    input.Body.configuration.redshiftRunConfiguration.relationalFilterConfigurations[_].databaseName == STRING
    input.Body.configuration.redshiftRunConfiguration.relationalFilterConfigurations[_].filterExpressions[_].expression == STRING
    input.Body.configuration.redshiftRunConfiguration.relationalFilterConfigurations[_].filterExpressions[_].type == enum_FilterExpressionType[_]
    input.Body.configuration.redshiftRunConfiguration.relationalFilterConfigurations[_].schemaName == STRING
    input.Body.configuration.sageMakerRunConfiguration.trackingAssets.STRING[_] == STRING
    input.Body.description == STRING
    input.Body.enableSetting == enum_EnableSetting[_]
    input.Body.name == STRING
    input.Body.publishOnImport == BOOLEAN
    input.Body.recommendation.enableBusinessNameGeneration == BOOLEAN
    input.Body.retainPermissionsOnRevokeFailure == BOOLEAN
    input.Body.schedule.schedule == STRING
    input.Body.schedule.timezone == enum_Timezone[_]
    input.ReqMap.domainIdentifier == STRING
    input.ReqMap.identifier == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

UpdateDomain

enum_AuthType := [ "IAM_IDC", "DISABLED" ]
enum_UserAssignment := [ "AUTOMATIC", "MANUAL" ]

valid {
    input.Body.description == STRING
    input.Body.domainExecutionRole == STRING
    input.Body.name == STRING
    input.Body.serviceRole == STRING
    input.Body.singleSignOn.type == enum_AuthType[_]
    input.Body.singleSignOn.userAssignment == enum_UserAssignment[_]
    input.ReqMap.identifier == STRING
    input.Qs.clientToken == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

UpdateDomainUnit

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

UpdateEnvironment

valid {
    input.Body.description == STRING
    input.Body.glossaryTerms[_] == STRING
    input.Body.name == STRING
    input.ReqMap.domainIdentifier == STRING
    input.ReqMap.identifier == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

UpdateEnvironmentAction

valid {
    input.Body.description == STRING
    input.Body.name == STRING
    input.Body.parameters.awsConsoleLink.uri == STRING
    input.ReqMap.domainIdentifier == STRING
    input.ReqMap.environmentIdentifier == STRING
    input.ReqMap.identifier == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

UpdateEnvironmentProfile

valid {
    input.Body.awsAccountId == STRING
    input.Body.awsAccountRegion == STRING
    input.Body.description == STRING
    input.Body.name == STRING
    input.Body.userParameters[_].name == STRING
    input.Body.userParameters[_].value == STRING
    input.ReqMap.domainIdentifier == STRING
    input.ReqMap.identifier == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

UpdateGlossary

enum_GlossaryStatus := [ "DISABLED", "ENABLED" ]

valid {
    input.Body.clientToken == STRING
    input.Body.description == STRING
    input.Body.name == STRING
    input.Body.status == enum_GlossaryStatus[_]
    input.ReqMap.domainIdentifier == STRING
    input.ReqMap.identifier == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

UpdateGlossaryTerm

enum_GlossaryTermStatus := [ "ENABLED", "DISABLED" ]

valid {
    input.Body.glossaryIdentifier == STRING
    input.Body.longDescription == STRING
    input.Body.name == STRING
    input.Body.shortDescription == STRING
    input.Body.status == enum_GlossaryTermStatus[_]
    input.Body.termRelations.classifies[_] == STRING
    input.Body.termRelations.isA[_] == STRING
    input.ReqMap.domainIdentifier == STRING
    input.ReqMap.identifier == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

UpdateGroupProfile

enum_GroupProfileStatus := [ "ASSIGNED", "NOT_ASSIGNED" ]

valid {
    input.Body.status == enum_GroupProfileStatus[_]
    input.ReqMap.domainIdentifier == STRING
    input.ReqMap.groupIdentifier == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

UpdateProject

enum_OverallDeploymentStatus := [ "PENDING_DEPLOYMENT", "IN_PROGRESS", "SUCCESSFUL", "FAILED_VALIDATION", "FAILED_DEPLOYMENT" ]

valid {
    input.Body.description == STRING
    input.Body.environmentDeploymentDetails.environmentFailureReasons.STRING[_].code == STRING
    input.Body.environmentDeploymentDetails.environmentFailureReasons.STRING[_].message == STRING
    input.Body.environmentDeploymentDetails.overallDeploymentStatus == enum_OverallDeploymentStatus[_]
    input.Body.glossaryTerms[_] == STRING
    input.Body.name == STRING
    input.ReqMap.domainIdentifier == STRING
    input.ReqMap.identifier == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

UpdateProjectProfile

enum_DeploymentMode := [ "ON_CREATE", "ON_DEMAND" ]
enum_Status := [ "ENABLED", "DISABLED" ]

valid {
    input.Body.description == STRING
    input.Body.domainUnitIdentifier == STRING
    input.Body.environmentConfigurations[_].awsAccount.awsAccountId == STRING
    input.Body.environmentConfigurations[_].awsAccount.awsAccountIdPath == STRING
    input.Body.environmentConfigurations[_].awsRegion.regionName == STRING
    input.Body.environmentConfigurations[_].awsRegion.regionNamePath == STRING
    input.Body.environmentConfigurations[_].configurationParameters.parameterOverrides[_].isEditable == BOOLEAN
    input.Body.environmentConfigurations[_].configurationParameters.parameterOverrides[_].name == STRING
    input.Body.environmentConfigurations[_].configurationParameters.parameterOverrides[_].value == STRING
    input.Body.environmentConfigurations[_].configurationParameters.resolvedParameters[_].isEditable == BOOLEAN
    input.Body.environmentConfigurations[_].configurationParameters.resolvedParameters[_].name == STRING
    input.Body.environmentConfigurations[_].configurationParameters.resolvedParameters[_].value == STRING
    input.Body.environmentConfigurations[_].configurationParameters.ssmPath == STRING
    input.Body.environmentConfigurations[_].deploymentMode == enum_DeploymentMode[_]
    input.Body.environmentConfigurations[_].deploymentOrder == INTEGER
    input.Body.environmentConfigurations[_].description == STRING
    input.Body.environmentConfigurations[_].environmentBlueprintId == STRING
    input.Body.environmentConfigurations[_].id == STRING
    input.Body.environmentConfigurations[_].name == STRING
    input.Body.name == STRING
    input.Body.status == enum_Status[_]
    input.ReqMap.domainIdentifier == STRING
    input.ReqMap.identifier == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

UpdateRule

enum_RuleScopeSelectionMode := [ "ALL", "SPECIFIC" ]

valid {
    input.Body.description == STRING
    input.Body.detail.metadataFormEnforcementDetail.requiredMetadataForms[_].typeIdentifier == STRING
    input.Body.detail.metadataFormEnforcementDetail.requiredMetadataForms[_].typeRevision == STRING
    input.Body.includeChildDomainUnits == BOOLEAN
    input.Body.name == STRING
    input.Body.scope.assetType.selectionMode == enum_RuleScopeSelectionMode[_]
    input.Body.scope.assetType.specificAssetTypes[_] == STRING
    input.Body.scope.dataProduct == BOOLEAN
    input.Body.scope.project.selectionMode == enum_RuleScopeSelectionMode[_]
    input.Body.scope.project.specificProjects[_] == STRING
    input.ReqMap.domainIdentifier == STRING
    input.ReqMap.identifier == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

UpdateSubscriptionGrantStatus

enum_SubscriptionGrantStatus := [ "GRANT_PENDING", "REVOKE_PENDING", "GRANT_IN_PROGRESS", "REVOKE_IN_PROGRESS", "GRANTED", "REVOKED", "GRANT_FAILED", "REVOKE_FAILED" ]

valid {
    input.Body.failureCause.message == STRING
    input.Body.status == enum_SubscriptionGrantStatus[_]
    input.Body.targetName == STRING
    input.ReqMap.assetIdentifier == STRING
    input.ReqMap.domainIdentifier == STRING
    input.ReqMap.identifier == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

UpdateSubscriptionRequest

valid {
    input.Body.requestReason == STRING
    input.ReqMap.domainIdentifier == STRING
    input.ReqMap.identifier == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

UpdateSubscriptionTarget

valid {
    input.Body.applicableAssetTypes[_] == STRING
    input.Body.authorizedPrincipals[_] == STRING
    input.Body.manageAccessRole == STRING
    input.Body.name == STRING
    input.Body.provider == STRING
    input.Body.subscriptionTargetConfig[_].content == STRING
    input.Body.subscriptionTargetConfig[_].formName == STRING
    input.ReqMap.domainIdentifier == STRING
    input.ReqMap.environmentIdentifier == STRING
    input.ReqMap.identifier == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

UpdateUserProfile

enum_UserProfileStatus := [ "ASSIGNED", "NOT_ASSIGNED", "ACTIVATED", "DEACTIVATED" ]
enum_UserProfileType := [ "IAM", "SSO" ]

valid {
    input.Body.status == enum_UserProfileStatus[_]
    input.Body.type == enum_UserProfileType[_]
    input.ReqMap.domainIdentifier == STRING
    input.ReqMap.userIdentifier == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}