Brex ACTION
List Users
Lists the people in the Brex account with their ID, name, email, status, manager, department, and location. Filter to one person with
email, or set includeLimits to include each person's monthly spend limit. Results are capped at maxResults (default 100) — check $summary for a truncation notice and raise maxResults or add the email filter if it's truncated. This is how you turn an email address into the user ID that Get User, Get User Limit, and Set Limit for User require. See the documentation- Action
- Read only
- OAuth
- SDK
- MCP
IMPLEMENTATION
Call this tool
Connect a user's Brex account once, then configure and run List Users from your backend or agent.
import { PipedreamClient } from "@pipedream/sdk"
const pd = new PipedreamClient({
projectId: process.env.PIPEDREAM_PROJECT_ID!,
clientId: process.env.PIPEDREAM_CLIENT_ID!,
clientSecret: process.env.PIPEDREAM_CLIENT_SECRET!,
projectEnvironment: "production",
})
const result = await pd.actions.run({
id: "brex-list-users",
externalUserId: "{external_user_id}", // any stable ID for this user in your system
configuredProps: {
brex: { authProvisionId: "apn_xxxxxxx" },
email: "Email",
includeLimits: true,
},
})
console.log(result)curl -X POST https://api.pipedream.com/v1/connect/{project_id}/actions/run \
-H "Content-Type: application/json" \
-H "X-PD-Environment: production" \
-H "Authorization: Bearer {access_token}" \
-d '{
"external_user_id": "{external_user_id}",
"id": "brex-list-users",
"configured_props": {
"brex": { "authProvisionId": "apn_xxxxxxx" },
"email": "Email",
"includeLimits": true
}
}'// accessToken: mint a short-lived token with the Connect SDK — see the MCP guide
const transport = new StreamableHTTPClientTransport(
new URL("https://remote.mcp.pipedream.net/v3"),
{
requestInit: {
headers: {
Authorization: `Bearer ${accessToken}`,
"x-pd-project-id": "{project_id}",
"x-pd-environment": "production",
"x-pd-external-user-id": "{external_user_id}", // any stable ID for this user in your system
"x-pd-app-slug": "brex",
},
},
},
)
const mcp = new Client({ name: "my-agent", version: "1.0.0" })
await mcp.connect(transport)
const { tools } = await mcp.listTools()
// listTools() hands your model this tool's input schema, so it can
// fill the arguments itself:
const result = await mcp.callTool({
name: "brex-list-users",
arguments: {
email: "Email",
includeLimits: true,
},
})SCHEMA
Inputs
Pipedream supplies the connected account. Your application provides the operation-specific values below. Dynamic inputs are resolved against that user's account.
| Property | Type | Description |
|---|---|---|
email Email | string | Return only the user with this exact email address, e.g. jane@acme.com. Brex supports a single email at a time, not a list. Optional |
includeLimits Include Limits | boolean | Return each person's monthly spend limit alongside their profile. Amounts are in the currency's smallest denomination, so 700 is $7.00 in USD. Optional |
maxResults Max Results | integer | The maximum number of records to return, from 1 to 2000. Defaults to 100. Optional |
REFERENCE
Tool details
Behavior hints are published with the component in the Pipedream registry and surface as MCP tool annotations, so an agent can reason about a tool before it calls it.
- Registry key
- brex-list-users
- Version
- 0.0.3
- App
- Brex
- Authentication
- OAuth
- Read-only
- Yes
- Destructive
- No
- Open world
- Yes
- Source
- View on GitHub ↗