Challenges using API Trigger - Payload - Append To Dataset

Having a challenge using a workflow to append a dataset every time a comment is made on Jira incidents.

Workflow has 3 steps:

  1. Start
  2. Append To Dataset (feeding to a Domo Webform)
  3. End

Trigger is an AIP Trigger setup in Jira - Success

Payload from the Jira Rule:

{
"issueKey": "{{issue.key}}",
"comment": {
"body": "{{comment.body}}",
"author": "{{comment.author.displayName}}",
"created": "{{comment.created}}"
},
"summary": "{{issue.summary}}",
"project": "{{issue.project.key}}"
}

Challenge:

  1. Setting up the append,
    1. Input dataset is set to my domowebform
    2. Delimiter is set ot a ","
    3. Values - THIS IS A STRUGGLE
      1. should it be from the payload?, are they column names?, are they in {{}} or plain?
  2. Accessing the Payload. Where do I access it? Do I need a variable? How do i write to the variable if it is driven by the AIP?

Images of dataset and current config attached.

Answers

  • DanHendriksen
    DanHendriksen Domo Employee

    So the start parameter for your workflow should be an object, that looks like that JIRA payload.

    It will have the following children:

    • issue key (string)
    • comment (object)
    • summary (string)
    • project (string)

    I would probably use a delimiter other than , because , is likely to appear in the user input data.

    You'll need a step to remove the comment object from the starting object. Once you have that object seperated out, edit that variable to define it's children:

    • body
    • author
    • created

    Once you have the two objects and you have them defined, you can use your append to dataset function, specific your delimiter (I'd just something like ||| that isn't going to appear in your user input data) and then for the values select custom, and insert your variables with the delimiter between them.

    Does that make sense?

  • DanHendriksen
    DanHendriksen Domo Employee

    So your workflow will have a required start parameters that is an object, and that will get written to a variable. The object will get passed in the call to start the workflow.

    Then you'll use the "get Object from Object" function to remove that comment object. That will create a second variable that is an object called comment.

    Define that object by editing the variable. Then all the children will be available for you to use.

  • Thanks @DanHendriksen!

    Should the Comments object show as a property in the get object from object?

    also verifying final format of values if my second object is called comment

    Value:

    "{{payload.issueKey}}" | "{{comment.body}}" | "{{comment.author}}" | "{{comment.created}}" | "{{payload.summary}}" | "{{payload.project}}"

  • DanHendriksen
    DanHendriksen Domo Employee

    No - just do Custom and type in comment.

    And your value is correct, except you don't need to encapsulate everything in quotes. Also, use the "Insert Variable" instead of typing them out yourself that way. I wish we could shortcode them like that, but we can't right now. Use "Insert Variable" to plug it in.

  • DanHendriksen
    DanHendriksen Domo Employee

    To elaborate, the reason you can't select comment is because that is looking at your TEXT variables, to pass the value from that in. You don't have an appropriate variable to pass to the property object, so hit custom and just type comment in.

  • is that a limitation being worked on? Would have though it would see the child object defined.

  • Larry_Goodwin
    Larry_Goodwin Member
    edited April 17

    @DanHendriksen, thank you for your guidance on the workflow yesterday. Love the future here!

    For the append, how long should this take on the dataset? These two have been running for 10 minutes now.

    Verified the dataset is all configured for Text columns (changed thinking this was the issue)

    Verified the Workflow parameter is set ot Text for all items (changed to ensure mapping)

    The data in the webform has been manually entered to ensure that the mapping is correct.

    With the workflow showing a successful completion, I assume that this is a dataset-related issue where we are not going to see an error with the detail needed.

    What are your thoughts on this or have you seen it before? What can be checked?

  • DanHendriksen
    DanHendriksen Domo Employee
    edited April 17

    If the dataset is stuck on indexing, it will resolve itself…that isn't related to the workflow or anything like that. It's a Domo Adrenaline issue. It should be infrequent and should resolve itself over time.

    Is it still hung up here? The indexing step is where Adrenaline processes the append chain and stitches everything together. Your workflow got a valid success response to sending the row so it did what it was supposed to.

  • DanHendriksen
    DanHendriksen Domo Employee

    The thing is, it has no idea what you're going to have in there. This isn't a limitation I think we can work on, becuase of the nature of an object it can contain anything…and there is no object for us to inspect/understand until you've passed the object in to the workflow. That's why we allow you to edit an object to state it's definition. Just make sure you get it right, or your workflow will fail if it looks for a child that isn't there.

  • Yes, it is still in the storing phase since 8:50am EDT. The email from the workflow arrived promptly and almost instantly. If the dataset update is going to take hours per row, this will cause an issue.

  • DanHendriksen
    DanHendriksen Domo Employee

    Larry, it doesn't have anything to do with the workflow. If you were to edit the webform and add a row, you'd be in the same boat. The workflow uses the same API end point.

    The dataset is stuck at indexing. This is an adrenaline thing. You can try manually indexing the dataset via the API (easiest is probably with the CLI).

    I, and hundreds of customers, use this all the time and this isn't an issue. There's something going on with that particular dataset and the indexing processing Adrenaline. If you try a different webform it will be instant, of once the system sorts out the indexing issue it will be instant. Adding a row via workflow doesn't introduce delay.