Blameless is the end-to-end SRE platform, empowering teams to optimize the reliability of their systems without sacrificing innovation velocity.
Connect Blameless with Devo SOAR
Navigate to Automations > Integrations.
Search for Blameless.
Click Details, then the + icon. Enter the required information in the following fields.
Label: Enter a connection name.
Reference Values: Define variables here to templatize integration connections and actions. For example, you can use https://www.{{hostname}}.com where, hostname is a variable defined in this input. For more information on how to add data, see 'Add Data' Input Type for Integrations.
Verify SSL: Select option to verify connecting server's SSL certificate (Default is Verify SSL Certificate).
Remote Agent: Run this integration using the Devo SOAR Remote Agent.
Audience: Audience URL to access Blameless. Example: .blameless.io
Client ID: Client ID to access Blameless.
Client Secret: Client Secret to access Blameless.
After you've entered all the details, click Connect.
Actions for Blameless
Create Incident
Create an incident
Input Field
Choose a connection that you have previously created and then fill in the necessary information in the following input fields to complete the connection.
Input Name | Description | Required |
---|---|---|
Description | Jinja-templated text containing the description of the incident. Example: {{description_column}}. | Required |
Creator | Jinja-templated text containing the slack user id of the creator user. Example: {{creator_column}}. | Required |
Type | Jinja-templated text containing the type of the incident (Default is 'DEFAULT' type). Example: {{type_column}}. | Optional |
Severity | Jinja-templated text containing the severity of the incident (Default is 0). The value between 0 and 3 (0 is most severe; 3 is least severe) Example: {{severity_column}}. | Optional |
Output
A JSON object containing multiple rows of result:
has_error: True/False
error: message/null
result: Incident Details
``` {json}{ "result": { "ok": true, "incident": { "_id": 131, "is_deleted": false, "created": { "$date": 1618231582667 }, "updated": { "$date": 1618231582990 }, "is_shadow": false, "creator": "abc@logichub.com", "blameless_creator": "", "roles": { "commander": "abc@logichub.com" }, "blameless_roles": {}, "description": "T2", "status": "INVESTIGATING", "severity": 0, "mute": false, "is_postmortem_required": true, "type": "DEFAULT", "duplicate_of": "", "start_of_customer_impact": { "$date": 1618231582668 }, "start_of_incident_impact": { "$date": 1618231582668 }, "time_to_identification": 0, "time_to_take_action": 0, "time_to_resolution": 0, "duration_of_customer_impact": 0, "duration_of_incident_impact": 0, "team": [], "blameless_team": [], "blamo_provider_name": "slack", "name": "131", "postmortem_state": null } }, "error": null, "has_error": false }
## Update Incident Update an incident ### Input Field Choose a connection that you have previously created and then fill in the necessary information in the following input fields to complete the connection. | Input Name | Description | Required | | :---------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :------- | | Incident ID | Jinja-templated text containing the description of the incident. Example: {{description_column}}. | Required | | Description | Jinja-templated text containing the description of the incident. Example: {{description_column}}. | Optional | | Type | Jinja-templated text containing the type of the incident (Default is 'DEFAULT' type). Example: {{type_column}}. | Optional | | Severity | Jinja-templated text containing the severity of the incident (Default is 0). The value between 0 and 3 (0 is most severe; 3 is least severe) Example: {{severity_column}}. | Optional | ### Output A JSON object containing multiple rows of result: - has_error: True/False - error: message/null - result: Incident Details ``` {json}{ "result": { "ok": true, "incident": { "_id": 127, "is_deleted": false, "created": { "$date": 1618222934606 }, "updated": { "$date": 1618236879530 }, "is_shadow": false, "creator": "abc@logichub.com", "blameless_creator": "", "roles": { "commander": "abc@logichub.com" }, "blameless_roles": {}, "description": "T1", "status": "INVESTIGATING", "severity": "SEV3", "mute": false, "is_postmortem_required": true, "type": "er", "duplicate_of": "", "start_of_customer_impact": { "$date": 1618222934607 }, "start_of_incident_impact": { "$date": 1618222934607 }, "time_to_identification": 0, "time_to_take_action": 0, "time_to_resolution": 0, "duration_of_customer_impact": 0, "duration_of_incident_impact": 0, "team": [ { "_id": "UQY4H9Y1J", "profile": { "title": "", "phone": "", "skype": "", "real_name": "Geoff White", "real_name_normalized": "Geoff White", "display_name": "", "display_name_normalized": "", "fields": null, "status_text": "", "status_emoji": "", "status_expiration": 0, "avatar_hash": "ge163a5e149e", "email": "geoffw@blameless.com", "first_name": "Geoff", "last_name": "White", "image_24": "https://secure.gravatar.com/avatar/e163a5e149e2016d78559c54ec5ac3b9.jpg?s=24&d=https%3A%2F%2Fa.slack-edge.com%2Fdf10d%2Fimg%2Favatars%2Fava_0012-24.png", "image_32": "https://secure.gravatar.com/avatar/e163a5e149e2016d78559c54ec5ac3b9.jpg?s=32&d=https%3A%2F%2Fa.slack-edge.com%2Fdf10d%2Fimg%2Favatars%2Fava_0012-32.png", "image_48": "https://secure.gravatar.com/avatar/e163a5e149e2016d78559c54ec5ac3b9.jpg?s=48&d=https%3A%2F%2Fa.slack-edge.com%2Fdf10d%2Fimg%2Favatars%2Fava_0012-48.png", "image_72": "https://secure.gravatar.com/avatar/e163a5e149e2016d78559c54ec5ac3b9.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2Fdf10d%2Fimg%2Favatars%2Fava_0012-72.png", "image_192": "https://secure.gravatar.com/avatar/e163a5e149e2016d78559c54ec5ac3b9.jpg?s=192&d=https%3A%2F%2Fa.slack-edge.com%2Fdf10d%2Fimg%2Favatars%2Fava_0012-192.png", "image_512": "https://secure.gravatar.com/avatar/e163a5e149e2016d78559c54ec5ac3b9.jpg?s=512&d=https%3A%2F%2Fa.slack-edge.com%2Fdf10d%2Fimg%2Favatars%2Fava_0012-512.png", "status_text_canonical": "", "team": "TQY4H9W1J", "name": "geoffw" }, "roles": [ "Participant" ] } ], "blameless_team": [ "1" ], "blamo_provider_name": "slack", "slack_channel": { "id": "C01TZQWTKB5", "name": "_incident-127",l.slack.com/archives/C01TZQWTKB5", "is_private": false, "announcements": [ { "channel_id": "C01TZQWTKB5", "msg_ts": "161822937.000600" } ], "task_lists": [ { "channel_id": "C0TZQWTKB5", "msg_ts": "1618222939." } ] }, "ticket": { "type": "JIRA", "key": "INCIDENT-7204", "url": "https://blameless.", "raw": {} }, "name": "127", "postmortem_state": null }, "events": [ { "_id": 950, "incident_id": 127, "swimlane_id": 0, "date": { "$date": 1618222934606 }, "event_type": "INCIDENT_CREATED", "is_deleted": false, "source": { "profile": {} } }, { "_id": 951, "incident_id": 127, "swimlane_id": 0, "date": { "$date": 1618222934607 }, "event_type": "START_OF_CUSTOMER_IMPACT", "is_deleted": false, "source": { "profile": {} } }, { "_id": 952, "incident_id": 127, "swimlane_id": 0, "date": { "$date": 1618222934607 }, "event_type": "START_OF_INCIDENT_IMPACT", "is_deleted": false, "source": { "profile": {} } }, { "_id": 953, "incident_id": 127, "swimlane_id": 0, "date": { "$date": 1618222935457 }, "event_type": "POSTMORTEM_STATE_CHANGED", "value": "UNASSIGNED", "is_deleted": false, "source": { "profile": {} } }, { "_id": 1010, "incident_id": 127, "swimlane_id": 0, "date": { "$date": 1618236178859 }, "event_type": "SEVERITY_FIELD_CHANGED", "value": "3", "is_deleted": false, "source": { "profile": {} } }, { "_id": 1011, "incident_id": 127, "swimlane_id": 0, "date": { "$date": 1618236179102 }, "event_type": "TYPE_FIELD_CHANGED", "value": "er", "is_deleted": false, "source": { "profile": {} } }, { "_id": 1012, "incident_id": 127, "swimlane_id": 0, "date": { "$date": 1618236179456 }, "event_type": "POSTMORTEM_STATE_CHANGED", "value": "UNASSIGNED", "is_deleted": false, "source": { "profile": {} } }, { "_id": 1013, "incident_id": 127, "swimlane_id": 0, "date": { "$date": 1618236225735 }, "event_type": "SEVERITY_FIELD_CHANGED", "value": "3", "is_deleted": false, "source": { "profile": {} } }, { "_id": 1014, "incident_id": 127, "swimlane_id": 0, "date": { "$date": 1618236225933 }, "event_type": "TYPE_FIELD_CHANGED", "value": "er", "is_deleted": false, "source": { "profile": {} } }, { "_id": 1015, "incident_id": 127, "swimlane_id": 0, "date": { "$date": 1618236226321 }, "event_type": "POSTMORTEM_STATE_CHANGED", "value": "UNASSIGNED", "is_deleted": false, "source": { "profile": {} } }, { "_id": 1016, "incident_id": 127, "swimlane_id": 0, "date": { "$date": 1618236276077 }, "event_type": "SEVERITY_FIELD_CHANGED", "value": "3", "is_deleted": false, "source": { "profile": {} } }, { "_id": 1017, "incident_id": 127, "swimlane_id": 0, "date": { "$date": 1618236276271 }, "event_type": "TYPE_FIELD_CHANGED", "value": "er", "is_deleted": false, "source": { "profile": {} } }, { "_id": 1018, "incident_id": 127, "swimlane_id": 0, "date": { "$date": 1618236276672 }, "event_type": "POSTMORTEM_STATE_CHANGED", "value": "UNASSIGNED", "is_deleted": false, "source": { "profile": {} } } ], "pagination": { "limit": 1000, "offset": 0, "count": 13 } }, "error": null, "has_error": false }
Get List of Incidents
Returns a list of Blameless Incidents, creators, Severity (Sev) levels, descriptions, as well as dates and times.
Input Field
Choose a connection that you have previously created and then fill in the necessary information in the following input fields to complete the connection.
Input Name | Desccription | Required |
---|---|---|
Limit | Limit the number of records fetched in a single call (Default is 100,000). | Required |
Output
A JSON object containing multiple rows of result:
has_error: True/False
error: message/null
result: list Of Incidents
{json}{
"start_of_incident_impact": {
"$date": 1618222934607
},
"name": "127",
"duration_of_customer_impact": 0,
"is_postmortem_required": true,
"blameless_roles": {},
"description": "T1",
"_id": 127,
"postmortem_state": null,
"time_to_resolution": 0,
"blameless_creator": "",
"is_deleted": false,
"duplicate_of": "",
"is_shadow": false,
"creator": "abc@logichub.com",
"mute": false,
"ticket": {
"key": "INCIDENT-",
"raw": {},
"type": "JIRA",
"url": "https://blameless.atlassian.net/browse/INCIDENT"
},
"start_of_customer_impact": {
"$date": 1618222934607
},
"duration_of_incident_impact": 0,
"has_error": false,
"slack_channel": {
"announcements": [
{
"channel_id": "hj",
"msg_ts": "16182937.00"
}
],
"id": "C01TZQWTKB5",
"is_private": false,
"name": "_incident-127",
"task_lists": [
{
"channel_id": "C01KB5",
"msg_ts": "161800"
}
],
"url": "https://blamelesstrQWTKB5"
},
"time_to_take_action": 0,
"updated": {
"$date": 1618222937603
},
"error": null,
"roles": {
"commander": "abc@logichub.com"
},
"status": "INVESTIGATING",
"team": [
{
"_id": "UQY4H9Y1J",
"profile": {
"avatar_hash": "ge163a5e149e",
"display_name": "",
"display_name_normalized": "",
"email": "geoffw@blameless.com",
"fields": null,
"first_name": "Geoff",
"image_192": "https://secure.gravatar.com/avatar/e163a5e149e2016d78559c54ec5ac3b9.jpg?s=192&d=https%3A%2F%2Fa.slack-edge.com%2Fdf10d%2Fimg%2Favatars%2Fava_0012-192.png",
"image_24": "https://secure.gravatar.com/avatar/e163a5e149e2016d78559c54ec5ac3b9.jpg?s=24&d=https%3A%2F%2Fa.slack-edge.com%2Fdf10d%2Fimg%2Favatars%2Fava_0012-24.png",
"image_32": "https://secure.gravatar.com/avatar/e163a5e149e2016d78559c54ec5ac3b9.jpg?s=32&d=https%3A%2F%2Fa.slack-edge.com%2Fdf10d%2Fimg%2Favatars%2Fava_0012-32.png",
"image_48": "https://secure.gravatar.com/avatar/e163a5e149e2016d78559c54ec5ac3b9.jpg?s=48&d=https%3A%2F%2Fa.slack-edge.com%2Fdf10d%2Fimg%2Favatars%2Fava_0012-48.png",
"image_512": "https://secure.gravatar.com/avatar/e163a5e149e2016d78559c54ec5ac3b9.jpg?s=512&d=https%3A%2F%2Fa.slack-edge.com%2Fdf10d%2Fimg%2Favatars%2Fava_0012-512.png",
"image_72": "https://secure.gravatar.com/avatar/e163a5e149e2016d78559c54ec5ac3b9.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2Fdf10d%2Fimg%2Favatars%2Fava_0012-72.png",
"last_name": "White",
"name": "geoffw",
"phone": "",
"real_name": "Geoff White",
"real_name_normalized": "Geoff White",
"skype": "",
"status_emoji": "",
"status_expiration": 0,
"status_text": "",
"status_text_canonical": "",
"team": "TQY4H9W1J",
"title": ""
},
"roles": [
"Participant"
]
}
],
"severity": "SEV0",
"blameless_team": [
"1"
],
"type": "DEFAULT",
"time_to_identification": 0,
"blamo_provider_name": "slack",
"created": {
"$date": 1618222934606
}
}
Release Notes
v2.0.0
- Updated architecture to support IO via filesystem