Summary
The user is building a connector for Plaid in Python CDK but facing issues with nested cursor pagination. They are inquiring about the timeline for enabling nested cursors to support APIs like Plaid.
Question
i’m building a connector for Plaid, but one endpoint uses a nested cursor for pagination (i.e., a json body param like “options”:{“cursor”:”value”}
), which is unsupported right now (tried using options.cursor
with no luck)
since the Python CDK is being phased out, what’s the timeline for enabling nested cursors to support apis like Plaid?
This topic has been created from a Slack thread to give it more visibility.
It will be on Read-Only mode here. Click here if you want to access the original thread.
Join the conversation on Slack
["plaid-connector", "nested-cursor-pagination", "python-cdk", "api-support", "timeline"]
Wait up, Python CDK is not phased out. It’s not going anywhere. We’re refactoring it and driving it to 1.0 and we will work in it in the future. In fact, a lot of features land in it first, then propagate to low-code CDK.
But that’s besides the point! I just helped <@U06PL8174LX> with a situation where she needed to set a nested HTTP request json body value. TLDR is you can set the variable named options
to the value of { "cursor": "value" }
.
Now, if you have more than one key in options
to set and you want to set them in different spots in the Builder, that won’t work. But for a simple cursor pagination, this should work — it’s exactly what worked for Elvira.
thanks, i double checked and it seems Python CDK is just being rejected for pull requests
regarding injecting the cursor
inside options
, the UI just offers a “Field name” input box, so not sure how to set it like you’re proposing
Field name: options
Value: { “cursor”: “{{whatever}}” }
do you mean in pagination i can somehow use the cursor to set a variable? the pagination section doesn’t have a “Value” input box
Hmmm. If you give me the yaml + api credentials, I can try and play around with it
i can’t but i’m setting up <API - Transactions | Plaid Docs endpoint>, trying to paginate using options.offset
Ah, right, sorry. Understood, plaid is rather sensitive, and I can get test credentials myself I think.
So you just need to paginate transactions list?
Are you using airbyte cloud btw?
i’m using airbyte cloud, although running tests locally too
Have you made Plaid connector from scratch, or used source-plaid that we already have? It does have the transaction stream with a paginator, but it’s not available on cloud out of the box, I need to figure out why
i started one from scratch because it’s missing in cloud
anyway i’m now just curious about whether it’s possible to use the nested offset field for pagination or not
also, according to the https://docs.airbyte.com/integrations/sources/plaid|docs, the plaid connector just retrieves balances
i found this out in the community plaid connector: it actually has the transactions endpoint, and properly implemented pagination