Skip to main content

Notifications

Power Automate - Using Connectors
Suggested answer

How can I get a Zendesk user by id?

(0) ShareShare
ReportReport
Posted on by 119
I am working on a flow that takes Zendesk ticket data and puts it into another data repository.  I have the trigger working so that the flow is triggered every time a new ticket is created.  However, the ticket record does not contain all of the information I need.  I need information about the users related to the ticket, such as the email of the assignee.  Whenever I try to get the assignee record to access this information, it doesn't work.  
 
I have tried both the Get Item and Get Items actions provided with the Zendesk connector.  I have them configured like this: 
 
When the flow is run, the Get Item action throws an error: 
 
Full error message: 
 
Could not retrieve more than 1000 records from the Zendesk Search API. For more details please see connector limitations.
     inner exception: Web.Contents failed to get contents from 'https://<my_org>.zendesk.com/api/v2/search.json?page=11&query=type%3Auser' (422): Unprocessable Entity
         inner exception: Web.Contents failed to get contents from 'https://<my_org>.zendesk.com/api/v2/search.json?page=11&query=type%3Auser' (422): Unprocessable Entity
clientRequestId: a66468c7-dca0-446d-822b-dd6fa8c83f87
 
I don't understand this error as the action is supposed to get one user.  Why is it trying to retrieve more than 1000 records?
 
The Get Items action runs just fine but only returns this: 
 
{
    "statusCode": 200,
    "headers": {
        "Cache-Control": "no-store, no-cache",
        "Pragma": "no-cache",
        "Vary": "Accept-Encoding",
        "Set-Cookie": "ARRAffinity=c7f51d56e4deb0f015c33ca9d60209f5c83875da8ad9305699b591b9c0c56ce0;Path=/;HttpOnly;Secure;Domain=zendesk-eus.azconn-eus-002.p.azurewebsites.net,ARRAffinitySameSite=c7f51d56e4deb0f015c33ca9d60209f5c83875da8ad9305699b591b9c0c56ce0;Path=/;HttpOnly;SameSite=None;Secure;Domain=zendesk-eus.azconn-eus-002.p.azurewebsites.net",
        "Strict-Transport-Security": "max-age=31536000; includeSubDomains",
        "x-ms-request-id": "6edb0c92-abcf-4ecb-9cf6-7ea43b8c9b9b",
        "X-Content-Type-Options": "nosniff",
        "X-Frame-Options": "DENY",
        "Timing-Allow-Origin": "*",
        "x-ms-apihub-cached-response": "true",
        "x-ms-apihub-obo": "false",
        "Date": "Wed, 31 Jul 2024 13:28:53 GMT",
        "Content-Type": "application/json; charset=utf-8; odata.metadata=minimal",
        "Content-Length": "0",
        "Expires": "-1"
    }
}
 
Neither of these actions seems to do what it should.  How can I get a specific Zendesk user based on the dynamic content I have from the Zendesk "When an Item is Created" trigger?  Why do these actions not behave as expected?
Categories:
  • Suggested answer
    ssandbox1 Profile Picture
    ssandbox1 7 on at
    How can I get a Zendesk user by id?
    To more specifically query the Users table you'd use the HTTP request connector (instead of the faulty Zendesk connector) and use a GET URI to the User's table.
     
    EX: 
     
    https://mysubdomain.zendesk.com/api/v2/users/user_id.json
     
    https://mysubdomain.zendesk.com/api/v2/users/123456.json

  • Suggested answer
    ssandbox1 Profile Picture
    ssandbox1 7 on at
    How can I get a Zendesk user by id?
    I know this is an older post, but thought I'd reply in case it helps someone new that comes across this same issue. 
     
    I got the same "Could not retrieve more than 1000 records from the Zendesk Search API" error when using the available Power Automate Zendesk connectors after my ticket table grew to over 1,000.  The work around I found was to NOT use the built in Power Automate Zendesk connectors, but instead use the HTTP connector and use the Zendesk API directly.  
     
    Ex: 
  • shammock Profile Picture
    shammock 119 on at
    How can I get a Zendesk user by id?
    @FLMike
     
    Thanks for the reply.  I see what you're saying, but I don't think that's the issue.  I was working with the Zendesk connector again this morning, and I am able to do a Get Items action from a table with more than 1000 records just fine and have data returned with no errors.  The problem comes when I try to add a filter query.  I see how the limitations you're citing make it sound like the Get Items action won't work, but I think that article must be outdated or poorly written.  You can in fact do a Get Items action on a table with more than 1000 records.  I know because I did it this morning.
     
    After looking at the links you provided, I think it's pretty clear that the Get Item action is in fact requesting more than 1000 records.  Here in the Zendesk Developer Docs it says: 
    The Search API returns up to 1,000 results per query, with a maximum of 100 results per page. See Pagination. If you request a page past the limit (page=11 at 100 results per page), a 422 Insufficient Resource Error is returned.
     
    If we look at the error I am getting from the Get Item action, we can see that the action is trying to retrieve more than 1000 records by accessing page 11 of the results:
    Could not retrieve more than 1000 records from the Zendesk Search API. For more details please see connector limitations.
         inner exception: Web.Contents failed to get contents from 'https://<my_org>.zendesk.com/api/v2/search.json?page=11&query=type%3Auser' (422):
     
    As for why the action to get a single item is trying to access 1000+ records, I have no idea.  But I think it's pretty clear that it is trying to do so.  It seems like the connector is just designed improperly.
     
    I am still confused on why filter queries won't work for a Get Items action as well, since the Get Items action works without queries just fine.  Maybe those are also being passed along improperly by a faulty connector.
  • Suggested answer
    FLMike Profile Picture
    FLMike 27,286 on at
    How can I get a Zendesk user by id?
    Hi
     
    I am starting out saying that I am not an expert, so I simply searched for the Zendesk connector and looked at the limitations
     
    The above you could have found :-) and just as a suggestion, please leverage searching for your connector. Not being rude, but it would save you a lot of your own headache which I am sure you are having :-( waiting on experts like me to respond. I get the stress.
     
    It clearly says in the limitations
     
    Zendesk Search API has a limitation on returning 1000 results per query. This affects some connector actions, that would fail with an error ("Http request failed: the content was not a valid JSON") if target table contains 1000 records or more:
     
    So it's not really that it's going to return to you a 1000 rows(although who knows.. maybe their stuff is all client side and not server and it really is)..
     
    Anyway, it says if the target table HAS more than 1000 records or more
     
    NOT that your query has asked for 1000 or more.
     
     

Under review

Thank you for your reply! To ensure a great experience for everyone, your content is awaiting approval by our Community Managers. Please check back later.

Helpful resources

Quick Links

End of Year Newsletter…

End of Year Community Newsletter…

Tuesday Tip #12 Start your Super User…

Welcome to a brand new series, Tuesday Tips…

Tuesday Tip #11 New Opportunities…

Welcome to a brand new series, Tuesday Tips…

Leaderboard

#1
WarrenBelz Profile Picture

WarrenBelz 144,609

#2
RandyHayes Profile Picture

RandyHayes 76,287

#3
Pstork1 Profile Picture

Pstork1 64,420

Leaderboard

Featured topics