Jira Cloud Integration - Application Integrations fail if assignee is set due to JSON Schema

I just set up the Integration Connector to Jira Cloud, but when I try to consume it in Application Integrations, such as datamapper, transformer, or even just a google cloud function I get what look like JSON Schema validation errors:

Message: the following keywords are unknown and will be ignored: [readOnly]
Schema Path:"/properties/changelog"
Message: the following keywords are unknown and will be ignored: [readOnly]
Schema Path:"/properties/issue"
Message: the following keywords are unknown and will be ignored: [readOnly]
Schema Path:"/properties/issue_event_type_name"
Message: the following keywords are unknown and will be ignored: [readOnly]
Schema Path:"/properties/timestamp"
Message: the following keywords are unknown and will be ignored: [readOnly]
Schema Path:"/properties/user"
Message: the following keywords are unknown and will be ignored: [readOnly]
Schema Path:"/properties/webhookEvent"
Message: the following keywords are unknown and will be ignored: [readOnly]
Schema Path:"/properties/changelog"
Message: the following keywords are unknown and will be ignored: [readOnly]
Schema Path:"/properties/issue"
Message: instance type (object) does not match any allowed primitive type (allowed: ["integer","null","number","string"])
Schema Path:"/properties/issue/properties/fields/properties/assignee"
Message: the following keywords are unknown and will be ignored: [readOnly]
Schema Path:"/properties/issue_event_type_name"
Message: the following keywords are unknown and will be ignored: [readOnly]
Schema Path:"/properties/timestamp"
Message: the following keywords are unknown and will be ignored: [readOnly]
Schema Path:"/properties/user"
Message: the following keywords are unknown and will be ignored: [readOnly]
Schema Path:"/properties/webhookEvent"

The JSON payload I am being given does in fact contain these unlisted keys. Also, the assignee is an object. The errors are correct, but this is a pre-made solution from Google. Is it broken? How do I inform them it is broken without paying for a support contract? Note: The process works if the tickets are unassigned when they come in, but I am creating the tickets with the assignee already set.

Thanks,

Andrew Kettmann

edited: Changed title for more accuracy

Hey @akettmann , thanks for sharing this! You might find this article helpful: Application Integration: JIRA Connection & JIRA Trigger.

If you’re still running into the same problem, feel free to follow up—we’ll keep this thread on our radar!

Hope this helps!

1 Like

I can set up the Integration Connector and the Application Integration successfully, but when I create a ticket on the Jira side and trigger the flow, it errors out on the first step no matter if the first step accesses the Jira payload or not.

I set up a (previous) datamapping to set a = 5, only static values, and I received the same JSON schema flavored error. Screenshot below showing log entry from a run triggered off of creation of a Jira ticket.

To be clear, the unknown and ignored errors don’t matter, only this error actually is critical.

Message: instance type (object) does not match any allowed primitive type (allowed: ["integer","null","number","string"])
Schema Path:"/properties/issue/properties/fields/properties/assignee"

The JSON Schema is expecting a primitive instead of a JSON object here.

If the ticket I create does not have a user assigned, automation flows normally, though still produces the other non-fatal errors. I can simulate this by testing (successfully) with the payload from Jira modified with the assignee block:


“assignee”: {
“self”: “https://SOMEJIRA.atlassian.net/rest/api/2/user?accountId\someAccountID”,
“accountId”: “SOMEACCOUNT”,
“avatarUrls”: {
“48x48”: “https://avatar-management--avatars.us-west-2.prod.public.atl-paas.net/initials/AK-0.png”,
“24x24”: “https://avatar-management--avatars.us-west-2.prod.public.atl-paas.net/initials/AK-0.png”,
“16x16”: “https://avatar-management--avatars.us-west-2.prod.public.atl-paas.net/initials/AK-0.png”,
“32x32”: “https://avatar-management--avatars.us-west-2.prod.public.atl-paas.net/initials/AK-0.png”
},
“displayName”: “Andrew Kettmann”,
“active”: true,
“timeZone”: “America/New_York”,
“accountType”: “atlassian”
}


removed or replaced with a string. However, that is not how the payload is arriving from Jira.

Hi akettmann,

Can you DM me, i can take a look at your integration. Thanks

1 Like

Will Do.

https://www.googlecloudcommunity.com/gc/Community-Feedback/Direct-message-option-is-off-from-somebody-profile/m-p/700660

My account is new, so I cannot send DMs yet I guess? or at least I certainly can’t find the option.

The integration I have configured is nearly empty. It Triggers off of JiraCloud issuecreate and passes the jira payload to the cloud function unchanged.

I spoke with @pramodvallanur . At present the integration on the GCP side has the wrong value for the JSON Schema. To work around this, you can download the integration version as JSON:

then edit the JSON and find at integrationParameters the entry for ConnectorEventPayload_1:

edit the jsonSchema value to match what the data looks like. In my case, /properties/issue/properties/fields/properties/assignee/type I added the value object

Once you have edited and saved the file, upload it

One important note:

If you have already created other integrations/tasks, you are best to start over with a new integration or you will need to make the change through the jsonSchema field for each task that consumes the variable. Once you have updated the jsonSchema for the ConnectorEventPayload_1 you can create tasks and they will inherit the working settings.

1 Like