Chartbot is dedicated to digging us out of the hole that not responding to Billboard's site revisions has caused. Every three years, Billboard undergoes a site revamp, breaking thousands of links. When Chartbot started, we had 87,000 links to Billboard.com, of which around 80,000 were broken.

So far, six phases of Chartbot have been approved for operation:

This phase focused on links to chart pages for artists in the following forms:
  1. http://www.billboard.com/artist/artist name/chart-history/magic number?f=chart number&g=Singles
  2. http://www.billboard.com/artist/artist name/chart-history/magic number?f=chart number&g=Albums
  3. http://www.billboard.com/artist/artist name/chart-history/magic number>
  4. http://www.billboard.com/artist//magic number/artist name/chart?f=chart number
  5. http://www.billboard.com/artist//magic number/artist name/chart

It converted them all to {{BillboardURLbyName|artist=artist name|chart=chart name}}. This format allows us to compensate for future changes in the URL without writing bots to do so.

This is the only phase intended for continuous operation. As people add new hardcoded links, the bot will periodically convert them to templates to help prevent this from reoccuring.

This phase focused on date conversion: looking for the last generation of URL
http://www.billboard.com/<random text due to bug in Billboard.com>#/charts/chartname?chartDate=date

and converted them to http://www.billboard.com/charts/date/chartname

This phase focused on article links: looking for
  1. http://www.billboard.com/bbcom/esearch/article_display.jsp?vnu_content_id=<article id>
  2. http://www.billboard.com/news/<title>-<article id>.story
and converting them to modern form. This conversion involved direct interaction with the Billboard site to guide the format of the created link.
This phase focused on biographical links: looking for
  1. http://www.billboard.com/bbcom/discography/index.jsp?JSESSIONID=irrelevantnoisestring&pid=147604&aid=413521
  2. http://www.billboard.com/bbcom/bio/index.jsp?pid=23708
  3. http://www.billboard.com/..../bio/pid
  4. http://www.billboard.com/artist/name/pid
and converting them to {{BillboardURLbyName|artist=artist name|chart=chart name}} or {{BillboardURLbyName|artist=artist name|bio=true}} as appropriate.
This phase focused on biographical links: looking for
  1. http://www.billboard.com/bbcom/esearch/chart_display.jsp?cfi=417&cfgn=Singles&cfn=Global+Dance+Tracks&ci=3084943&cdi=9307737&cid=07%2F21%2F2007
  2. http://www.billboard.com/bbcom/yearend/chart_display.jsp?f=Top+Latin+Albums&g=Year-end+Albums
  3. http://www.billboard.com/bbcom/charts/yearend_chart_display.jsp?f=The+Billboard+Hot+100&g=Year-end+Singles&year=1947
For these URLs, Chartbot normally did a direct translation of the URL using the chart identifiers and the date. When there was either no provided date or the provided date was older than Billboard maintained weekly lists for that particular chart, Chartbot parsed the infoboxes in the article to create a {{BillboardURLbyName|artist=artist name|chart=chart name}} template.
This phase focused on biographical links: looking for
  1. http://www.billboard.com/bbcom/retrieve_chart_history.do?model.vnuArtistId=<artist id>&model.vnuAlbumId=<album id>
  2. http://www.billboard.com/charts/<chart-name>
  3. http://www.billboard.com/song/<artist name>/<song name>/<recording id>
  4. http://www.billboard.com/album/<artist name>/<song name>/<recording id>
  5. http://www.billboard.com/artist/<artist name>/discography/songs/<number>
  6. http://www.billboard.com/artist/<artist name>/discography/albums/<number>

In these cases, {{BillboardURLbyName|artist=artist name|chart=chart name}} was used to replace the link to the individual song or album (which no longer work), or, in case 2, to deal with the fact that the editor had linked to the current week's chart: a link which rotted within one week.