{"note":"OpenAPI conversion -- returning structured metadata","name":"amazonaws-com-fis","description":"AWS Fault Injection Simulator","version":"2020-12-01","base_url":"","endpoints":26,"raw":"@lap v0.3\n# Machine-readable API spec. Each @endpoint block is one API call.\n@api AWS Fault Injection Simulator\n@version 2020-12-01\n@auth AWS SigV4\n@endpoints 26\n@hint download_for_search\n@toc experimentTemplates(10), actions(2), experiments(7), safetyLevers(2), targetResourceTypes(2), tags(3)\n\n@group experimentTemplates\n@endpoint POST /experimentTemplates\n@desc Creates an experiment template.  An experiment template includes the following components:    Targets: A target can be a specific resource in your Amazon Web Services environment, or one or more resources that match criteria that you specify, for example, resources that have specific tags.    Actions: The actions to carry out on the target. You can specify multiple actions, the duration of each action, and when to start each action during an experiment.    Stop conditions: If a stop condition is triggered while an experiment is running, the experiment is automatically stopped. You can define a stop condition as a CloudWatch alarm.   For more information, see experiment templates in the Fault Injection Service User Guide.\n@required {clientToken: str, description: str, stopConditions: [CreateExperimentTemplateStopConditionInput], actions: map<str,CreateExperimentTemplateActionInput>, roleArn: str}\n@optional {targets: map<str,CreateExperimentTemplateTargetInput>, tags: map<str,str>, logConfiguration: CreateExperimentTemplateLogConfigurationInput, experimentOptions: CreateExperimentTemplateExperimentOptionsInput}\n@returns(200) {experimentTemplate: ExperimentTemplate?{id: str?, arn: str?, description: str?, targets: map<str,ExperimentTemplateTarget>?, actions: map<str,ExperimentTemplateAction>?, stopConditions: [ExperimentTemplateStopCondition]?, creationTime: str(timestamp)?, lastUpdateTime: str(timestamp)?, roleArn: str?, tags: map<str,str>?, logConfiguration: ExperimentTemplateLogConfiguration?{cloudWatchLogsConfiguration: ExperimentTemplateCloudWatchLogsLogConfiguration?{logGroupArn: str?}, s3Configuration: ExperimentTemplateS3LogConfiguration?{bucketName: str?, prefix: str?}, logSchemaVersion: int?}, experimentOptions: ExperimentTemplateExperimentOptions?{accountTargeting: str?, emptyTargetResolutionMode: str?}, targetAccountConfigurationsCount: int(i64)?}}\n\n@endpoint POST /experimentTemplates/{id}/targetAccountConfigurations/{accountId}\n@desc Creates a target account configuration for the experiment template. A target account configuration is required when accountTargeting of experimentOptions is set to multi-account. For more information, see experiment options in the Fault Injection Service User Guide.\n@required {experimentTemplateId: str, accountId: str, roleArn: str}\n@optional {clientToken: str, description: str}\n@returns(200) {targetAccountConfiguration: TargetAccountConfiguration?{roleArn: str?, accountId: str?, description: str?}}\n\n@endpoint DELETE /experimentTemplates/{id}\n@desc Deletes the specified experiment template.\n@required {id: str}\n@returns(200) {experimentTemplate: ExperimentTemplate?{id: str?, arn: str?, description: str?, targets: map<str,ExperimentTemplateTarget>?, actions: map<str,ExperimentTemplateAction>?, stopConditions: [ExperimentTemplateStopCondition]?, creationTime: str(timestamp)?, lastUpdateTime: str(timestamp)?, roleArn: str?, tags: map<str,str>?, logConfiguration: ExperimentTemplateLogConfiguration?{cloudWatchLogsConfiguration: ExperimentTemplateCloudWatchLogsLogConfiguration?{logGroupArn: str?}, s3Configuration: ExperimentTemplateS3LogConfiguration?{bucketName: str?, prefix: str?}, logSchemaVersion: int?}, experimentOptions: ExperimentTemplateExperimentOptions?{accountTargeting: str?, emptyTargetResolutionMode: str?}, targetAccountConfigurationsCount: int(i64)?}}\n\n@endpoint DELETE /experimentTemplates/{id}/targetAccountConfigurations/{accountId}\n@desc Deletes the specified target account configuration of the experiment template.\n@required {experimentTemplateId: str, accountId: str}\n@returns(200) {targetAccountConfiguration: TargetAccountConfiguration?{roleArn: str?, accountId: str?, description: str?}}\n\n@endgroup\n\n@group actions\n@endpoint GET /actions/{id}\n@desc Gets information about the specified FIS action.\n@required {id: str}\n@returns(200) {action: Action?{id: str?, arn: str?, description: str?, parameters: map<str,ActionParameter>?, targets: map<str,ActionTarget>?, tags: map<str,str>?}}\n\n@endgroup\n\n@group experiments\n@endpoint GET /experiments/{id}\n@desc Gets information about the specified experiment.\n@required {id: str}\n@returns(200) {experiment: Experiment?{id: str?, arn: str?, experimentTemplateId: str?, roleArn: str?, state: ExperimentState?{status: str?, reason: str?, error: ExperimentError?{accountId: str?, code: str?, location: str?}}, targets: map<str,ExperimentTarget>?, actions: map<str,ExperimentAction>?, stopConditions: [ExperimentStopCondition]?, creationTime: str(timestamp)?, startTime: str(timestamp)?, endTime: str(timestamp)?, tags: map<str,str>?, logConfiguration: ExperimentLogConfiguration?{cloudWatchLogsConfiguration: ExperimentCloudWatchLogsLogConfiguration?{logGroupArn: str?}, s3Configuration: ExperimentS3LogConfiguration?{bucketName: str?, prefix: str?}, logSchemaVersion: int?}, experimentOptions: ExperimentOptions?{accountTargeting: str?, emptyTargetResolutionMode: str?, actionsMode: str?}, targetAccountConfigurationsCount: int(i64)?}}\n\n@endpoint GET /experiments/{id}/targetAccountConfigurations/{accountId}\n@desc Gets information about the specified target account configuration of the experiment.\n@required {experimentId: str, accountId: str}\n@returns(200) {targetAccountConfiguration: ExperimentTargetAccountConfiguration?{roleArn: str?, accountId: str?, description: str?}}\n\n@endgroup\n\n@group experimentTemplates\n@endpoint GET /experimentTemplates/{id}\n@desc Gets information about the specified experiment template.\n@required {id: str}\n@returns(200) {experimentTemplate: ExperimentTemplate?{id: str?, arn: str?, description: str?, targets: map<str,ExperimentTemplateTarget>?, actions: map<str,ExperimentTemplateAction>?, stopConditions: [ExperimentTemplateStopCondition]?, creationTime: str(timestamp)?, lastUpdateTime: str(timestamp)?, roleArn: str?, tags: map<str,str>?, logConfiguration: ExperimentTemplateLogConfiguration?{cloudWatchLogsConfiguration: ExperimentTemplateCloudWatchLogsLogConfiguration?{logGroupArn: str?}, s3Configuration: ExperimentTemplateS3LogConfiguration?{bucketName: str?, prefix: str?}, logSchemaVersion: int?}, experimentOptions: ExperimentTemplateExperimentOptions?{accountTargeting: str?, emptyTargetResolutionMode: str?}, targetAccountConfigurationsCount: int(i64)?}}\n\n@endgroup\n\n@group safetyLevers\n@endpoint GET /safetyLevers/{id}\n@desc Gets information about the specified safety lever.\n@required {id: str}\n@returns(200) {safetyLever: SafetyLever?{id: str?, arn: str?, state: SafetyLeverState?{status: str?, reason: str?}}}\n\n@endgroup\n\n@group experimentTemplates\n@endpoint GET /experimentTemplates/{id}/targetAccountConfigurations/{accountId}\n@desc Gets information about the specified target account configuration of the experiment template.\n@required {experimentTemplateId: str, accountId: str}\n@returns(200) {targetAccountConfiguration: TargetAccountConfiguration?{roleArn: str?, accountId: str?, description: str?}}\n\n@endgroup\n\n@group targetResourceTypes\n@endpoint GET /targetResourceTypes/{resourceType}\n@desc Gets information about the specified resource type.\n@required {resourceType: str}\n@returns(200) {targetResourceType: TargetResourceType?{resourceType: str?, description: str?, parameters: map<str,TargetResourceTypeParameter>?}}\n\n@endgroup\n\n@group actions\n@endpoint GET /actions\n@desc Lists the available FIS actions.\n@optional {maxResults: int, nextToken: str}\n@returns(200) {actions: [ActionSummary]?, nextToken: str?}\n\n@endgroup\n\n@group experiments\n@endpoint GET /experiments/{id}/resolvedTargets\n@desc Lists the resolved targets information of the specified experiment.\n@required {experimentId: str}\n@optional {maxResults: int, nextToken: str, targetName: str}\n@returns(200) {resolvedTargets: [ResolvedTarget]?, nextToken: str?}\n\n@endpoint GET /experiments/{id}/targetAccountConfigurations\n@desc Lists the target account configurations of the specified experiment.\n@required {experimentId: str}\n@optional {nextToken: str}\n@returns(200) {targetAccountConfigurations: [ExperimentTargetAccountConfigurationSummary]?, nextToken: str?}\n\n@endgroup\n\n@group experimentTemplates\n@endpoint GET /experimentTemplates\n@desc Lists your experiment templates.\n@optional {maxResults: int, nextToken: str}\n@returns(200) {experimentTemplates: [ExperimentTemplateSummary]?, nextToken: str?}\n\n@endgroup\n\n@group experiments\n@endpoint GET /experiments\n@desc Lists your experiments.\n@optional {maxResults: int, nextToken: str, experimentTemplateId: str}\n@returns(200) {experiments: [ExperimentSummary]?, nextToken: str?}\n\n@endgroup\n\n@group tags\n@endpoint GET /tags/{resourceArn}\n@desc Lists the tags for the specified resource.\n@required {resourceArn: str}\n@returns(200) {tags: map<str,str>?}\n\n@endgroup\n\n@group experimentTemplates\n@endpoint GET /experimentTemplates/{id}/targetAccountConfigurations\n@desc Lists the target account configurations of the specified experiment template.\n@required {experimentTemplateId: str}\n@optional {maxResults: int, nextToken: str}\n@returns(200) {targetAccountConfigurations: [TargetAccountConfigurationSummary]?, nextToken: str?}\n\n@endgroup\n\n@group targetResourceTypes\n@endpoint GET /targetResourceTypes\n@desc Lists the target resource types.\n@optional {maxResults: int, nextToken: str}\n@returns(200) {targetResourceTypes: [TargetResourceTypeSummary]?, nextToken: str?}\n\n@endgroup\n\n@group experiments\n@endpoint POST /experiments\n@desc Starts running an experiment from the specified experiment template.\n@required {clientToken: str, experimentTemplateId: str}\n@optional {experimentOptions: StartExperimentExperimentOptionsInput, tags: map<str,str>}\n@returns(200) {experiment: Experiment?{id: str?, arn: str?, experimentTemplateId: str?, roleArn: str?, state: ExperimentState?{status: str?, reason: str?, error: ExperimentError?{accountId: str?, code: str?, location: str?}}, targets: map<str,ExperimentTarget>?, actions: map<str,ExperimentAction>?, stopConditions: [ExperimentStopCondition]?, creationTime: str(timestamp)?, startTime: str(timestamp)?, endTime: str(timestamp)?, tags: map<str,str>?, logConfiguration: ExperimentLogConfiguration?{cloudWatchLogsConfiguration: ExperimentCloudWatchLogsLogConfiguration?{logGroupArn: str?}, s3Configuration: ExperimentS3LogConfiguration?{bucketName: str?, prefix: str?}, logSchemaVersion: int?}, experimentOptions: ExperimentOptions?{accountTargeting: str?, emptyTargetResolutionMode: str?, actionsMode: str?}, targetAccountConfigurationsCount: int(i64)?}}\n\n@endpoint DELETE /experiments/{id}\n@desc Stops the specified experiment.\n@required {id: str}\n@returns(200) {experiment: Experiment?{id: str?, arn: str?, experimentTemplateId: str?, roleArn: str?, state: ExperimentState?{status: str?, reason: str?, error: ExperimentError?{accountId: str?, code: str?, location: str?}}, targets: map<str,ExperimentTarget>?, actions: map<str,ExperimentAction>?, stopConditions: [ExperimentStopCondition]?, creationTime: str(timestamp)?, startTime: str(timestamp)?, endTime: str(timestamp)?, tags: map<str,str>?, logConfiguration: ExperimentLogConfiguration?{cloudWatchLogsConfiguration: ExperimentCloudWatchLogsLogConfiguration?{logGroupArn: str?}, s3Configuration: ExperimentS3LogConfiguration?{bucketName: str?, prefix: str?}, logSchemaVersion: int?}, experimentOptions: ExperimentOptions?{accountTargeting: str?, emptyTargetResolutionMode: str?, actionsMode: str?}, targetAccountConfigurationsCount: int(i64)?}}\n\n@endgroup\n\n@group tags\n@endpoint POST /tags/{resourceArn}\n@desc Applies the specified tags to the specified resource.\n@required {resourceArn: str, tags: map<str,str>}\n\n@endpoint DELETE /tags/{resourceArn}\n@desc Removes the specified tags from the specified resource.\n@required {resourceArn: str}\n@optional {tagKeys: [str]}\n\n@endgroup\n\n@group experimentTemplates\n@endpoint PATCH /experimentTemplates/{id}\n@desc Updates the specified experiment template.\n@required {id: str}\n@optional {description: str, stopConditions: [UpdateExperimentTemplateStopConditionInput], targets: map<str,UpdateExperimentTemplateTargetInput>, actions: map<str,UpdateExperimentTemplateActionInputItem>, roleArn: str, logConfiguration: UpdateExperimentTemplateLogConfigurationInput, experimentOptions: UpdateExperimentTemplateExperimentOptionsInput}\n@returns(200) {experimentTemplate: ExperimentTemplate?{id: str?, arn: str?, description: str?, targets: map<str,ExperimentTemplateTarget>?, actions: map<str,ExperimentTemplateAction>?, stopConditions: [ExperimentTemplateStopCondition]?, creationTime: str(timestamp)?, lastUpdateTime: str(timestamp)?, roleArn: str?, tags: map<str,str>?, logConfiguration: ExperimentTemplateLogConfiguration?{cloudWatchLogsConfiguration: ExperimentTemplateCloudWatchLogsLogConfiguration?{logGroupArn: str?}, s3Configuration: ExperimentTemplateS3LogConfiguration?{bucketName: str?, prefix: str?}, logSchemaVersion: int?}, experimentOptions: ExperimentTemplateExperimentOptions?{accountTargeting: str?, emptyTargetResolutionMode: str?}, targetAccountConfigurationsCount: int(i64)?}}\n\n@endgroup\n\n@group safetyLevers\n@endpoint PATCH /safetyLevers/{id}/state\n@desc Updates the specified safety lever state.\n@required {id: str, state: UpdateSafetyLeverStateInput}\n@returns(200) {safetyLever: SafetyLever?{id: str?, arn: str?, state: SafetyLeverState?{status: str?, reason: str?}}}\n\n@endgroup\n\n@group experimentTemplates\n@endpoint PATCH /experimentTemplates/{id}/targetAccountConfigurations/{accountId}\n@desc Updates the target account configuration for the specified experiment template.\n@required {experimentTemplateId: str, accountId: str}\n@optional {roleArn: str, description: str}\n@returns(200) {targetAccountConfiguration: TargetAccountConfiguration?{roleArn: str?, accountId: str?, description: str?}}\n\n@endgroup\n\n@end\n"}