Group Endpoints
Related Endpoints​
Search Groups​
Searches for groups that match a partial name. Returns an array of Group objects.
Query Params
Field | Type | Required | Description |
---|---|---|---|
name | string | false | The partial name for the group you're trying to search for. |
limit | integer | false | The pagination limit. See Pagination |
offset | integer | false | The pagination offset. See Pagination |
Example Request
- cURL
- JavaScript / TypeScript
curl -X GET https://api.wiseoldman.net/v2/groups?name=the&limit=2 \
-H "Content-Type: application/json"
const { WOMClient } = require('@wise-old-man/utils');
const client = new WOMClient();
const groups = await client.groups.searchGroups('the', { limit: 2 });
Example Response
[
{
"id": 3578,
"name": "Lead The Pack",
"clanChat": "LTP",
"description": "A 110+ PvM/Social clan",
"homeworld": 320,
"verified": true,
"patron": false,
"profileImage": null,
"bannerImage": null,
"score": 440,
"createdAt": "2022-10-12T17:32:05.593Z",
"updatedAt": "2022-10-26T08:02:52.979Z",
"memberCount": 507
},
{
"id": 730,
"name": "The Garage",
"clanChat": "Astray",
"description": "Clan: The Garage",
"homeworld": 482,
"verified": true,
"patron": false,
"profileImage": null,
"bannerImage": null,
"score": 390,
"createdAt": "2021-02-19T18:35:35.143Z",
"updatedAt": "2022-10-27T13:11:36.147Z",
"memberCount": 497
}
]
Get Group Details​
Searches for groups that match a partial name. Returns a GroupDetails object.
Request Params
Field | Type | Required | Description |
---|---|---|---|
id | integer | true | The group's ID. |
Example Request
- cURL
- JavaScript / TypeScript
curl -X GET https://api.wiseoldman.net/v2/groups/123 \
-H "Content-Type: application/json"
const { WOMClient } = require('@wise-old-man/utils');
const client = new WOMClient();
const group = await client.groups.getGroupDetails(123);
Example Response
{
"id": 139,
"name": "Exclusive Elite Club",
"clanChat": "Psikoi",
"description": "A random assortment of people who hang out in the WOM discord.",
"homeworld": null,
"verified": true,
"patron": false,
"profileImage": null,
"bannerImage": null,
"score": 330,
"createdAt": "2020-07-05T15:25:54.055Z",
"updatedAt": "2022-10-24T00:03:02.781Z",
"memberships": [
{
"playerId": 2,
"groupId": 139,
"role": "administrator",
"createdAt": "2022-02-13T16:36:44.464Z",
"updatedAt": "2022-02-13T16:36:44.464Z",
"player": {
"id": 2,
"username": "psikoi",
"displayName": "Psikoi",
"type": "regular",
"build": "main",
"country": "PT",
"status": "active",
"patron": false,
"exp": 301827811,
"ehp": 750.1495200000008,
"ehb": 259.4992700000001,
"ttm": 347.8194000000003,
"tt200m": 12774.2707,
"registeredAt": "2020-04-02T19:40:06.317Z",
"updatedAt": "2023-02-11T13:13:31.999Z",
"lastChangedAt": "2023-02-11T13:13:31.620Z",
"lastImportedAt": "2022-11-04T21:59:42.472Z"
}
},
{
"playerId": 1709,
"groupId": 139,
"role": "moderator",
"createdAt": "2022-02-13T05:28:09.570Z",
"updatedAt": "2022-06-12T20:31:08.474Z",
"player": {
"id": 1709,
"username": "sethmare",
"displayName": "Sethmare",
"type": "regular",
"build": "main",
"country": "US",
"status": "active",
"patron": false,
"exp": 168986149,
"ehp": 526.8279700000003,
"ehb": 184.06977,
"ttm": 488.1469500000003,
"tt200m": 12997.59225,
"registeredAt": "2020-05-01T23:51:10.042Z",
"updatedAt": "2023-02-14T16:19:12.187Z",
"lastChangedAt": "2023-02-12T01:28:19.723Z",
"lastImportedAt": "2023-01-30T15:39:17.512Z"
}
}
],
"memberCount": 2
}
Create Group​
Creates a new group. Returns the new GroupDetails object, and the secret verification code to manage it.
Body Params
Field | Type | Required | Description |
---|---|---|---|
name | string | true | The group's name. |
clanChat | string? | false | The group's clanChat. |
description | string? | false | The group's description. |
homeworld | number? | false | The group's homeworld. |
members | GroupMemberFragment[] | true | The group's members list. |
Example Request
- cURL
- JavaScript / TypeScript
curl -X POST https://api.wiseoldman.net/v2/groups \
-H "Content-type: application/json" \
-d '{
"name": "The Guys",
"clanChat": "the guys",
"description": "A group of people.",
"homeworld": 302,
"members": [
{
"username": "Psikoi",
"role": "leader"
},
{
"username": "rro",
"role": "member"
},
{
"username": "usbc",
"role": "member"
}
]
}'
const { WOMClient, GroupRole } = require('@wise-old-man/utils');
const client = new WOMClient();
const newGroup = await client.groups.createGroup({
name: 'The Guys',
clanChat: 'the guys',
description: 'A group of people.',
homeworld: 302,
members: [
{ username: 'Psikoi', role: GroupRole.LEADER },
{ username: 'rro', role: GroupRole.MEMBER },
{ username: 'usbc', role: GroupRole.MEMBER }
]
});
Example Response
{
"group": {
"id": 2,
"name": "The Guys",
"clanChat": "the guys",
"description": "A group of people.",
"homeworld": 302,
"verified": false,
"patron": false,
"profileImage": null,
"bannerImage": null,
"score": 0,
"createdAt": "2022-10-28T18:08:40.825Z",
"updatedAt": "2022-10-28T18:08:40.825Z",
"memberships": [
{
"playerId": 4,
"groupId": 2,
"role": "leader",
"createdAt": "2022-10-28T18:08:40.825Z",
"updatedAt": "2022-10-28T18:08:40.825Z",
"player": {
"id": 4,
"username": "psikoi",
"displayName": "psikoi",
"type": "regular",
"build": "main",
"country": null,
"status": "active",
"patron": false,
"exp": 300517988,
"ehp": 741.6783699999996,
"ehb": 259.4992700000001,
"ttm": 355.1258500000004,
"tt200m": 12782.74185,
"registeredAt": "2022-10-20T11:48:37.873Z",
"updatedAt": "2022-10-20T11:48:39.723Z",
"lastChangedAt": "2022-10-20T11:48:39.680Z",
"lastImportedAt": null
}
},
{
"playerId": 498,
"groupId": 2,
"role": "member",
"createdAt": "2022-10-28T18:08:40.825Z",
"updatedAt": "2022-10-28T18:08:40.825Z",
"player": {
"id": 498,
"username": "rro",
"displayName": "rro",
"type": "unknown",
"build": "main",
"country": null,
"status": "active",
"patron": false,
"exp": 0,
"ehp": 0,
"ehb": 0,
"ttm": 0,
"tt200m": 0,
"registeredAt": "2022-10-28T18:08:40.816Z",
"updatedAt": "2022-10-28T18:08:40.816Z",
"lastChangedAt": null,
"lastImportedAt": null
}
},
{
"playerId": 499,
"groupId": 2,
"role": "member",
"createdAt": "2022-10-28T18:08:40.825Z",
"updatedAt": "2022-10-28T18:08:40.825Z",
"player": {
"id": 499,
"username": "usbc",
"displayName": "usbc",
"type": "unknown",
"build": "main",
"country": null,
"status": "active",
"patron": false,
"exp": 0,
"ehp": 0,
"ehb": 0,
"ttm": 0,
"tt200m": 0,
"registeredAt": "2022-10-28T18:08:40.816Z",
"updatedAt": "2022-10-28T18:08:40.816Z",
"lastChangedAt": null,
"lastImportedAt": null
}
}
],
"memberCount": 3
},
"verificationCode": "882-729-299"
}
Edit Group​
Edit an existing group. Returns the updated GroupDetails object.
Request Params
Field | Type | Required | Description |
---|---|---|---|
id | integer | true | The group's ID. |
Body Params
Field | Type | Required | Description |
---|---|---|---|
name | string? | false | The group's name. |
clanChat | string? | false | The group's clanChat. |
description | string? | false | The group's description. |
homeworld | number? | false | The group's homeworld. |
members | GroupMemberFragment[] ? | false | The group's new members list. |
bannerImage | string? | false | The group's banner image URL (only patron groups). |
profileImage | string? | false | The group's profile image URL (only patron groups). |
socialLinks | GroupSocialLinks? | false | The group's social links (only patron groups). |
verificationCode | string | true | The group's verification code. |
Only the fields provided in the body params are updated.
Image urls (for bannerImage
and profileImage
) must be uploaded to WOM's image server first. We highly recommend editing images on the website instead.
The members list provided will replace the existing one. To add members to an existing group, please check out Add Members
Example Request
- cURL
- JavaScript / TypeScript
curl -X PUT https://api.wiseoldman.net/v2/groups/123 \
-H "Content-type: application/json" \
-d '{
"verificationCode": "759-236-892",
"name": "The Guys",
"clanChat": "the guys",
"description": "A group of people.",
"homeworld": 302,
"members": [
{
"username": "Psikoi",
"role": "leader"
},
{
"username": "rro",
"role": "member"
},
{
"username": "usbc",
"role": "member"
}
]
}'
const { WOMClient, GroupRole } = require('@wise-old-man/utils');
const client = new WOMClient();
const updatedGroup = await client.groups.editGroup(
123,
{
name: 'The Guys',
clanChat: 'the guys',
description: 'A group of people.',
homeworld: 302,
members: [
{ username: 'Psikoi', role: GroupRole.LEADER },
{ username: 'rro', role: GroupRole.MEMBER },
{ username: 'usbc', role: GroupRole.MEMBER }
]
},
'759-236-892'
);
Example Response
{
"id": 2,
"name": "The Guys",
"clanChat": "the guys",
"description": "A group of people.",
"homeworld": 302,
"verified": false,
"patron": false,
"profileImage": null,
"bannerImage": null,
"score": 0,
"createdAt": "2022-10-28T18:08:40.825Z",
"updatedAt": "2022-10-28T18:08:40.825Z",
"memberships": [
{
"playerId": 4,
"groupId": 2,
"role": "leader",
"createdAt": "2022-10-28T18:08:40.825Z",
"updatedAt": "2022-10-28T18:08:40.825Z",
"player": {
"id": 4,
"username": "psikoi",
"displayName": "psikoi",
"type": "regular",
"build": "main",
"country": null,
"status": "active",
"patron": false,
"exp": 300517988,
"ehp": 741.6783699999996,
"ehb": 259.4992700000001,
"ttm": 355.1258500000004,
"tt200m": 12782.74185,
"registeredAt": "2022-10-20T11:48:37.873Z",
"updatedAt": "2022-10-20T11:48:39.723Z",
"lastChangedAt": "2022-10-20T11:48:39.680Z",
"lastImportedAt": null
}
},
{
"playerId": 498,
"groupId": 2,
"role": "member",
"createdAt": "2022-10-28T18:08:40.825Z",
"updatedAt": "2022-10-28T18:08:40.825Z",
"player": {
"id": 498,
"username": "rro",
"displayName": "rro",
"type": "unknown",
"build": "main",
"country": null,
"status": "active",
"patron": false,
"exp": 0,
"ehp": 0,
"ehb": 0,
"ttm": 0,
"tt200m": 0,
"registeredAt": "2022-10-28T18:08:40.816Z",
"updatedAt": "2022-10-28T18:08:40.816Z",
"lastChangedAt": null,
"lastImportedAt": null
}
},
{
"playerId": 499,
"groupId": 2,
"role": "member",
"createdAt": "2022-10-28T18:08:40.825Z",
"updatedAt": "2022-10-28T18:08:40.825Z",
"player": {
"id": 499,
"username": "usbc",
"displayName": "usbc",
"type": "unknown",
"build": "main",
"country": null,
"status": "active",
"patron": false,
"exp": 0,
"ehp": 0,
"ehb": 0,
"ttm": 0,
"tt200m": 0,
"registeredAt": "2022-10-28T18:08:40.816Z",
"updatedAt": "2022-10-28T18:08:40.816Z",
"lastChangedAt": null,
"lastImportedAt": null
}
}
],
"memberCount": 3
}
Delete Group​
Delete an existing group.
Request Params
Field | Type | Required | Description |
---|---|---|---|
id | integer | true | The group's ID. |
Body Params
Field | Type | Required | Description |
---|---|---|---|
verificationCode | string | true | The group's verification code. |
This action is irreversible. Once a group has been deleted, it cannot be easily restored.
Example Request
- cURL
- JavaScript / TypeScript
curl -X DELETE https://api.wiseoldman.net/v2/groups/123 \
-H "Content-type: application/json" \
-d '{
"verificationCode": "759-236-892",
}'
const { WOMClient } = require('@wise-old-man/utils');
const client = new WOMClient();
await client.groups.deleteGroup(123, '759-236-892');
Example Response
{
"message": "Successfully deleted group: The Guys"
}
Add Members​
Add members to an existing group.
Request Params
Field | Type | Required | Description |
---|---|---|---|
id | integer | true | The group's ID. |
Body Params
Field | Type | Required | Description |
---|---|---|---|
verificationCode | string | true | The group's verification code. |
members | GroupMemberFragment[] | true | The members to add to the group. |
Example Request
- cURL
- JavaScript / TypeScript
curl -X POST https://api.wiseoldman.net/v2/groups/123/members \
-H "Content-type: application/json" \
-d '{
"verificationCode": "759-236-892",
"members": [
{
"username": "Psikoi",
"role": "leader"
},
{
"username": "rro",
"role": "member"
},
{
"username": "usbc",
"role": "member"
}
]
}'
const { WOMClient, GroupRole } = require('@wise-old-man/utils');
const client = new WOMClient();
await client.groups.addMembers(
123,
[
{ username: 'Psikoi', role: GroupRole.LEADER },
{ username: 'rro', role: GroupRole.MEMBER },
{ username: 'usbc', role: GroupRole.MEMBER }
],
'759-236-892'
);
Example Response
{
"message": "Successfully added 3 members."
}
Remove Members​
Remove members from an existing group.
Request Params
Field | Type | Required | Description |
---|---|---|---|
id | integer | true | The group's ID. |
Body Params
Field | Type | Required | Description |
---|---|---|---|
verificationCode | string | true | The group's verification code. |
members | string[] | true | The usernames of the members to remove from the group. |
Example Request
- cURL
- JavaScript / TypeScript
curl -X DELETE https://api.wiseoldman.net/v2/groups/123/members \
-H "Content-type: application/json" \
-d '{
"verificationCode": "759-236-892",
"members": ["Psikoi", "usbc"]
}'
const { WOMClient } = require('@wise-old-man/utils');
const client = new WOMClient();
await client.groups.removeMembers(123, ['Psikoi', 'usbc'], '759-236-892');
Example Response
{
"message": "Successfully removed 3 members."
}
Change Member Role​
Changes the role of an existing group member.
Request Params
Field | Type | Required | Description |
---|---|---|---|
id | integer | true | The group's ID. |
Body Params
Field | Type | Required | Description |
---|---|---|---|
verificationCode | string | true | The group's verification code. |
username | string | true | The username of the member you're trying to modify. |
role | GroupRole | true | The new role to be assigned to the member. |
Example Request
- cURL
- JavaScript / TypeScript
curl -X PUT https://api.wiseoldman.net/v2/groups/123/role \
-H "Content-type: application/json" \
-d '{
"verificationCode": "759-236-892",
"username": "psikoi",
"role": "artisan"
}'
const { WOMClient, GroupRole } = require('@wise-old-man/utils');
const client = new WOMClient();
const updatedMembership = await client.groups.changeRole(
123,
{ username: 'psikoi', role: GroupRole.ARTISAN },
'759-236-892'
);
Example Response
{
"playerId": 4,
"groupId": 3,
"role": "artisan",
"createdAt": "2022-10-30T15:35:45.273Z",
"updatedAt": "2022-10-30T15:36:07.855Z",
"player": {
"id": 4,
"username": "psikoi",
"displayName": "psikoi",
"type": "regular",
"build": "main",
"country": null,
"status": "active",
"patron": false,
"exp": 300517988,
"ehp": 741.6783699999996,
"ehb": 259.4992700000001,
"ttm": 355.1258500000004,
"tt200m": 12782.74185,
"registeredAt": "2022-10-20T11:48:37.873Z",
"updatedAt": "2022-10-20T11:48:39.723Z",
"lastChangedAt": "2022-10-20T11:48:39.680Z",
"lastImportedAt": null
}
}
Update All (Outdated) Members​
Attempts to update any outdated group members.
Group members are considered outdated when they haven't been updated in over 24h.
This action adds every outdated member to an "update queue", and our servers try to update players in this queue one by one, with a delay in between each. For each player in the queue, we attempt to update it up to 3 times, with 30s in between each attempt.
Please note that we are dependant on the OSRS hiscores functioning correctly, and therefor this endpoint does NOT guarantee the players will be updated, it only guarantees that it will at least try to update them, up to 3 times.
Request Params
Field | Type | Required | Description |
---|---|---|---|
id | integer | true | The group's ID. |
Body Params
Field | Type | Required | Description |
---|---|---|---|
verificationCode | string | true | The group's verification code. |
Example Request
- cURL
- JavaScript / TypeScript
curl -X POST https://api.wiseoldman.net/v2/groups/123/update-all \
-H "Content-type: application/json" \
-d '{
"verificationCode": "759-236-892"
}'
const { WOMClient } = require('@wise-old-man/utils');
const client = new WOMClient();
await client.groups.updateAll(123, '759-236-892');
Example Response
{
"message": "6 outdated (updated > 24h ago) players are being updated. This can take up to a few minutes."
}
Get Group Competitions​
Fetches all of the group's competitions. Returns an array of Competition objects.
Request Params
Field | Type | Required | Description |
---|---|---|---|
id | integer | true | The group's ID. |
Query Params
Field | Type | Required | Description |
---|---|---|---|
limit | integer | false | The pagination limit. See Pagination |
offset | integer | false | The pagination offset. See Pagination |
Example Request
- cURL
- JavaScript / TypeScript
curl -X GET https://api.wiseoldman.net/v2/groups/123/competitions?limit=5 \
-H "Content-type: application/json"
const { WOMClient } = require('@wise-old-man/utils');
const client = new WOMClient();
const competitions = await client.groups.getGroupCompetitions(123, { limit: 5 });
Example Response
[
{
"id": 16624,
"title": "DCC KOB KQ",
"metric": "kalphite_queen",
"type": "classic",
"startsAt": "2022-10-31T00:00:00.000Z",
"endsAt": "2022-11-07T00:00:00.000Z",
"groupId": 603,
"score": 398,
"createdAt": "2022-10-26T09:53:51.166Z",
"updatedAt": "2022-10-27T09:13:14.250Z",
"group": {
"id": 603,
"name": "DemocraCC",
"clanChat": "Democracc",
"description": "A social clan chat.",
"homeworld": 524,
"verified": true,
"patron": false,
"profileImage": null,
"bannerImage": null,
"score": 470,
"createdAt": "2021-01-16T17:52:13.417Z",
"updatedAt": "2022-10-27T04:43:44.694Z",
"memberCount": 131
},
"participantCount": 131
},
{
"id": 16406,
"title": "DCC KOS Smithing",
"metric": "smithing",
"type": "classic",
"startsAt": "2022-10-24T00:00:00.000Z",
"endsAt": "2022-10-31T00:00:00.000Z",
"groupId": 603,
"score": 558,
"createdAt": "2022-10-19T20:10:14.609Z",
"updatedAt": "2022-10-28T16:18:43.086Z",
"group": {
"id": 603,
"name": "DemocraCC",
"clanChat": "Democracc",
"description": "A social clan chat.",
"homeworld": 524,
"verified": true,
"patron": false,
"profileImage": null,
"bannerImage": null,
"score": 470,
"createdAt": "2021-01-16T17:52:13.417Z",
"updatedAt": "2022-10-27T04:43:44.694Z",
"memberCount": 131
},
"participantCount": 131
}
]
Get Group Gains​
Fetches the top gains for a group's member list (filtered by metric and period/date range). Returns an array of DeltaLeaderboardEntry objects.
Request Params
Field | Type | Required | Description |
---|---|---|---|
id | integer | true | The group's ID. |
Query Params
Field | Type | Required | Description |
---|---|---|---|
metric | Metric | true | The metric to filter the deltas by. |
period | Period | false | The period to filter the deltas by. |
startDate | date | false | The minimum date for the deltas. |
endDate | date | false | The maximum date for the deltas. |
limit | integer | false | The pagination limit. See Pagination |
offset | integer | false | The pagination offset. See Pagination |
This endpoint accepts either period
or startDate
+ endDate
.
Unlike most other endpoints, this one does not have a maximum result limit.
Example Request
- cURL
- JavaScript / TypeScript
curl -X GET https://api.wiseoldman.net/v2/groups/123/gained?metric=agility&period=week&limit=5 \
-H "Content-type: application/json"
const { WOMClient, Period, Metric } = require('@wise-old-man/utils');
const client = new WOMClient();
const gains = await client.groups.getGroupGains(
123,
{ period: Period.WEEK, metric: Metric.AGILITY },
{ limit: 5 }
);
Example Response
[
{
"player": {
"id": 678734,
"username": "liljarman",
"displayName": "liljarman",
"type": "regular",
"build": "main",
"country": null,
"status": "active",
"patron": false,
"exp": 103737246,
"ehp": 257.5031099999997,
"ehb": 93.69514,
"ttm": 763.9293199999993,
"tt200m": 13266.91711,
"registeredAt": "2022-07-11T03:07:02.274Z",
"updatedAt": "2022-10-29T19:22:05.154Z",
"lastChangedAt": "2022-10-29T19:22:04.465Z",
"lastImportedAt": "2022-10-28T22:25:09.565Z"
},
"data": {
"gained": 107238,
"start": 9159636,
"end": 9266874
},
"startDate": "2022-10-23T17:16:52.628Z",
"endDate": "2022-10-29T19:22:04.465Z"
},
{
"player": {
"id": 58265,
"username": "ardoneye",
"displayName": "Ardoneye",
"type": "regular",
"build": "main",
"country": null,
"status": "active",
"patron": false,
"exp": 161554948,
"ehp": 525.8095599999997,
"ehb": 33.60389,
"ttm": 491.1343699999998,
"tt200m": 12998.61066,
"registeredAt": "2020-10-24T12:30:42.085Z",
"updatedAt": "2022-10-28T12:42:51.213Z",
"lastChangedAt": "2022-10-28T12:42:50.641Z",
"lastImportedAt": "2022-10-28T12:42:51.212Z"
},
"data": {
"gained": 43171,
"start": 8106867,
"end": 8150038
},
"startDate": "2022-10-24T00:21:35.865Z",
"endDate": "2022-10-28T12:42:50.640Z"
}
]
Get Group Achievements​
Fetches the group's latest achievements. Returns an array of Achievement objects.
Request Params
Field | Type | Required | Description |
---|---|---|---|
id | integer | true | The group's ID. |
Query Params
Field | Type | Required | Description |
---|---|---|---|
limit | integer | false | The pagination limit. See Pagination |
offset | integer | false | The pagination offset. See Pagination |
Example Request
- cURL
- JavaScript / TypeScript
curl -X GET https://api.wiseoldman.net/v2/groups/123/achievements?limit=5 \
-H "Content-type: application/json"
const { WOMClient } = require('@wise-old-man/utils');
const client = new WOMClient();
const achievements = await client.groups.getGroupAchievements(123, { limit: 5 });
Example Response
[
{
"playerId": 140426,
"name": "100 Tombs of Amascut (Expert Mode) kills",
"metric": "tombs_of_amascut_expert",
"threshold": 100,
"createdAt": "2022-10-28T12:44:13.076Z",
"accuracy": 8496896,
"measure": "kills",
"player": {
"id": 140426,
"username": "codevein",
"displayName": "CodeVein",
"type": "regular",
"build": "main",
"country": null,
"status": "active",
"patron": false,
"exp": 294684704,
"ehp": 783.5312799999992,
"ehb": 148.83668,
"ttm": 238.6293700000006,
"tt200m": 12740.88894,
"registeredAt": "2021-01-17T22:01:07.847Z",
"updatedAt": "2022-10-29T05:36:52.899Z",
"lastChangedAt": "2022-10-29T05:36:52.451Z",
"lastImportedAt": "2022-10-28T12:44:13.988Z"
}
},
{
"playerId": 595734,
"name": "Base 70 Stats",
"metric": "overall",
"threshold": 737627,
"createdAt": "2022-10-28T12:42:24.215Z",
"accuracy": 195764,
"measure": "levels",
"player": {
"id": 595734,
"username": "welshc0x",
"displayName": "Welshc0x",
"type": "ironman",
"build": "main",
"country": null,
"status": "active",
"patron": false,
"exp": 72752950,
"ehp": 388.3448400000016,
"ehb": 67.85876,
"ttm": 1373.97956,
"tt200m": 22064.46647,
"registeredAt": "2022-04-15T08:37:36.524Z",
"updatedAt": "2022-10-28T12:42:24.344Z",
"lastChangedAt": "2022-10-28T12:42:24.215Z",
"lastImportedAt": "2022-10-24T00:25:04.100Z"
}
}
]
Get Group Records​
Fetches a group's record leaderboard for a specific metric and period. Returns an array of RecordLeaderboardEntry objects.
Request Params
Field | Type | Required | Description |
---|---|---|---|
id | integer | true | The group's ID. |
Query Params
Field | Type | Required | Description |
---|---|---|---|
period | Period | true | The record's time period. |
metric | Metric | true | The record's metric. |
limit | integer | false | The pagination limit. See Pagination |
offset | integer | false | The pagination offset. See Pagination |
Example Request
- cURL
- JavaScript / TypeScript
curl -X GET https://api.wiseoldman.net/v2/groups/123/records?metric=agility&period=week&limit=5 \
-H "Content-type: application/json"
const { WOMClient, Period, Metric } = require('@wise-old-man/utils');
const client = new WOMClient();
const records = await client.groups.getGroupRecords(
123,
{ metric: Metric.AGILITY, period: Period.WEEK },
{ limit: 5 }
);
Example Response
[
{
"id": 12729638,
"playerId": 162151,
"period": "week",
"metric": "agility",
"value": 2586136,
"updatedAt": "2021-02-21T18:15:55.971Z",
"player": {
"id": 162151,
"username": "yess ken",
"displayName": "Yess Ken",
"type": "regular",
"build": "def1",
"country": null,
"status": "active",
"patron": false,
"exp": 44763012,
"ehp": 249.52655,
"ehb": 0,
"ttm": 1044.61109,
"tt200m": 14712.9245,
"registeredAt": "2021-02-08T17:45:51.254Z",
"updatedAt": "2021-03-04T16:00:44.550Z",
"lastChangedAt": "2021-03-04T10:52:27.722Z",
"lastImportedAt": null
}
},
{
"id": 5599046,
"playerId": 11411,
"period": "week",
"metric": "agility",
"value": 2510430,
"updatedAt": "2021-02-03T21:30:14.203Z",
"player": {
"id": 11411,
"username": "bysn",
"displayName": "Bysn",
"type": "regular",
"build": "main",
"country": null,
"status": "active",
"patron": false,
"exp": 347331804,
"ehp": 1027.414000000001,
"ehb": 100.87453,
"ttm": 0,
"tt200m": 12497.00622,
"registeredAt": "2020-05-25T10:39:36.709Z",
"updatedAt": "2022-10-28T14:41:08.018Z",
"lastChangedAt": "2022-10-28T14:41:06.007Z",
"lastImportedAt": "2022-10-28T14:41:08.016Z"
}
}
]
Get Group Hiscores​
Fetches a group's hiscores for a specific metric. Returns an array of GroupHiscoresEntry objects.
Request Params
Field | Type | Required | Description |
---|---|---|---|
id | integer | true | The group's ID. |
Query Params
Field | Type | Required | Description |
---|---|---|---|
metric | Metric | true | The hiscores' metric. |
limit | integer | false | The pagination limit. See Pagination |
offset | integer | false | The pagination offset. See Pagination |
Unlike most other endpoints, this one does not have a maximum result limit.
Example Request
- cURL
- JavaScript / TypeScript
curl -X GET https://api.wiseoldman.net/v2/groups/123/hiscores?metric=agility&limit=5 \
-H "Content-type: application/json"
const { WOMClient, Metric } = require('@wise-old-man/utils');
const client = new WOMClient();
const hiscores = await client.groups.getGroupHiscores(123, Metric.AGILITY, { limit: 5 });
Example Response
[
{
"player": {
"id": 22016,
"username": "dr neuron",
"displayName": "Dr Neuron",
"type": "ironman",
"build": "main",
"country": "NL",
"status": "active",
"patron": false,
"exp": 2363048809,
"ehp": 9301.0139,
"ehb": 1127.89069,
"ttm": 0,
"tt200m": 10999.83241,
"registeredAt": "2020-07-09T17:12:43.512Z",
"updatedAt": "2023-09-08T08:41:55.840Z",
"lastChangedAt": "2023-09-08T08:41:55.840Z",
"lastImportedAt": "2023-07-10T23:56:04.808Z"
},
"data": {
"rank": 42,
"experience": 70286706,
"level": 99,
"type": "skill"
}
},
{
"player": {
"id": 238224,
"username": "im noddy",
"displayName": "Im Noddy",
"type": "ironman",
"build": "main",
"country": null,
"status": "active",
"patron": false,
"exp": 1234424477,
"ehp": 4585.371810000001,
"ehb": 829.2882199999999,
"ttm": 0,
"tt200m": 15715.4745,
"registeredAt": "2021-04-28T16:44:09.807Z",
"updatedAt": "2023-09-07T21:17:55.572Z",
"lastChangedAt": "2023-09-07T21:17:55.572Z",
"lastImportedAt": "2023-07-09T20:49:53.231Z"
},
"data": {
"rank": 155,
"experience": 31302967,
"level": 99,
"type": "skill"
}
}
]
Get Group Name Changes​
Fetches a group's latest name changes. Returns an array of NameChange objects.
Request Params
Field | Type | Required | Description |
---|---|---|---|
id | integer | true | The group's ID. |
Query Params
Field | Type | Required | Description |
---|---|---|---|
limit | integer | false | The pagination limit. See Pagination |
offset | integer | false | The pagination offset. See Pagination |
Example Request
- cURL
- JavaScript / TypeScript
curl -X GET https://api.wiseoldman.net/v2/groups/123/name-changes?limit=5 \
-H "Content-type: application/json"
const { WOMClient } = require('@wise-old-man/utils');
const client = new WOMClient();
const nameChanges = await client.groups.getGroupNameChanges(123, { limit: 5 });
Example Response
[
{
"id": 105668,
"playerId": 11049,
"oldName": "Tired Cookie",
"newName": "Minty Meep",
"status": "approved",
"reviewContext": null,
"resolvedAt": "2022-08-20T20:31:14.548Z",
"updatedAt": "2022-08-20T20:31:14.548Z",
"createdAt": "2022-08-20T20:30:18.636Z",
"player": {
"id": 11049,
"username": "minty meep",
"displayName": "Minty Meep",
"type": "regular",
"build": "main",
"country": null,
"status": "active",
"patron": false,
"exp": 107428372,
"ehp": 207.7656800000004,
"ehb": 103.9547,
"ttm": 801.9514299999992,
"tt200m": 13316.65454,
"registeredAt": "2020-05-23T18:58:10.774Z",
"updatedAt": "2022-10-30T13:52:15.177Z",
"lastChangedAt": "2022-09-04T14:47:36.327Z",
"lastImportedAt": "2022-01-23T22:24:27.792Z"
}
},
{
"id": 90886,
"playerId": 45693,
"oldName": "Reptarrrr",
"newName": "Cremzar",
"status": "approved",
"reviewContext": null,
"resolvedAt": "2022-07-05T00:25:48.412Z",
"updatedAt": "2022-07-05T00:25:48.412Z",
"createdAt": "2022-07-05T00:25:41.380Z",
"player": {
"id": 45693,
"username": "cremzar",
"displayName": "Cremzar",
"type": "regular",
"build": "main",
"country": null,
"status": "active",
"patron": false,
"exp": 117813986,
"ehp": 311.34252,
"ehb": 229.87636,
"ttm": 709.26561,
"tt200m": 13213.0777,
"registeredAt": "2020-09-28T13:23:23.966Z",
"updatedAt": "2022-07-06T01:55:27.127Z",
"lastChangedAt": "2022-07-06T01:55:27.000Z",
"lastImportedAt": null
}
}
]
Get Group Statistics​
Fetches a group's general statistics. Returns a GroupStatistics object.
Request Params
Field | Type | Required | Description |
---|---|---|---|
id | integer | true | The group's ID. |
Example Request
- cURL
- JavaScript / TypeScript
curl -X GET https://api.wiseoldman.net/v2/groups/123/statistics \
-H "Content-type: application/json"
const { WOMClient } = require('@wise-old-man/utils');
const client = new WOMClient();
const statistics = await client.groups.getGroupStatistics(123);
Example Response
{
"maxedCombatCount": 6,
"maxedTotalCount": 3,
"maxed200msCount": 1,
"averageStats": {
"id": -1,
"playerId": -1,
"createdAt": null,
"importedAt": null,
"data": {
"skills": {
"overall": {
"metric": "overall",
"experience": 84528862,
"rank": 505825,
"level": 1939
}
// ... etc for all skills
},
"bosses": {
"abyssal_sire": {
"metric": "abyssal_sire",
"kills": 58,
"rank": 5188
}
// ... etc for all bosses
},
"activities": {
"bounty_hunter_hunter": {
"metric": "bounty_hunter_hunter",
"score": 0,
"rank": 8371
}
// ... etc for all activities
},
"computed": {
"ehp": {
"metric": "ehp",
"value": 289,
"rank": 111876
}
// ... etc for all computed metrics
}
}
},
"metricLeaders": {
"skills": {
"overall": {
"metric": "overall",
"experience": 84528862,
"rank": 505825,
"level": 1939,
"player": {
"id": 151063,
"username": "zezimas bro",
"displayName": "Zezimas bro",
"type": "regular",
"build": "main",
"country": null,
"status": "active",
"patron": false,
"exp": 330940032,
"ehp": 1057.05253,
"ehb": 126.50192,
"ttm": 0,
"tt200m": 12467.36769,
"registeredAt": "2021-01-29T01:18:41.641Z",
"updatedAt": "2022-10-01T17:02:03.360Z",
"lastChangedAt": "2022-10-01T17:02:03.129Z",
"lastImportedAt": null
}
}
// ... etc for all skills
},
"bosses": {
"abyssal_sire": {
"metric": "abyssal_sire",
"kills": 58,
"rank": 5188,
"player": {
"id": 322795,
"username": "zezimas main",
"displayName": "Zezimas Main",
"type": "ironman",
"build": "main",
"country": null,
"status": "active",
"patron": false,
"exp": 164428785,
"ehp": 800.36287,
"ehb": 258.43421,
"ttm": 963.15034,
"tt200m": 21652.44844,
"registeredAt": "2021-07-30T20:36:49.447Z",
"updatedAt": "2022-09-22T17:47:38.096Z",
"lastChangedAt": "2022-09-22T17:47:37.411Z",
"lastImportedAt": "2022-09-22T17:47:38.096Z"
}
}
// ... etc for all bosses
},
"activities": {
"bounty_hunter_hunter": {
"metric": "bounty_hunter_hunter",
"score": 0,
"rank": 8371,
"player": null // Can be null if no player leads
}
// ... etc for all activities
},
"computed": {
"ehp": {
"metric": "ehp",
"value": 289,
"rank": 111876,
"player": {
"id": 151063,
"username": "zezimas bro",
"displayName": "Zezimas bro",
"type": "regular",
"build": "main",
"country": null,
"status": "active",
"patron": false,
"exp": 330940032,
"ehp": 1057.05253,
"ehb": 126.50192,
"ttm": 0,
"tt200m": 12467.36769,
"registeredAt": "2021-01-29T01:18:41.641Z",
"updatedAt": "2022-10-01T17:02:03.360Z",
"lastChangedAt": "2022-10-01T17:02:03.129Z",
"lastImportedAt": null
}
}
// ... etc for all computed metrics
}
}
}
Get Group Activity​
Fetches a group's activity. Returns an array of GroupActivity objects.
Request Params
Field | Type | Required | Description |
---|---|---|---|
id | integer | true | The group's ID. |
Query Params
Field | Type | Required | Description |
---|---|---|---|
limit | integer | false | The pagination limit. See Pagination |
offset | integer | false | The pagination offset. See Pagination |
Example Request
- cURL
- JavaScript / TypeScript
curl -X GET https://api.wiseoldman.net/v2/groups/139/activity?limit=5 \
-H "Content-type: application/json"
const { WOMClient } = require('@wise-old-man/utils');
const client = new WOMClient();
const activity = await client.groups.getGroupActivity(139);
Example Response
[
{
"groupId": 139,
"playerId": 4156,
"type": "changed_role",
"role": "iron",
"createdAt": "2023-10-23T20:39:45.104Z",
"player": {
"id": 4156,
"username": "rro",
"displayName": "Rro",
"type": "regular",
"build": "main",
"country": "SE",
"status": "active",
"patron": false,
"exp": 694156199,
"ehp": 1635.832120000001,
"ehb": 1160.30569,
"ttm": 0,
"tt200m": 11177.97617,
"registeredAt": "2020-05-03T16:55:16.933Z",
"updatedAt": "2023-10-23T20:23:24.508Z",
"lastChangedAt": "2023-10-18T23:54:41.785Z",
"lastImportedAt": "2023-06-26T22:03:44.480Z"
}
},
{
"groupId": 139,
"playerId": 9899,
"type": "joined",
"role": null,
"createdAt": "2023-10-16T13:20:50.273Z",
"player": {
"id": 9899,
"username": "jakesterwars",
"displayName": "jakesterwars",
"type": "regular",
"build": "main",
"country": "US",
"status": "active",
"patron": false,
"exp": 79040233,
"ehp": 261.2681500000017,
"ehb": 0,
"ttm": 703.17317,
"tt200m": 12552.54014,
"registeredAt": "2020-05-18T02:54:10.427Z",
"updatedAt": "2023-10-11T05:22:14.355Z",
"lastChangedAt": "2023-07-08T19:11:51.285Z",
"lastImportedAt": "2022-11-07T11:54:20.482Z"
}
}
]
Get Group Members CSV​
Fetches the group's members in CSV format.
This endpoint returns plain text, not a JSON response.
Request Params
Field | Type | Required | Description |
---|---|---|---|
id | integer | true | The groups's ID. |
Example Request
- cURL
- JavaScript / TypeScript
curl -X GET https://api.wiseoldman.net/v2/groups/139/csv \
-H "Content-Type: application/json"
const { WOMClient } = require('@wise-old-man/utils');
const client = new WOMClient();
const csv = await client.groups.getMembersCSV(139);
Example Response
Player,Role,Experience,Last progressed,Last updated
Boom,moderator,210157321,12-04-2023 05:41,12-04-2023 05:41
Aluminoti,moderator,486351623,12-06-2023 23:55,12-06-2023 23:55
Rro,achiever,698779609,11-08-2023 20:31,12-06-2023 22:55
Jakesterwars,artisan,79352877,11-07-2023 21:19,12-06-2023 03:30
Sethmare,legend,171680739,11-02-2023 20:42,12-05-2023 04:49
Jonxslays,medic,50085718,11-02-2023 14:14,12-06-2023 13:25
Enriath,member,281501662,10-24-2023 07:48,11-27-2023 12:41
USBC,member,135966343,11-30-2023 22:21,11-30-2023 22:21
Crow653,member,201891714,11-03-2023 02:16,11-27-2023 12:40
Psikoi,orange,314625557,11-26-2023 07:40,12-05-2023 21:58
Alexsuperfly,short_green_guy,286211980,11-26-2023 07:40,11-27-2023 12:40