Get User Profiles Batch
GET
/api/canvas/{deal_id}/users/batch
const url = 'https://example.com/api/canvas/example/users/batch?user_ids=example';const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request GET \ --url 'https://example.com/api/canvas/example/users/batch?user_ids=example' \ --header 'Authorization: Bearer <token>'Get multiple user profiles in a single request.
Security note (CWE-200 accepted risk): Returns only non-sensitive display data (user_id, display_name, avatar_url — no email/PII). Scoped to RequireViewer (caller must have deal access) and capped at 50 IDs. Full collaborator-scoping omitted to avoid per-request DB round-trip.
Authorizations
Section titled “Authorizations ”Parameters
Section titled “ Parameters ”Path Parameters
Section titled “Path Parameters ” deal_id
required
Deal Id
string
Query Parameters
Section titled “Query Parameters ” user_ids
required
User Ids
Comma-separated Slack user IDs
string
Comma-separated Slack user IDs
Responses
Section titled “ Responses ”Successful Response
Media type application/json
Response Get User Profiles Batch Api Canvas Deal Id Users Batch Get
Array<object>
UserProfileResponseobject
user_id
required
User Id
string
display_name
required
Display Name
string
avatar_url
Avatar Url
string
Example
[ { "avatar_url": "" }]Validation Error
Media type application/json
HTTPValidationError
object
detail
Detail
Array<object>
ValidationErrorobject
loc
required
Location
Array
msg
required
Message
string
type
required
Error Type
string
input
Input
ctx
Context
object
Example generated
{ "detail": [ { "loc": [ "example" ], "msg": "example", "type": "example", "input": "example", "ctx": {} } ]}