Fetch up to 100 members by their member IDs in one call.
Unknown IDs are silently omitted — the returned array may be shorter than the input. Results are returned in the same order as the input IDs.
Array of integer member IDs (max 100).
Optionaloptions: { sport?: string }Optional filters.
Optionalsport?: stringSport code to scope ratings (e.g. 'pickleball').
Array of Member instances.
ValidationError If more than 100 IDs are provided.
Get a connected member by external ID.
Requires an active OAuth connection between your partner app
and the player. Use the OAuth flow on client.oauth first.
External player ID in vair_mem_xxx format.
Optionalsport?: string | readonly string[]Optional sport filter — single code or list. When omitted, the response contains every sport the player has ratings in.
NotFoundError if the external ID is unknown.
VairifiedError if the player has not connected to your app (403) or the request otherwise fails.
const member = await client.members.get('vair_mem_xxx');
console.log(member.name, member.ratingFor('pickleball'));
// Just pickleball
const member2 = await client.members.get('vair_mem_xxx', { sport: 'pickleball' });
// Multiple sports
const member3 = await client.members.get('vair_mem_xxx', {
sport: ['pickleball', 'padel'],
});
Search for members, yielding each match as a Member.
This is an auto-paginating async iterator — it fetches pages from the server lazily as you iterate, so you can stream through thousands of results without holding them all in memory:
for await (const m of client.members.search({ city: 'Austin' })) {
console.log(m.name, m.ratingFor('pickleball'));
}
Stop early by break-ing out of the loop, or cap the total with
maxResults.
Return the first search hit for a name, or null.
Convenience for the common "look up by name" case:
const mike = await client.members.find('Mike Barker');
if (mike) {
console.log(mike.ratingFor('pickleball'));
}
Poll for rating change notifications.
Returns a list of RatingUpdate objects for every player
whose rating has changed since the last poll. Members are
considered subscribed when they have an active OAuth connection
with the user:webhook:subscribe scope.
Member operations — get a single member, auto-paginating search, find by name, and polling for rating change notifications.