Skip to main content

RDO.GG API (1.2.1)

Introduction

The RDO.GG API aims to centralize any and all API endpoints that can be used to build awesome applications for the Red Dead Online community. If you know an API endpoint that is not listed below, please join the Discord and report the endpoint together with some implementation details.

Please note that this API is geared towards a more advanced audience as it uses codenames over actual names. This is done to allow creativity with how the various API endpoints can be used and to limit the size of the requests. If you are not a developer, please visit other sites like the collector map and others, or use the RDO Compendium Discord bot.

Notes

Please support the API. While I won't send the Pinkertons after you if you don't, I'd really appreciate it if you credit this API when you use it. In the case of a different provider being mentioned, please also credit them. This API is provided for free by the RDO.GG project. Please consider becoming a Patron to help support continued development.

Please don't abuse the API. If you do, you will jeopardize the future of the API. There is no need to update your application excessively. Properties such as endTime are provided to save you having to make requests and save the API from having to serve those requests. If I detect extensive abuse I will make further changes to the API such as introducing API tokens. I don't want to, but I will if I have to.

Collector

Everything related to the Collector role.

Get Collector Cycles

Provided by Senexis. Special thanks to Ghost and Michal__d.

Retrieves the Collector cycles of yesterday, today, and tomorrow. Cycles change every day at 12 AM (UTC), also denoted by endTime. There is no need to keep updating the cycles as they will only update after the end time has passed.

Responses

Response Schema: application/json
updated
integer

The epoch timestamp the response was last updated.

Array of objects = 3 items

The cycles for yesterday, today and tomorrow, in that order.

object

Contains the next timestamps for each of the different Collectible categories and their cycles. Please note that this searches for up to the next 90 days. The time will be null if it does not appear for the next 90 days.

object

A collection of information about the current response.

Response samples

Content type
application/json
{
  • "updated": 1620518400,
  • "cycles": [
    ],
  • "next_cycle_times": null,
  • "meta": {}
}

Get Madam Nazar Location

Provided by Alloc8or.

Retrieves the current location of Madam Nazar. Madam Nazar's location is updated every day at 6 AM (UTC), also denoted by endTime. There is no need to keep updating the location as it will only update after the end time has passed.

Responses

Response Schema: application/json
updated
integer

The epoch timestamp the response was last updated.

startTime
integer

The epoch timestamp today's Nazar location started.

endTime
integer

The epoch timestamp today's Nazar location will end.

id
string
Enum: "MPSW_LOCATION_00" "MPSW_LOCATION_01" "MPSW_LOCATION_02" "MPSW_LOCATION_03" "MPSW_LOCATION_04" "MPSW_LOCATION_05" "MPSW_LOCATION_06" "MPSW_LOCATION_07" "MPSW_LOCATION_08" "MPSW_LOCATION_09" "MPSW_LOCATION_10" "MPSW_LOCATION_11"

An identifier for the current Madam Nazar location.

state
string
Enum: "p_1_ambarino" "p_1_lemoyne" "p_1_new_austin" "p_1_new_hanover" "p_1_west_elizabeth"

The in-game UI key for this location's state, can be translated using map.yldb.

location
string
Enum: "p_3_little_creek_river" "p_3_ocreaghs_run" "p_4_bolger_glade" "p_4_emerald_ranch" "p_4_manteca_falls" "p_4_manzanita_post" "p_4_plainview" "p_4_twin_rocks" "p_4_window_rock" "w_4_copperhead_landing" "w_5_black_balsam_rise" "w_5_limpany"

The in-game UI key for this location's location, can be translated using map.yldb.

landmark
string
Enum: "p_3_ocreaghs_run" "p_4_armadillo" "p_4_benedict_point" "p_4_braithwaite_manor" "p_4_emerald_ranch" "p_4_flatneck_station" "p_4_manzanita_post" "p_4_thieves_landing" "p_4_van_horn_trading_post" "p_4_wallace_station" "p_4_window_rock" "p_6_annesburg"

The in-game UI key for this location's nearby landmark, can be translated using map.yldb.

object

A collection of information about the current response.

Response samples

Content type
application/json
{
  • "updated": 1620518400,
  • "startTime": 1620518400,
  • "endTime": 1620518400,
  • "id": "MPSW_LOCATION_05",
  • "state": "p_1_new_hanover",
  • "location": "p_4_emerald_ranch",
  • "landmark": "p_4_emerald_ranch",
  • "meta": {}
}

Get Weekly Collectibles

Provided by Alloc8or.

Retrieves the current Weekly Collectibles Request. Weekly Collectibles Requests is updated every Tuesday at 6 AM (UTC), also denoted by endTime. There is no need to keep updating the Weekly Collectibles Requests as the will only update after the end time has passed.

Responses

Response Schema: application/json
updated
integer

The epoch timestamp the response was last updated.

startTime
integer

The epoch timestamp today's weekly request started.

endTime
integer

The epoch timestamp today's weekly request will end.

id
string

The translation key of the weekly request. Corresponds to the global.yldb language file.

items
Array of strings [ 2 .. 3 ] items

The translation key of the request's items. Corresponds to the global.yldb language file.

description
string

The translation key of the weekly request. Corresponds to the global.yldb language file.

texture
string

The translation key of the weekly request. Corresponds to a weekly tile texture.

object

A collection of information about the current response.

Response samples

Content type
application/json
{
  • "updated": 1620518400,
  • "startTime": 1620518400,
  • "endTime": 1620518400,
  • "id": "AWARD_ROLE_COLLECTOR_SET_BELLE",
  • "items": [
    ],
  • "description": "PM_COLLECTOR_WEEKLY_HAIRDRESSER_DESC",
  • "texture": "MP_COLLECTABLES_OVERVIEW_TILES_WEEKLY_011",
  • "meta": {}
}

Daily Challenges

Everything related to Daily Challenges.

Get Daily Challenges

Provided by Alloc8or.

Retrieves the full list of the current daily challenges. Daily Challenges are updated every day at 6 AM (UTC), also denoted by endTime. There is no need to keep updating the daily challenges as they will only update after the end time has passed.

Responses

Response Schema: application/json
updated
integer

The epoch timestamp the response was last updated.

startTime
integer

The epoch timestamp today's challenges started.

endTime
integer

The epoch timestamp today's challenges will end.

Array of objects = 7 items
object

The currently available roles for the Daily Challenges request.

object

The currently available roles for the Daily Challenges request.

object

The currently available roles for the Daily Challenges request.

object

A collection of information about the current response.

Response samples

Content type
application/json
{
  • "updated": 1620518400,
  • "startTime": 1620518400,
  • "endTime": 1620518400,
  • "general": [
    ],
  • "easy": {
    },
  • "med": {
    },
  • "hard": {
    },
  • "meta": {}
}

Get Daily Challenges by Difficulty

Provided by Alloc8or.

Retrieves the full list of the current daily challenges. Daily Challenges are updated every day at 6 AM (UTC), also denoted by endTime. There is no need to keep updating the daily challenges as they will only update after the end time has passed.

path Parameters
difficulty
required
string
Enum: "easy" "hard" "med"

The difficulty of the Daily Challenges: Easy difficulty: Rank 1-5; Med difficulty: Rank 6-14; Hard difficulty: Rank 15 onwards.

Responses

Response Schema: application/json
updated
integer

The epoch timestamp the response was last updated.

startTime
integer

The epoch timestamp today's challenges started.

endTime
integer

The epoch timestamp today's challenges will end.

Array of objects = 7 items
Array of objects = 3 items
Array of objects = 3 items
Array of objects = 3 items
Array of objects = 3 items
Array of objects = 3 items
object

A collection of information about the current response.

Response samples

Content type
application/json
{
  • "updated": 1620518400,
  • "startTime": 1620518400,
  • "endTime": 1620518400,
  • "general": [
    ],
  • "bounty_hunter": [
    ],
  • "trader": [
    ],
  • "collector": [
    ],
  • "moonshiner": [
    ],
  • "naturalist": [
    ],
  • "meta": {}
}

Free Roam Events

Everything related to Free Roam events.

Get Free Roam Events Schedule

Provided by Senexis. Special thanks to Alloc8or.

Retrieves the current Free Roam Events schedule. These are updated once a week when the tunables update. These change when Rockstar decides to do a custom schedule, but do not change otherwise. These update every Tuesday at around 9 AM (UTC) but the update window is pretty sizeable.

Responses

Response Schema: application/json
updated
integer

The epoch timestamp the response was last updated.

object

The time slots for the non-role Free Roam Events. Each property represents a UTC-based timeslot around which the event will start.

object

The time slots for the role Free Roam Events. Each property represents a UTC-based timeslot around which the event will start.

object

A collection of information about the current response.

Response samples

Content type
application/json
{
  • "updated": 1620518400,
  • "standard": null,
  • "themed": null,
  • "meta": {}
}

Social Club

Everything related to Social Club.

Get Benefits

Provided by Senexis.

Retrieves the full list of the current Benefits. These update every Tuesday at around 3 PM (UTC) but the update window is pretty sizeable.

Responses

Response Schema: application/json
updated
integer

The epoch timestamp the response was last updated.

hash
string

A generated SHA-1 hash of this response.

Array of objects
object

A collection of information about the current response.

Response samples

Content type
application/json
{
  • "updated": 1620518400,
  • "hash": "99201971A8132C891C2CA7E0C9EAFF381C970C70",
  • "articles": [
    ],
  • "meta": {}
}

Get Live Events

Provided by Senexis.

Retrieves the full list of the current Live Events. These update every Tuesday at around 6 AM or 3 PM (UTC) but the update window is pretty sizeable.

Responses

Response Schema: application/json
updated
integer

The epoch timestamp the response was last updated.

hash
string

A generated SHA-1 hash of this response.

Array of objects
object

A collection of information about the current response.

Response samples

Content type
application/json
{
  • "updated": 1620518400,
  • "hash": "99201971A8132C891C2CA7E0C9EAFF381C970C70",
  • "events": [
    ],
  • "meta": {}
}

Get Newswire Articles

Provided by Senexis.

Retrieves the full list of the Newswire articles. These update every Tuesday at around 12 PM (UTC) but the update window is pretty sizeable.

Responses

Response Schema: application/json
updated
integer

The epoch timestamp the response was last updated.

hash
string

A generated SHA-1 hash of this response.

Array of objects
object
object

A collection of information about the current response.

Response samples

Content type
application/json
{
  • "updated": 1620518400,
  • "hash": "99201971A8132C891C2CA7E0C9EAFF381C970C70",
  • "articles": [],
  • "links": null,
  • "meta": {}
}

Get Newswire Article

Provided by Senexis.

Retrieves a specific Newswire article by ID. These update every Tuesday at around 12 PM (UTC) but the update window is pretty sizeable.

path Parameters
id
required
string

ID of the file.

Responses

Response Schema: application/json
article
object

The mixed content of this Newswire article.

object

A collection of information about the current response.

Response samples

Content type
application/json
{
  • "article": { },
  • "meta": {}
}

Get Game Patches

Provided by Senexis.

Retrieves the full list of the game patches. These update sporadically when the game updates, or on Tuesdays when a new event week activates which adds new content previously added by the update.

Responses

Response Schema: application/json
updated
integer

The epoch timestamp the response was last updated.

hash
string

A generated SHA-1 hash of this response.

integer or string

The identifier of this patches article.

title
string

The title of this patches article.

Array of objects

An array of different patches. Each line represents one day, but does not neccesarily represent an actual patch.

link
string <uri>

The main URL of this patches article.

article_created
string <date-time>

The creation date of this patches article.

article_updated
string <date-time>

The modified date of this patches article.

object

A collection of information about the current response.

Response samples

Content type
application/json
{
  • "updated": 1620518400,
  • "hash": "99201971A8132C891C2CA7E0C9EAFF381C970C70",
  • "id": 0,
  • "title": "Lorem ipsum dolor sit amet",
  • "patches": [
    ],
  • "article_created": "2021-06-09T04:20:00Z",
  • "article_updated": "2021-06-09T04:20:00Z",
  • "meta": {}
}

Get Photos

Provided by Senexis.

Retrieves a list of latest photos sorted by like count.

Responses

Response Schema: application/json
updated
integer

The epoch timestamp the response was last updated.

hash
string

A generated SHA-1 hash of this response.

Array of objects
object

A collection of information about the current response.

Response samples

Content type
application/json
{
  • "updated": 1620518400,
  • "hash": "99201971A8132C891C2CA7E0C9EAFF381C970C70",
  • "photos": [
    ],
  • "meta": {}
}

Tunables

Everything related to Tunables.

Get Player Menu Stamps

Provided by Senexis. Special thanks to Alloc8or.

Stamps are displayed on in-game UIs like the Player Menu to display currently active bonuses in certain competitive or cooperative modes in the game. They inform the player of active XP, Cash and/or Gold bonuses of x1, x2, or x3.

Responses

Response Schema: application/json
updated
integer

The epoch timestamp the response was last updated.

hash
string

A generated SHA-1 hash of this response.

Array of objects

A collection of stamps that are currently being displayed.

object

A collection of information about the current response.

Response samples

Content type
application/json
{
  • "updated": 1620518400,
  • "hash": "99201971A8132C891C2CA7E0C9EAFF381C970C70",
  • "stamps": [
    ],
  • "meta": {}
}

Get Active Tunables

Provided by Senexis. Special thanks to Alloc8or.

Tunables are used to control various internal variables within the game. Examples of this are cooldowns, limits and temporarily disabling parts of the game. These change when Rockstar decides to make tweaks, but do not change otherwise. These update every Tuesday at around 9 AM (UTC) but the update window is pretty sizeable.

path Parameters
game
required
string
Enum: "gta" "rdo"
Example: rdo

The game to view tunables for.

platform
required
string
Enum: "pcros" "ps3" "ps4" "ps5" "xbox360" "xboxone" "xboxsx"
Example: pcros

The platform to view tunables for.

Responses

Response Schema: application/json
updated
integer

The epoch timestamp the response was last updated.

hash
string

A generated SHA-1 hash of this response.

object
object

A collection of information about the current response.

Response samples

Content type
application/json
{
  • "updated": 1620518400,
  • "hash": "99201971A8132C891C2CA7E0C9EAFF381C970C70",
  • "contents": null,
  • "meta": {}
}

Get All Tunables

Provided by Senexis. Special thanks to Alloc8or.

Tunables are used to control various internal variables within the game. Examples of this are cooldowns, limits and temporarily disabling parts of the game. These change when Rockstar decides to make tweaks, but do not change otherwise. These update every Tuesday at around 9 AM (UTC) but the update window is pretty sizeable.

path Parameters
game
required
string
Enum: "gta" "rdo"
Example: rdo

The game to view tunables for.

platform
required
string
Enum: "pcros" "ps3" "ps4" "ps5" "xbox360" "xboxone" "xboxsx"
Example: pcros

The platform to view tunables for.

Responses

Response Schema: application/json
updated
integer

The epoch timestamp the response was last updated.

latest
string <uri>

A link to the latest tunables file.

all
Array of strings <uri>

A list of all tunables files.

object

A collection of information about the current response.

Response samples

Content type
application/json
{
  • "updated": 1620518400,
  • "latest": "/tunables/rdo/pcros/001B94513599AED0C3383CF81A26955041C5C80D.json",
  • "all": [
    ],
  • "meta": {}
}

Get Tunables by Hash

Provided by Senexis. Special thanks to Alloc8or.

Tunables are used to control various internal variables within the game. Examples of this are cooldowns, limits and temporarily disabling parts of the game. These change when Rockstar decides to make tweaks, but do not change otherwise. These update every Tuesday at around 9 AM (UTC) but the update window is pretty sizeable.

path Parameters
game
required
string
Enum: "gta" "rdo"
Example: rdo

The game to view tunables for.

platform
required
string
Enum: "pcros" "ps3" "ps4" "ps5" "xbox360" "xboxone" "xboxsx"
Example: pcros

The platform to view tunables for.

hash
required
string
Example: 99201971A8132C891C2CA7E0C9EAFF381C970C70

A generated SHA-1 hash of this response.

Responses

Response Schema: application/json
hash
string

A generated SHA-1 hash of this response.

object
object

A collection of information about the current response.

Response samples

Content type
application/json
{
  • "hash": "99201971A8132C891C2CA7E0C9EAFF381C970C70",
  • "contents": null,
  • "meta": {}
}

Status

Everything related to service status.

Get Service Status

path Parameters
service
required
string
Enum: "digital_ocean" "discord" "rockstar" "sentry"

Service

Responses

Response Schema: application/json
updated
integer

The epoch timestamp the response was last updated.

hash
string

A generated SHA-1 hash of this response.

object

Various status information about certain components.

has_message
boolean

Indicates whether there is a message for any of the components.

has_problems
boolean

Indicates whether there are any problems with any of the components.

object

A collection of information about the current response.

Response samples

Content type
application/json
{
  • "updated": 1620518400,
  • "hash": "99201971A8132C891C2CA7E0C9EAFF381C970C70",
  • "statuses": {
    },
  • "has_message": true,
  • "has_problems": false,
  • "meta": {}
}

RDO.GG

Everything related to RDO.GG.

Get RDO.GG Patrons

Provided by Senexis.

Primarily used for RDO.GG related applications. Shows a full list of the people currently pledging to the RDO.GG Patreon. Also provides information about the currently active tiers on said Patreon. The list might not always be accurate due to Patreon API delays.

Responses

Response Schema: application/json
updated
integer

The epoch timestamp the response was last updated.

hash
string

A generated SHA-1 hash of this response.

patrons
Array of strings

A list of the currently active Patrons.

Array of objects

A list of the currently active Patreon tiers.

object

A collection of information about the current response.

Response samples

Content type
application/json
{
  • "updated": 1620518400,
  • "hash": "99201971A8132C891C2CA7E0C9EAFF381C970C70",
  • "patrons": [
    ],
  • "tiers": [],
  • "meta": {}
}

Get Translation Status

Provided by Senexis.

Primarily used for RDO.GG related applications. Shows a full list of available languages, namespaces (commands), and all translation progress of each language. Additionally, also lists all the users with their respective word count.

Responses

Response Schema: application/json
updated
integer

The epoch timestamp the response was last updated.

hash
string

A generated SHA-1 hash of this response.

available
Array of strings

A full list of currently available languages.

Array of objects

A list of the currently available with its progress and translators.

object

A collection of information about the current response.

Response samples

Content type
application/json
{
  • "updated": 1620518400,
  • "hash": "99201971A8132C891C2CA7E0C9EAFF381C970C70",
  • "available": [
    ],
  • "languages": [
    ],
  • "meta": {}
}