An object that represents the details about the remediation configuration that includes the remediation action, parameters, and data to execute the action.
RemediationConfiguration is a JSON Structure definition published by Amazon Config, describing 12 properties, of which 3 are required. It conforms to the https://json-structure.org/meta/core/v0/# meta-schema.
{
"$schema": "https://json-structure.org/meta/core/v0/#",
"$id": "https://raw.githubusercontent.com/api-evangelist/amazon-config/refs/heads/main/json-structure/config-remediation-configuration-structure.json",
"name": "RemediationConfiguration",
"description": "An object that represents the details about the remediation configuration that includes the remediation action, parameters, and data to execute the action.",
"type": "object",
"properties": {
"ConfigRuleName": {
"allOf": [
{
"$ref": "#/components/schemas/ConfigRuleName"
},
{
"description": "The name of the Config rule."
}
]
},
"TargetType": {
"allOf": [
{
"$ref": "#/components/schemas/RemediationTargetType"
},
{
"description": "The type of the target. Target executes remediation. For example, SSM document."
}
]
},
"TargetId": {
"allOf": [
{
"$ref": "#/components/schemas/StringWithCharLimit256"
},
{
"description": "Target ID is the name of the SSM document."
}
]
},
"TargetVersion": {
"allOf": [
{
"$ref": "#/components/schemas/String"
},
{
"description": "<p>Version of the target. For example, version of the SSM document.</p> <note> <p>If you make backward incompatible changes to the SSM document, you must call PutRemediationConfiguration API again to ensure the remediations can run.</p> </note>"
}
]
},
"Parameters": {
"allOf": [
{
"$ref": "#/components/schemas/RemediationParameters"
},
{
"description": "An object of the RemediationParameterValue."
}
]
},
"ResourceType": {
"allOf": [
{
"$ref": "#/components/schemas/String"
},
{
"description": "The type of a resource. "
}
]
},
"Automatic": {
"allOf": [
{
"$ref": "#/components/schemas/Boolean"
},
{
"description": "The remediation is triggered automatically."
}
]
},
"ExecutionControls": {
"allOf": [
{
"$ref": "#/components/schemas/ExecutionControls"
},
{
"description": "An ExecutionControls object."
}
]
},
"MaximumAutomaticAttempts": {
"allOf": [
{
"$ref": "#/components/schemas/AutoRemediationAttempts"
},
{
"description": "<p>The maximum number of failed attempts for auto-remediation. If you do not select a number, the default is 5.</p> <p>For example, if you specify MaximumAutomaticAttempts as 5 with RetryAttemptSeconds as 50 seconds, Config will put a RemediationException on your behalf for the failing resource after the 5th failed attempt within 50 seconds.</p>"
}
]
},
"RetryAttemptSeconds": {
"allOf": [
{
"$ref": "#/components/schemas/AutoRemediationAttemptSeconds"
},
{
"description": "<p>Maximum time in seconds that Config runs auto-remediation. If you do not select a number, the default is 60 seconds. </p> <p>For example, if you specify RetryAttemptSeconds as 50 seconds and MaximumAutomaticAttempts as 5, Config will run auto-remediations 5 times within 50 seconds before throwing an exception.</p>"
}
]
},
"Arn": {
"allOf": [
{
"$ref": "#/components/schemas/StringWithCharLimit1024"
},
{
"description": "Amazon Resource Name (ARN) of remediation configuration."
}
]
},
"CreatedByService": {
"allOf": [
{
"$ref": "#/components/schemas/StringWithCharLimit1024"
},
{
"description": "Name of the service that owns the service-linked rule, if applicable."
}
]
}
},
"required": [
"ConfigRuleName",
"TargetType",
"TargetId"
]
}