createRecommender method

Future<CreateRecommenderResponse> createRecommender({
  1. required String domainName,
  2. required String recommenderName,
  3. required RecommenderRecipeName recommenderRecipeName,
  4. String? description,
  5. RecommenderConfig? recommenderConfig,
  6. String? recommenderSchemaName,
  7. Map<String, String>? tags,
})

Creates a recommender

May throw AccessDeniedException. May throw BadRequestException. May throw InternalServerException. May throw ResourceNotFoundException. May throw ThrottlingException.

Parameter domainName : The unique name of the domain.

Parameter recommenderName : The name of the recommender.

Parameter recommenderRecipeName : The name of the recommeder recipe.

Parameter description : The description of the domain object type.

Parameter recommenderConfig : The recommender configuration.

Parameter recommenderSchemaName : The name of the recommender schema to use for this recommender. If not specified, the default schema is used.

Parameter tags : The tags used to organize, track, or control access for this resource.

Implementation

Future<CreateRecommenderResponse> createRecommender({
  required String domainName,
  required String recommenderName,
  required RecommenderRecipeName recommenderRecipeName,
  String? description,
  RecommenderConfig? recommenderConfig,
  String? recommenderSchemaName,
  Map<String, String>? tags,
}) async {
  final $payload = <String, dynamic>{
    'RecommenderRecipeName': recommenderRecipeName.value,
    if (description != null) 'Description': description,
    if (recommenderConfig != null) 'RecommenderConfig': recommenderConfig,
    if (recommenderSchemaName != null)
      'RecommenderSchemaName': recommenderSchemaName,
    if (tags != null) 'Tags': tags,
  };
  final response = await _protocol.send(
    payload: $payload,
    method: 'POST',
    requestUri:
        '/domains/${Uri.encodeComponent(domainName)}/recommenders/${Uri.encodeComponent(recommenderName)}',
    exceptionFnMap: _exceptionFns,
  );
  return CreateRecommenderResponse.fromJson(response);
}