cancel
Showing results for 
Search instead for 
Did you mean: 
Reply
Helper III
Helper III

Turning on Paging option for HTTP rest calls to flow not working

Hi all,

 

I've got a issue regarding the paging function Microsoft Flow has included in their HTTP action/trigger using a continuation token. I've setup a simple get request to the EventBrite REST API to retrieve a complete list of event attendees for a particular event periodically. I've set the HTTP URL to the below:

Event Brite HTTP Request.png

 

You can see in the JSON value returned that it includes a continuation token which can be used to navigate to the next page.

 

Continuation Token.PNG

 

I then turned on paging.

 

Paging.PNG

 

So I then turned on the paging option on the HTTP action but when I tested the flow it's giving me the following error:

 

Invalid response.PNG

 

I just can't figure out how to get this working on the one flow. I checked the EventBrite API documentation and they noted that to retrieve all attendees for an event. EventBrite returns an array of Attendee objects as a paginated response.

 

How do I get this working with the out of the box paging option available in Flow?

https://www.eventbrite.com/platform/docs/attendees

9 REPLIES 9
Advocate IV
Advocate IV

Did you ever get this worked out?  I'm running into the same limitations, and I could really use some help finding a solution. 

 

Thanks. 

Anonymous
Not applicable

I'm getting the same error.....I've got a list of 8,000+ URL's in an Excel file, trying to download each and create a blob in Azure blob storage for each resulting text file. When I ignore pagination and just run it as is, I get the expected 256 results.......when I enable pagination and set the threshold to 8,200, I get the same "invalid paginated response" message. Here is my flow:

 

Flow.PNG

I also have the same issue. Did anyone get around it?

Advocate I
Advocate I

 Hi All, I have this possible solution:

Initilise a Page, PageCount, dataarray and ContinueToken variable, you can call these whatever you choose. Set the Page to 1 and leave the other two blank

1. run the first call to get the number of pages and then parse to JSON, then store the Page_count value into a variable.

2. Create a DO until loop and set to [Page] is greather than [PageCount]

3. Do your HTTP call again and where you would put &continuation=[continuation value] put in the variable for Continue Token, so it should look like: https://www.eventbriteapi.com/v3/organizations/456876091330/events/?token=[token]@{variables('ContinueToken'...

as the variable is empty to start it will get the first page fine. It will grab a continue code as necessary, if there is only 1 page, it will only iterate once anyway.
Then parse again to JSON, and append to the data array variable the fields as you like. You may need to use select and an apply to each.

4. inside the do until and after you have got the pages data, you are going to set the ContinueToken to the current continuation field from the Parse JSON, but you also need to include the property string, so your set variable looks like:

&continuation=@{body('Parse_JSON_2')?['pagination']?['continuation']}. Then increment the Page variable by one. 


This will run a loop that gets the data on the page we have, gets the continuation uri bit and code and then sets the page number to the next one.

I can't add images to this post, but if you need, I can send some screen shots out.

 

@Robhcc Hi, Can you please post the screenshots of the workaround that you mentioned? Currently, I have built a flow which which only first page of the eventbrite attendee result. It would be helpful if you can post the screenshot.

 

Thanks

Venkat

Advocate I
Advocate I

Hi @Venkat_Aus 
Sure, so you start by getting the first page:

Robhcc_0-1610526885707.png

Then you do a do until, counting the pages as you go. The first thing we do is then get the page and parse it

Robhcc_1-1610526982479.png

Then in my case, I was checking the event date to make sure it was after today and iterate through each event on the page

Robhcc_2-1610527055076.png

And adding the row to an array

Then finally I get the new continuation token and "turn" the page by incrementing the page variable, so page 1 becomes page 2 etc.

Robhcc_3-1610527143282.png

At the end of both loops, I will have an array with all the event IDs and their start times. You can get more fields than I did.

Thanks @Robhcc  for the screenshots. I cannot set variable for the continuation token. I can see that token number in the output of the https though. Can you please paste the parse json that you used?

Venkat_Aus_0-1610599217776.png

 

Advocate I
Advocate I

Hello! Please see below Parse JSON schema that I used 

{
    "type": "object",
    "properties": {
        "pagination": {
            "type": "object",
            "properties": {
                "object_count": {
                    "type": "integer"
                },
                "page_number": {
                    "type": "integer"
                },
                "page_size": {
                    "type": "integer"
                },
                "page_count": {
                    "type": "integer"
                },
                "continuation": {
                    "type": "string"
                },
                "has_more_items": {
                    "type": "boolean"
                }
            }
        },
        "events": {
            "type": "array",
            "items": {
                "type": "object",
                "properties": {
                    "name": {
                        "type": "object",
                        "properties": {
                            "text": {
                                "type": "string"
                            },
                            "html": {
                                "type": "string"
                            }
                        }
                    },
                    "id": {
                        "type": "string"
                    },
                    "url": {
                        "type": "string"
                    },
                    "start": {
                        "type": "object",
                        "properties": {
                            "timezone": {
                                "type": "string"
                            },
                            "local": {
                                "type": "string"
                            },
                            "utc": {
                                "type": "string"
                            }
                        }
                    },
                    "organization_id": {
                        "type": "string"
                    },
                    "created": {
                        "type": "string"
                    },
                    "changed": {
                        "type": "string"
                    },
                    "resource_uri": {
                        "type": "string"
                    },
                    "capacity": {
                        "type": "integer"
                    },
                    "status": {
                        "type": "string"
                    }
                },
                "required": [
                    "name",
                    "id",
                    "url",
                    "start",
                    "organization_id",
                    "created",
                    "changed",
                    "resource_uri"
                ]
            }
        }
    }
}

you should see the continuation field in the pagination section.

Thanks @Robhcc . 

 

I used the following approach to make it work. Got the page count, then looped http based on page number and parsed the data. Your approach on this one helped me to achieve the desired result. Thanks 🙂

 

I used https://www.eventbriteapi.com/v3/events/XXXXXXXXX/attendees/?token=XXXXXXXXXXX&page=0

Helpful resources

Announcements
Microsoft Ignite

Microsoft Ignite

Join digitally, March 2–4, 2021 to explore new tech that's ready to implement. Experience the keynote in mixed reality through AltspaceVR!

New Super Users

Meet the Power Automate Super Users!

Many congratulations to the Season 1 2021 Flownaut Crew!

Microsoft Ignite

Microsoft Power Platform: 2021 Release Wave 1 Plan

Power Platform release plan for the 2021 release wave 1 describes all new features releasing from April through September 2021.

MPA Community Blog

Power Automate Community Blog

Check out the community blog page where you can find valuable learning material from community and product team members!

Users online (29,424)