{"files":{"SKILL.md":"---\nname: aws-glue-databrew\ndescription: \"AWS Glue DataBrew API skill. Use when working with AWS Glue DataBrew for recipes, datasets, profileJobs. Covers 44 endpoints.\"\nversion: 1.0.0\ngenerator: lapsh\n---\n\n# AWS Glue DataBrew\nAPI version: 2017-07-25\n\n## Auth\nAWS SigV4\n\n## Base URL\nNot specified.\n\n## Setup\n1. Configure auth: AWS SigV4\n2. GET /datasets -- lists all of the databrew datasets.\n3. POST /recipes/{name}/batchDeleteRecipeVersion -- create first batchDeleteRecipeVersion\n\n## Endpoints\n44 endpoints across 10 groups. See references/api-spec.lap for full details.\n\n### Recipes\n| Method | Path | Description |\n|--------|------|-------------|\n| POST | /recipes/{name}/batchDeleteRecipeVersion | Deletes one or more versions of a recipe at a time. The entire request will be rejected if:   The recipe does not exist.   There is an invalid version identifier in the list of versions.   The version list is empty.   The version list size exceeds 50.   The version list contains duplicate entries.   The request will complete successfully, but with partial failures, if:   A version does not exist.   A version is being used by a job.   You specify LATEST_WORKING, but it's being used by a project.   The version fails to be deleted.   The LATEST_WORKING version will only be deleted if the recipe has no other versions. If you try to delete LATEST_WORKING while other versions exist (or if they can't be deleted), then LATEST_WORKING will be listed as partial failure in the response. |\n| POST | /recipes | Creates a new DataBrew recipe. |\n| DELETE | /recipes/{name}/recipeVersion/{recipeVersion} | Deletes a single version of a DataBrew recipe. |\n| GET | /recipes/{name} | Returns the definition of a specific DataBrew recipe corresponding to a particular version. |\n| GET | /recipes | Lists all of the DataBrew recipes that are defined. |\n| POST | /recipes/{name}/publishRecipe | Publishes a new version of a DataBrew recipe. |\n| PUT | /recipes/{name} | Modifies the definition of the LATEST_WORKING version of a DataBrew recipe. |\n\n### Datasets\n| Method | Path | Description |\n|--------|------|-------------|\n| POST | /datasets | Creates a new DataBrew dataset. |\n| DELETE | /datasets/{name} | Deletes a dataset from DataBrew. |\n| GET | /datasets/{name} | Returns the definition of a specific DataBrew dataset. |\n| GET | /datasets | Lists all of the DataBrew datasets. |\n| PUT | /datasets/{name} | Modifies the definition of an existing DataBrew dataset. |\n\n### ProfileJobs\n| Method | Path | Description |\n|--------|------|-------------|\n| POST | /profileJobs | Creates a new job to analyze a dataset and create its data profile. |\n| PUT | /profileJobs/{name} | Modifies the definition of an existing profile job. |\n\n### Projects\n| Method | Path | Description |\n|--------|------|-------------|\n| POST | /projects | Creates a new DataBrew project. |\n| DELETE | /projects/{name} | Deletes an existing DataBrew project. |\n| GET | /projects/{name} | Returns the definition of a specific DataBrew project. |\n| GET | /projects | Lists all of the DataBrew projects that are defined. |\n| PUT | /projects/{name}/sendProjectSessionAction | Performs a recipe step within an interactive DataBrew session that's currently open. |\n| PUT | /projects/{name}/startProjectSession | Creates an interactive session, enabling you to manipulate data in a DataBrew project. |\n| PUT | /projects/{name} | Modifies the definition of an existing DataBrew project. |\n\n### RecipeJobs\n| Method | Path | Description |\n|--------|------|-------------|\n| POST | /recipeJobs | Creates a new job to transform input data, using steps defined in an existing Glue DataBrew recipe |\n| PUT | /recipeJobs/{name} | Modifies the definition of an existing DataBrew recipe job. |\n\n### Rulesets\n| Method | Path | Description |\n|--------|------|-------------|\n| POST | /rulesets | Creates a new ruleset that can be used in a profile job to validate the data quality of a dataset. |\n| DELETE | /rulesets/{name} | Deletes a ruleset. |\n| GET | /rulesets/{name} | Retrieves detailed information about the ruleset. |\n| GET | /rulesets | List all rulesets available in the current account or rulesets associated with a specific resource (dataset). |\n| PUT | /rulesets/{name} | Updates specified ruleset. |\n\n### Schedules\n| Method | Path | Description |\n|--------|------|-------------|\n| POST | /schedules | Creates a new schedule for one or more DataBrew jobs. Jobs can be run at a specific date and time, or at regular intervals. |\n| DELETE | /schedules/{name} | Deletes the specified DataBrew schedule. |\n| GET | /schedules/{name} | Returns the definition of a specific DataBrew schedule. |\n| GET | /schedules | Lists the DataBrew schedules that are defined. |\n| PUT | /schedules/{name} | Modifies the definition of an existing DataBrew schedule. |\n\n### Jobs\n| Method | Path | Description |\n|--------|------|-------------|\n| DELETE | /jobs/{name} | Deletes the specified DataBrew job. |\n| GET | /jobs/{name} | Returns the definition of a specific DataBrew job. |\n| GET | /jobs/{name}/jobRun/{runId} | Represents one run of a DataBrew job. |\n| GET | /jobs/{name}/jobRuns | Lists all of the previous runs of a particular DataBrew job. |\n| GET | /jobs | Lists all of the DataBrew jobs that are defined. |\n| POST | /jobs/{name}/startJobRun | Runs a DataBrew job. |\n| POST | /jobs/{name}/jobRun/{runId}/stopJobRun | Stops a particular run of a job. |\n\n### RecipeVersions\n| Method | Path | Description |\n|--------|------|-------------|\n| GET | /recipeVersions | Lists the versions of a particular DataBrew recipe, except for LATEST_WORKING. |\n\n### Tags\n| Method | Path | Description |\n|--------|------|-------------|\n| GET | /tags/{ResourceArn} | Lists all the tags for a DataBrew resource. |\n| POST | /tags/{ResourceArn} | Adds metadata tags to a DataBrew resource, such as a dataset, project, recipe, job, or schedule. |\n| DELETE | /tags/{ResourceArn} | Removes metadata tags from a DataBrew resource. |\n\n## Common Questions\nMatch user requests to endpoints in references/api-spec.lap. Key patterns:\n- \"Create a batchDeleteRecipeVersion?\" -> POST /recipes/{name}/batchDeleteRecipeVersion\n- \"Create a dataset?\" -> POST /datasets\n- \"Create a profileJob?\" -> POST /profileJobs\n- \"Create a project?\" -> POST /projects\n- \"Create a recipe?\" -> POST /recipes\n- \"Create a recipeJob?\" -> POST /recipeJobs\n- \"Create a ruleset?\" -> POST /rulesets\n- \"Create a schedule?\" -> POST /schedules\n- \"Delete a dataset?\" -> DELETE /datasets/{name}\n- \"Delete a job?\" -> DELETE /jobs/{name}\n- \"Delete a project?\" -> DELETE /projects/{name}\n- \"Delete a recipeVersion?\" -> DELETE /recipes/{name}/recipeVersion/{recipeVersion}\n- \"Delete a ruleset?\" -> DELETE /rulesets/{name}\n- \"Delete a schedule?\" -> DELETE /schedules/{name}\n- \"Get dataset details?\" -> GET /datasets/{name}\n- \"Get job details?\" -> GET /jobs/{name}\n- \"Get jobRun details?\" -> GET /jobs/{name}/jobRun/{runId}\n- \"Get project details?\" -> GET /projects/{name}\n- \"Get recipe details?\" -> GET /recipes/{name}\n- \"Get ruleset details?\" -> GET /rulesets/{name}\n- \"Get schedule details?\" -> GET /schedules/{name}\n- \"List all datasets?\" -> GET /datasets\n- \"List all jobRuns?\" -> GET /jobs/{name}/jobRuns\n- \"List all jobs?\" -> GET /jobs\n- \"List all projects?\" -> GET /projects\n- \"List all recipeVersions?\" -> GET /recipeVersions\n- \"List all recipes?\" -> GET /recipes\n- \"List all rulesets?\" -> GET /rulesets\n- \"List all schedules?\" -> GET /schedules\n- \"Get tag details?\" -> GET /tags/{ResourceArn}\n- \"Create a publishRecipe?\" -> POST /recipes/{name}/publishRecipe\n- \"Create a startJobRun?\" -> POST /jobs/{name}/startJobRun\n- \"Create a stopJobRun?\" -> POST /jobs/{name}/jobRun/{runId}/stopJobRun\n- \"Delete a tag?\" -> DELETE /tags/{ResourceArn}\n- \"Update a dataset?\" -> PUT /datasets/{name}\n- \"Update a profileJob?\" -> PUT /profileJobs/{name}\n- \"Update a project?\" -> PUT /projects/{name}\n- \"Update a recipe?\" -> PUT /recipes/{name}\n- \"Update a recipeJob?\" -> PUT /recipeJobs/{name}\n- \"Update a ruleset?\" -> PUT /rulesets/{name}\n- \"Update a schedule?\" -> PUT /schedules/{name}\n- \"How to authenticate?\" -> See Auth section above\n\n## Response Tips\n- Check response schemas in references/api-spec.lap for field details\n- Create/update endpoints return the modified resource on success\n\n## References\n- Full spec: See references/api-spec.lap for complete endpoint details, parameter tables, and response schemas\n\n> Generated from the official API spec by [LAP](https://lap.sh)\n","references/api-spec.lap":"@lap v0.3\n# Machine-readable API spec. Each @endpoint block is one API call.\n@api AWS Glue DataBrew\n@version 2017-07-25\n@auth AWS SigV4\n@endpoints 44\n@hint download_for_search\n@toc recipes(7), datasets(5), profileJobs(2), projects(7), recipeJobs(2), rulesets(5), schedules(5), jobs(7), recipeVersions(1), tags(3)\n\n@group recipes\n@endpoint POST /recipes/{name}/batchDeleteRecipeVersion\n@desc Deletes one or more versions of a recipe at a time. The entire request will be rejected if:   The recipe does not exist.   There is an invalid version identifier in the list of versions.   The version list is empty.   The version list size exceeds 50.   The version list contains duplicate entries.   The request will complete successfully, but with partial failures, if:   A version does not exist.   A version is being used by a job.   You specify LATEST_WORKING, but it's being used by a project.   The version fails to be deleted.   The LATEST_WORKING version will only be deleted if the recipe has no other versions. If you try to delete LATEST_WORKING while other versions exist (or if they can't be deleted), then LATEST_WORKING will be listed as partial failure in the response.\n@required {Name: str, RecipeVersions: [str]}\n@returns(200) {Name: str, Errors: [RecipeVersionErrorDetail]?}\n\n@endgroup\n\n@group datasets\n@endpoint POST /datasets\n@desc Creates a new DataBrew dataset.\n@required {Name: str, Input: Input}\n@optional {Format: str, FormatOptions: FormatOptions, PathOptions: PathOptions, Tags: map<str,str>}\n@returns(200) {Name: str}\n\n@endgroup\n\n@group profileJobs\n@endpoint POST /profileJobs\n@desc Creates a new job to analyze a dataset and create its data profile.\n@required {DatasetName: str, Name: str, OutputLocation: S3Location, RoleArn: str}\n@optional {EncryptionKeyArn: str, EncryptionMode: str, LogSubscription: str, MaxCapacity: int, MaxRetries: int, Configuration: ProfileConfiguration, ValidationConfigurations: [ValidationConfiguration], Tags: map<str,str>, Timeout: int, JobSample: JobSample}\n@returns(200) {Name: str}\n\n@endgroup\n\n@group projects\n@endpoint POST /projects\n@desc Creates a new DataBrew project.\n@required {DatasetName: str, Name: str, RecipeName: str, RoleArn: str}\n@optional {Sample: Sample, Tags: map<str,str>}\n@returns(200) {Name: str}\n\n@endgroup\n\n@group recipes\n@endpoint POST /recipes\n@desc Creates a new DataBrew recipe.\n@required {Name: str, Steps: [RecipeStep]}\n@optional {Description: str, Tags: map<str,str>}\n@returns(200) {Name: str}\n\n@endgroup\n\n@group recipeJobs\n@endpoint POST /recipeJobs\n@desc Creates a new job to transform input data, using steps defined in an existing Glue DataBrew recipe\n@required {Name: str, RoleArn: str}\n@optional {DatasetName: str, EncryptionKeyArn: str, EncryptionMode: str, LogSubscription: str, MaxCapacity: int, MaxRetries: int, Outputs: [Output], DataCatalogOutputs: [DataCatalogOutput], DatabaseOutputs: [DatabaseOutput], ProjectName: str, RecipeReference: RecipeReference, Tags: map<str,str>, Timeout: int}\n@returns(200) {Name: str}\n\n@endgroup\n\n@group rulesets\n@endpoint POST /rulesets\n@desc Creates a new ruleset that can be used in a profile job to validate the data quality of a dataset.\n@required {Name: str, TargetArn: str, Rules: [Rule]}\n@optional {Description: str, Tags: map<str,str>}\n@returns(200) {Name: str}\n\n@endgroup\n\n@group schedules\n@endpoint POST /schedules\n@desc Creates a new schedule for one or more DataBrew jobs. Jobs can be run at a specific date and time, or at regular intervals.\n@required {CronExpression: str, Name: str}\n@optional {JobNames: [str], Tags: map<str,str>}\n@returns(200) {Name: str}\n\n@endgroup\n\n@group datasets\n@endpoint DELETE /datasets/{name}\n@desc Deletes a dataset from DataBrew.\n@required {Name: str}\n@returns(200) {Name: str}\n\n@endgroup\n\n@group jobs\n@endpoint DELETE /jobs/{name}\n@desc Deletes the specified DataBrew job.\n@required {Name: str}\n@returns(200) {Name: str}\n\n@endgroup\n\n@group projects\n@endpoint DELETE /projects/{name}\n@desc Deletes an existing DataBrew project.\n@required {Name: str}\n@returns(200) {Name: str}\n\n@endgroup\n\n@group recipes\n@endpoint DELETE /recipes/{name}/recipeVersion/{recipeVersion}\n@desc Deletes a single version of a DataBrew recipe.\n@required {Name: str, RecipeVersion: str}\n@returns(200) {Name: str, RecipeVersion: str}\n\n@endgroup\n\n@group rulesets\n@endpoint DELETE /rulesets/{name}\n@desc Deletes a ruleset.\n@required {Name: str}\n@returns(200) {Name: str}\n\n@endgroup\n\n@group schedules\n@endpoint DELETE /schedules/{name}\n@desc Deletes the specified DataBrew schedule.\n@required {Name: str}\n@returns(200) {Name: str}\n\n@endgroup\n\n@group datasets\n@endpoint GET /datasets/{name}\n@desc Returns the definition of a specific DataBrew dataset.\n@required {Name: str}\n@returns(200) {CreatedBy: str?, CreateDate: str(timestamp)?, Name: str, Format: str?, FormatOptions: FormatOptions?{Json: JsonOptions?{MultiLine: bool?}, Excel: ExcelOptions?{SheetNames: [str]?, SheetIndexes: [int]?, HeaderRow: bool?}, Csv: CsvOptions?{Delimiter: str?, HeaderRow: bool?}}, Input: Input{S3InputDefinition: S3Location?{Bucket: str, Key: str?, BucketOwner: str?}, DataCatalogInputDefinition: DataCatalogInputDefinition?{CatalogId: str?, DatabaseName: str, TableName: str, TempDirectory: S3Location?{Bucket: str, Key: str?, BucketOwner: str?}}, DatabaseInputDefinition: DatabaseInputDefinition?{GlueConnectionName: str, DatabaseTableName: str?, TempDirectory: S3Location?{Bucket: str, Key: str?, BucketOwner: str?}, QueryString: str?}, Metadata: Metadata?{SourceArn: str?}}, LastModifiedDate: str(timestamp)?, LastModifiedBy: str?, Source: str?, PathOptions: PathOptions?{LastModifiedDateCondition: FilterExpression?{Expression: str, ValuesMap: map<str, str>: any}, FilesLimit: FilesLimit?{MaxFiles: int, OrderedBy: str?, Order: str?}, Parameters: map<str, DatasetParameter>?: any}, Tags: map<str,str>?, ResourceArn: str?}\n\n@endgroup\n\n@group jobs\n@endpoint GET /jobs/{name}\n@desc Returns the definition of a specific DataBrew job.\n@required {Name: str}\n@returns(200) {CreateDate: str(timestamp)?, CreatedBy: str?, DatasetName: str?, EncryptionKeyArn: str?, EncryptionMode: str?, Name: str, Type: str?, LastModifiedBy: str?, LastModifiedDate: str(timestamp)?, LogSubscription: str?, MaxCapacity: int?, MaxRetries: int?, Outputs: [Output]?, DataCatalogOutputs: [DataCatalogOutput]?, DatabaseOutputs: [DatabaseOutput]?, ProjectName: str?, ProfileConfiguration: ProfileConfiguration?{DatasetStatisticsConfiguration: StatisticsConfiguration?{IncludedStatistics: [str]?, Overrides: [StatisticOverride]?}, ProfileColumns: [ColumnSelector]?, ColumnStatisticsConfigurations: [ColumnStatisticsConfiguration]?, EntityDetectorConfiguration: EntityDetectorConfiguration?{EntityTypes: [str], AllowedStatistics: [AllowedStatistics]?}}, ValidationConfigurations: [ValidationConfiguration]?, RecipeReference: RecipeReference?{Name: str, RecipeVersion: str?}, ResourceArn: str?, RoleArn: str?, Tags: map<str,str>?, Timeout: int?, JobSample: JobSample?{Mode: str?, Size: int(i64)?}}\n\n@endpoint GET /jobs/{name}/jobRun/{runId}\n@desc Represents one run of a DataBrew job.\n@required {Name: str, RunId: str}\n@returns(200) {Attempt: int?, CompletedOn: str(timestamp)?, DatasetName: str?, ErrorMessage: str?, ExecutionTime: int?, JobName: str, ProfileConfiguration: ProfileConfiguration?{DatasetStatisticsConfiguration: StatisticsConfiguration?{IncludedStatistics: [str]?, Overrides: [StatisticOverride]?}, ProfileColumns: [ColumnSelector]?, ColumnStatisticsConfigurations: [ColumnStatisticsConfiguration]?, EntityDetectorConfiguration: EntityDetectorConfiguration?{EntityTypes: [str], AllowedStatistics: [AllowedStatistics]?}}, ValidationConfigurations: [ValidationConfiguration]?, RunId: str?, State: str?, LogSubscription: str?, LogGroupName: str?, Outputs: [Output]?, DataCatalogOutputs: [DataCatalogOutput]?, DatabaseOutputs: [DatabaseOutput]?, RecipeReference: RecipeReference?{Name: str, RecipeVersion: str?}, StartedBy: str?, StartedOn: str(timestamp)?, JobSample: JobSample?{Mode: str?, Size: int(i64)?}}\n\n@endgroup\n\n@group projects\n@endpoint GET /projects/{name}\n@desc Returns the definition of a specific DataBrew project.\n@required {Name: str}\n@returns(200) {CreateDate: str(timestamp)?, CreatedBy: str?, DatasetName: str?, LastModifiedDate: str(timestamp)?, LastModifiedBy: str?, Name: str, RecipeName: str?, ResourceArn: str?, Sample: Sample?{Size: int?, Type: str}, RoleArn: str?, Tags: map<str,str>?, SessionStatus: str?, OpenedBy: str?, OpenDate: str(timestamp)?}\n\n@endgroup\n\n@group recipes\n@endpoint GET /recipes/{name}\n@desc Returns the definition of a specific DataBrew recipe corresponding to a particular version.\n@required {Name: str}\n@optional {recipeVersion: str}\n@returns(200) {CreatedBy: str?, CreateDate: str(timestamp)?, LastModifiedBy: str?, LastModifiedDate: str(timestamp)?, ProjectName: str?, PublishedBy: str?, PublishedDate: str(timestamp)?, Description: str?, Name: str, Steps: [RecipeStep]?, Tags: map<str,str>?, ResourceArn: str?, RecipeVersion: str?}\n\n@endgroup\n\n@group rulesets\n@endpoint GET /rulesets/{name}\n@desc Retrieves detailed information about the ruleset.\n@required {Name: str}\n@returns(200) {Name: str, Description: str?, TargetArn: str?, Rules: [Rule]?, CreateDate: str(timestamp)?, CreatedBy: str?, LastModifiedBy: str?, LastModifiedDate: str(timestamp)?, ResourceArn: str?, Tags: map<str,str>?}\n\n@endgroup\n\n@group schedules\n@endpoint GET /schedules/{name}\n@desc Returns the definition of a specific DataBrew schedule.\n@required {Name: str}\n@returns(200) {CreateDate: str(timestamp)?, CreatedBy: str?, JobNames: [str]?, LastModifiedBy: str?, LastModifiedDate: str(timestamp)?, ResourceArn: str?, CronExpression: str?, Tags: map<str,str>?, Name: str}\n\n@endgroup\n\n@group datasets\n@endpoint GET /datasets\n@desc Lists all of the DataBrew datasets.\n@optional {maxResults: int, nextToken: str}\n@returns(200) {Datasets: [Dataset], NextToken: str?}\n\n@endgroup\n\n@group jobs\n@endpoint GET /jobs/{name}/jobRuns\n@desc Lists all of the previous runs of a particular DataBrew job.\n@required {Name: str}\n@optional {maxResults: int, nextToken: str}\n@returns(200) {JobRuns: [JobRun], NextToken: str?}\n\n@endpoint GET /jobs\n@desc Lists all of the DataBrew jobs that are defined.\n@optional {datasetName: str, maxResults: int, nextToken: str, projectName: str}\n@returns(200) {Jobs: [Job], NextToken: str?}\n\n@endgroup\n\n@group projects\n@endpoint GET /projects\n@desc Lists all of the DataBrew projects that are defined.\n@optional {nextToken: str, maxResults: int}\n@returns(200) {Projects: [Project], NextToken: str?}\n\n@endgroup\n\n@group recipeVersions\n@endpoint GET /recipeVersions\n@desc Lists the versions of a particular DataBrew recipe, except for LATEST_WORKING.\n@required {name: str}\n@optional {maxResults: int, nextToken: str}\n@returns(200) {NextToken: str?, Recipes: [Recipe]}\n\n@endgroup\n\n@group recipes\n@endpoint GET /recipes\n@desc Lists all of the DataBrew recipes that are defined.\n@optional {maxResults: int, nextToken: str, recipeVersion: str}\n@returns(200) {Recipes: [Recipe], NextToken: str?}\n\n@endgroup\n\n@group rulesets\n@endpoint GET /rulesets\n@desc List all rulesets available in the current account or rulesets associated with a specific resource (dataset).\n@optional {targetArn: str, maxResults: int, nextToken: str}\n@returns(200) {Rulesets: [RulesetItem], NextToken: str?}\n\n@endgroup\n\n@group schedules\n@endpoint GET /schedules\n@desc Lists the DataBrew schedules that are defined.\n@optional {jobName: str, maxResults: int, nextToken: str}\n@returns(200) {Schedules: [Schedule], NextToken: str?}\n\n@endgroup\n\n@group tags\n@endpoint GET /tags/{ResourceArn}\n@desc Lists all the tags for a DataBrew resource.\n@required {ResourceArn: str}\n@returns(200) {Tags: map<str,str>?}\n\n@endgroup\n\n@group recipes\n@endpoint POST /recipes/{name}/publishRecipe\n@desc Publishes a new version of a DataBrew recipe.\n@required {Name: str}\n@optional {Description: str}\n@returns(200) {Name: str}\n\n@endgroup\n\n@group projects\n@endpoint PUT /projects/{name}/sendProjectSessionAction\n@desc Performs a recipe step within an interactive DataBrew session that's currently open.\n@required {Name: str}\n@optional {Preview: bool, RecipeStep: RecipeStep, StepIndex: int, ClientSessionId: str, ViewFrame: ViewFrame}\n@returns(200) {Result: str?, Name: str, ActionId: int?}\n\n@endgroup\n\n@group jobs\n@endpoint POST /jobs/{name}/startJobRun\n@desc Runs a DataBrew job.\n@required {Name: str}\n@returns(200) {RunId: str}\n\n@endgroup\n\n@group projects\n@endpoint PUT /projects/{name}/startProjectSession\n@desc Creates an interactive session, enabling you to manipulate data in a DataBrew project.\n@required {Name: str}\n@optional {AssumeControl: bool}\n@returns(200) {Name: str, ClientSessionId: str?}\n\n@endgroup\n\n@group jobs\n@endpoint POST /jobs/{name}/jobRun/{runId}/stopJobRun\n@desc Stops a particular run of a job.\n@required {Name: str, RunId: str}\n@returns(200) {RunId: str}\n\n@endgroup\n\n@group tags\n@endpoint POST /tags/{ResourceArn}\n@desc Adds metadata tags to a DataBrew resource, such as a dataset, project, recipe, job, or schedule.\n@required {ResourceArn: str, Tags: map<str,str>}\n\n@endpoint DELETE /tags/{ResourceArn}\n@desc Removes metadata tags from a DataBrew resource.\n@required {ResourceArn: str, tagKeys: [str]}\n\n@endgroup\n\n@group datasets\n@endpoint PUT /datasets/{name}\n@desc Modifies the definition of an existing DataBrew dataset.\n@required {Name: str, Input: Input}\n@optional {Format: str, FormatOptions: FormatOptions, PathOptions: PathOptions}\n@returns(200) {Name: str}\n\n@endgroup\n\n@group profileJobs\n@endpoint PUT /profileJobs/{name}\n@desc Modifies the definition of an existing profile job.\n@required {Name: str, OutputLocation: S3Location, RoleArn: str}\n@optional {Configuration: ProfileConfiguration, EncryptionKeyArn: str, EncryptionMode: str, LogSubscription: str, MaxCapacity: int, MaxRetries: int, ValidationConfigurations: [ValidationConfiguration], Timeout: int, JobSample: JobSample}\n@returns(200) {Name: str}\n\n@endgroup\n\n@group projects\n@endpoint PUT /projects/{name}\n@desc Modifies the definition of an existing DataBrew project.\n@required {Name: str, RoleArn: str}\n@optional {Sample: Sample}\n@returns(200) {LastModifiedDate: str(timestamp)?, Name: str}\n\n@endgroup\n\n@group recipes\n@endpoint PUT /recipes/{name}\n@desc Modifies the definition of the LATEST_WORKING version of a DataBrew recipe.\n@required {Name: str}\n@optional {Description: str, Steps: [RecipeStep]}\n@returns(200) {Name: str}\n\n@endgroup\n\n@group recipeJobs\n@endpoint PUT /recipeJobs/{name}\n@desc Modifies the definition of an existing DataBrew recipe job.\n@required {Name: str, RoleArn: str}\n@optional {EncryptionKeyArn: str, EncryptionMode: str, LogSubscription: str, MaxCapacity: int, MaxRetries: int, Outputs: [Output], DataCatalogOutputs: [DataCatalogOutput], DatabaseOutputs: [DatabaseOutput], Timeout: int}\n@returns(200) {Name: str}\n\n@endgroup\n\n@group rulesets\n@endpoint PUT /rulesets/{name}\n@desc Updates specified ruleset.\n@required {Name: str, Rules: [Rule]}\n@optional {Description: str}\n@returns(200) {Name: str}\n\n@endgroup\n\n@group schedules\n@endpoint PUT /schedules/{name}\n@desc Modifies the definition of an existing DataBrew schedule.\n@required {Name: str, CronExpression: str}\n@optional {JobNames: [str]}\n@returns(200) {Name: str}\n\n@endgroup\n\n@end\n"}}