Getting Started
Special
SINGLE SIGN-ON
Teams
Users
Escalation Policies
Service
Incident
On-Call Shift
Schedules
Schedule Override
API Token
Logs
Webhook
Slack
Reports
Preference
Profile
Automation
FAQ
API Integration
You can configure a service to create Incidents by sending API calls to a certain URL with a valid API TOKEN
API Filter
API filter allows you to determine which API call should process or ignore. An API call with a payload that meets your specified criteria will only trigger or resolve an incident. The one that doesn’t pass the filter will be discarded.
You have two part in one filter, Trigger and Resolve. Trigger is used to create new Incident and Resolve is used to resolve already created incidents.
Select Integration Template
You can select any predefined Integration Template. If you are integrating other software with Callgoose SQIBS, you can check if a predefined integration is available. When selecting a template, the Trigger and Resolve Filter will be automatically filled. The values provided by the template can be modified to customize the integration according to your requirements.
Trigger Filter
- Define filter to Trigger an incident with different urgency, payload json key , the key value contains , the Incident Title From , the Incident Description From and Map Incident With as filter . You can add 2 payload json key and key value contains. Where each key value contains can have max of 10 items with upto 50 characters.
- Key value contains are used to filter API payload. If all of the key value contains parts are under a payload json key then the filter will be selected and will create an incident based on the filter's urgency. Each Key value contains items are in AND condition.
- Each filters(one filter have one urgency) are in OR condition. If the first filter failed for an API, then the next filter will be checked. If any of the filter is true, then that filter will be used to create Incident.
Resolve Filter
- In Resolve you can set to resolve an active incident using payload json key , and the key value contains, And Incident Mapped With
- You can decide what value should be used to map the incident while triggering an incident. If there is any open incidents having the same value mentioned here, then after applying the Auto resolve filter and if it is success, then the open incidents will be resolved automatically. Make sure to keep the trigger filter and resolve filter doesn't conflict each other.
- The Resolve filter has the high priority, even if there is a trigger filter present. You can add only one payload json key for resolve, Where key value contains can have max of 10 items with upto 50 characters.
• Enclose the key inside '"'(Double quote).
• Use '.'(Dot) to combine multiple keys to select values according to their order. Max of 5 keys can be used.
• Use '[]'(Square bracket) to select specified array item.
• Leave the key empty if you need to use the entire payload itself.
• If the payload's key contains '"'(Double quote) as a part, then escape it using '\'(Back slash).
Eg: If key is like example"s then you need to enter the JSON key as "example\"s"
See detailed example here
We recommend using "JSON key creator" to see the correct JSON key and values
The JSON key that will be on the API payload. The API payload can be a custom JSON object. You can decide what value should be used to filter the API request based on Key value contains.
Check the specified JSON key value with the items entered here to filter the API requests more efficiently.
ℹ️ Keys to remember:
• The items are in AND condition. So the specific JSON value should contain all of the items to consider this filter is valid.
• To Add an item, Enter the item and Press Enter key or Click the + button.
• Max of 10 items with up to 50 character can be added.
• Leave the items empty to select the filter without checking the JSON value.(But the key must present in payload if specified)
The JSON key that will be on the API payload. The API payload can be a custom JSON object. You can decide what value should be used as the title of incident while triggering an incident. You can leave it empty. In such case we will assign a title like "Incident from [value of from url parameter]"
The JSON key that will be on the API payload. The API payload can be a custom JSON object. You can decide what value should be used as the description of incident while triggering an incident. You can leave it empty. In such case we will assign the payload data as description.
The JSON key that will be on the API payload. The API payload can be a custom JSON object. You can decide what value should be used to map the incident while triggering an incident. By using the resolve filter and its specified Incident mapped with, you can resolve open incidents that are mapped with same value while triggering. Make sure to keep the trigger filter and resolve filter doesn't conflict each other. Resolve filter have higher preference over trigger filter.
The JSON key that will be on the API payload. The API payload can be a custom JSON object. You can decide what value should be checked to find the open incidents to resolve. The Incident mapped with value should be same as the value that used to map while triggering the Incident(Based on trigger filter). After applying the resolve filter and if it is success, and if there is any open incidents having the same value mentioned here, then the open incidents will resolve automatically.
Filter Instructions
- Key value contains will be saved in small letters(if applicable) and the given api request will be validated with case insensitive manner.
- The json keys(Payload Json key, Incident title from, Incident description from, Map incident with, Incident mapped with) will be case sensitive.
- You can leave the Payload json key and Key value contains empty for making the filter not check the payload and by that all the API's payload will be considered valid.
- The Resolve filter has high priority. That is, if both the Trigger and Resolve filters are valid for a request, only the Resolve filter will be considered.
- If there are multiple Filters that may be valid for an API call then we will only select one filter based on the creation order while creating an Incident
Here are some API EXAMPLE , for How to setup an Api Filter.
New integration or update of an integration may take up to 10 minutes to reflect.
Incident created using EMAIL/API have a character limit of title=5000 and description=10000
Enable Debugging
If you want to see the API logs for debugging purposes, you can enable this in the API token used to make the API calls. When API tracking is enabled, logs are stored in the API log section for your review. It will automatically disable after 48 hours. When API tracking is turned off ,no logs are saved in the API log. Refer to the documentation for more information.
How to Use the JSON Key Creator
- Navigate to the "Add or Update API Integration" section under your service.
- In the bottom right corner, you’ll find the "JSON Key Creator" icon – Purple colour Circle. Click on this icon to open the JSON Key Creator form.
- Copy and paste the Payload JSON from the API log into the JSON Key Creator. This will display the correct values for each JSON key.
- Select the keys you need and add them to the API filter. Once the correct JSON key is added to the filter, an incident will be created.
- If the vendor’s JSON payload changes, the API log payload will differ. Refer to the new API log payload to adjust the JSON keys and values in the filter to automate incident resolution according to the updated vendor API values.
- Use the API log payload to verify all correct JSON keys and values. Copy and paste them into the JSON Key Creator, add the required keys to the API filter, and test to ensure accuracy.
FAQ
What are the supported content-type?
We only support string/text type Content-type(application/json, text/plain, text/html, etc...). Unsupported Content-type payload(audio/mpeg, image/png, etc...) will be considered as empty payload.
How to create Incidents for all API requests?
Keep the Payload Json Key and Key value contains empty. In such filter all the request will be considered as valid and will create incident based on urgency.
What if there is no Incident Title From, Incident Description From in API request’s payload?
If the payload doesn’t have the specified Incident Title From json key, then we will create a title as "Incident from <value of from Url parameter(Or use word unknown source>)" in your preferred language. If the payload doesn’t have the specified Incident Description From json key, then we will create a description as the API request’s payload itself.
How to keep the all payload content inside incident?
Make the Incident Description From empty in Api Filter. By doing this, the incident’s description will be the whole payload content.
How to create the Payload JSON key or Map Incident With?
For example If the payload is as follows:
{
"incident_from": "Sqibs",
"trigger": {
"urgency": "high",
"message" : "Db server down.",
"extra": [
{
"reason" : "No memory"
}
]
}
}
Use the Keys as follows:
• Use key "incident_from" for selecting Sqibs
• Use key "trigger"."urgency" for selecting high
• Use key "trigger"."message" for selecting Db server down.
• Use key "trigger"."extra".[0]."reason" for selecting No memory
How to view the API Logs?
If you want to see the API logs for debugging purposes, you can enable this in the API token used to make the API calls. Refer to the documentation for more information.