plans
Creates, updates, deletes or gets a plan resource or lists plans in a region
Overview
| Name | plans |
| Type | Resource |
| Description | Engagement Plan for a SSM Incident Manager Contact. |
| Id | aws.ssmcontacts.plans |
Fields
| Name | Datatype | Description |
|---|---|---|
contact_id | string | Contact ID for the AWS SSM Incident Manager Contact to associate the plan. |
stages | array | The stages that an escalation plan or engagement plan engages contacts and contact methods in. |
rotation_ids | array | Rotation Ids to associate with Oncall Contact for engagement. |
arn | string | The Amazon Resource Name (ARN) of the contact. |
region | string | AWS region. |
For more information, see AWS::SSMContacts::Plan.
Methods
| Name | Accessible by | Required Params |
|---|---|---|
create_resource | INSERT | region |
delete_resource | DELETE | data__Identifier, region |
update_resource | UPDATE | data__Identifier, data__PatchDocument, region |
get_resource | SELECT | data__Identifier, region |
SELECT examples
Gets all properties from an individual plan.
SELECT
region,
contact_id,
stages,
rotation_ids,
arn
FROM aws.ssmcontacts.plans
WHERE region = 'us-east-1' AND data__Identifier = '<Arn>';
INSERT example
Use the following StackQL query and manifest file to create a new plan resource, using stack-deploy.
- Required Properties
- All Properties
- Manifest
/*+ create */
INSERT INTO aws.ssmcontacts.plans (
ContactId,
Stages,
RotationIds,
region
)
SELECT
'{{ ContactId }}',
'{{ Stages }}',
'{{ RotationIds }}',
'{{ region }}';
/*+ create */
INSERT INTO aws.ssmcontacts.plans (
ContactId,
Stages,
RotationIds,
region
)
SELECT
'{{ ContactId }}',
'{{ Stages }}',
'{{ RotationIds }}',
'{{ region }}';
version: 1
name: stack name
description: stack description
providers:
- aws
globals:
- name: region
value: '{{ vars.AWS_REGION }}'
resources:
- name: plan
props:
- name: ContactId
value: '{{ ContactId }}'
- name: Stages
value:
- DurationInMinutes: '{{ DurationInMinutes }}'
Targets:
- ContactTargetInfo:
ContactId: '{{ ContactId }}'
IsEssential: '{{ IsEssential }}'
ChannelTargetInfo:
ChannelId: '{{ ChannelId }}'
RetryIntervalInMinutes: '{{ RetryIntervalInMinutes }}'
- name: RotationIds
value:
- '{{ RotationIds[0] }}'
DELETE example
/*+ delete */
DELETE FROM aws.ssmcontacts.plans
WHERE data__Identifier = '<Arn>'
AND region = 'us-east-1';
Permissions
To operate on the plans resource, the following permissions are required:
Create
ssm-contacts:UpdateContact,
ssm-contacts:GetContact,
ssm-contacts:AssociateContact
Read
ssm-contacts:GetContact
Update
ssm-contacts:UpdateContact,
ssm-contacts:GetContact,
ssm-contacts:AssociateContact
Delete
ssm-contacts:UpdateContact,
ssm-contacts:GetContact,
ssm-contacts:AssociateContact