Response Plays Not Appending Conference Bridge

Greetings!

I recently made some changes to a custom integration I developed where initially I was running responder requests for certain escalation policies. When paging that way, the conference data is included in the pageout messaging; however, when using the response plays, this does not occur. If you run the response play from within the PagerDuty incident, the conference data IS included.

I have tried editing the “incident” JSON object to include the conference URL and number, but that has no effect. Is this an intentional thing, or a bug with response plays called via the API? The documentation is not very clear on this.

Regards,
Pete Peterson
Sr. Application Engineer

Hey Pete,

Ryan from PagerDuty support here. Could you reach out via support@pagerduty.com so we can grab some information from you and help you troubleshoot? We’ll need to see the specific JSON you are using to be able to get a better idea of what might be going on.

-Ryan

Here’s the entire function that I run:

//sendResponsePlayRequest takes 4 inputs (incident ID, PagerDuty API Key, users email address, response play ID) then sends a request to PagerDuty to run the response play.

this.sendResponsePlayRequest = function (incident, apiKey, email, responsePlayID) {

  console.log("sendResponsePlayRequest called!");

return new Promise((resolve,reject) => {

  var settings = {

    "url": `https://api.pagerduty.com/response_plays/${responsePlayID}/run`,

    "method": "POST",

    "timeout": 0,

    "headers": {

      "Authorization": `Token token=${apiKey}`,

      "Accept": "application/vnd.pagerduty+json;version=2",

      "Content-Type": "application/json",

      "From": `${email}`

    },

    "data": JSON.stringify({

      "incident": {

        "id": incident,

        "type": "incident_reference"

      }

    }),

  };



  response = $.ajax(settings);

 

  response.done(function(data) {

    console.log(`Response Play ${responsePlayID} successful!`);

    resolve(data);

  }).fail(function(error) {

    console.log(`Response Play ${responsePlayID} rejected!`);

    reject(error);

  });

});

} // End sendResponsePlayRequest

What I am told is that in some cases, the conference data will be appended (even though it isn’t statically set in the response play itself). In my testing I haven’t found that to be true, so that may have been an overshoot by my end-users.

I guess my question is a multi-part inquiry of sorts.

  1. Are there any plans for a future setting in the response play for conference URL and conference number to just use whatever is already in the incident vs. having to statically set it.

  2. Is there a better way for the PUT behavior when updating a response play to say, not wipe everything out of the entire response play if I send it a payload just telling it to update the conference URL and conference number.

  3. When querying the response_plays endpoint with a GET request, the response plays that are returned do not contain the entire payload that is available when doing a GET request of an individual response play (i.e. responder data, etc.). Is there an includes[] parameter to get that information in the main query so I don’t have to make 30 queued API calls to ensure that I have all of the payload data for our response plays?