Toontown Rewritten

App · Gaming · 16 actions

Access live Toontown Rewritten game data through the keyless public API: Cog invasions, district population and status, the Silly Meter, Field Offices, adoptable Doodles, Goofy Speedway racing leaderboards, the Cavalcade, Cartoonival donations, game status, news posts, release notes, and download mirrors. No account or API key required.

Actions

ActionWhat it does
Get active field officesList every currently active Field Office by ZoneID, with its difficulty (stars), remaining annexes, and whether it is open.
Get active invasionsList the Cog invasions currently active in each district, with the invading Cog type, progress, and start time.
Get adoptable doodlesList every Doodle currently available for adoption across all districts, grouped by Playground, with each Doodle's DNA, traits, and jellybean cost.
Get Cartoonival donationsGet the running total of tokens donated to Riggy's Cartoonival fund this year.
Get Cavalcade statusGet the current status of the Cavalcade parade, including whether it is running and the street it is currently on.
Get game statusCheck whether Toontown Rewritten is open, along with the timestamps of the most recent login cookie and gameserver auth.
Get latest news postGet the most recently released news post.
Get news post by IDGet a specific news post by its ID.
Get populationGet the current total population of Toontown Rewritten plus a per-district breakdown of population and district status.
Get racing leaderboardsGet the Goofy Speedway racing leaderboards across all districts for today, the current week, the previous week, and all time.
Get release note by IDGet a specific release note, including its full body, by its note ID.
Get Silly Meter statusGet the current state of the Silly Meter: its HP, the three Silly Team rewards on offer, the active winner, and the next update time.
List download mirrorsList the base URLs of the download mirrors for the game's patch files.
List news postsList released news posts in reverse chronological order.
List release notesList release-note summaries (version slug and date, without bodies), newest first.
Render doodle imageBuild an image URL for a Doodle from its DNA string (from 'Get adoptable doodles').

Get active field offices

List every currently active Field Office by ZoneID, with its difficulty (stars), remaining annexes, and whether it is open.

Inputs

None.

Outputs

fieldOfficesobject
Example output
{
  "fieldOffices": {
    "fieldOffices": {
      "4100": {
        "annexes": 38,
        "department": "s",
        "difficulty": 2,
        "open": true
      },
      "5100": {
        "annexes": 80,
        "department": "s",
        "difficulty": 1,
        "open": true
      }
    },
    "lastUpdated": 1778702517
  }
}

Get active invasions

List the Cog invasions currently active in each district, with the invading Cog type, progress, and start time.

Inputs

None.

Outputs

invasionsobject
Example output
{
  "invasions": {
    "error": null,
    "invasions": {
      "Kaboom Cliffs": {
        "asOf": 1778702527,
        "progress": "2158/8000",
        "startTimestamp": 1778700988,
        "type": "Downsizer"
      },
      "Zoink Falls": {
        "asOf": 1778702523,
        "progress": "2500/8000",
        "startTimestamp": 1778700549,
        "type": "Mr. Hollywood (Skelecog)"
      }
    },
    "lastUpdated": 1778702533
  }
}

Get adoptable doodles

List every Doodle currently available for adoption across all districts, grouped by Playground, with each Doodle's DNA, traits, and jellybean cost. Use 'Render doodle image' to turn a DNA string into an image.

Inputs

None.

Outputs

doodlesobject
Example output
{
  "doodles": {
    "Zapwood": {
      "The Brrrgh": [
        {
          "cost": 3335,
          "dna": "64000203000401080200",
          "traits": [
            "Sometimes Tired",
            "Sometimes Bored"
          ]
        }
      ],
      "Toontown Central": [
        {
          "cost": 216,
          "dna": "64000000020107080100",
          "traits": [
            "Often Grumpy",
            "Often Lonely",
            "Sometimes Affectionate"
          ]
        }
      ]
    }
  }
}

Get Cartoonival donations

Get the running total of tokens donated to Riggy's Cartoonival fund this year.

Inputs

None.

Outputs

donationsobject
Example output
{
  "donations": {
    "tokensDonated": 12345678
  }
}

Get Cavalcade status

Get the current status of the Cavalcade parade, including whether it is running and the street it is currently on.

Inputs

None.

Outputs

cavalcadeobject
Example output
{
  "cavalcade": {
    "paradeLocation": 2200,
    "paradeLocationString": "Silly Street",
    "paradeStatus": "active"
  }
}

Get game status

Check whether Toontown Rewritten is open, along with the timestamps of the most recent login cookie and gameserver auth.

Inputs

None.

Outputs

statusobject
Example output
{
  "status": {
    "banner": null,
    "lastCookieIssuedAt": 1778702498,
    "lastGameAuthAt": 1778702504,
    "open": true
  }
}

Get latest news post

Get the most recently released news post.

Inputs

None.

Outputs

newsobject
Example output
{
  "news": {
    "author": "The Toontown Team",
    "body": "<p>Creative Toons of the World, we need <strong>YOU</strong>!</p>",
    "date": "April 23, 2026 at 12:00 PM",
    "image": "https://cdn.toontownrewritten.com/media/news-site/img/26-4-23_art_recruitment.png",
    "postId": 1100,
    "title": "Join Toontown Rewritten's Art Department!"
  }
}

Get news post by ID

Get a specific news post by its ID. Returns nothing if no post has that ID.

Inputs

News postpost_idtextRequired
Pick a news post, or reference a post ID from a previous step.

Outputs

newsobject
Example output
{
  "news": {
    "author": "The Toontown Team",
    "body": "<p>Creative Toons of the World, we need <strong>YOU</strong>!</p>",
    "date": "April 23, 2026 at 12:00 PM",
    "image": null,
    "postId": 1100,
    "title": "Join Toontown Rewritten's Art Department!"
  }
}

Get population

Get the current total population of Toontown Rewritten plus a per-district breakdown of population and district status.

Inputs

None.

Outputs

populationobject
Example output
{
  "population": {
    "error": null,
    "lastUpdated": 1778702505,
    "populationByDistrict": {
      "Kaboom Cliffs": 54,
      "Splat Summit": 291,
      "Zapwood": 353,
      "Zoink Falls": 81
    },
    "statusByDistrict": {
      "Kaboom Cliffs": "online",
      "Splat Summit": "online",
      "Zapwood": "online",
      "Zoink Falls": "online"
    },
    "totalPopulation": 1164
  }
}

Get racing leaderboards

Get the Goofy Speedway racing leaderboards across all districts for today, the current week, the previous week, and all time.

Inputs

None.

Outputs

leaderboardsobject
Example output
{
  "leaderboards": {
    "all_time": {
      "range": [
        1778616000,
        1778702400
      ]
    },
    "current_week": {
      "range": [
        1778616000,
        1778702400
      ]
    },
    "previous_week": {
      "range": [
        1778011200,
        1778097600
      ]
    },
    "today": {
      "Zapwood": {
        "Airborne Acres": [
          [
            "Flippy",
            "7413040101001600168b270d000d0d0104003400",
            38.42
          ]
        ]
      },
      "range": [
        1778616000,
        1778702400
      ]
    }
  }
}

Get release note by ID

Get a specific release note, including its full body, by its note ID.

Inputs

Release notenote_idtextRequired
Pick a release note, or reference a note ID from a previous step.

Outputs

releaseNoteobject
Example output
{
  "releaseNote": {
    "body": "=General\n* Changed the battle accuracy system's 95% hard cap to now be a soft cap.",
    "date": "April 2, 2026 at 12:08 PM",
    "noteId": 505,
    "slug": "ttr-live-v4.4.4.4.4.4.4.4a"
  }
}

Get Silly Meter status

Get the current state of the Silly Meter: its HP, the three Silly Team rewards on offer, the active winner, and the next update time.

Inputs

None.

Outputs

sillyMeterobject
Example output
{
  "sillyMeter": {
    "asOf": 1778702541,
    "hp": 4212472,
    "nextUpdateTimestamp": 1778703300,
    "rewardDescriptions": [
      "Earn double experience for Lure gags in all battles!",
      "Double your fun (and money) with double jellybeans!",
      "Earn double experience for Trap gags in all battles!"
    ],
    "rewardPoints": [
      null,
      null,
      null
    ],
    "rewards": [
      "Double Lure Experience",
      "Double Jellybeans",
      "Double Trap Experience"
    ],
    "state": "Active",
    "winner": null
  }
}

List download mirrors

List the base URLs of the download mirrors for the game's patch files.

Inputs

None.

Outputs

mirrorslist
Example output
{
  "mirrors": [
    "https://download.toontownrewritten.com/patches/"
  ]
}

List news posts

List released news posts in reverse chronological order. Use the page size and page number to page through older posts.

Inputs

Page sizelimitnumber
How many posts to return per page.At least 1. Default: 10.
Page numberpagenumber
Zero-indexed page number (0 is the newest page).At least 0. Default: 0.

Outputs

newslist
Example output
{
  "news": [
    {
      "author": "The Toontown Team",
      "body": "<p>Creative Toons of the World, we need <strong>YOU</strong>!</p>",
      "date": "April 23, 2026 at 12:00 PM",
      "image": "https://cdn.toontownrewritten.com/media/news-site/img/26-4-23_art_recruitment.png",
      "postId": 1100,
      "title": "Join Toontown Rewritten's Art Department!"
    }
  ]
}

List release notes

List release-note summaries (version slug and date, without bodies), newest first.

Inputs

None.

Outputs

releaseNoteslist
Example output
{
  "releaseNotes": [
    {
      "date": "April 2, 2026 at 12:08 PM",
      "noteId": 505,
      "slug": "ttr-live-v4.4.4.4.4.4.4.4a"
    }
  ]
}

Render doodle image

Build an image URL for a Doodle from its DNA string (from 'Get adoptable doodles'). A square size such as 256x256 or 512x512 is recommended.

Inputs

Doodle DNAdnatextRequired
The Doodle's DNA string, as returned by 'Get adoptable doodles'.
Widthwidthnumber
Image width in pixels.From 128 to 2048. Default: 512.
Heightheightnumber
Image height in pixels.From 128 to 2048. Default: 512.
Image formatextensiontext
The image format to render.One of: webp, png. Default: webp.

Outputs

imageUrltext
Example output
{
  "imageUrl": "https://rendition.toontownrewritten.com/render/64000000020107080100/doodle/512x512.webp"
}

On this page