Hey @Ludovic_van_Mierlo ,
This usually appens when the response structure from Supabase’s `/auth/v1/admin/users` endpoint isn’t being parsed the way you think. Here’s how to fix it:
1. Inspect the exact output of the HTTP module.
Open the *Output* tab for the `GET /auth/v1/admin/users` module and expand the JSON to confirm the structure.
Supabase’s admin endpoint typically returns something like:
```json
{ “users”: [ { “id”: “…”, “email”: “…” } ] }
```
But sometimes the array is under a different key or wrapped differently depending on headers or API version.
2. Adjust your filter mapping.
* If the users array is nested as `HTTP6 → Data → users`, then use:
✅ \`Length(HTTP6 → Data → users\[\]) > 0\`
* If Make shows the output differently (e.g., `HTTP6 → Data[0] → users`), select that path directly via the mapping panel instead of typing it manually.
3. Test your filter conditions individually.
* Add a temporary *Text Aggregator* or *Set Variable* module after the HTTP call to output `Length(HTTP6 → Data → users)`.
* Run the scenario to see if you get a number (0, 1, etc.).
* Once confirmed, plug that same mapping into your router filters.
4. Optional sanity check:
If Supabase returns an empty array (``), Make might treat that as `null` instead of length `0`.
In that case, use a more robust condition:
```
Exists(HTTP6 → Data → users[1])
```
(This passes only when at least one user exists.)
response from Supabase.