PipedreamHQ / PipedreamHQ/pipedream
[BUG] Returnista: Account ID has no options loader and can't be discovered in Pipedream — it belongs on the connected account
- Dominant language
- JavaScript
- Stars
- 11.7k
- Forks
- 5.8k
- Avg merge
- 3d 10h
- Merged PRs (30d)
- 102
Description
_for neople_
**Describe the bug**
Returnista auth only asks for an API key, but almost every endpoint is account-scoped
(`/account/{accountId}/...`), so `accountId` is required by 9 actions and all 7 instant
sources. It's the only Returnista ID prop with no options loader — users must paste it in
from the Returnista dashboard, every step. And since `returnOrderId`, `returnLocationId` and
`returnRequestId` all resolve via `async options({ accountId })`, a blank or wrong Account
ID silently empties those dropdowns, and actions/webhooks fail with an opaque 403/404
instead of an error on the field that's actually wrong.
A Returnista API key is issued per account, so the account is already fixed by the
credential — it just isn't asked for or derived.
**To Reproduce**
1. Connect Returnista (only "API Key" is requested).
2. Add **Get Return Order** → "Account ID" is empty free text, no dropdown, and no way to
find the value inside Pipedream.
3. Leave it blank or paste another account's ID → the "Return Order ID" dropdown loads
nothing, with no hint that Account ID is the cause.
4. Run it → opaque 403/404. Same for any `*-instant` source, where `activate()` calls
`createWebhook({ accountId })`.
**Expected behavior**
Capture Account ID once on the connected account, as a second custom auth field next to API
Key, so `this.returnista.$auth.accountId` is available and the per-step prop can be dropped.
Pipedream does this already for Twilio (`$auth.AccountSid`) and Zendesk (`$auth.subdomain`).
If it has to stay a prop, at least give it an async options loader like every other ID prop
in the app.
**Additional context**
`components/returnista/returnista.app.mjs`, `components/returnista/sources/common/base.mjs`,
and the account-scoped actions under `components/returnista/actions/`. Related: #21034, #21035.
Contributor guide
Research direction
Start with components/returnista/returnista.app.mjs, then inspect sources/common/base.mjs and the account-scoped actions under components/returnista/actions/. Compare the connected-account fields used by Twilio and Zendesk. Done means Account ID is available from the Returnista connection, dependent ID options load correctly, and account-scoped actions and instant sources no longer require a repeated per-step Account ID.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- javascript
- Domain
- api, authentication
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Active
- Clarity
- Mostly clear
- Newbie friendliness
- 68/100