Current File : //proc/self/root/usr/lib/python3/dist-packages/botocore/data/cleanroomsml/2023-09-06/service-2.json
{
  "version":"2.0",
  "metadata":{
    "apiVersion":"2023-09-06",
    "endpointPrefix":"cleanrooms-ml",
    "jsonVersion":"1.1",
    "protocol":"rest-json",
    "serviceFullName":"AWS Clean Rooms ML",
    "serviceId":"CleanRoomsML",
    "signatureVersion":"v4",
    "signingName":"cleanrooms-ml",
    "uid":"cleanroomsml-2023-09-06"
  },
  "operations":{
    "CreateAudienceModel":{
      "name":"CreateAudienceModel",
      "http":{
        "method":"POST",
        "requestUri":"/audience-model",
        "responseCode":200
      },
      "input":{"shape":"CreateAudienceModelRequest"},
      "output":{"shape":"CreateAudienceModelResponse"},
      "errors":[
        {"shape":"ConflictException"},
        {"shape":"ValidationException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"ServiceQuotaExceededException"}
      ],
      "documentation":"<p>Defines the information necessary to create an audience model. An audience model is a machine learning model that Clean Rooms ML trains to measure similarity between users. Clean Rooms ML manages training and storing the audience model. The audience model can be used in multiple calls to the <a>StartAudienceGenerationJob</a> API.</p>",
      "idempotent":true
    },
    "CreateConfiguredAudienceModel":{
      "name":"CreateConfiguredAudienceModel",
      "http":{
        "method":"POST",
        "requestUri":"/configured-audience-model",
        "responseCode":200
      },
      "input":{"shape":"CreateConfiguredAudienceModelRequest"},
      "output":{"shape":"CreateConfiguredAudienceModelResponse"},
      "errors":[
        {"shape":"ConflictException"},
        {"shape":"ValidationException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"ServiceQuotaExceededException"}
      ],
      "documentation":"<p>Defines the information necessary to create a configured audience model.</p>",
      "idempotent":true
    },
    "CreateTrainingDataset":{
      "name":"CreateTrainingDataset",
      "http":{
        "method":"POST",
        "requestUri":"/training-dataset",
        "responseCode":200
      },
      "input":{"shape":"CreateTrainingDatasetRequest"},
      "output":{"shape":"CreateTrainingDatasetResponse"},
      "errors":[
        {"shape":"ConflictException"},
        {"shape":"ValidationException"},
        {"shape":"AccessDeniedException"}
      ],
      "documentation":"<p>Defines the information necessary to create a training dataset, or seed audience. In Clean Rooms ML, the <code>TrainingDataset</code> is metadata that points to a Glue table, which is read only during <code>AudienceModel</code> creation.</p>",
      "idempotent":true
    },
    "DeleteAudienceGenerationJob":{
      "name":"DeleteAudienceGenerationJob",
      "http":{
        "method":"DELETE",
        "requestUri":"/audience-generation-job/{audienceGenerationJobArn}",
        "responseCode":200
      },
      "input":{"shape":"DeleteAudienceGenerationJobRequest"},
      "errors":[
        {"shape":"ConflictException"},
        {"shape":"ValidationException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ResourceNotFoundException"}
      ],
      "documentation":"<p>Deletes the specified audience generation job, and removes all data associated with the job.</p>",
      "idempotent":true
    },
    "DeleteAudienceModel":{
      "name":"DeleteAudienceModel",
      "http":{
        "method":"DELETE",
        "requestUri":"/audience-model/{audienceModelArn}",
        "responseCode":200
      },
      "input":{"shape":"DeleteAudienceModelRequest"},
      "errors":[
        {"shape":"ConflictException"},
        {"shape":"ValidationException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ResourceNotFoundException"}
      ],
      "documentation":"<p>Specifies an audience model that you want to delete. You can't delete an audience model if there are any configured audience models that depend on the audience model.</p>",
      "idempotent":true
    },
    "DeleteConfiguredAudienceModel":{
      "name":"DeleteConfiguredAudienceModel",
      "http":{
        "method":"DELETE",
        "requestUri":"/configured-audience-model/{configuredAudienceModelArn}",
        "responseCode":200
      },
      "input":{"shape":"DeleteConfiguredAudienceModelRequest"},
      "errors":[
        {"shape":"ConflictException"},
        {"shape":"ValidationException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ResourceNotFoundException"}
      ],
      "documentation":"<p>Deletes the specified configured audience model. You can't delete a configured audience model if there are any lookalike models that use the configured audience model. If you delete a configured audience model, it will be removed from any collaborations that it is associated to.</p>",
      "idempotent":true
    },
    "DeleteConfiguredAudienceModelPolicy":{
      "name":"DeleteConfiguredAudienceModelPolicy",
      "http":{
        "method":"DELETE",
        "requestUri":"/configured-audience-model/{configuredAudienceModelArn}/policy",
        "responseCode":200
      },
      "input":{"shape":"DeleteConfiguredAudienceModelPolicyRequest"},
      "errors":[
        {"shape":"ValidationException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ResourceNotFoundException"}
      ],
      "documentation":"<p>Deletes the specified configured audience model policy.</p>",
      "idempotent":true
    },
    "DeleteTrainingDataset":{
      "name":"DeleteTrainingDataset",
      "http":{
        "method":"DELETE",
        "requestUri":"/training-dataset/{trainingDatasetArn}",
        "responseCode":200
      },
      "input":{"shape":"DeleteTrainingDatasetRequest"},
      "errors":[
        {"shape":"ConflictException"},
        {"shape":"ValidationException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ResourceNotFoundException"}
      ],
      "documentation":"<p>Specifies a training dataset that you want to delete. You can't delete a training dataset if there are any audience models that depend on the training dataset. In Clean Rooms ML, the <code>TrainingDataset</code> is metadata that points to a Glue table, which is read only during <code>AudienceModel</code> creation. This action deletes the metadata.</p>",
      "idempotent":true
    },
    "GetAudienceGenerationJob":{
      "name":"GetAudienceGenerationJob",
      "http":{
        "method":"GET",
        "requestUri":"/audience-generation-job/{audienceGenerationJobArn}",
        "responseCode":200
      },
      "input":{"shape":"GetAudienceGenerationJobRequest"},
      "output":{"shape":"GetAudienceGenerationJobResponse"},
      "errors":[
        {"shape":"ValidationException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ResourceNotFoundException"}
      ],
      "documentation":"<p>Returns information about an audience generation job.</p>"
    },
    "GetAudienceModel":{
      "name":"GetAudienceModel",
      "http":{
        "method":"GET",
        "requestUri":"/audience-model/{audienceModelArn}",
        "responseCode":200
      },
      "input":{"shape":"GetAudienceModelRequest"},
      "output":{"shape":"GetAudienceModelResponse"},
      "errors":[
        {"shape":"ValidationException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ResourceNotFoundException"}
      ],
      "documentation":"<p>Returns information about an audience model</p>"
    },
    "GetConfiguredAudienceModel":{
      "name":"GetConfiguredAudienceModel",
      "http":{
        "method":"GET",
        "requestUri":"/configured-audience-model/{configuredAudienceModelArn}",
        "responseCode":200
      },
      "input":{"shape":"GetConfiguredAudienceModelRequest"},
      "output":{"shape":"GetConfiguredAudienceModelResponse"},
      "errors":[
        {"shape":"ValidationException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ResourceNotFoundException"}
      ],
      "documentation":"<p>Returns information about a specified configured audience model.</p>"
    },
    "GetConfiguredAudienceModelPolicy":{
      "name":"GetConfiguredAudienceModelPolicy",
      "http":{
        "method":"GET",
        "requestUri":"/configured-audience-model/{configuredAudienceModelArn}/policy",
        "responseCode":200
      },
      "input":{"shape":"GetConfiguredAudienceModelPolicyRequest"},
      "output":{"shape":"GetConfiguredAudienceModelPolicyResponse"},
      "errors":[
        {"shape":"ValidationException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ResourceNotFoundException"}
      ],
      "documentation":"<p>Returns information about a configured audience model policy.</p>"
    },
    "GetTrainingDataset":{
      "name":"GetTrainingDataset",
      "http":{
        "method":"GET",
        "requestUri":"/training-dataset/{trainingDatasetArn}",
        "responseCode":200
      },
      "input":{"shape":"GetTrainingDatasetRequest"},
      "output":{"shape":"GetTrainingDatasetResponse"},
      "errors":[
        {"shape":"ValidationException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ResourceNotFoundException"}
      ],
      "documentation":"<p>Returns information about a training dataset.</p>"
    },
    "ListAudienceExportJobs":{
      "name":"ListAudienceExportJobs",
      "http":{
        "method":"GET",
        "requestUri":"/audience-export-job",
        "responseCode":200
      },
      "input":{"shape":"ListAudienceExportJobsRequest"},
      "output":{"shape":"ListAudienceExportJobsResponse"},
      "errors":[
        {"shape":"ValidationException"},
        {"shape":"AccessDeniedException"}
      ],
      "documentation":"<p>Returns a list of the audience export jobs.</p>"
    },
    "ListAudienceGenerationJobs":{
      "name":"ListAudienceGenerationJobs",
      "http":{
        "method":"GET",
        "requestUri":"/audience-generation-job",
        "responseCode":200
      },
      "input":{"shape":"ListAudienceGenerationJobsRequest"},
      "output":{"shape":"ListAudienceGenerationJobsResponse"},
      "errors":[
        {"shape":"ValidationException"},
        {"shape":"AccessDeniedException"}
      ],
      "documentation":"<p>Returns a list of audience generation jobs.</p>"
    },
    "ListAudienceModels":{
      "name":"ListAudienceModels",
      "http":{
        "method":"GET",
        "requestUri":"/audience-model",
        "responseCode":200
      },
      "input":{"shape":"ListAudienceModelsRequest"},
      "output":{"shape":"ListAudienceModelsResponse"},
      "errors":[
        {"shape":"ValidationException"},
        {"shape":"AccessDeniedException"}
      ],
      "documentation":"<p>Returns a list of audience models.</p>"
    },
    "ListConfiguredAudienceModels":{
      "name":"ListConfiguredAudienceModels",
      "http":{
        "method":"GET",
        "requestUri":"/configured-audience-model",
        "responseCode":200
      },
      "input":{"shape":"ListConfiguredAudienceModelsRequest"},
      "output":{"shape":"ListConfiguredAudienceModelsResponse"},
      "errors":[
        {"shape":"ValidationException"},
        {"shape":"AccessDeniedException"}
      ],
      "documentation":"<p>Returns a list of the configured audience models.</p>"
    },
    "ListTagsForResource":{
      "name":"ListTagsForResource",
      "http":{
        "method":"GET",
        "requestUri":"/tags/{resourceArn}",
        "responseCode":200
      },
      "input":{"shape":"ListTagsForResourceRequest"},
      "output":{"shape":"ListTagsForResourceResponse"},
      "errors":[
        {"shape":"ValidationException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ResourceNotFoundException"}
      ],
      "documentation":"<p>Returns a list of tags for a provided resource.</p>"
    },
    "ListTrainingDatasets":{
      "name":"ListTrainingDatasets",
      "http":{
        "method":"GET",
        "requestUri":"/training-dataset",
        "responseCode":200
      },
      "input":{"shape":"ListTrainingDatasetsRequest"},
      "output":{"shape":"ListTrainingDatasetsResponse"},
      "errors":[
        {"shape":"ValidationException"},
        {"shape":"AccessDeniedException"}
      ],
      "documentation":"<p>Returns a list of training datasets.</p>"
    },
    "PutConfiguredAudienceModelPolicy":{
      "name":"PutConfiguredAudienceModelPolicy",
      "http":{
        "method":"PUT",
        "requestUri":"/configured-audience-model/{configuredAudienceModelArn}/policy",
        "responseCode":200
      },
      "input":{"shape":"PutConfiguredAudienceModelPolicyRequest"},
      "output":{"shape":"PutConfiguredAudienceModelPolicyResponse"},
      "errors":[
        {"shape":"ValidationException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ResourceNotFoundException"}
      ],
      "documentation":"<p>Create or update the resource policy for a configured audience model.</p>",
      "idempotent":true
    },
    "StartAudienceExportJob":{
      "name":"StartAudienceExportJob",
      "http":{
        "method":"POST",
        "requestUri":"/audience-export-job",
        "responseCode":200
      },
      "input":{"shape":"StartAudienceExportJobRequest"},
      "errors":[
        {"shape":"ConflictException"},
        {"shape":"ValidationException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"ServiceQuotaExceededException"}
      ],
      "documentation":"<p>Export an audience of a specified size after you have generated an audience.</p>",
      "idempotent":true
    },
    "StartAudienceGenerationJob":{
      "name":"StartAudienceGenerationJob",
      "http":{
        "method":"POST",
        "requestUri":"/audience-generation-job",
        "responseCode":200
      },
      "input":{"shape":"StartAudienceGenerationJobRequest"},
      "output":{"shape":"StartAudienceGenerationJobResponse"},
      "errors":[
        {"shape":"ConflictException"},
        {"shape":"ValidationException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"ServiceQuotaExceededException"}
      ],
      "documentation":"<p>Information necessary to start the audience generation job.</p>",
      "idempotent":true
    },
    "TagResource":{
      "name":"TagResource",
      "http":{
        "method":"POST",
        "requestUri":"/tags/{resourceArn}",
        "responseCode":200
      },
      "input":{"shape":"TagResourceRequest"},
      "output":{"shape":"TagResourceResponse"},
      "errors":[
        {"shape":"ValidationException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ResourceNotFoundException"}
      ],
      "documentation":"<p>Adds metadata tags to a specified resource.</p>"
    },
    "UntagResource":{
      "name":"UntagResource",
      "http":{
        "method":"DELETE",
        "requestUri":"/tags/{resourceArn}",
        "responseCode":200
      },
      "input":{"shape":"UntagResourceRequest"},
      "output":{"shape":"UntagResourceResponse"},
      "errors":[
        {"shape":"ValidationException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ResourceNotFoundException"}
      ],
      "documentation":"<p>Removes metadata tags from a specified resource.</p>",
      "idempotent":true
    },
    "UpdateConfiguredAudienceModel":{
      "name":"UpdateConfiguredAudienceModel",
      "http":{
        "method":"PATCH",
        "requestUri":"/configured-audience-model/{configuredAudienceModelArn}",
        "responseCode":200
      },
      "input":{"shape":"UpdateConfiguredAudienceModelRequest"},
      "output":{"shape":"UpdateConfiguredAudienceModelResponse"},
      "errors":[
        {"shape":"ConflictException"},
        {"shape":"ValidationException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ResourceNotFoundException"}
      ],
      "documentation":"<p>Provides the information necessary to update a configured audience model. Updates that impact audience generation jobs take effect when a new job starts, but do not impact currently running jobs.</p>",
      "idempotent":true
    }
  },
  "shapes":{
    "AccessDeniedException":{
      "type":"structure",
      "required":["message"],
      "members":{
        "message":{"shape":"String"}
      },
      "documentation":"<p>You do not have sufficient access to perform this action.</p>",
      "error":{
        "httpStatusCode":403,
        "senderFault":true
      },
      "exception":true
    },
    "AccountId":{
      "type":"string",
      "max":12,
      "min":12,
      "pattern":"^[0-9]{12}$"
    },
    "AudienceDestination":{
      "type":"structure",
      "required":["s3Destination"],
      "members":{
        "s3Destination":{
          "shape":"S3ConfigMap",
          "documentation":"<p>The Amazon S3 bucket and path for the configured audience.</p>"
        }
      },
      "documentation":"<p>Defines the Amazon S3 bucket where the configured audience is stored.</p>"
    },
    "AudienceExportJobList":{
      "type":"list",
      "member":{"shape":"AudienceExportJobSummary"}
    },
    "AudienceExportJobStatus":{
      "type":"string",
      "enum":[
        "CREATE_PENDING",
        "CREATE_IN_PROGRESS",
        "CREATE_FAILED",
        "ACTIVE"
      ]
    },
    "AudienceExportJobSummary":{
      "type":"structure",
      "required":[
        "audienceGenerationJobArn",
        "audienceSize",
        "createTime",
        "name",
        "status",
        "updateTime"
      ],
      "members":{
        "audienceGenerationJobArn":{
          "shape":"AudienceGenerationJobArn",
          "documentation":"<p>The Amazon Resource Name (ARN) of the audience generation job that was exported.</p>"
        },
        "audienceSize":{"shape":"AudienceSize"},
        "createTime":{
          "shape":"SyntheticTimestamp_date_time",
          "documentation":"<p>The time at which the audience export job was created.</p>"
        },
        "description":{
          "shape":"ResourceDescription",
          "documentation":"<p>The description of the audience export job.</p>"
        },
        "name":{
          "shape":"NameString",
          "documentation":"<p>The name of the audience export job.</p>"
        },
        "outputLocation":{
          "shape":"S3Path",
          "documentation":"<p>The Amazon S3 bucket where the audience export is stored.</p>"
        },
        "status":{
          "shape":"AudienceExportJobStatus",
          "documentation":"<p>The status of the audience export job.</p>"
        },
        "statusDetails":{"shape":"StatusDetails"},
        "updateTime":{
          "shape":"SyntheticTimestamp_date_time",
          "documentation":"<p>The most recent time at which the audience export job was updated.</p>"
        }
      },
      "documentation":"<p>Provides information about the audience export job.</p>"
    },
    "AudienceGenerationJobArn":{
      "type":"string",
      "max":2048,
      "min":20,
      "pattern":"^arn:aws[-a-z]*:cleanrooms-ml:[-a-z0-9]+:[0-9]{12}:audience-generation-job/[-a-zA-Z0-9_/.]+$"
    },
    "AudienceGenerationJobDataSource":{
      "type":"structure",
      "required":[
        "dataSource",
        "roleArn"
      ],
      "members":{
        "dataSource":{
          "shape":"S3ConfigMap",
          "documentation":"<p>The Amazon S3 bucket where the training data for the configured audience is stored.</p>"
        },
        "roleArn":{
          "shape":"IamRoleArn",
          "documentation":"<p>The ARN of the IAM role that can read the Amazon S3 bucket where the training data is stored.</p>"
        }
      },
      "documentation":"<p>Defines the Amazon S3 bucket where the training data for the configured audience is stored.</p>"
    },
    "AudienceGenerationJobList":{
      "type":"list",
      "member":{"shape":"AudienceGenerationJobSummary"}
    },
    "AudienceGenerationJobStatus":{
      "type":"string",
      "enum":[
        "CREATE_PENDING",
        "CREATE_IN_PROGRESS",
        "CREATE_FAILED",
        "ACTIVE",
        "DELETE_PENDING",
        "DELETE_IN_PROGRESS",
        "DELETE_FAILED"
      ]
    },
    "AudienceGenerationJobSummary":{
      "type":"structure",
      "required":[
        "audienceGenerationJobArn",
        "configuredAudienceModelArn",
        "createTime",
        "name",
        "status",
        "updateTime"
      ],
      "members":{
        "audienceGenerationJobArn":{
          "shape":"AudienceGenerationJobArn",
          "documentation":"<p>The Amazon Resource Name (ARN) of the audience generation job.</p>"
        },
        "collaborationId":{
          "shape":"UUID",
          "documentation":"<p>The identifier of the collaboration that contains this audience generation job.</p>"
        },
        "configuredAudienceModelArn":{
          "shape":"ConfiguredAudienceModelArn",
          "documentation":"<p>The Amazon Resource Name (ARN) of the configured audience model that was used for this audience generation job.</p>"
        },
        "createTime":{
          "shape":"SyntheticTimestamp_date_time",
          "documentation":"<p>The time at which the audience generation job was created.</p>"
        },
        "description":{
          "shape":"ResourceDescription",
          "documentation":"<p>The description of the audience generation job.</p>"
        },
        "name":{
          "shape":"NameString",
          "documentation":"<p>The name of the audience generation job.</p>"
        },
        "startedBy":{
          "shape":"AccountId",
          "documentation":"<p>The AWS Account that submitted the job.</p>"
        },
        "status":{
          "shape":"AudienceGenerationJobStatus",
          "documentation":"<p>The status of the audience generation job.</p>"
        },
        "updateTime":{
          "shape":"SyntheticTimestamp_date_time",
          "documentation":"<p>The most recent time at which the audience generation job was updated.</p>"
        }
      },
      "documentation":"<p>Provides information about the configured audience generation job.</p>"
    },
    "AudienceModelArn":{
      "type":"string",
      "max":2048,
      "min":20,
      "pattern":"^arn:aws[-a-z]*:cleanrooms-ml:[-a-z0-9]+:[0-9]{12}:audience-model/[-a-zA-Z0-9_/.]+$"
    },
    "AudienceModelList":{
      "type":"list",
      "member":{"shape":"AudienceModelSummary"}
    },
    "AudienceModelMetric":{
      "type":"structure",
      "required":[
        "forTopKItemPredictions",
        "type",
        "value"
      ],
      "members":{
        "forTopKItemPredictions":{
          "shape":"Integer",
          "documentation":"<p>The number of users that were used to generate these model metrics.</p>"
        },
        "type":{
          "shape":"AudienceModelMetricType",
          "documentation":"<p>The audience model metric.</p>"
        },
        "value":{
          "shape":"Double",
          "documentation":"<p>The value of the audience model metric</p>"
        }
      },
      "documentation":"<p>The audience model metrics.</p>"
    },
    "AudienceModelMetricType":{
      "type":"string",
      "enum":[
        "NORMALIZED_DISCOUNTED_CUMULATIVE_GAIN",
        "MEAN_RECIPROCAL_RANK",
        "PRECISION",
        "RECALL"
      ]
    },
    "AudienceModelMetrics":{
      "type":"list",
      "member":{"shape":"AudienceModelMetric"}
    },
    "AudienceModelStatus":{
      "type":"string",
      "enum":[
        "CREATE_PENDING",
        "CREATE_IN_PROGRESS",
        "CREATE_FAILED",
        "ACTIVE",
        "DELETE_PENDING",
        "DELETE_IN_PROGRESS",
        "DELETE_FAILED"
      ]
    },
    "AudienceModelSummary":{
      "type":"structure",
      "required":[
        "audienceModelArn",
        "createTime",
        "name",
        "status",
        "trainingDatasetArn",
        "updateTime"
      ],
      "members":{
        "audienceModelArn":{
          "shape":"AudienceModelArn",
          "documentation":"<p>The Amazon Resource Name (ARN) of the audience model.</p>"
        },
        "createTime":{
          "shape":"SyntheticTimestamp_date_time",
          "documentation":"<p>The time at which the audience model was created.</p>"
        },
        "description":{
          "shape":"ResourceDescription",
          "documentation":"<p>The description of the audience model.</p>"
        },
        "name":{
          "shape":"NameString",
          "documentation":"<p>The name of the audience model.</p>"
        },
        "status":{
          "shape":"AudienceModelStatus",
          "documentation":"<p>The status of the audience model.</p>"
        },
        "trainingDatasetArn":{
          "shape":"TrainingDatasetArn",
          "documentation":"<p>The Amazon Resource Name (ARN) of the training dataset that was used for the audience model.</p>"
        },
        "updateTime":{
          "shape":"SyntheticTimestamp_date_time",
          "documentation":"<p>The most recent time at which the audience model was updated.</p>"
        }
      },
      "documentation":"<p>Information about the audience model.</p>"
    },
    "AudienceQualityMetrics":{
      "type":"structure",
      "required":["relevanceMetrics"],
      "members":{
        "relevanceMetrics":{
          "shape":"RelevanceMetrics",
          "documentation":"<p>The relevance scores of the generated audience.</p>"
        }
      },
      "documentation":"<p>Metrics that describe the quality of the generated audience.</p>"
    },
    "AudienceSize":{
      "type":"structure",
      "required":[
        "type",
        "value"
      ],
      "members":{
        "type":{
          "shape":"AudienceSizeType",
          "documentation":"<p>Whether the audience size is defined in absolute terms or as a percentage. You can use the <code>ABSOLUTE</code> <a>AudienceSize</a> to configure out audience sizes using the count of identifiers in the output. You can use the <code>Percentage</code> <a>AudienceSize</a> to configure sizes in the range 1-100 percent.</p>"
        },
        "value":{
          "shape":"AudienceSizeValue",
          "documentation":"<p>Specify an audience size value.</p>"
        }
      },
      "documentation":"<p>The size of the generated audience. Must match one of the sizes in the configured audience model.</p>"
    },
    "AudienceSizeBins":{
      "type":"list",
      "member":{"shape":"AudienceSizeValue"},
      "max":25,
      "min":1
    },
    "AudienceSizeConfig":{
      "type":"structure",
      "required":[
        "audienceSizeBins",
        "audienceSizeType"
      ],
      "members":{
        "audienceSizeBins":{
          "shape":"AudienceSizeBins",
          "documentation":"<p>An array of the different audience output sizes.</p>"
        },
        "audienceSizeType":{
          "shape":"AudienceSizeType",
          "documentation":"<p>Whether the audience output sizes are defined as an absolute number or a percentage.</p>"
        }
      },
      "documentation":"<p>Configure the list of audience output sizes that can be created. A request to <a>StartAudienceGenerationJob</a> that uses this configured audience model must have an <code>audienceSize</code> selected from this list. You can use the <code>ABSOLUTE</code> <a>AudienceSize</a> to configure out audience sizes using the count of identifiers in the output. You can use the <code>Percentage</code> <a>AudienceSize</a> to configure sizes in the range 1-100 percent.</p>"
    },
    "AudienceSizeType":{
      "type":"string",
      "enum":[
        "ABSOLUTE",
        "PERCENTAGE"
      ]
    },
    "AudienceSizeValue":{
      "type":"integer",
      "box":true,
      "max":20000000,
      "min":1
    },
    "Boolean":{
      "type":"boolean",
      "box":true
    },
    "ColumnName":{
      "type":"string",
      "max":128,
      "min":1,
      "pattern":"^[a-zA-Z0-9_](([a-zA-Z0-9_ ]+-)*([a-zA-Z0-9_ ]+))?$"
    },
    "ColumnSchema":{
      "type":"structure",
      "required":[
        "columnName",
        "columnTypes"
      ],
      "members":{
        "columnName":{
          "shape":"ColumnName",
          "documentation":"<p>The name of a column.</p>"
        },
        "columnTypes":{
          "shape":"ColumnTypeList",
          "documentation":"<p>The data type of column.</p>"
        }
      },
      "documentation":"<p>Metadata for a column.</p>"
    },
    "ColumnType":{
      "type":"string",
      "enum":[
        "USER_ID",
        "ITEM_ID",
        "TIMESTAMP",
        "CATEGORICAL_FEATURE",
        "NUMERICAL_FEATURE"
      ]
    },
    "ColumnTypeList":{
      "type":"list",
      "member":{"shape":"ColumnType"},
      "max":1,
      "min":1
    },
    "ConfiguredAudienceModelArn":{
      "type":"string",
      "max":2048,
      "min":20,
      "pattern":"^arn:aws[-a-z]*:cleanrooms-ml:[-a-z0-9]+:[0-9]{12}:configured-audience-model/[-a-zA-Z0-9_/.]+$"
    },
    "ConfiguredAudienceModelList":{
      "type":"list",
      "member":{"shape":"ConfiguredAudienceModelSummary"}
    },
    "ConfiguredAudienceModelOutputConfig":{
      "type":"structure",
      "required":[
        "destination",
        "roleArn"
      ],
      "members":{
        "destination":{"shape":"AudienceDestination"},
        "roleArn":{
          "shape":"IamRoleArn",
          "documentation":"<p>The ARN of the IAM role that can write the Amazon S3 bucket.</p>"
        }
      },
      "documentation":"<p>Configuration information necessary for the configure audience model output.</p>"
    },
    "ConfiguredAudienceModelStatus":{
      "type":"string",
      "enum":["ACTIVE"]
    },
    "ConfiguredAudienceModelSummary":{
      "type":"structure",
      "required":[
        "audienceModelArn",
        "configuredAudienceModelArn",
        "createTime",
        "name",
        "outputConfig",
        "status",
        "updateTime"
      ],
      "members":{
        "audienceModelArn":{
          "shape":"AudienceModelArn",
          "documentation":"<p>The Amazon Resource Name (ARN) of the audience model that was used to create the configured audience model.</p>"
        },
        "configuredAudienceModelArn":{
          "shape":"ConfiguredAudienceModelArn",
          "documentation":"<p>The Amazon Resource Name (ARN) of the configured audience model that you are interested in.</p>"
        },
        "createTime":{
          "shape":"SyntheticTimestamp_date_time",
          "documentation":"<p>The time at which the configured audience model was created.</p>"
        },
        "description":{
          "shape":"ResourceDescription",
          "documentation":"<p>The description of the configured audience model.</p>"
        },
        "name":{
          "shape":"NameString",
          "documentation":"<p>The name of the configured audience model.</p>"
        },
        "outputConfig":{
          "shape":"ConfiguredAudienceModelOutputConfig",
          "documentation":"<p>The output configuration of the configured audience model.</p>"
        },
        "status":{
          "shape":"ConfiguredAudienceModelStatus",
          "documentation":"<p>The status of the configured audience model.</p>"
        },
        "updateTime":{
          "shape":"SyntheticTimestamp_date_time",
          "documentation":"<p>The most recent time at which the configured audience model was updated.</p>"
        }
      },
      "documentation":"<p>Information about the configured audience model.</p>"
    },
    "ConflictException":{
      "type":"structure",
      "required":["message"],
      "members":{
        "message":{"shape":"String"}
      },
      "documentation":"<p>A resource with that name already exists in this region.</p>",
      "error":{
        "httpStatusCode":409,
        "senderFault":true
      },
      "exception":true
    },
    "CreateAudienceModelRequest":{
      "type":"structure",
      "required":[
        "name",
        "trainingDatasetArn"
      ],
      "members":{
        "description":{
          "shape":"ResourceDescription",
          "documentation":"<p>The description of the audience model.</p>"
        },
        "kmsKeyArn":{
          "shape":"KmsKeyArn",
          "documentation":"<p>The Amazon Resource Name (ARN) of the KMS key. This key is used to encrypt and decrypt customer-owned data in the trained ML model and the associated data.</p>"
        },
        "name":{
          "shape":"NameString",
          "documentation":"<p>The name of the audience model resource.</p>"
        },
        "tags":{
          "shape":"TagMap",
          "documentation":"<p>The optional metadata that you apply to the resource to help you categorize and organize them. Each tag consists of a key and an optional value, both of which you define.</p> <p>The following basic restrictions apply to tags:</p> <ul> <li> <p>Maximum number of tags per resource - 50.</p> </li> <li> <p>For each resource, each tag key must be unique, and each tag key can have only one value.</p> </li> <li> <p>Maximum key length - 128 Unicode characters in UTF-8.</p> </li> <li> <p>Maximum value length - 256 Unicode characters in UTF-8.</p> </li> <li> <p>If your tagging schema is used across multiple services and resources, remember that other services may have restrictions on allowed characters. Generally allowed characters are: letters, numbers, and spaces representable in UTF-8, and the following characters: + - = . _ : / @.</p> </li> <li> <p>Tag keys and values are case sensitive.</p> </li> <li> <p>Do not use aws:, AWS:, or any upper or lowercase combination of such as a prefix for keys as it is reserved for AWS use. You cannot edit or delete tag keys with this prefix. Values can have this prefix. If a tag value has aws as its prefix but the key does not, then Forecast considers it to be a user tag and will count against the limit of 50 tags. Tags with only the key prefix of aws do not count against your tags per resource limit.</p> </li> </ul>"
        },
        "trainingDataEndTime":{
          "shape":"SyntheticTimestamp_date_time",
          "documentation":"<p>The end date and time of the training window.</p>"
        },
        "trainingDataStartTime":{
          "shape":"SyntheticTimestamp_date_time",
          "documentation":"<p>The start date and time of the training window.</p>"
        },
        "trainingDatasetArn":{
          "shape":"TrainingDatasetArn",
          "documentation":"<p>The Amazon Resource Name (ARN) of the training dataset for this audience model.</p>"
        }
      }
    },
    "CreateAudienceModelResponse":{
      "type":"structure",
      "required":["audienceModelArn"],
      "members":{
        "audienceModelArn":{
          "shape":"AudienceModelArn",
          "documentation":"<p>The Amazon Resource Name (ARN) of the audience model.</p>"
        }
      }
    },
    "CreateConfiguredAudienceModelRequest":{
      "type":"structure",
      "required":[
        "audienceModelArn",
        "name",
        "outputConfig",
        "sharedAudienceMetrics"
      ],
      "members":{
        "audienceModelArn":{
          "shape":"AudienceModelArn",
          "documentation":"<p>The Amazon Resource Name (ARN) of the audience model to use for the configured audience model.</p>"
        },
        "audienceSizeConfig":{
          "shape":"AudienceSizeConfig",
          "documentation":"<p>Configure the list of output sizes of audiences that can be created using this configured audience model. A request to <a>StartAudienceGenerationJob</a> that uses this configured audience model must have an <code>audienceSize</code> selected from this list. You can use the <code>ABSOLUTE</code> <a>AudienceSize</a> to configure out audience sizes using the count of identifiers in the output. You can use the <code>Percentage</code> <a>AudienceSize</a> to configure sizes in the range 1-100 percent.</p>"
        },
        "childResourceTagOnCreatePolicy":{
          "shape":"TagOnCreatePolicy",
          "documentation":"<p>Configure how the service tags audience generation jobs created using this configured audience model. If you specify <code>NONE</code>, the tags from the <a>StartAudienceGenerationJob</a> request determine the tags of the audience generation job. If you specify <code>FROM_PARENT_RESOURCE</code>, the audience generation job inherits the tags from the configured audience model, by default. Tags in the <a>StartAudienceGenerationJob</a> will override the default.</p> <p>When the client is in a different account than the configured audience model, the tags from the client are never applied to a resource in the caller's account.</p>"
        },
        "description":{
          "shape":"ResourceDescription",
          "documentation":"<p>The description of the configured audience model.</p>"
        },
        "minMatchingSeedSize":{
          "shape":"MinMatchingSeedSize",
          "documentation":"<p>The minimum number of users from the seed audience that must match with users in the training data of the audience model.</p>"
        },
        "name":{
          "shape":"NameString",
          "documentation":"<p>The name of the configured audience model.</p>"
        },
        "outputConfig":{
          "shape":"ConfiguredAudienceModelOutputConfig",
          "documentation":"<p>Configure the Amazon S3 location and IAM Role for audiences created using this configured audience model. Each audience will have a unique location. The IAM Role must have <code>s3:PutObject</code> permission on the destination Amazon S3 location. If the destination is protected with Amazon S3 KMS-SSE, then the Role must also have the required KMS permissions.</p>"
        },
        "sharedAudienceMetrics":{
          "shape":"MetricsList",
          "documentation":"<p>Whether audience metrics are shared.</p>"
        },
        "tags":{
          "shape":"TagMap",
          "documentation":"<p>The optional metadata that you apply to the resource to help you categorize and organize them. Each tag consists of a key and an optional value, both of which you define.</p> <p>The following basic restrictions apply to tags:</p> <ul> <li> <p>Maximum number of tags per resource - 50.</p> </li> <li> <p>For each resource, each tag key must be unique, and each tag key can have only one value.</p> </li> <li> <p>Maximum key length - 128 Unicode characters in UTF-8.</p> </li> <li> <p>Maximum value length - 256 Unicode characters in UTF-8.</p> </li> <li> <p>If your tagging schema is used across multiple services and resources, remember that other services may have restrictions on allowed characters. Generally allowed characters are: letters, numbers, and spaces representable in UTF-8, and the following characters: + - = . _ : / @.</p> </li> <li> <p>Tag keys and values are case sensitive.</p> </li> <li> <p>Do not use aws:, AWS:, or any upper or lowercase combination of such as a prefix for keys as it is reserved for AWS use. You cannot edit or delete tag keys with this prefix. Values can have this prefix. If a tag value has aws as its prefix but the key does not, then Forecast considers it to be a user tag and will count against the limit of 50 tags. Tags with only the key prefix of aws do not count against your tags per resource limit.</p> </li> </ul>"
        }
      }
    },
    "CreateConfiguredAudienceModelResponse":{
      "type":"structure",
      "required":["configuredAudienceModelArn"],
      "members":{
        "configuredAudienceModelArn":{
          "shape":"ConfiguredAudienceModelArn",
          "documentation":"<p>The Amazon Resource Name (ARN) of the configured audience model.</p>"
        }
      }
    },
    "CreateTrainingDatasetRequest":{
      "type":"structure",
      "required":[
        "name",
        "roleArn",
        "trainingData"
      ],
      "members":{
        "description":{
          "shape":"ResourceDescription",
          "documentation":"<p>The description of the training dataset.</p>"
        },
        "name":{
          "shape":"NameString",
          "documentation":"<p>The name of the training dataset. This name must be unique in your account and region.</p>"
        },
        "roleArn":{
          "shape":"IamRoleArn",
          "documentation":"<p>The ARN of the IAM role that Clean Rooms ML can assume to read the data referred to in the <code>dataSource</code> field of each dataset.</p> <p>Passing a role across AWS accounts is not allowed. If you pass a role that isn't in your account, you get an <code>AccessDeniedException</code> error.</p>"
        },
        "tags":{
          "shape":"TagMap",
          "documentation":"<p>The optional metadata that you apply to the resource to help you categorize and organize them. Each tag consists of a key and an optional value, both of which you define.</p> <p>The following basic restrictions apply to tags:</p> <ul> <li> <p>Maximum number of tags per resource - 50.</p> </li> <li> <p>For each resource, each tag key must be unique, and each tag key can have only one value.</p> </li> <li> <p>Maximum key length - 128 Unicode characters in UTF-8.</p> </li> <li> <p>Maximum value length - 256 Unicode characters in UTF-8.</p> </li> <li> <p>If your tagging schema is used across multiple services and resources, remember that other services may have restrictions on allowed characters. Generally allowed characters are: letters, numbers, and spaces representable in UTF-8, and the following characters: + - = . _ : / @.</p> </li> <li> <p>Tag keys and values are case sensitive.</p> </li> <li> <p>Do not use aws:, AWS:, or any upper or lowercase combination of such as a prefix for keys as it is reserved for AWS use. You cannot edit or delete tag keys with this prefix. Values can have this prefix. If a tag value has aws as its prefix but the key does not, then Clean Rooms ML considers it to be a user tag and will count against the limit of 50 tags. Tags with only the key prefix of aws do not count against your tags per resource limit.</p> </li> </ul>"
        },
        "trainingData":{
          "shape":"CreateTrainingDatasetRequestTrainingDataList",
          "documentation":"<p>An array of information that lists the Dataset objects, which specifies the dataset type and details on its location and schema. You must provide a role that has read access to these tables.</p>"
        }
      }
    },
    "CreateTrainingDatasetRequestTrainingDataList":{
      "type":"list",
      "member":{"shape":"Dataset"},
      "max":1,
      "min":1
    },
    "CreateTrainingDatasetResponse":{
      "type":"structure",
      "required":["trainingDatasetArn"],
      "members":{
        "trainingDatasetArn":{
          "shape":"TrainingDatasetArn",
          "documentation":"<p>The Amazon Resource Name (ARN) of the training dataset resource.</p>"
        }
      }
    },
    "DataSource":{
      "type":"structure",
      "required":["glueDataSource"],
      "members":{
        "glueDataSource":{
          "shape":"GlueDataSource",
          "documentation":"<p>A GlueDataSource object that defines the catalog ID, database name, and table name for the training data.</p>"
        }
      },
      "documentation":"<p>Defines information about the Glue data source that contains the training data.</p>"
    },
    "Dataset":{
      "type":"structure",
      "required":[
        "inputConfig",
        "type"
      ],
      "members":{
        "inputConfig":{
          "shape":"DatasetInputConfig",
          "documentation":"<p>A DatasetInputConfig object that defines the data source and schema mapping.</p>"
        },
        "type":{
          "shape":"DatasetType",
          "documentation":"<p>What type of information is found in the dataset.</p>"
        }
      },
      "documentation":"<p>Defines where the training dataset is located, what type of data it contains, and how to access the data.</p>"
    },
    "DatasetInputConfig":{
      "type":"structure",
      "required":[
        "dataSource",
        "schema"
      ],
      "members":{
        "dataSource":{
          "shape":"DataSource",
          "documentation":"<p>A DataSource object that specifies the Glue data source for the training data.</p>"
        },
        "schema":{
          "shape":"DatasetInputConfigSchemaList",
          "documentation":"<p>The schema information for the training data.</p>"
        }
      },
      "documentation":"<p>Defines the Glue data source and schema mapping information.</p>"
    },
    "DatasetInputConfigSchemaList":{
      "type":"list",
      "member":{"shape":"ColumnSchema"},
      "max":100,
      "min":1
    },
    "DatasetList":{
      "type":"list",
      "member":{"shape":"Dataset"}
    },
    "DatasetType":{
      "type":"string",
      "enum":["INTERACTIONS"]
    },
    "DeleteAudienceGenerationJobRequest":{
      "type":"structure",
      "required":["audienceGenerationJobArn"],
      "members":{
        "audienceGenerationJobArn":{
          "shape":"AudienceGenerationJobArn",
          "documentation":"<p>The Amazon Resource Name (ARN) of the audience generation job that you want to delete.</p>",
          "location":"uri",
          "locationName":"audienceGenerationJobArn"
        }
      }
    },
    "DeleteAudienceModelRequest":{
      "type":"structure",
      "required":["audienceModelArn"],
      "members":{
        "audienceModelArn":{
          "shape":"AudienceModelArn",
          "documentation":"<p>The Amazon Resource Name (ARN) of the audience model that you want to delete.</p>",
          "location":"uri",
          "locationName":"audienceModelArn"
        }
      }
    },
    "DeleteConfiguredAudienceModelPolicyRequest":{
      "type":"structure",
      "required":["configuredAudienceModelArn"],
      "members":{
        "configuredAudienceModelArn":{
          "shape":"ConfiguredAudienceModelArn",
          "documentation":"<p>The Amazon Resource Name (ARN) of the configured audience model policy that you want to delete.</p>",
          "location":"uri",
          "locationName":"configuredAudienceModelArn"
        }
      }
    },
    "DeleteConfiguredAudienceModelRequest":{
      "type":"structure",
      "required":["configuredAudienceModelArn"],
      "members":{
        "configuredAudienceModelArn":{
          "shape":"ConfiguredAudienceModelArn",
          "documentation":"<p>The Amazon Resource Name (ARN) of the configured audience model that you want to delete.</p>",
          "location":"uri",
          "locationName":"configuredAudienceModelArn"
        }
      }
    },
    "DeleteTrainingDatasetRequest":{
      "type":"structure",
      "required":["trainingDatasetArn"],
      "members":{
        "trainingDatasetArn":{
          "shape":"TrainingDatasetArn",
          "documentation":"<p>The Amazon Resource Name (ARN) of the training dataset that you want to delete.</p>",
          "location":"uri",
          "locationName":"trainingDatasetArn"
        }
      }
    },
    "Double":{
      "type":"double",
      "box":true
    },
    "GetAudienceGenerationJobRequest":{
      "type":"structure",
      "required":["audienceGenerationJobArn"],
      "members":{
        "audienceGenerationJobArn":{
          "shape":"AudienceGenerationJobArn",
          "documentation":"<p>The Amazon Resource Name (ARN) of the audience generation job that you are interested in.</p>",
          "location":"uri",
          "locationName":"audienceGenerationJobArn"
        }
      }
    },
    "GetAudienceGenerationJobResponse":{
      "type":"structure",
      "required":[
        "audienceGenerationJobArn",
        "configuredAudienceModelArn",
        "createTime",
        "name",
        "status",
        "updateTime"
      ],
      "members":{
        "audienceGenerationJobArn":{
          "shape":"AudienceGenerationJobArn",
          "documentation":"<p>The Amazon Resource Name (ARN) of the audience generation job.</p>"
        },
        "collaborationId":{
          "shape":"UUID",
          "documentation":"<p>The identifier of the collaboration that this audience generation job is associated with.</p>"
        },
        "configuredAudienceModelArn":{
          "shape":"ConfiguredAudienceModelArn",
          "documentation":"<p>The Amazon Resource Name (ARN) of the configured audience model used for this audience generation job.</p>"
        },
        "createTime":{
          "shape":"SyntheticTimestamp_date_time",
          "documentation":"<p>The time at which the audience generation job was created.</p>"
        },
        "description":{
          "shape":"ResourceDescription",
          "documentation":"<p>The description of the audience generation job.</p>"
        },
        "includeSeedInOutput":{
          "shape":"Boolean",
          "documentation":"<p>Configure whether the seed users are included in the output audience. By default, Clean Rooms ML removes seed users from the output audience. If you specify <code>TRUE</code>, the seed users will appear first in the output. Clean Rooms ML does not explicitly reveal whether a user was in the seed, but the recipient of the audience will know that the first <code>minimumSeedSize</code> count of users are from the seed.</p>"
        },
        "metrics":{
          "shape":"AudienceQualityMetrics",
          "documentation":"<p>The relevance scores for different audience sizes. </p>"
        },
        "name":{
          "shape":"NameString",
          "documentation":"<p>The name of the audience generation job.</p>"
        },
        "seedAudience":{
          "shape":"AudienceGenerationJobDataSource",
          "documentation":"<p>The seed audience that was used for this audience generation job. This field will be null if the account calling the API is the account that started this audience generation job. </p>"
        },
        "startedBy":{
          "shape":"AccountId",
          "documentation":"<p>The AWS account that started this audience generation job.</p>"
        },
        "status":{
          "shape":"AudienceGenerationJobStatus",
          "documentation":"<p>The status of the audience generation job.</p>"
        },
        "statusDetails":{
          "shape":"StatusDetails",
          "documentation":"<p>Details about the status of the audience generation job.</p>"
        },
        "tags":{
          "shape":"TagMap",
          "documentation":"<p>The tags that are associated to this audience generation job.</p>"
        },
        "updateTime":{
          "shape":"SyntheticTimestamp_date_time",
          "documentation":"<p>The most recent time at which the audience generation job was updated.</p>"
        }
      }
    },
    "GetAudienceModelRequest":{
      "type":"structure",
      "required":["audienceModelArn"],
      "members":{
        "audienceModelArn":{
          "shape":"AudienceModelArn",
          "documentation":"<p>The Amazon Resource Name (ARN) of the audience model that you are interested in.</p>",
          "location":"uri",
          "locationName":"audienceModelArn"
        }
      }
    },
    "GetAudienceModelResponse":{
      "type":"structure",
      "required":[
        "audienceModelArn",
        "createTime",
        "name",
        "status",
        "trainingDatasetArn",
        "updateTime"
      ],
      "members":{
        "audienceModelArn":{
          "shape":"AudienceModelArn",
          "documentation":"<p>The Amazon Resource Name (ARN) of the audience model.</p>"
        },
        "createTime":{
          "shape":"SyntheticTimestamp_date_time",
          "documentation":"<p>The time at which the audience model was created.</p>"
        },
        "description":{
          "shape":"ResourceDescription",
          "documentation":"<p>The description of the audience model.</p>"
        },
        "kmsKeyArn":{
          "shape":"KmsKeyArn",
          "documentation":"<p>The KMS key ARN used for the audience model.</p>"
        },
        "metrics":{
          "shape":"AudienceModelMetrics",
          "documentation":"<p>Accuracy metrics for the model.</p>"
        },
        "name":{
          "shape":"NameString",
          "documentation":"<p>The name of the audience model.</p>"
        },
        "status":{
          "shape":"AudienceModelStatus",
          "documentation":"<p>The status of the audience model.</p>"
        },
        "statusDetails":{
          "shape":"StatusDetails",
          "documentation":"<p>Details about the status of the audience model.</p>"
        },
        "tags":{
          "shape":"TagMap",
          "documentation":"<p>The tags that are assigned to the audience model.</p>"
        },
        "trainingDataEndTime":{
          "shape":"SyntheticTimestamp_date_time",
          "documentation":"<p>The end date specified for the training window.</p>"
        },
        "trainingDataStartTime":{
          "shape":"SyntheticTimestamp_date_time",
          "documentation":"<p>The start date specified for the training window.</p>"
        },
        "trainingDatasetArn":{
          "shape":"TrainingDatasetArn",
          "documentation":"<p>The Amazon Resource Name (ARN) of the training dataset that was used for this audience model.</p>"
        },
        "updateTime":{
          "shape":"SyntheticTimestamp_date_time",
          "documentation":"<p>The most recent time at which the audience model was updated.</p>"
        }
      }
    },
    "GetConfiguredAudienceModelPolicyRequest":{
      "type":"structure",
      "required":["configuredAudienceModelArn"],
      "members":{
        "configuredAudienceModelArn":{
          "shape":"ConfiguredAudienceModelArn",
          "documentation":"<p>The Amazon Resource Name (ARN) of the configured audience model that you are interested in.</p>",
          "location":"uri",
          "locationName":"configuredAudienceModelArn"
        }
      }
    },
    "GetConfiguredAudienceModelPolicyResponse":{
      "type":"structure",
      "required":[
        "configuredAudienceModelArn",
        "configuredAudienceModelPolicy",
        "policyHash"
      ],
      "members":{
        "configuredAudienceModelArn":{
          "shape":"ConfiguredAudienceModelArn",
          "documentation":"<p>The Amazon Resource Name (ARN) of the configured audience model.</p>"
        },
        "configuredAudienceModelPolicy":{
          "shape":"ResourcePolicy",
          "documentation":"<p>The configured audience model policy. This is a JSON IAM resource policy.</p>"
        },
        "policyHash":{
          "shape":"Hash",
          "documentation":"<p>A cryptographic hash of the contents of the policy used to prevent unexpected concurrent modification of the policy.</p>"
        }
      }
    },
    "GetConfiguredAudienceModelRequest":{
      "type":"structure",
      "required":["configuredAudienceModelArn"],
      "members":{
        "configuredAudienceModelArn":{
          "shape":"ConfiguredAudienceModelArn",
          "documentation":"<p>The Amazon Resource Name (ARN) of the configured audience model that you are interested in.</p>",
          "location":"uri",
          "locationName":"configuredAudienceModelArn"
        }
      }
    },
    "GetConfiguredAudienceModelResponse":{
      "type":"structure",
      "required":[
        "audienceModelArn",
        "configuredAudienceModelArn",
        "createTime",
        "name",
        "outputConfig",
        "sharedAudienceMetrics",
        "status",
        "updateTime"
      ],
      "members":{
        "audienceModelArn":{
          "shape":"AudienceModelArn",
          "documentation":"<p>The Amazon Resource Name (ARN) of the audience model used for this configured audience model.</p>"
        },
        "audienceSizeConfig":{
          "shape":"AudienceSizeConfig",
          "documentation":"<p>The list of output sizes of audiences that can be created using this configured audience model. A request to <a>StartAudienceGenerationJob</a> that uses this configured audience model must have an <code>audienceSize</code> selected from this list. You can use the <code>ABSOLUTE</code> <a>AudienceSize</a> to configure out audience sizes using the count of identifiers in the output. You can use the <code>Percentage</code> <a>AudienceSize</a> to configure sizes in the range 1-100 percent.</p>"
        },
        "childResourceTagOnCreatePolicy":{
          "shape":"TagOnCreatePolicy",
          "documentation":"<p>Provides the <code>childResourceTagOnCreatePolicy</code> that was used for this configured audience model.</p>"
        },
        "configuredAudienceModelArn":{
          "shape":"ConfiguredAudienceModelArn",
          "documentation":"<p>The Amazon Resource Name (ARN) of the configured audience model.</p>"
        },
        "createTime":{
          "shape":"SyntheticTimestamp_date_time",
          "documentation":"<p>The time at which the configured audience model was created.</p>"
        },
        "description":{
          "shape":"ResourceDescription",
          "documentation":"<p>The description of the configured audience model.</p>"
        },
        "minMatchingSeedSize":{
          "shape":"MinMatchingSeedSize",
          "documentation":"<p>The minimum number of users from the seed audience that must match with users in the training data of the audience model.</p>"
        },
        "name":{
          "shape":"NameString",
          "documentation":"<p>The name of the configured audience model.</p>"
        },
        "outputConfig":{
          "shape":"ConfiguredAudienceModelOutputConfig",
          "documentation":"<p>The output configuration of the configured audience model</p>"
        },
        "sharedAudienceMetrics":{
          "shape":"MetricsList",
          "documentation":"<p>Whether audience metrics are shared.</p>"
        },
        "status":{
          "shape":"ConfiguredAudienceModelStatus",
          "documentation":"<p>The status of the configured audience model.</p>"
        },
        "tags":{
          "shape":"TagMap",
          "documentation":"<p>The tags that are associated to this configured audience model.</p>"
        },
        "updateTime":{
          "shape":"SyntheticTimestamp_date_time",
          "documentation":"<p>The most recent time at which the configured audience model was updated.</p>"
        }
      }
    },
    "GetTrainingDatasetRequest":{
      "type":"structure",
      "required":["trainingDatasetArn"],
      "members":{
        "trainingDatasetArn":{
          "shape":"TrainingDatasetArn",
          "documentation":"<p>The Amazon Resource Name (ARN) of the training dataset that you are interested in.</p>",
          "location":"uri",
          "locationName":"trainingDatasetArn"
        }
      }
    },
    "GetTrainingDatasetResponse":{
      "type":"structure",
      "required":[
        "createTime",
        "name",
        "roleArn",
        "status",
        "trainingData",
        "trainingDatasetArn",
        "updateTime"
      ],
      "members":{
        "createTime":{
          "shape":"SyntheticTimestamp_date_time",
          "documentation":"<p>The time at which the training dataset was created.</p>"
        },
        "description":{
          "shape":"ResourceDescription",
          "documentation":"<p>The description of the training dataset.</p>"
        },
        "name":{
          "shape":"NameString",
          "documentation":"<p>The name of the training dataset.</p>"
        },
        "roleArn":{
          "shape":"IamRoleArn",
          "documentation":"<p>The IAM role used to read the training data.</p>"
        },
        "status":{
          "shape":"TrainingDatasetStatus",
          "documentation":"<p>The status of the training dataset.</p>"
        },
        "tags":{
          "shape":"TagMap",
          "documentation":"<p>The tags that are assigned to this training dataset.</p>"
        },
        "trainingData":{
          "shape":"DatasetList",
          "documentation":"<p>Metadata about the requested training data. </p>"
        },
        "trainingDatasetArn":{
          "shape":"TrainingDatasetArn",
          "documentation":"<p>The Amazon Resource Name (ARN) of the training dataset.</p>"
        },
        "updateTime":{
          "shape":"SyntheticTimestamp_date_time",
          "documentation":"<p>The most recent time at which the training dataset was updated.</p>"
        }
      }
    },
    "GlueDataSource":{
      "type":"structure",
      "required":[
        "databaseName",
        "tableName"
      ],
      "members":{
        "catalogId":{
          "shape":"AccountId",
          "documentation":"<p>The Glue catalog that contains the training data.</p>"
        },
        "databaseName":{
          "shape":"GlueDatabaseName",
          "documentation":"<p>The Glue database that contains the training data.</p>"
        },
        "tableName":{
          "shape":"GlueTableName",
          "documentation":"<p>The Glue table that contains the training data.</p>"
        }
      },
      "documentation":"<p>Defines the Glue data source that contains the training data.</p>"
    },
    "GlueDatabaseName":{
      "type":"string",
      "max":128,
      "min":1,
      "pattern":"^[a-zA-Z0-9_](([a-zA-Z0-9_]+-)*([a-zA-Z0-9_]+))?$"
    },
    "GlueTableName":{
      "type":"string",
      "max":128,
      "min":1,
      "pattern":"^[a-zA-Z0-9_](([a-zA-Z0-9_ ]+-)*([a-zA-Z0-9_ ]+))?$"
    },
    "Hash":{
      "type":"string",
      "max":128,
      "min":64,
      "pattern":"^[0-9a-f]+$"
    },
    "IamRoleArn":{
      "type":"string",
      "max":2048,
      "min":20,
      "pattern":"^arn:aws[-a-z]*:iam::[0-9]{12}:role/.+$"
    },
    "Integer":{
      "type":"integer",
      "box":true
    },
    "KmsKeyArn":{
      "type":"string",
      "max":2048,
      "min":20,
      "pattern":"^arn:aws[-a-z]*:kms:[-a-z0-9]+:[0-9]{12}:key/.+$"
    },
    "ListAudienceExportJobsRequest":{
      "type":"structure",
      "members":{
        "audienceGenerationJobArn":{
          "shape":"AudienceGenerationJobArn",
          "documentation":"<p>The Amazon Resource Name (ARN) of the audience generation job that you are interested in.</p>",
          "location":"querystring",
          "locationName":"audienceGenerationJobArn"
        },
        "maxResults":{
          "shape":"MaxResults",
          "documentation":"<p>The maximum size of the results that is returned per call.</p>",
          "location":"querystring",
          "locationName":"maxResults"
        },
        "nextToken":{
          "shape":"NextToken",
          "documentation":"<p>The token value retrieved from a previous call to access the next page of results.</p>",
          "location":"querystring",
          "locationName":"nextToken"
        }
      }
    },
    "ListAudienceExportJobsResponse":{
      "type":"structure",
      "required":["audienceExportJobs"],
      "members":{
        "audienceExportJobs":{
          "shape":"AudienceExportJobList",
          "documentation":"<p>The audience export jobs that match the request.</p>"
        },
        "nextToken":{
          "shape":"NextToken",
          "documentation":"<p>The token value retrieved from a previous call to access the next page of results.</p>"
        }
      }
    },
    "ListAudienceGenerationJobsRequest":{
      "type":"structure",
      "members":{
        "collaborationId":{
          "shape":"UUID",
          "documentation":"<p>The identifier of the collaboration that contains the audience generation jobs that you are interested in.</p>",
          "location":"querystring",
          "locationName":"collaborationId"
        },
        "configuredAudienceModelArn":{
          "shape":"ConfiguredAudienceModelArn",
          "documentation":"<p>The Amazon Resource Name (ARN) of the configured audience model that was used for the audience generation jobs that you are interested in.</p>",
          "location":"querystring",
          "locationName":"configuredAudienceModelArn"
        },
        "maxResults":{
          "shape":"MaxResults",
          "documentation":"<p>The maximum size of the results that is returned per call.</p>",
          "location":"querystring",
          "locationName":"maxResults"
        },
        "nextToken":{
          "shape":"NextToken",
          "documentation":"<p>The token value retrieved from a previous call to access the next page of results.</p>",
          "location":"querystring",
          "locationName":"nextToken"
        }
      }
    },
    "ListAudienceGenerationJobsResponse":{
      "type":"structure",
      "required":["audienceGenerationJobs"],
      "members":{
        "audienceGenerationJobs":{
          "shape":"AudienceGenerationJobList",
          "documentation":"<p>The audience generation jobs that match the request.</p>"
        },
        "nextToken":{
          "shape":"NextToken",
          "documentation":"<p>The token value retrieved from a previous call to access the next page of results.</p>"
        }
      }
    },
    "ListAudienceModelsRequest":{
      "type":"structure",
      "members":{
        "maxResults":{
          "shape":"MaxResults",
          "documentation":"<p>The maximum size of the results that is returned per call.</p>",
          "location":"querystring",
          "locationName":"maxResults"
        },
        "nextToken":{
          "shape":"NextToken",
          "documentation":"<p>The token value retrieved from a previous call to access the next page of results.</p>",
          "location":"querystring",
          "locationName":"nextToken"
        }
      }
    },
    "ListAudienceModelsResponse":{
      "type":"structure",
      "required":["audienceModels"],
      "members":{
        "audienceModels":{
          "shape":"AudienceModelList",
          "documentation":"<p>The audience models that match the request.</p>"
        },
        "nextToken":{
          "shape":"NextToken",
          "documentation":"<p>The token value retrieved from a previous call to access the next page of results.</p>"
        }
      }
    },
    "ListConfiguredAudienceModelsRequest":{
      "type":"structure",
      "members":{
        "maxResults":{
          "shape":"MaxResults",
          "documentation":"<p>The maximum size of the results that is returned per call.</p>",
          "location":"querystring",
          "locationName":"maxResults"
        },
        "nextToken":{
          "shape":"NextToken",
          "documentation":"<p>The token value retrieved from a previous call to access the next page of results.</p>",
          "location":"querystring",
          "locationName":"nextToken"
        }
      }
    },
    "ListConfiguredAudienceModelsResponse":{
      "type":"structure",
      "required":["configuredAudienceModels"],
      "members":{
        "configuredAudienceModels":{
          "shape":"ConfiguredAudienceModelList",
          "documentation":"<p>The configured audience models.</p>"
        },
        "nextToken":{
          "shape":"NextToken",
          "documentation":"<p>The token value retrieved from a previous call to access the next page of results.</p>"
        }
      }
    },
    "ListTagsForResourceRequest":{
      "type":"structure",
      "required":["resourceArn"],
      "members":{
        "resourceArn":{
          "shape":"TaggableArn",
          "documentation":"<p>The Amazon Resource Name (ARN) of the resource that you are interested in.</p>",
          "location":"uri",
          "locationName":"resourceArn"
        }
      }
    },
    "ListTagsForResourceResponse":{
      "type":"structure",
      "required":["tags"],
      "members":{
        "tags":{
          "shape":"TagMap",
          "documentation":"<p>The tags that are associated with the resource.</p>"
        }
      }
    },
    "ListTrainingDatasetsRequest":{
      "type":"structure",
      "members":{
        "maxResults":{
          "shape":"MaxResults",
          "documentation":"<p>The maximum size of the results that is returned per call.</p>",
          "location":"querystring",
          "locationName":"maxResults"
        },
        "nextToken":{
          "shape":"NextToken",
          "documentation":"<p>The token value retrieved from a previous call to access the next page of results.</p>",
          "location":"querystring",
          "locationName":"nextToken"
        }
      }
    },
    "ListTrainingDatasetsResponse":{
      "type":"structure",
      "required":["trainingDatasets"],
      "members":{
        "nextToken":{
          "shape":"NextToken",
          "documentation":"<p>The token value retrieved from a previous call to access the next page of results.</p>"
        },
        "trainingDatasets":{
          "shape":"TrainingDatasetList",
          "documentation":"<p>The training datasets that match the request.</p>"
        }
      }
    },
    "MaxResults":{
      "type":"integer",
      "box":true,
      "max":100,
      "min":1
    },
    "MetricsList":{
      "type":"list",
      "member":{"shape":"SharedAudienceMetrics"},
      "max":1,
      "min":1
    },
    "MinMatchingSeedSize":{
      "type":"integer",
      "box":true,
      "max":500000,
      "min":25
    },
    "NameString":{
      "type":"string",
      "max":63,
      "min":1,
      "pattern":"^(?!\\s*$)[\\u0020-\\uD7FF\\uE000-\\uFFFD\\uD800\\uDBFF-\\uDC00\\uDFFF\\t]*$"
    },
    "NextToken":{
      "type":"string",
      "max":10240,
      "min":1
    },
    "PolicyExistenceCondition":{
      "type":"string",
      "enum":[
        "POLICY_MUST_EXIST",
        "POLICY_MUST_NOT_EXIST"
      ]
    },
    "PutConfiguredAudienceModelPolicyRequest":{
      "type":"structure",
      "required":[
        "configuredAudienceModelArn",
        "configuredAudienceModelPolicy"
      ],
      "members":{
        "configuredAudienceModelArn":{
          "shape":"ConfiguredAudienceModelArn",
          "documentation":"<p>The Amazon Resource Name (ARN) of the configured audience model that the resource policy will govern.</p>",
          "location":"uri",
          "locationName":"configuredAudienceModelArn"
        },
        "configuredAudienceModelPolicy":{
          "shape":"ResourcePolicy",
          "documentation":"<p>The IAM resource policy.</p>"
        },
        "policyExistenceCondition":{
          "shape":"PolicyExistenceCondition",
          "documentation":"<p>Use this to prevent unexpected concurrent modification of the policy.</p>"
        },
        "previousPolicyHash":{
          "shape":"Hash",
          "documentation":"<p>A cryptographic hash of the contents of the policy used to prevent unexpected concurrent modification of the policy.</p>"
        }
      }
    },
    "PutConfiguredAudienceModelPolicyResponse":{
      "type":"structure",
      "required":[
        "configuredAudienceModelPolicy",
        "policyHash"
      ],
      "members":{
        "configuredAudienceModelPolicy":{
          "shape":"ResourcePolicy",
          "documentation":"<p>The IAM resource policy.</p>"
        },
        "policyHash":{
          "shape":"Hash",
          "documentation":"<p>A cryptographic hash of the contents of the policy used to prevent unexpected concurrent modification of the policy.</p>"
        }
      }
    },
    "RelevanceMetric":{
      "type":"structure",
      "required":["audienceSize"],
      "members":{
        "audienceSize":{"shape":"AudienceSize"},
        "score":{
          "shape":"Double",
          "documentation":"<p>The relevance score of the generated audience.</p>"
        }
      },
      "documentation":"<p>The relevance score of a generated audience.</p>"
    },
    "RelevanceMetrics":{
      "type":"list",
      "member":{"shape":"RelevanceMetric"}
    },
    "ResourceDescription":{
      "type":"string",
      "max":255,
      "min":0,
      "pattern":"^[\\u0020-\\uD7FF\\uE000-\\uFFFD\\uD800\\uDBFF-\\uDC00\\uDFFF\\t\\r\\n]*$"
    },
    "ResourceNotFoundException":{
      "type":"structure",
      "required":["message"],
      "members":{
        "message":{"shape":"String"}
      },
      "documentation":"<p>The resource you are requesting does not exist.</p>",
      "error":{
        "httpStatusCode":404,
        "senderFault":true
      },
      "exception":true
    },
    "ResourcePolicy":{
      "type":"string",
      "max":20480,
      "min":1
    },
    "S3ConfigMap":{
      "type":"structure",
      "required":["s3Uri"],
      "members":{
        "s3Uri":{
          "shape":"S3Path",
          "documentation":"<p>The Amazon S3 location URI.</p>"
        }
      },
      "documentation":"<p>Provides information about an Amazon S3 bucket and path.</p>"
    },
    "S3Path":{
      "type":"string",
      "max":1285,
      "min":1,
      "pattern":"^s3://.+$"
    },
    "ServiceQuotaExceededException":{
      "type":"structure",
      "required":["message"],
      "members":{
        "message":{"shape":"String"}
      },
      "documentation":"<p>You have exceeded your service quota.</p>",
      "error":{
        "httpStatusCode":402,
        "senderFault":true
      },
      "exception":true
    },
    "SharedAudienceMetrics":{
      "type":"string",
      "enum":[
        "ALL",
        "NONE"
      ]
    },
    "StartAudienceExportJobRequest":{
      "type":"structure",
      "required":[
        "audienceGenerationJobArn",
        "audienceSize",
        "name"
      ],
      "members":{
        "audienceGenerationJobArn":{
          "shape":"AudienceGenerationJobArn",
          "documentation":"<p>The Amazon Resource Name (ARN) of the audience generation job that you want to export.</p>"
        },
        "audienceSize":{"shape":"AudienceSize"},
        "description":{
          "shape":"ResourceDescription",
          "documentation":"<p>The description of the audience export job.</p>"
        },
        "name":{
          "shape":"NameString",
          "documentation":"<p>The name of the audience export job.</p>"
        }
      }
    },
    "StartAudienceGenerationJobRequest":{
      "type":"structure",
      "required":[
        "configuredAudienceModelArn",
        "name",
        "seedAudience"
      ],
      "members":{
        "collaborationId":{
          "shape":"UUID",
          "documentation":"<p>The identifier of the collaboration that contains the audience generation job.</p>"
        },
        "configuredAudienceModelArn":{
          "shape":"ConfiguredAudienceModelArn",
          "documentation":"<p>The Amazon Resource Name (ARN) of the configured audience model that is used for this audience generation job.</p>"
        },
        "description":{
          "shape":"ResourceDescription",
          "documentation":"<p>The description of the audience generation job.</p>"
        },
        "includeSeedInOutput":{
          "shape":"Boolean",
          "documentation":"<p>Whether the seed audience is included in the audience generation output.</p>"
        },
        "name":{
          "shape":"NameString",
          "documentation":"<p>The name of the audience generation job.</p>"
        },
        "seedAudience":{
          "shape":"AudienceGenerationJobDataSource",
          "documentation":"<p>The seed audience that is used to generate the audience.</p>"
        },
        "tags":{
          "shape":"TagMap",
          "documentation":"<p>The optional metadata that you apply to the resource to help you categorize and organize them. Each tag consists of a key and an optional value, both of which you define.</p> <p>The following basic restrictions apply to tags:</p> <ul> <li> <p>Maximum number of tags per resource - 50.</p> </li> <li> <p>For each resource, each tag key must be unique, and each tag key can have only one value.</p> </li> <li> <p>Maximum key length - 128 Unicode characters in UTF-8.</p> </li> <li> <p>Maximum value length - 256 Unicode characters in UTF-8.</p> </li> <li> <p>If your tagging schema is used across multiple services and resources, remember that other services may have restrictions on allowed characters. Generally allowed characters are: letters, numbers, and spaces representable in UTF-8, and the following characters: + - = . _ : / @.</p> </li> <li> <p>Tag keys and values are case sensitive.</p> </li> <li> <p>Do not use aws:, AWS:, or any upper or lowercase combination of such as a prefix for keys as it is reserved for AWS use. You cannot edit or delete tag keys with this prefix. Values can have this prefix. If a tag value has aws as its prefix but the key does not, then Forecast considers it to be a user tag and will count against the limit of 50 tags. Tags with only the key prefix of aws do not count against your tags per resource limit.</p> </li> </ul>"
        }
      }
    },
    "StartAudienceGenerationJobResponse":{
      "type":"structure",
      "required":["audienceGenerationJobArn"],
      "members":{
        "audienceGenerationJobArn":{
          "shape":"AudienceGenerationJobArn",
          "documentation":"<p>The Amazon Resource Name (ARN) of the audience generation job.</p>"
        }
      }
    },
    "StatusDetails":{
      "type":"structure",
      "members":{
        "message":{
          "shape":"String",
          "documentation":"<p>The error message that was returned. The message is intended for human consumption and can change at any time. Use the <code>statusCode</code> for programmatic error handling.</p>"
        },
        "statusCode":{
          "shape":"String",
          "documentation":"<p>The status code that was returned. The status code is intended for programmatic error handling. Clean Rooms ML will not change the status code for existing error conditions.</p>"
        }
      },
      "documentation":"<p>Details about the status of a resource.</p>"
    },
    "String":{"type":"string"},
    "SyntheticTimestamp_date_time":{
      "type":"timestamp",
      "timestampFormat":"iso8601"
    },
    "TagKey":{
      "type":"string",
      "max":128,
      "min":1,
      "pattern":"^(?!aws:).{1,128}$"
    },
    "TagKeys":{
      "type":"list",
      "member":{"shape":"TagKey"},
      "max":200,
      "min":0
    },
    "TagMap":{
      "type":"map",
      "key":{"shape":"TagKey"},
      "value":{"shape":"TagValue"},
      "max":200,
      "min":0
    },
    "TagOnCreatePolicy":{
      "type":"string",
      "enum":[
        "FROM_PARENT_RESOURCE",
        "NONE"
      ]
    },
    "TagResourceRequest":{
      "type":"structure",
      "required":[
        "resourceArn",
        "tags"
      ],
      "members":{
        "resourceArn":{
          "shape":"TaggableArn",
          "documentation":"<p>The Amazon Resource Name (ARN) of the resource that you want to assign tags.</p>",
          "location":"uri",
          "locationName":"resourceArn"
        },
        "tags":{
          "shape":"TagMap",
          "documentation":"<p>The optional metadata that you apply to the resource to help you categorize and organize them. Each tag consists of a key and an optional value, both of which you define.</p> <p>The following basic restrictions apply to tags:</p> <ul> <li> <p>Maximum number of tags per resource - 50.</p> </li> <li> <p>For each resource, each tag key must be unique, and each tag key can have only one value.</p> </li> <li> <p>Maximum key length - 128 Unicode characters in UTF-8.</p> </li> <li> <p>Maximum value length - 256 Unicode characters in UTF-8.</p> </li> <li> <p>If your tagging schema is used across multiple services and resources, remember that other services may have restrictions on allowed characters. Generally allowed characters are: letters, numbers, and spaces representable in UTF-8, and the following characters: + - = . _ : / @.</p> </li> <li> <p>Tag keys and values are case sensitive.</p> </li> <li> <p>Do not use aws:, AWS:, or any upper or lowercase combination of such as a prefix for keys as it is reserved for AWS use. You cannot edit or delete tag keys with this prefix. Values can have this prefix. If a tag value has aws as its prefix but the key does not, then Forecast considers it to be a user tag and will count against the limit of 50 tags. Tags with only the key prefix of aws do not count against your tags per resource limit.</p> </li> </ul>"
        }
      }
    },
    "TagResourceResponse":{
      "type":"structure",
      "members":{
      }
    },
    "TagValue":{
      "type":"string",
      "max":256,
      "min":0
    },
    "TaggableArn":{
      "type":"string",
      "max":2048,
      "min":20,
      "pattern":"^arn:aws[-a-z]*:cleanrooms-ml:[-a-z0-9]+:[0-9]{12}:(training-dataset|audience-model|configured-audience-model|audience-generation-job)/[-a-zA-Z0-9_/.]+$"
    },
    "TrainingDatasetArn":{
      "type":"string",
      "max":2048,
      "min":20,
      "pattern":"^arn:aws[-a-z]*:cleanrooms-ml:[-a-z0-9]+:[0-9]{12}:training-dataset/[-a-zA-Z0-9_/.]+$"
    },
    "TrainingDatasetList":{
      "type":"list",
      "member":{"shape":"TrainingDatasetSummary"}
    },
    "TrainingDatasetStatus":{
      "type":"string",
      "enum":["ACTIVE"]
    },
    "TrainingDatasetSummary":{
      "type":"structure",
      "required":[
        "createTime",
        "name",
        "status",
        "trainingDatasetArn",
        "updateTime"
      ],
      "members":{
        "createTime":{
          "shape":"SyntheticTimestamp_date_time",
          "documentation":"<p>The time at which the training dataset was created.</p>"
        },
        "description":{
          "shape":"ResourceDescription",
          "documentation":"<p>The description of the training dataset.</p>"
        },
        "name":{
          "shape":"NameString",
          "documentation":"<p>The name of the training dataset.</p>"
        },
        "status":{
          "shape":"TrainingDatasetStatus",
          "documentation":"<p>The status of the training dataset.</p>"
        },
        "trainingDatasetArn":{
          "shape":"TrainingDatasetArn",
          "documentation":"<p>The Amazon Resource Name (ARN) of the training dataset.</p>"
        },
        "updateTime":{
          "shape":"SyntheticTimestamp_date_time",
          "documentation":"<p>The most recent time at which the training dataset was updated.</p>"
        }
      },
      "documentation":"<p>Provides information about the training dataset.</p>"
    },
    "UUID":{
      "type":"string",
      "max":36,
      "min":36,
      "pattern":"^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$"
    },
    "UntagResourceRequest":{
      "type":"structure",
      "required":[
        "resourceArn",
        "tagKeys"
      ],
      "members":{
        "resourceArn":{
          "shape":"TaggableArn",
          "documentation":"<p>The Amazon Resource Name (ARN) of the resource that you want to remove tags from.</p>",
          "location":"uri",
          "locationName":"resourceArn"
        },
        "tagKeys":{
          "shape":"TagKeys",
          "documentation":"<p>The key values of tags that you want to remove.</p>",
          "location":"querystring",
          "locationName":"tagKeys"
        }
      }
    },
    "UntagResourceResponse":{
      "type":"structure",
      "members":{
      }
    },
    "UpdateConfiguredAudienceModelRequest":{
      "type":"structure",
      "required":["configuredAudienceModelArn"],
      "members":{
        "audienceModelArn":{
          "shape":"AudienceModelArn",
          "documentation":"<p>The Amazon Resource Name (ARN) of the new audience model that you want to use.</p>"
        },
        "audienceSizeConfig":{
          "shape":"AudienceSizeConfig",
          "documentation":"<p>The new audience size configuration.</p>"
        },
        "configuredAudienceModelArn":{
          "shape":"ConfiguredAudienceModelArn",
          "documentation":"<p>The Amazon Resource Name (ARN) of the configured audience model that you want to update.</p>",
          "location":"uri",
          "locationName":"configuredAudienceModelArn"
        },
        "description":{
          "shape":"ResourceDescription",
          "documentation":"<p>The new description of the configured audience model.</p>"
        },
        "minMatchingSeedSize":{
          "shape":"MinMatchingSeedSize",
          "documentation":"<p>The minimum number of users from the seed audience that must match with users in the training data of the audience model.</p>"
        },
        "outputConfig":{
          "shape":"ConfiguredAudienceModelOutputConfig",
          "documentation":"<p>The new output configuration.</p>"
        },
        "sharedAudienceMetrics":{
          "shape":"MetricsList",
          "documentation":"<p>The new value for whether to share audience metrics.</p>"
        }
      }
    },
    "UpdateConfiguredAudienceModelResponse":{
      "type":"structure",
      "required":["configuredAudienceModelArn"],
      "members":{
        "configuredAudienceModelArn":{
          "shape":"ConfiguredAudienceModelArn",
          "documentation":"<p>The Amazon Resource Name (ARN) of the configured audience model that was updated.</p>"
        }
      }
    },
    "ValidationException":{
      "type":"structure",
      "required":["message"],
      "members":{
        "message":{"shape":"String"}
      },
      "documentation":"<p>The request parameters for this request are incorrect.</p>",
      "error":{
        "httpStatusCode":400,
        "senderFault":true
      },
      "exception":true
    }
  },
  "documentation":"<p>Welcome to the <i>Amazon Web Services Clean Rooms ML API Reference</i>.</p> <p>Amazon Web Services Clean Rooms ML provides a privacy-enhancing method for two parties to identify similar users in their data without the need to share their data with each other. The first party brings the training data to Clean Rooms so that they can create and configure an audience model (lookalike model) and associate it with a collaboration. The second party then brings their seed data to Clean Rooms and generates an audience (lookalike segment) that resembles the training data.</p> <p>To learn more about Amazon Web Services Clean Rooms ML concepts, procedures, and best practices, see the <a href=\"https://docs.aws.amazon.com/clean-rooms/latest/userguide/machine-learning.html\">Clean Rooms User Guide</a>.</p> <p>To learn more about SQL commands, functions, and conditions supported in Clean Rooms, see the <a href=\"https://docs.aws.amazon.com/clean-rooms/latest/sql-reference/sql-reference.html\">Clean Rooms SQL Reference</a>.</p>"
}
¿Qué es la limpieza dental de perros? - Clínica veterinaria


Es la eliminación del sarro y la placa adherida a la superficie de los dientes mediante un equipo de ultrasonidos que garantiza la integridad de las piezas dentales a la vez que elimina en profundidad cualquier resto de suciedad.

A continuación se procede al pulido de los dientes mediante una fresa especial que elimina la placa bacteriana y devuelve a los dientes el aspecto sano que deben tener.

Una vez terminado todo el proceso, se mantiene al perro en observación hasta que se despierta de la anestesia, bajo la atenta supervisión de un veterinario.

¿Cada cuánto tiempo tengo que hacerle una limpieza dental a mi perro?

A partir de cierta edad, los perros pueden necesitar una limpieza dental anual o bianual. Depende de cada caso. En líneas generales, puede decirse que los perros de razas pequeñas suelen acumular más sarro y suelen necesitar una atención mayor en cuanto a higiene dental.


Riesgos de una mala higiene


Los riesgos más evidentes de una mala higiene dental en los perros son los siguientes:

  • Cuando la acumulación de sarro no se trata, se puede producir una inflamación y retracción de las encías que puede descalzar el diente y provocar caídas.
  • Mal aliento (halitosis).
  • Sarro perros
  • Puede ir a más
  • Las bacterias de la placa pueden trasladarse a través del torrente circulatorio a órganos vitales como el corazón ocasionando problemas de endocarditis en las válvulas. Las bacterias pueden incluso acantonarse en huesos (La osteomielitis es la infección ósea, tanto cortical como medular) provocando mucho dolor y una artritis séptica).

¿Cómo se forma el sarro?

El sarro es la calcificación de la placa dental. Los restos de alimentos, junto con las bacterias presentes en la boca, van a formar la placa bacteriana o placa dental. Si la placa no se retira, al mezclarse con la saliva y los minerales presentes en ella, reaccionará formando una costra. La placa se calcifica y se forma el sarro.

El sarro, cuando se forma, es de color blanquecino pero a medida que pasa el tiempo se va poniendo amarillo y luego marrón.

Síntomas de una pobre higiene dental
La señal más obvia de una mala salud dental canina es el mal aliento.

Sin embargo, a veces no es tan fácil de detectar
Y hay perros que no se dejan abrir la boca por su dueño. Por ejemplo…

Recientemente nos trajeron a la clínica a un perro que parpadeaba de un ojo y decía su dueño que le picaba un lado de la cara. Tenía molestias y dificultad para comer, lo que había llevado a sus dueños a comprarle comida blanda (que suele ser un poco más cara y llevar más contenido en grasa) durante medio año. Después de una exploración oftalmológica, nos dimos cuenta de que el ojo tenía una úlcera en la córnea probablemente de rascarse . Además, el canto lateral del ojo estaba inflamado. Tenía lo que en humanos llamamos flemón pero como era un perro de pelo largo, no se le notaba a simple vista. Al abrirle la boca nos llamó la atención el ver una muela llena de sarro. Le realizamos una radiografía y encontramos una fístula que llegaba hasta la parte inferior del ojo.

Le tuvimos que extraer la muela. Tras esto, el ojo se curó completamente con unos colirios y una lentilla protectora de úlcera. Afortunadamente, la úlcera no profundizó y no perforó el ojo. Ahora el perro come perfectamente a pesar de haber perdido una muela.

¿Cómo mantener la higiene dental de tu perro?
Hay varias maneras de prevenir problemas derivados de la salud dental de tu perro.

Limpiezas de dientes en casa
Es recomendable limpiar los dientes de tu perro semanal o diariamente si se puede. Existe una gran variedad de productos que se pueden utilizar:

Pastas de dientes.
Cepillos de dientes o dedales para el dedo índice, que hacen más fácil la limpieza.
Colutorios para echar en agua de bebida o directamente sobre el diente en líquido o en spray.

En la Clínica Tus Veterinarios enseñamos a nuestros clientes a tomar el hábito de limpiar los dientes de sus perros desde que son cachorros. Esto responde a nuestro compromiso con la prevención de enfermedades caninas.

Hoy en día tenemos muchos clientes que limpian los dientes todos los días a su mascota, y como resultado, se ahorran el dinero de hacer limpiezas dentales profesionales y consiguen una mejor salud de su perro.


Limpiezas dentales profesionales de perros y gatos

Recomendamos hacer una limpieza dental especializada anualmente. La realizamos con un aparato de ultrasonidos que utiliza agua para quitar el sarro. Después, procedemos a pulir los dientes con un cepillo de alta velocidad y una pasta especial. Hacemos esto para proteger el esmalte.

La frecuencia de limpiezas dentales necesaria varía mucho entre razas. En general, las razas grandes tienen buena calidad de esmalte, por lo que no necesitan hacerlo tan a menudo e incluso pueden pasarse la vida sin requerir una limpieza. Sin embargo, razas pequeñas como el Yorkshire o el Maltés, deben hacérselas todos los años desde cachorros si se quiere conservar sus piezas dentales.

Otro factor fundamental es la calidad del pienso. Algunas marcas han diseñado croquetas que limpian la superficie del diente y de la muela al masticarse.

Ultrasonido para perros

¿Se necesita anestesia para las limpiezas dentales de perros y gatos?

La limpieza dental en perros no es una técnica que pueda practicarse sin anestesia general , aunque hay veces que los propietarios no quieren anestesiar y si tiene poco sarro y el perro es muy bueno se puede intentar…… , pero no se va a poder pulir ni acceder a todas la zona de la boca …. Además los limpiadores dentales van a irrigar agua y hay riesgo de aspiración a vías respiratorias si no se realiza una anestesia correcta con intubación traqueal . En resumen , sin anestesia no se va hacer una correcta limpieza dental.

Tampoco sirve la sedación ya que necesitamos que el animal esté totalmente quieto, y el veterinario tenga un acceso completo a todas sus piezas dentales y encías.

Alimentos para la limpieza dental

Hay que tener cierto cuidado a la hora de comprar determinados alimentos porque no todos son saludables. Algunos tienen demasiado contenido graso, que en exceso puede causar problemas cardiovasculares y obesidad.

Los mejores alimentos para los dientes son aquellos que están elaborados por empresas farmacéuticas y llevan componentes químicos con tratamientos específicos para el diente del perro. Esto implica no solo limpieza a través de la acción mecánica de morder sino también un tratamiento antibacteriano para prevenir el sarro.

Conclusión

Si eres como la mayoría de dueños, por falta de tiempo , es probable que no estés prestando la suficiente atención a la limpieza dental de tu perro. Por eso te animamos a que comiences a limpiar los dientes de tu perro y consideres atender a su higiene bucal con frecuencia.

Estas simples medidas pueden conllevar a que tu perro tenga una vida más larga y mucho más saludable.

Si te resulta imposible introducir un cepillo de dientes a tu perro en la boca, pásate con él por clínica Tus Veterinarios y te explicamos cómo hacerlo.

Necesitas hacer una limpieza dental profesional a tu mascota?
Llámanos al 622575274 o contacta con nosotros

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

¡Hola!