ScrollX Tag Page

Help:Api

0 posts0 sourcesWiki updated 4/28/2026
Browse Full Gallery →

About Help:Api

Danbooru offers a REST-like API to make scripting easy. All you need is a way to GET, POST, PUT and DELETE to URLs. Responses are given in either XML or JSON format.

Testing

API calls can be tested on https://testbooru.donmai.us. Scripts should be tested there before using them on the main site.

Basics

HTTP defines four basic request methods: GET, POST, PUT and DELETE. You'll be using these methods to interact with the Danbooru API. Most API calls that change the state of the database (like creating, updating, or deleting something) require an HTTP POST, PUT or DELETE call. API calls that only retrieve data can typically be done with an HTTP GET call.

A URL is considered a resource and the HTTP methods are actions you perform on the resource. For example, GET /posts/23.json returns a JSON representation of post #23. GET /posts/23.xml returns an XML representation. PUT or PATCH /posts/6.json would update the resource, for example changing its tags.

Some resources require parameters. For example, you can find tags that start with the letter 'a' by calling GET /tags.json?search[name_matches]=a* This will give you a JSON listing of all tags with names starting with an a.

For POST, PUT and DELETE requests you must pass these parameters along in the body instead of the query parameters. Body parameters may be encoded in one of two ways. The usual way is with key-values pairs using "Content-Type: application/x-www-form-urlencoded":

[code]

curl -u "$login:$api_key" -X PUT "https://testbooru.donmai.us/posts/6.json" -d 'post[rating]=s&post[tag_string]=danboo'

[/code]

Parameters may also be encoded as JSON using "Content-Type: application/json":

[code]

curl -u "$login:$api_key" -X PUT "https://testbooru.donmai.us/posts/6.json" -d '{ "post": { "rating": "s", "tag_string": "danboo" } }' -H "Content-Type: application/json"

[/code]

Clients should identify themselves with a unique [code]User-Agent[/code] header, for example [code]YourBotName/1.0 (your-danbooru-username)[/code]. Don't impersonate browsers or use the default header of your library.

Responses

All API calls that change state will return a single element response (for XML calls). They are formatted like this:

[code]

<?xml version="1.0" encoding="UTF-8"?>

<response success="false" reason="duplicate"/>

[/code]

For JSON responses, they'll look like this:

[code]

{ "success": false, "reason": "duplicate" }

[/code]

While you can usually determine success or failure based on the response object, you can also figure out what happened based on the HTTP status code. In addition to the standard ones, Danbooru uses some custom status codes in the 4xx and 5xx range.

  • 200 OK: Request was successful
  • 204 No Content: Request was successful (returned by create actions)
  • 400 Bad Request: The given parameters could not be parsed
  • 401 Unauthorized: Authentication failed
  • 403 Forbidden: Access denied (see Help:Users for permissions information)
  • 404 Not Found: Not found
  • 410 Gone: Pagination limit (see Help:Users for pagination limits)
  • 420 Invalid Record: Record could not be saved
  • 422 Locked: The resource is locked and cannot be modified
  • 423 Already Exists: Resource already exists
  • 424 Invalid Parameters: The given parameters were invalid
  • 429 User Throttled: User is throttled, try again later (see Help:Users for API limits)
  • 500 Internal Server Error: A database timeout, or some unknown error occurred on the server
  • 502 Bad Gateway: Server cannot currently handle the request, try again later (returned during heavy load)
  • 503 Service Unavailable: Server cannot currently handle the request, try again later (returned during downbooru)

Authentication

You will need an API key if you need to login using the API. You can generate an API key by visiting your user profile and clicking the Generate API key button.

To authenticate with the API, pass the [code]login[/code] and [code]api_key[/code] URL parameters, where [code]login[/code] is your username and [code]api_key[/code] is your API key:

[code]

https://danbooru.donmai.us/profile.json?login=your_username&api_key=your_api_key

[/code]

You can also authenticate using HTTP Basic Authentication:

[code]

curl "https://$username:[email protected]/profile.json"

curl --user "$username:$api_key" https://danbooru.donmai.us/profile.json

[/code]

Most HTTP libraries support HTTP basic authentication out of the box. If yours doesn't, you can generate the authentication header manually. The format is [code]Authentication: Basic $secret[/code] where [code]$secret = base64($username + ":" + $api_key)[/code]. In other words, concatenate your username and API key together, separated by a colon, then Base64 encode the result:

[code]

curl --header "Authorization: Basic $(printf "%s" "$username:$api_key" | base64)" https://danbooru.donmai.us/profile.json

[/code]

If you are writing a user script for a browser, you do not need to embed an API key. You can rely on the user's session.

⚠️ IMPORTANT! Keep your API key secret. Treat it like a password. Gaining access to it allows full access to your account. Do not publicly post your API key or distribute it in scripts.

Rate Limits

There's a global rate limit on read requests of 10 requests per second regardless of account or endpoint.

Most kinds of update actions are rate limited according to user level:

  • Basic users: 1 update/second
  • Gold users and above: 4 updates/second

Each rate-limited endpoint has a burst pool, which lets a user make several consecutive updates or reads before being rate limited. The rate at which the pool is recharged depends on the endpoint, but most follow the rates above.

The burst pool size, recharge rate, and current limits are returned as JSON in the [code]x-rate-limit[/code] HTTP header. They can also be found at /rate_limits, which shows the limits as of the last API call (the page won't update until the API is used again).

Rate limits are shared between accounts and IP addresses: multiple accounts with the same IP address will share the same rate limit.

Queries

Common Search Parameters

All search endpoints support a common set of parameters:

  • page Returns the given page. Subject to maximum page limits (see Help:Users).

You can also use [code]b<id>[/code] and [code]a<id>[/code] to request results before <id> or after <id>, respectively.

E.g. to get a page of posts before post #999999, you'd make a request to [code]/posts.json?page=b999999[/code].

  • limit The number of results to return per page. The maximum limit is 200 for /posts.json and 1000 for everything else.
  • search[id]
  • search[created_at]
  • search[updated_at]
  • search[order]=custom Returns results in the same order as given by [code]search[id]=3,2,1[/code].

Parameter Parsing

Numeric search parameters support ranges:

  • [code]100[/code]
  • [code]>100[/code]
  • [code]>=100[/code]
  • [code]<100[/code]
  • [code]<=100[/code]
  • [code]100,200,300[/code]
  • [code]100..200[/code] (inclusive)

Date parameters also support ranges:

  • [code]2012-01-01[/code]
  • [code]>2012-01-01[/code]
  • [code]>=2012-01-01[/code]
  • [code]<2012-01-01[/code]
  • [code]<=2012-01-01[/code]
  • [code]2012-01-01,2012-01-02[/code]
  • [code]2012-01-01..2013-01-01[/code] (inclusive)

Boolean parameters accept any of the following values for true or false:

  • True: true, t, yes, y, on, 1
  • False: false, f, no, n, off, 0

Most string parameters support using asterisks ([code]*[/code]) as wildcards. Wildcards can be escaped with [code]\*[/code]. Literal backslashes can be escaped with [code]\\[/code].

Versioned Types

Type Versions

Non-versioned Types

Other Functions

Related Tags

Show

The base URL is GET /related_tag.json.

  • query REQUIRED The tag to find the related tags for.
  • category If specified, show only tags of a specific category. Can be: general, artist, copyright, character, meta

List of API endpoints

API Endpoints

[code]

Verb URI Pattern Controller#Action

GET /posts/random(.:format) posts#random

GET /posts(.:format) posts#index

GET /posts/:id(.:format) posts#show

PATCH /posts/:id(.:format) posts#update

PUT /posts/:id(.:format) posts#update

DELETE /posts/:id(.:format) posts#destroy

GET /autocomplete(.:format) autocomplete#index

GET / posts#index

GET /admin/users/:id/edit(.:format) admin/users#edit

PATCH /admin/users/:id(.:format) admin/users#update

PUT /admin/users/:id(.:format) admin/users#update

GET /admin/dashboard(.:format) admin/dashboards#show

GET /moderator/dashboard(.:format) moderator/dashboards#show

GET /moderator/ip_addrs/search(.:format) moderator/ip_addrs#search

GET /moderator/ip_addrs(.:format) moderator/ip_addrs#index

POST /moderator/post/posts/:id/expunge(.:format) moderator/post/posts#expunge

GET /moderator/post/posts/:id/confirm_move_favorites(.:format) moderator/post/posts#confirm_move_favorites

POST /moderator/post/posts/:id/move_favorites(.:format) moderator/post/posts#move_favorites

GET /moderator/post/posts/:id/confirm_ban(.:format) moderator/post/posts#confirm_ban

POST /moderator/post/posts/:id/ban(.:format) moderator/post/posts#ban

POST /moderator/post/posts/:id/unban(.:format) moderator/post/posts#unban

GET /moderator/ip_addrs/search(.:format) moderator/ip_addrs#search

GET /moderator/ip_addrs(.:format) moderator/ip_addrs#index

GET /explore/posts/popular(.:format) explore/posts#popular

GET /explore/posts/curated(.:format) explore/posts#curated

GET /explore/posts/viewed(.:format) explore/posts#viewed

GET /explore/posts/searches(.:format) explore/posts#searches

GET /explore/posts/missed_searches(.:format) explore/posts#missed_searches

GET /maintenance/user/count_fixes/new(.:format) maintenance/user/count_fixes#new

POST /maintenance/user/count_fixes(.:format) maintenance/user/count_fixes#create

GET /maintenance/user/email_notification(.:format) maintenance/user/email_notifications#show

DELETE /maintenance/user/email_notification(.:format) maintenance/user/email_notifications#destroy

GET /maintenance/user/deletion(.:format) maintenance/user/deletions#show

DELETE /maintenance/user/deletion(.:format) maintenance/user/deletions#destroy

POST /maintenance/user/api_key/view(.:format) maintenance/user/api_keys#view

GET /maintenance/user/api_key(.:format) maintenance/user/api_keys#show

PATCH /maintenance/user/api_key(.:format) maintenance/user/api_keys#update

PUT /maintenance/user/api_key(.:format) maintenance/user/api_keys#update

DELETE /maintenance/user/api_key(.:format) maintenance/user/api_keys#destroy

PUT /artists/:id/revert(.:format) artists#revert

PUT /artists/:id/ban(.:format) artists#ban

PUT /artists/:id/unban(.:format) artists#unban

GET /artists/show_or_new(.:format) artists#show_or_new

GET /artists/banned(.:format) artists#banned

GET /artists(.:format) artists#index

POST /artists(.:format) artists#create

GET /artists/new(.:format) artists#new

GET /artists/:id/edit(.:format) artists#edit

GET /artists/:id(.:format) artists#show

PATCH /artists/:id(.:format) artists#update

PUT /artists/:id(.:format) artists#update

DELETE /artists/:id(.:format) artists#destroy

GET /artist_urls(.:format) artist_urls#index

GET /artist_versions/search(.:format) artist_versions#search

GET /artist_versions(.:format) artist_versions#index

GET /artist_versions/:id(.:format) artist_versions#show

GET /bans(.:format) bans#index

POST /bans(.:format) bans#create

GET /bans/new(.:format) bans#new

GET /bans/:id/edit(.:format) bans#edit

GET /bans/:id(.:format) bans#show

PATCH /bans/:id(.:format) bans#update

PUT /bans/:id(.:format) bans#update

DELETE /bans/:id(.:format) bans#destroy

POST /bulk_update_requests/:id/approve(.:format) bulk_update_requests#approve

GET /bulk_update_requests(.:format) bulk_update_requests#index

POST /bulk_update_requests(.:format) bulk_update_requests#create

GET /bulk_update_requests/new(.:format) bulk_update_requests#new

GET /bulk_update_requests/:id/edit(.:format) bulk_update_requests#edit

GET /bulk_update_requests/:id(.:format) bulk_update_requests#show

PATCH /bulk_update_requests/:id(.:format) bulk_update_requests#update

PUT /bulk_update_requests/:id(.:format) bulk_update_requests#update

DELETE /bulk_update_requests/:id(.:format) bulk_update_requests#destroy

GET /comment_votes(.:format) comment_votes#index

DELETE /comments/:comment_id/votes(.:format) comment_votes#destroy

POST /comments/:comment_id/votes(.:format) comment_votes#create

GET /comments/search(.:format) comments#search

POST /comments/:id/undelete(.:format) comments#undelete

GET /comments(.:format) comments#index

POST /comments(.:format) comments#create

GET /comments/new(.:format) comments#new

GET /comments/:id/edit(.:format) comments#edit

GET /comments/:id(.:format) comments#show

PATCH /comments/:id(.:format) comments#update

PUT /comments/:id(.:format) comments#update

DELETE /comments/:id(.:format) comments#destroy

GET /counts/posts(.:format) counts#posts

GET /counts(.:format) counts#index

POST /counts(.:format) counts#create

GET /counts/new(.:format) counts#new

GET /counts/:id/edit(.:format) counts#edit

GET /counts/:id(.:format) counts#show

PATCH /counts/:id(.:format) counts#update

PUT /counts/:id(.:format) counts#update

DELETE /counts/:id(.:format) counts#destroy

PUT /delayed_jobs/:id/run(.:format) delayed_jobs#run

PUT /delayed_jobs/:id/retry(.:format) delayed_jobs#retry

PUT /delayed_jobs/:id/cancel(.:format) delayed_jobs#cancel

GET /delayed_jobs(.:format) delayed_jobs#index

DELETE /delayed_jobs/:id(.:format) delayed_jobs#destroy

POST /dmails/mark_all_as_read(.:format) dmails#mark_all_as_read

GET /dmails(.:format) dmails#index

POST /dmails(.:format) dmails#create

GET /dmails/new(.:format) dmails#new

GET /dmails/:id(.:format) dmails#show

PATCH /dmails/:id(.:format) dmails#update

PUT /dmails/:id(.:format) dmails#update

POST /dtext_preview(.:format) dtext_previews#create

GET /dtext_links(.:format) dtext_links#index

GET /emails(.:format) emails#index

GET /emails/:id(.:format) emails#show

GET /favorites(.:format) favorites#index

POST /favorites(.:format) favorites#create

DELETE /favorites/:id(.:format) favorites#destroy

PUT /favorite_groups/:id/add_post(.:format) favorite_groups#add_post

GET /favorite_groups/:favorite_group_id/order/edit(.:format) favorite_group_orders#edit

GET /favorite_groups(.:format) favorite_groups#index

POST /favorite_groups(.:format) favorite_groups#create

GET /favorite_groups/new(.:format) favorite_groups#new

GET /favorite_groups/:id/edit(.:format) favorite_groups#edit

GET /favorite_groups/:id(.:format) favorite_groups#show

PATCH /favorite_groups/:id(.:format) favorite_groups#update

PUT /favorite_groups/:id(.:format) favorite_groups#update

DELETE /favorite_groups/:id(.:format) favorite_groups#destroy

POST /forum_posts/:id/undelete(.:format) forum_posts#undelete

GET /forum_posts/search(.:format) forum_posts#search

GET /forum_posts(.:format) forum_posts#index

POST /forum_posts(.:format) forum_posts#create

GET /forum_posts/new(.:format) forum_posts#new

GET /forum_posts/:id/edit(.:format) forum_posts#edit

GET /forum_posts/:id(.:format) forum_posts#show

PATCH /forum_posts/:id(.:format) forum_posts#update

PUT /forum_posts/:id(.:format) forum_posts#update

DELETE /forum_posts/:id(.:format) forum_posts#destroy

GET /forum_post_votes(.:format) forum_post_votes#index

POST /forum_post_votes(.:format) forum_post_votes#create

DELETE /forum_post_votes/:id(.:format) forum_post_votes#destroy

POST /forum_topics/:id/undelete(.:format) forum_topics#undelete

POST /forum_topics/mark_all_as_read(.:format) forum_topics#mark_all_as_read

GET /forum_topics(.:format) forum_topics#index

POST /forum_topics(.:format) forum_topics#create

GET /forum_topics/new(.:format) forum_topics#new

GET /forum_topics/:id/edit(.:format) forum_topics#edit

GET /forum_topics/:id(.:format) forum_topics#show

PATCH /forum_topics/:id(.:format) forum_topics#update

PUT /forum_topics/:id(.:format) forum_topics#update

DELETE /forum_topics/:id(.:format) forum_topics#destroy

GET /forum_topic_visits(.:format) forum_topic_visits#index

GET /ip_bans(.:format) ip_bans#index

POST /ip_bans(.:format) ip_bans#create

GET /ip_bans/new(.:format) ip_bans#new

PATCH /ip_bans/:id(.:format) ip_bans#update

PUT /ip_bans/:id(.:format) ip_bans#update

GET /ip_addresses(.:format) ip_addresses#index

GET /ip_addresses/:id(.:format) ip_addresses#show {:id=>/.+?(?=\.json|\.xml|\.html)|.+/}

GET /iqdb_queries/preview(.:format) iqdb_queries#preview

GET /iqdb_queries/check(.:format) redirect(301)

GET /iqdb_queries(.:format) iqdb_queries#show

POST /iqdb_queries(.:format) iqdb_queries#create

GET /mod_actions(.:format) mod_actions#index

POST /mod_actions(.:format) mod_actions#create

GET /mod_actions/new(.:format) mod_actions#new

GET /mod_actions/:id/edit(.:format) mod_actions#edit

GET /mod_actions/:id(.:format) mod_actions#show

PATCH /mod_actions/:id(.:format) mod_actions#update

PUT /mod_actions/:id(.:format) mod_actions#update

DELETE /mod_actions/:id(.:format) mod_actions#destroy

GET /moderation_reports(.:format) moderation_reports#index

POST /moderation_reports(.:format) moderation_reports#create

GET /moderation_reports/new(.:format) moderation_reports#new

GET /moderation_reports/:id(.:format) moderation_reports#show

GET /modqueue(.:format) modqueue#index

GET /news_updates(.:format) news_updates#index

POST /news_updates(.:format) news_updates#create

GET /news_updates/new(.:format) news_updates#new

GET /news_updates/:id/edit(.:format) news_updates#edit

GET /news_updates/:id(.:format) news_updates#show

PATCH /news_updates/:id(.:format) news_updates#update

PUT /news_updates/:id(.:format) news_updates#update

DELETE /news_updates/:id(.:format) news_updates#destroy

PUT /notes/:id/revert(.:format) notes#revert

GET /notes(.:format) notes#index

POST /notes(.:format) notes#create

GET /notes/new(.:format) notes#new

GET /notes/:id/edit(.:format) notes#edit

GET /notes/:id(.:format) notes#show

PATCH /notes/:id(.:format) notes#update

PUT /notes/:id(.:format) notes#update

DELETE /notes/:id(.:format) notes#destroy

GET /note_versions(.:format) note_versions#index

GET /note_versions/:id(.:format) note_versions#show

GET /note_previews(.:format) note_previews#show

GET /password_reset(.:format) password_resets#show

POST /password_reset(.:format) password_resets#create

GET /pixiv_ugoira_frame_data(.:format) pixiv_ugoira_frame_data#index

PUT /pools/:id/revert(.:format) pools#revert

POST /pools/:id/undelete(.:format) pools#undelete

GET /pools/gallery(.:format) pools#gallery

GET /pools/:pool_id/order/edit(.:format) pool_orders#edit

GET /pools(.:format) pools#index

POST /pools(.:format) pools#create

GET /pools/new(.:format) pools#new

GET /pools/:id/edit(.:format) pools#edit

GET /pools/:id(.:format) pools#show

PATCH /pools/:id(.:format) pools#update

PUT /pools/:id(.:format) pools#update

DELETE /pools/:id(.:format) pools#destroy

POST /pool_element(.:format) pool_elements#create

GET /pool_versions/:id/diff(.:format) pool_versions#diff

GET /pool_versions/search(.:format) pool_versions#search

GET /pool_versions(.:format) pool_versions#index

GET /post_replacements(.:format) post_replacements#index

POST /post_replacements(.:format) post_replacements#create

GET /post_replacements/new(.:format) post_replacements#new

PATCH /post_replacements/:id(.:format) post_replacements#update

PUT /post_replacements/:id(.:format) post_replacements#update

GET /post_votes(.:format) post_votes#index

GET /posts/:post_id/events(.:format) post_events#index

GET /posts/:post_id/replacements(.:format) post_replacements#index

POST /posts/:post_id/replacements(.:format) post_replacements#create

GET /posts/:post_id/replacements/new(.:format) post_replacements#new

PUT /posts/:post_id/artist_commentary/create_or_update(.:format) artist_commentaries#create_or_update

PUT /posts/:post_id/artist_commentary/revert(.:format) artist_commentaries#revert

GET /posts/:post_id/artist_commentary(.:format) artist_commentaries#show

DELETE /posts/:post_id/votes(.:format) post_votes#destroy

POST /posts/:post_id/votes(.:format) post_votes#create

PUT /posts/:id/revert(.:format) posts#revert

PUT /posts/:id/copy_notes(.:format) posts#copy_notes

GET /posts/:id/show_seq(.:format) posts#show_seq

PUT /posts/:id/mark_as_translated(.:format) posts#mark_as_translated

GET /posts/:post_id/similar(.:format) iqdb_queries#index

GET /post_appeals(.:format) post_appeals#index

POST /post_appeals(.:format) post_appeals#create

GET /post_appeals/new(.:format) post_appeals#new

GET /post_appeals/:id/edit(.:format) post_appeals#edit

GET /post_appeals/:id(.:format) post_appeals#show

PATCH /post_appeals/:id(.:format) post_appeals#update

PUT /post_appeals/:id(.:format) post_appeals#update

DELETE /post_appeals/:id(.:format) post_appeals#destroy

GET /post_flags(.:format) post_flags#index

POST /post_flags(.:format) post_flags#create

GET /post_flags/new(.:format) post_flags#new

GET /post_flags/:id/edit(.:format) post_flags#edit

GET /post_flags/:id(.:format) post_flags#show

PATCH /post_flags/:id(.:format) post_flags#update

PUT /post_flags/:id(.:format) post_flags#update

DELETE /post_flags/:id(.:format) post_flags#destroy

GET /post_approvals(.:format) post_approvals#index

POST /post_approvals(.:format) post_approvals#create

GET /post_disapprovals(.:format) post_disapprovals#index

POST /post_disapprovals(.:format) post_disapprovals#create

GET /post_disapprovals/:id(.:format) post_disapprovals#show

PUT /post_versions/:id/undo(.:format) post_versions#undo

GET /post_versions/search(.:format) post_versions#search

GET /post_versions(.:format) post_versions#index

PUT /artist_commentaries/create_or_update(.:format) artist_commentaries#create_or_update

GET /artist_commentaries/search(.:format) artist_commentaries#search

PUT /artist_commentaries/:id/revert(.:format) artist_commentaries#revert

GET /artist_commentaries(.:format) artist_commentaries#index

GET /artist_commentaries/:id(.:format) artist_commentaries#show

GET /artist_commentary_versions(.:format) artist_commentary_versions#index

GET /artist_commentary_versions/:id(.:format) artist_commentary_versions#show

GET /related_tag(.:format) related_tags#show

PATCH /related_tag(.:format) related_tags#update

PUT /related_tag(.:format) related_tags#update

GET /recommended_posts(.:format) recommended_posts#index

GET /robots(.:format) robots#index

GET /saved_searches(.:format) saved_searches#index

POST /saved_searches(.:format) saved_searches#create

GET /saved_searches/new(.:format) saved_searches#new

GET /saved_searches/:id/edit(.:format) saved_searches#edit

PATCH /saved_searches/:id(.:format) saved_searches#update

PUT /saved_searches/:id(.:format) saved_searches#update

DELETE /saved_searches/:id(.:format) saved_searches#destroy

GET /session/sign_out(.:format) sessions#sign_out

GET /session/new(.:format) sessions#new

DELETE /session(.:format) sessions#destroy

POST /session(.:format) sessions#create

GET /source(.:format) sources#show

GET /status(.:format) status#show

GET /tags(.:format) tags#index

POST /tags(.:format) tags#create

GET /tags/new(.:format) tags#new

GET /tags/:id/edit(.:format) tags#edit

GET /tags/:id(.:format) tags#show

PATCH /tags/:id(.:format) tags#update

PUT /tags/:id(.:format) tags#update

DELETE /tags/:id(.:format) tags#destroy

GET /tag_aliases(.:format) tag_aliases#index

GET /tag_aliases/:id(.:format) tag_aliases#show

DELETE /tag_aliases/:id(.:format) tag_aliases#destroy

GET /tag_implications(.:format) tag_implications#index

GET /tag_implications/:id(.:format) tag_implications#show

DELETE /tag_implications/:id(.:format) tag_implications#destroy

POST /uploads/preprocess(.:format) uploads#preprocess

GET /uploads/batch(.:format) uploads#batch

GET /uploads/image_proxy(.:format) uploads#image_proxy

GET /uploads(.:format) uploads#index

POST /uploads(.:format) uploads#create

GET /uploads/new(.:format) uploads#new

GET /uploads/:id/edit(.:format) uploads#edit

GET /uploads/:id(.:format) uploads#show

PATCH /uploads/:id(.:format) uploads#update

PUT /uploads/:id(.:format) uploads#update

DELETE /uploads/:id(.:format) uploads#destroy

GET /users/:user_id/favorite_groups(.:format) favorite_groups#index

GET /users/:user_id/email/verify(.:format) emails#verify

POST /users/:user_id/email/send_confirmation(.:format) emails#send_confirmation

GET /users/:user_id/email/edit(.:format) emails#edit

GET /users/:user_id/email(.:format) emails#show

PATCH /users/:user_id/email(.:format) emails#update

PUT /users/:user_id/email(.:format) emails#update

GET /users/:user_id/password/edit(.:format) passwords#edit

PATCH /users/:user_id/password(.:format) passwords#update

PUT /users/:user_id/password(.:format) passwords#update

POST /users/:user_id/api_key/view(.:format) maintenance/user/api_keys#view

GET /users/:user_id/api_key(.:format) maintenance/user/api_keys#show

PATCH /users/:user_id/api_key(.:format) maintenance/user/api_keys#update

PUT /users/:user_id/api_key(.:format) maintenance/user/api_keys#update

DELETE /users/:user_id/api_key(.:format) maintenance/user/api_keys#destroy

GET /users/custom_style(.:format) users#custom_style

GET /users(.:format) users#index

POST /users(.:format) users#create

GET /users/new(.:format) users#new

GET /users/:id/edit(.:format) users#edit

GET /users/:id(.:format) users#show

PATCH /users/:id(.:format) users#update

PUT /users/:id(.:format) users#update

DELETE /users/:id(.:format) users#destroy

GET /user_upgrades(.:format) user_upgrades#index

POST /user_upgrades(.:format) user_upgrades#create

GET /user_upgrades/new(.:format) user_upgrades#new

GET /user_upgrades/:id(.:format) user_upgrades#show

GET /user_feedbacks(.:format) user_feedbacks#index

POST /user_feedbacks(.:format) user_feedbacks#create

GET /user_feedbacks/new(.:format) user_feedbacks#new

GET /user_feedbacks/:id/edit(.:format) user_feedbacks#edit

GET /user_feedbacks/:id(.:format) user_feedbacks#show

PATCH /user_feedbacks/:id(.:format) user_feedbacks#update

PUT /user_feedbacks/:id(.:format) user_feedbacks#update

GET /user_name_change_requests(.:format) user_name_change_requests#index

POST /user_name_change_requests(.:format) user_name_change_requests#create

GET /user_name_change_requests/new(.:format) user_name_change_requests#new

GET /user_name_change_requests/:id(.:format) user_name_change_requests#show

POST /webhooks/receive(.:format) webhooks#receive

GET /webhooks(.:format) webhooks#index

POST /webhooks(.:format) webhooks#create

GET /webhooks/new(.:format) webhooks#new

GET /webhooks/:id/edit(.:format) webhooks#edit

GET /webhooks/:id(.:format) webhooks#show

PATCH /webhooks/:id(.:format) webhooks#update

PUT /webhooks/:id(.:format) webhooks#update

DELETE /webhooks/:id(.:format) webhooks#destroy

PUT /wiki_pages/:id/revert(.:format) wiki_pages#revert {:id=>/.+?(?=\.json|\.xml|\.html)|.+/}

GET /wiki_pages/search(.:format) wiki_pages#search

GET /wiki_pages/show_or_new(.:format) wiki_pages#show_or_new

GET /wiki_pages(.:format) wiki_pages#index

POST /wiki_pages(.:format) wiki_pages#create

GET /wiki_pages/new(.:format) wiki_pages#new

GET /wiki_pages/:id/edit(.:format) wiki_pages#edit {:id=>/.+?(?=\.json|\.xml|\.html)|.+/}

GET /wiki_pages/:id(.:format) wiki_pages#show {:id=>/.+?(?=\.json|\.xml|\.html)|.+/}

PATCH /wiki_pages/:id(.:format) wiki_pages#update {:id=>/.+?(?=\.json|\.xml|\.html)|.+/}

PUT /wiki_pages/:id(.:format) wiki_pages#update {:id=>/.+?(?=\.json|\.xml|\.html)|.+/}

DELETE /wiki_pages/:id(.:format) wiki_pages#destroy {:id=>/.+?(?=\.json|\.xml|\.html)|.+/}

GET /wiki_page_versions/diff(.:format) wiki_page_versions#diff

GET /wiki_page_versions(.:format) wiki_page_versions#index

GET /wiki_page_versions/:id(.:format) wiki_page_versions#show

GET /tag/index.xml(.:format) legacy#tags {:format=>/xml/}

GET /tag/index.json(.:format) legacy#tags {:format=>/json/}

GET /post/index.xml(.:format) legacy#posts {:format=>/xml/}

GET /post/index.json(.:format) legacy#posts {:format=>/json/}

GET /artist(.:format) redirect(301)

GET /artist/show/:id(.:format) redirect(301, /artists/%{id})

GET /artist/show(.:format) redirect(301)

GET /forum(.:format) redirect(301)

GET /forum/show/:id(.:format) redirect(301)

GET /pool/show/:id(.:format) redirect(301, /pools/%{id})

GET /post/index(.:format) redirect(301)

GET /post/atom(.:format) redirect(301)

GET /post/show/:id/:tag_title(.:format) redirect(301, /posts/%{id})

GET /post/show/:id(.:format) redirect(301, /posts/%{id})

GET /tag(.:format) redirect(301)

GET /tag/index(.:format) redirect(301)

GET /user/show/:id(.:format) redirect(301, /users/%{id})

GET /wiki/show(.:format) redirect(301)

GET /help/:title(.:format) redirect(301)

GET /login(.:format) sessions#new

GET /logout(.:format) sessions#sign_out

GET /profile(.:format) users#profile

GET /settings(.:format) users#settings

GET /sitemap(.:format) static#sitemap_index

GET /opensearch(.:format) static#opensearch

GET /privacy(.:format) static#privacy_policy

GET /terms_of_service(.:format) static#terms_of_service

GET /static/keyboard_shortcuts(.:format) static#keyboard_shortcuts

GET /static/bookmarklet(.:format) static#bookmarklet

GET /static/site_map(.:format) static#site_map

GET /static/contact(.:format) static#contact

GET /static/dtext_help(.:format) static#dtext_help

GET /static/terms_of_service(.:format) redirect(301)

GET /mock/recommender/recommend/:user_id(.:format) mock_services#recommender_recommend

GET /mock/recommender/similiar/:post_id(.:format) mock_services#recommender_similar

GET /mock/reportbooru/missed_searches(.:format) mock_services#reportbooru_missed_searches

GET /mock/reportbooru/post_searches/rank(.:format) mock_services#reportbooru_post_searches

GET /mock/reportbooru/post_views/rank(.:format) mock_services#reportbooru_post_views

GET /mock/iqdbs/similar(.:format) mock_services#iqdbs_similar

POST /mock/iqdbs/similar(.:format) mock_services#iqdbs_similar

/*other(.:format) static#not_found

[/code]

See also

Go Back

Page 1