@lap v0.3
# Machine-readable API spec. Each @endpoint block is one API call.
@api Amazon Personalize
@version 2018-05-22
@auth AWS SigV4
@endpoints 71
@hint download_for_search
@toc root(71)

@endpoint POST /
@required {jobName: str, solutionVersionArn: str, jobInput: BatchInferenceJobInput, jobOutput: BatchInferenceJobOutput, roleArn: str}
@optional {filterArn: str, numResults: int, batchInferenceJobConfig: BatchInferenceJobConfig, tags: [Tag], batchInferenceJobMode: str, themeGenerationConfig: ThemeGenerationConfig}
@returns(200) {batchInferenceJobArn: str?}

@endpoint POST /
@required {jobName: str, solutionVersionArn: str, jobInput: BatchSegmentJobInput, jobOutput: BatchSegmentJobOutput, roleArn: str}
@optional {filterArn: str, numResults: int, tags: [Tag]}
@returns(200) {batchSegmentJobArn: str?}

@endpoint POST /
@required {name: str, solutionVersionArn: str}
@optional {minProvisionedTPS: int, campaignConfig: CampaignConfig, tags: [Tag]}
@returns(200) {campaignArn: str?}

@endpoint POST /
@required {jobName: str, datasetGroupArn: str, dataSource: DataSource, roleArn: str}
@optional {tags: [Tag]}
@returns(200) {dataDeletionJobArn: str?}

@endpoint POST /
@required {name: str, schemaArn: str, datasetGroupArn: str, datasetType: str}
@optional {tags: [Tag]}
@returns(200) {datasetArn: str?}

@endpoint POST /
@required {jobName: str, datasetArn: str, roleArn: str, jobOutput: DatasetExportJobOutput}
@optional {ingestionMode: str, tags: [Tag]}
@returns(200) {datasetExportJobArn: str?}

@endpoint POST /
@required {name: str}
@optional {roleArn: str, kmsKeyArn: str, domain: str, tags: [Tag]}
@returns(200) {datasetGroupArn: str?, domain: str?}

@endpoint POST /
@required {jobName: str, datasetArn: str, dataSource: DataSource, roleArn: str}
@optional {tags: [Tag], importMode: str, publishAttributionMetricsToS3: bool}
@returns(200) {datasetImportJobArn: str?}

@endpoint POST /
@required {name: str, datasetGroupArn: str}
@optional {tags: [Tag]}
@returns(200) {eventTrackerArn: str?, trackingId: str?}

@endpoint POST /
@required {name: str, datasetGroupArn: str, filterExpression: str}
@optional {tags: [Tag]}
@returns(200) {filterArn: str?}

@endpoint POST /
@required {name: str, datasetGroupArn: str, metrics: [MetricAttribute], metricsOutputConfig: MetricAttributionOutput}
@returns(200) {metricAttributionArn: str?}

@endpoint POST /
@required {name: str, datasetGroupArn: str, recipeArn: str}
@optional {recommenderConfig: RecommenderConfig, tags: [Tag]}
@returns(200) {recommenderArn: str?}

@endpoint POST /
@required {name: str, schema: str}
@optional {domain: str}
@returns(200) {schemaArn: str?}

@endpoint POST /
@required {name: str, datasetGroupArn: str}
@optional {performHPO: bool, performAutoML: bool, performAutoTraining: bool, recipeArn: str, eventType: str, solutionConfig: SolutionConfig, tags: [Tag]}
@returns(200) {solutionArn: str?}

@endpoint POST /
@required {solutionArn: str}
@optional {name: str, trainingMode: str, tags: [Tag]}
@returns(200) {solutionVersionArn: str?}

@endpoint POST /
@required {campaignArn: str}

@endpoint POST /
@required {datasetArn: str}

@endpoint POST /
@required {datasetGroupArn: str}

@endpoint POST /
@required {eventTrackerArn: str}

@endpoint POST /
@required {filterArn: str}

@endpoint POST /
@required {metricAttributionArn: str}

@endpoint POST /
@required {recommenderArn: str}

@endpoint POST /
@required {schemaArn: str}

@endpoint POST /
@required {solutionArn: str}

@endpoint POST /
@required {algorithmArn: str}
@returns(200) {algorithm: Algorithm?{name: str?, algorithmArn: str?, algorithmImage: AlgorithmImage?{name: str?, dockerURI: str}, defaultHyperParameters: map<str,str>?, defaultHyperParameterRanges: DefaultHyperParameterRanges?{integerHyperParameterRanges: [DefaultIntegerHyperParameterRange]?, continuousHyperParameterRanges: [DefaultContinuousHyperParameterRange]?, categoricalHyperParameterRanges: [DefaultCategoricalHyperParameterRange]?}, defaultResourceConfig: map<str,str>?, trainingInputMode: str?, roleArn: str?, creationDateTime: str(timestamp)?, lastUpdatedDateTime: str(timestamp)?}}

@endpoint POST /
@required {batchInferenceJobArn: str}
@returns(200) {batchInferenceJob: BatchInferenceJob?{jobName: str?, batchInferenceJobArn: str?, filterArn: str?, failureReason: str?, solutionVersionArn: str?, numResults: int?, jobInput: BatchInferenceJobInput?{s3DataSource: S3DataConfig{path: str, kmsKeyArn: str?}}, jobOutput: BatchInferenceJobOutput?{s3DataDestination: S3DataConfig{path: str, kmsKeyArn: str?}}, batchInferenceJobConfig: BatchInferenceJobConfig?{itemExplorationConfig: map<str,str>?}, roleArn: str?, batchInferenceJobMode: str?, themeGenerationConfig: ThemeGenerationConfig?{fieldsForThemeGeneration: FieldsForThemeGeneration{itemName: str}}, status: str?, creationDateTime: str(timestamp)?, lastUpdatedDateTime: str(timestamp)?}}

@endpoint POST /
@required {batchSegmentJobArn: str}
@returns(200) {batchSegmentJob: BatchSegmentJob?{jobName: str?, batchSegmentJobArn: str?, filterArn: str?, failureReason: str?, solutionVersionArn: str?, numResults: int?, jobInput: BatchSegmentJobInput?{s3DataSource: S3DataConfig{path: str, kmsKeyArn: str?}}, jobOutput: BatchSegmentJobOutput?{s3DataDestination: S3DataConfig{path: str, kmsKeyArn: str?}}, roleArn: str?, status: str?, creationDateTime: str(timestamp)?, lastUpdatedDateTime: str(timestamp)?}}

@endpoint POST /
@required {campaignArn: str}
@returns(200) {campaign: Campaign?{name: str?, campaignArn: str?, solutionVersionArn: str?, minProvisionedTPS: int?, campaignConfig: CampaignConfig?{itemExplorationConfig: map<str,str>?, enableMetadataWithRecommendations: bool?, syncWithLatestSolutionVersion: bool?}, status: str?, failureReason: str?, creationDateTime: str(timestamp)?, lastUpdatedDateTime: str(timestamp)?, latestCampaignUpdate: CampaignUpdateSummary?{solutionVersionArn: str?, minProvisionedTPS: int?, campaignConfig: CampaignConfig?{itemExplorationConfig: map<str,str>?, enableMetadataWithRecommendations: bool?, syncWithLatestSolutionVersion: bool?}, status: str?, failureReason: str?, creationDateTime: str(timestamp)?, lastUpdatedDateTime: str(timestamp)?}}}

@endpoint POST /
@required {dataDeletionJobArn: str}
@returns(200) {dataDeletionJob: DataDeletionJob?{jobName: str?, dataDeletionJobArn: str?, datasetGroupArn: str?, dataSource: DataSource?{dataLocation: str?}, roleArn: str?, status: str?, numDeleted: int?, creationDateTime: str(timestamp)?, lastUpdatedDateTime: str(timestamp)?, failureReason: str?}}

@endpoint POST /
@required {datasetArn: str}
@returns(200) {dataset: Dataset?{name: str?, datasetArn: str?, datasetGroupArn: str?, datasetType: str?, schemaArn: str?, status: str?, creationDateTime: str(timestamp)?, lastUpdatedDateTime: str(timestamp)?, latestDatasetUpdate: DatasetUpdateSummary?{schemaArn: str?, status: str?, failureReason: str?, creationDateTime: str(timestamp)?, lastUpdatedDateTime: str(timestamp)?}, trackingId: str?}}

@endpoint POST /
@required {datasetExportJobArn: str}
@returns(200) {datasetExportJob: DatasetExportJob?{jobName: str?, datasetExportJobArn: str?, datasetArn: str?, ingestionMode: str?, roleArn: str?, status: str?, jobOutput: DatasetExportJobOutput?{s3DataDestination: S3DataConfig{path: str, kmsKeyArn: str?}}, creationDateTime: str(timestamp)?, lastUpdatedDateTime: str(timestamp)?, failureReason: str?}}

@endpoint POST /
@required {datasetGroupArn: str}
@returns(200) {datasetGroup: DatasetGroup?{name: str?, datasetGroupArn: str?, status: str?, roleArn: str?, kmsKeyArn: str?, creationDateTime: str(timestamp)?, lastUpdatedDateTime: str(timestamp)?, failureReason: str?, domain: str?}}

@endpoint POST /
@required {datasetImportJobArn: str}
@returns(200) {datasetImportJob: DatasetImportJob?{jobName: str?, datasetImportJobArn: str?, datasetArn: str?, dataSource: DataSource?{dataLocation: str?}, roleArn: str?, status: str?, creationDateTime: str(timestamp)?, lastUpdatedDateTime: str(timestamp)?, failureReason: str?, importMode: str?, publishAttributionMetricsToS3: bool?}}

@endpoint POST /
@required {eventTrackerArn: str}
@returns(200) {eventTracker: EventTracker?{name: str?, eventTrackerArn: str?, accountId: str?, trackingId: str?, datasetGroupArn: str?, status: str?, creationDateTime: str(timestamp)?, lastUpdatedDateTime: str(timestamp)?}}

@endpoint POST /
@required {featureTransformationArn: str}
@returns(200) {featureTransformation: FeatureTransformation?{name: str?, featureTransformationArn: str?, defaultParameters: map<str,str>?, creationDateTime: str(timestamp)?, lastUpdatedDateTime: str(timestamp)?, status: str?}}

@endpoint POST /
@required {filterArn: str}
@returns(200) {filter: Filter?{name: str?, filterArn: str?, creationDateTime: str(timestamp)?, lastUpdatedDateTime: str(timestamp)?, datasetGroupArn: str?, failureReason: str?, filterExpression: str?, status: str?}}

@endpoint POST /
@required {metricAttributionArn: str}
@returns(200) {metricAttribution: MetricAttribution?{name: str?, metricAttributionArn: str?, datasetGroupArn: str?, metricsOutputConfig: MetricAttributionOutput?{s3DataDestination: S3DataConfig?{path: str, kmsKeyArn: str?}, roleArn: str}, status: str?, creationDateTime: str(timestamp)?, lastUpdatedDateTime: str(timestamp)?, failureReason: str?}}

@endpoint POST /
@required {recipeArn: str}
@returns(200) {recipe: Recipe?{name: str?, recipeArn: str?, algorithmArn: str?, featureTransformationArn: str?, status: str?, description: str?, creationDateTime: str(timestamp)?, recipeType: str?, lastUpdatedDateTime: str(timestamp)?}}

@endpoint POST /
@required {recommenderArn: str}
@returns(200) {recommender: Recommender?{recommenderArn: str?, datasetGroupArn: str?, name: str?, recipeArn: str?, recommenderConfig: RecommenderConfig?{itemExplorationConfig: map<str,str>?, minRecommendationRequestsPerSecond: int?, trainingDataConfig: TrainingDataConfig?{excludedDatasetColumns: map<str,[str]>?}, enableMetadataWithRecommendations: bool?}, creationDateTime: str(timestamp)?, lastUpdatedDateTime: str(timestamp)?, status: str?, failureReason: str?, latestRecommenderUpdate: RecommenderUpdateSummary?{recommenderConfig: RecommenderConfig?{itemExplorationConfig: map<str,str>?, minRecommendationRequestsPerSecond: int?, trainingDataConfig: TrainingDataConfig?, enableMetadataWithRecommendations: bool?}, creationDateTime: str(timestamp)?, lastUpdatedDateTime: str(timestamp)?, status: str?, failureReason: str?}, modelMetrics: map<str,num(f64)>?}}

@endpoint POST /
@required {schemaArn: str}
@returns(200) {schema: DatasetSchema?{name: str?, schemaArn: str?, schema: str?, creationDateTime: str(timestamp)?, lastUpdatedDateTime: str(timestamp)?, domain: str?}}

@endpoint POST /
@required {solutionArn: str}
@returns(200) {solution: Solution?{name: str?, solutionArn: str?, performHPO: bool?, performAutoML: bool?, performAutoTraining: bool?, recipeArn: str?, datasetGroupArn: str?, eventType: str?, solutionConfig: SolutionConfig?{eventValueThreshold: str?, hpoConfig: HPOConfig?{hpoObjective: HPOObjective?, hpoResourceConfig: HPOResourceConfig?, algorithmHyperParameterRanges: HyperParameterRanges?}, algorithmHyperParameters: map<str,str>?, featureTransformationParameters: map<str,str>?, autoMLConfig: AutoMLConfig?{metricName: str?, recipeList: [str]?}, optimizationObjective: OptimizationObjective?{itemAttribute: str?, objectiveSensitivity: str?}, trainingDataConfig: TrainingDataConfig?{excludedDatasetColumns: map<str,[str]>?}, autoTrainingConfig: AutoTrainingConfig?{schedulingExpression: str?}}, autoMLResult: AutoMLResult?{bestRecipeArn: str?}, status: str?, creationDateTime: str(timestamp)?, lastUpdatedDateTime: str(timestamp)?, latestSolutionVersion: SolutionVersionSummary?{solutionVersionArn: str?, status: str?, trainingMode: str?, trainingType: str?, creationDateTime: str(timestamp)?, lastUpdatedDateTime: str(timestamp)?, failureReason: str?}, latestSolutionUpdate: SolutionUpdateSummary?{solutionUpdateConfig: SolutionUpdateConfig?{autoTrainingConfig: AutoTrainingConfig?}, status: str?, performAutoTraining: bool?, creationDateTime: str(timestamp)?, lastUpdatedDateTime: str(timestamp)?, failureReason: str?}}}

@endpoint POST /
@required {solutionVersionArn: str}
@returns(200) {solutionVersion: SolutionVersion?{name: str?, solutionVersionArn: str?, solutionArn: str?, performHPO: bool?, performAutoML: bool?, recipeArn: str?, eventType: str?, datasetGroupArn: str?, solutionConfig: SolutionConfig?{eventValueThreshold: str?, hpoConfig: HPOConfig?{hpoObjective: HPOObjective?, hpoResourceConfig: HPOResourceConfig?, algorithmHyperParameterRanges: HyperParameterRanges?}, algorithmHyperParameters: map<str,str>?, featureTransformationParameters: map<str,str>?, autoMLConfig: AutoMLConfig?{metricName: str?, recipeList: [str]?}, optimizationObjective: OptimizationObjective?{itemAttribute: str?, objectiveSensitivity: str?}, trainingDataConfig: TrainingDataConfig?{excludedDatasetColumns: map<str,[str]>?}, autoTrainingConfig: AutoTrainingConfig?{schedulingExpression: str?}}, trainingHours: num(f64)?, trainingMode: str?, tunedHPOParams: TunedHPOParams?{algorithmHyperParameters: map<str,str>?}, status: str?, failureReason: str?, creationDateTime: str(timestamp)?, lastUpdatedDateTime: str(timestamp)?, trainingType: str?}}

@endpoint POST /
@required {solutionVersionArn: str}
@returns(200) {solutionVersionArn: str?, metrics: map<str,num(f64)>?}

@endpoint POST /
@optional {solutionVersionArn: str, nextToken: str, maxResults: int}
@returns(200) {batchInferenceJobs: [BatchInferenceJobSummary]?, nextToken: str?}

@endpoint POST /
@optional {solutionVersionArn: str, nextToken: str, maxResults: int}
@returns(200) {batchSegmentJobs: [BatchSegmentJobSummary]?, nextToken: str?}

@endpoint POST /
@optional {solutionArn: str, nextToken: str, maxResults: int}
@returns(200) {campaigns: [CampaignSummary]?, nextToken: str?}

@endpoint POST /
@optional {datasetGroupArn: str, nextToken: str, maxResults: int}
@returns(200) {dataDeletionJobs: [DataDeletionJobSummary]?, nextToken: str?}

@endpoint POST /
@optional {datasetArn: str, nextToken: str, maxResults: int}
@returns(200) {datasetExportJobs: [DatasetExportJobSummary]?, nextToken: str?}

@endpoint POST /
@optional {nextToken: str, maxResults: int}
@returns(200) {datasetGroups: [DatasetGroupSummary]?, nextToken: str?}

@endpoint POST /
@optional {datasetArn: str, nextToken: str, maxResults: int}
@returns(200) {datasetImportJobs: [DatasetImportJobSummary]?, nextToken: str?}

@endpoint POST /
@optional {datasetGroupArn: str, nextToken: str, maxResults: int}
@returns(200) {datasets: [DatasetSummary]?, nextToken: str?}

@endpoint POST /
@optional {datasetGroupArn: str, nextToken: str, maxResults: int}
@returns(200) {eventTrackers: [EventTrackerSummary]?, nextToken: str?}

@endpoint POST /
@optional {datasetGroupArn: str, nextToken: str, maxResults: int}
@returns(200) {Filters: [FilterSummary]?, nextToken: str?}

@endpoint POST /
@optional {metricAttributionArn: str, nextToken: str, maxResults: int}
@returns(200) {metrics: [MetricAttribute]?, nextToken: str?}

@endpoint POST /
@optional {datasetGroupArn: str, nextToken: str, maxResults: int}
@returns(200) {metricAttributions: [MetricAttributionSummary]?, nextToken: str?}

@endpoint POST /
@optional {recipeProvider: str, nextToken: str, maxResults: int, domain: str}
@returns(200) {recipes: [RecipeSummary]?, nextToken: str?}

@endpoint POST /
@optional {datasetGroupArn: str, nextToken: str, maxResults: int}
@returns(200) {recommenders: [RecommenderSummary]?, nextToken: str?}

@endpoint POST /
@optional {nextToken: str, maxResults: int}
@returns(200) {schemas: [DatasetSchemaSummary]?, nextToken: str?}

@endpoint POST /
@optional {solutionArn: str, nextToken: str, maxResults: int}
@returns(200) {solutionVersions: [SolutionVersionSummary]?, nextToken: str?}

@endpoint POST /
@optional {datasetGroupArn: str, nextToken: str, maxResults: int}
@returns(200) {solutions: [SolutionSummary]?, nextToken: str?}

@endpoint POST /
@required {resourceArn: str}
@returns(200) {tags: [Tag]?}

@endpoint POST /
@required {recommenderArn: str}
@returns(200) {recommenderArn: str?}

@endpoint POST /
@required {recommenderArn: str}
@returns(200) {recommenderArn: str?}

@endpoint POST /
@required {solutionVersionArn: str}

@endpoint POST /
@required {resourceArn: str, tags: [Tag]}

@endpoint POST /
@required {resourceArn: str, tagKeys: [str]}

@endpoint POST /
@required {campaignArn: str}
@optional {solutionVersionArn: str, minProvisionedTPS: int, campaignConfig: CampaignConfig}
@returns(200) {campaignArn: str?}

@endpoint POST /
@required {datasetArn: str, schemaArn: str}
@returns(200) {datasetArn: str?}

@endpoint POST /
@optional {addMetrics: [MetricAttribute], removeMetrics: [str], metricsOutputConfig: MetricAttributionOutput, metricAttributionArn: str}
@returns(200) {metricAttributionArn: str?}

@endpoint POST /
@required {recommenderArn: str, recommenderConfig: RecommenderConfig}
@returns(200) {recommenderArn: str?}

@endpoint POST /
@required {solutionArn: str}
@optional {performAutoTraining: bool, solutionUpdateConfig: SolutionUpdateConfig}
@returns(200) {solutionArn: str?}

@end
