Working with template variables

What are template variables?

FireHydrant uses the Liquid templating language. A templating language enables you to define placeholders that will at some point be replaced with specific data. You can use template variables to reference many different types of data.

Template variables in Runbooks

In FireHydrant, you can use template variables to mark a place inside of a Runbook where, when the Runbook step is executed, data specific to the incident will be used. You may be familiar with these variables if you’ve created Runbooks for your organization. In a Runbook, you can make references to incidents, or different parts of incidents, using template variables.  For example, take a look at the FireHydrant API. Every item on the incident entity is available as a variable.

You can see the variables available for use in Runbooks by looking at API endpoints for an individual incident. <Screenshot here to show standard page of incident variables>

For example, in a Runbook step, you can reference a variable for a particular incident starting with the header key of “incident.” So to create a variable inside of a Runbook step that uses the incident name and description, you would use {{ incident.name }} and {{ incident.description }} in the fields inside of your Runbook step.

create.incident.show.variables.png

Available fields and definitions

This list includes the properties in the FireHydrant API that are most often used as template variables. (To see all of the FireHydrant API properties, refer to the FireHydrant API documentation.)

 

Id: The ID number of the incident. You can use this as a template variable inside of a Runbook with  the format `app.firehydrant.io/incidents/{{incident.id}}`.

name: The name of the incident.

created_at: The UTC time when the incident was created.

started_at: The UTC time of the started milestone.

summary: Summary of the incident.

customer_impact_summary: Summary of the impact of the incident on customers.

description: A more detailed description of the incident.

current_milestone: The current milestone state of the incident.

number: The number of the incident. This number increments with each additional incident that is created.

severity: The current severity of the incident.

severity_impact: Do not use; deprecated.

severity_condition: Do not use; deprecated.

tag_list: The array of tags attached to the incident.

private_id: The ID of the private incident status page.

organization_id: The customer organization ID.

incident_roles: The current users assigned to the incident with their correlated incident roles.

 

- milestones:

id: The ID of the milestone occurrence for this incident.

created_at: The time when the milestone was created.

updated_at: The time when the milestone was updated.

type: The milestone type. Available values are listed here.

occurred_at: When the milestone became active.

duration: The duration of time between when this milestone occurred and when the previous milestone occurred.

Active: If the incident is in any milestone state earlier than resolved, this value will be true, otherwise it will be false.

 

- role_assignments:

id: A database ID for the assignment of the role to the inicident.

status: The status of the role assignment (active or inactive).

created_at: When the role was assigned.

updated_at: When the role was updated.

incident_role

   id: The ID for the specific incident role.

   name: The name of the incident role.

   summary: A short summary of the incident role.

   description: A longer description of the incident role.

   updated at: When the incident role was updated.

   discarded at: When the incident role was discarded.

user:

   id: The ID for the user in this specific role.

   name: The user's name.

   email: Email address of the user.

   created_at: When the user was created.

   updated_at: When the user was updated.

   slack_linked?: Indicates whether this user's Slack account is linked to FireHydrant.

 

Incident_url: The url for the incident overview page in FireHydrant.

Private_status_page_url: The url for the private status page pertaining to the incident.

 

- organization:

name: The name of the customer organization.

id: The ID of the customer organization.

 

last_update: The most recent incident update.

Report_id: This only shows for resolved incidents; the ID identifies the incident retro.

Services: Services impacted by the incident.

Environments: Environments impacted by the incident.

Functionalities: Functionalities impacted by the incident.

channel_name: The name of the Slack channel for the incident.

channel_reference: The Slack-formatted encoded link for the Slack channel. You can use this reference number in a Slack message to create a link to the incident channel.

channel_ID: The Slack ID for the channel (not formatted for creating links).

channel_status: Indicates whether the Slack channel is operational.

 

- incident_tickets:

id: The incident ticket ID.

summary: Summary of information in the ticket.

Description: Description of the incident as provided in the ticket.

state: State of the ticket: open, in_progress, done, etc.

type: Ticket type: Incident, follow_up, or task.

assignees: The incident ticket ID.

created_by

id: ID of the user who created the ticket.

name: Name of the user who created the ticket.

source: Ticketing source: Slack, PagerDuty, FireHydrant, etc.

email: Email address for the user who created the ticket.

attachments

type: Attachment type: image, alert, etc.

display_text: The text displayed that links to the ticket.

href_url: The URL for the ticket.

icon_url: The URL for the icon of the ticketing provider.

 

- conference_bridges:

id: The conference bridge ID.

attachments

type: Attachment type: image, alert, etc.

display_text: The text displayed describes the conference bridge.

href_url: The URL for the conference bridge (for example, https://us02web.zoom.us/j/123456788912).

icon_url: The URL for the icon of the conference bridge provider.

 

- created_by:

id: ID of the user who declared the incident.

name: Name of the user who declared the incident.

source: Where the user declared the incident (for example, firehydrant_user or slack). 

email: Email address for the user who declared the incident.

  

Additional Runbook step usage examples

For additional examples of how to use template variables, see the article on using template variables in Runbook steps.

Was this article helpful?
0 out of 0 found this helpful

Articles in this section

See more
Register your product
You can get support that’s tailored to you, owner exclusives and more
Our helpline hours:
8:00am - 8:00pm CST Monday to Friday; 9:00am - 6:00pm CST Saturday
Follow us on Twitter
Get the latest news and updates first