Skip to content

admin.userConnections.list() ignores user.id filter parameter #148

@a9a4k

Description

@a9a4k

Description

The admin.userConnections.list() method returns all user connections regardless of the user.id filter parameter being provided. This forces developers to implement client-side filtering, which is inefficient and defeats the purpose of the API filter.

Expected Behavior

When calling:

const { items } = await arcade.admin.userConnections.list({
  user: { id: 'specific-user-id' },
  limit: 1000,
});

The API should return only connections for the specified user ID.

Actual Behavior

The API returns all user connections across all users, ignoring the user.id filter completely.
Reproduction

import { Arcade } from '@arcadeai/arcadejs';

const arcade = new Arcade({ apiKey: process.env.ARCADE_API_KEY });

// Request connections for a specific user
const { items: connections } = await arcade.admin.userConnections.list({
  user: { id: 'cabf97f8-7507-4777-b79d-5c4c82d06841' },
  limit: 1000,
});

console.log('Connections returned:', connections.length);
console.log('Unique user_ids:', [...new Set(connections.map(c => c.user_id))]);

// Expected: Only connections with user_id === 'cabf97f8-7507-4777-b79d-5c4c82d06841'
// Actual: Connections from multiple different user_ids

Current Workaround

We're implementing client-side filtering to get the desired behavior:

const { items: allConnections } = await arcade.admin.userConnections.list({
  user: { id: entityId },
  limit: 1000,
});

// Manual filtering required
const userConnections = allConnections.filter(
  (connection) => connection.user_id === entityId && connection.connection_status === 'active'
);

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions