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

8 REPLIES 8
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?

Frequent Visitor

 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

Frequent Visitor

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

 

Frequent Visitor

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.

Helpful resources

Announcements
PP Bootcamp Carousel

Global Power Platform Bootcamp

Dive into the Power Platform stack with hands-on sessions and labs, virtually delivered to you by experts and community leaders.

secondImage

Power Platform Community Conference On Demand

Watch Nick Doelman's session from the 2020 Power Platform Community Conference on demand!

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 (7,642)