This page has details for how to interact with upload records through the API.
01 Record field format
[hr]
[table]
[thead]
[tr]
[th]Name[/th]
[th]Type[/th]
[th]Details[/th]
[/tr]
[/thead]
[tbody]
[tr]
[td][code]id[/code][/td]
[td]integer[/td]
[td]>0[/td]
[/tr]
[tr]
[td][code]uploader_id[/code][/td]
[td]integer[/td]
[td]>0[/td]
[/tr]
[tr]
[td][code]source[/code][/td]
[td]string[/td]
[td][/td]
[/tr]
[tr]
[td][code]referer_url[/code][/td]
[td]string[/td]
[td][/td]
[/tr]
[tr]
[td][code]media_asset_count[/code][/td]
[td]integer[/td]
[td][/td]
[/tr]
[tr]
[td][code]status[/code][/td]
[td]string[/td]
[td][/td]
[/tr]
[tr]
[td][code]error[/code][/td]
[td]string or null[/td]
[td][/td]
[/tr]
[tr]
[td][code]created_at[/code][/td]
[td]timestamp[/td]
[td][/td]
[/tr]
[tr]
[td][code]updated_at[/code][/td]
[td]timestamp[/td]
[td][/td]
[/tr]
[/tbody]
[/table]
02 Associated attributes
[hr]
The following is the list of relations that can be included in the API results (see Help:Common URL Parameters for more info):
[table]
[thead]
[tr]
[th]Name[/th]
[th]Type[/th]
[th]Number[/th]
[th]Availability[/th]
[th]Details[/th]
[/tr]
[/thead]
[tbody]
[tr]
[td][code]uploader[/code][/td]
[td]user[/td]
[td]single[/td]
[td]required[/td]
[td][/td]
[/tr]
[tr]
[td][code]upload_media_assets[/code][/td]
[td]upload media asset[/td]
[td]multiple[/td]
[td]required[/td]
[td][/td]
[/tr]
[tr]
[td][code]media_assets[/code][/td]
[td]media asset[/td]
[td]multiple[/td]
[td]required[/td]
[td][/td]
[/tr]
[tr]
[td][code]posts[/code][/td]
[td]post[/td]
[td]multiple[/td]
[td]optional[/td]
[td][/td]
[/tr]
[/tbody]
[/table]
03 Index
[hr]
Returns multiple upload records.
[table]
[tbody]
[tr]
[td]HTTP Method[/td]
[td]GET[/td]
[/tr]
[tr]
[td]Base URL[/td]
[td][code]/uploads.json[/code][/td]
[/tr]
[tr]
[td]Type[/td]
[td]read request[/td]
[/tr]
[tr]
[td]Description[/td]
[td]The default order is ID descending[/td]
[/tr]
[/tbody]
[/table]
Search attributes
Search parameters take the following format (see Help:Common URL Parameters for more info):
[code]
search[FIELD]=VALUE
[/code]
The following are the base fields along with their associated type. Check the syntax pages for all of the available variations.
- Number syntax
- [code]id[/code]
- [code]media_asset_count[/code]
- [code]created_at[/code]
- [code]updated_at[/code]
- String syntax
- [code]status[/code]
- [code]source[/code]
- [code]referer_url[/code]
- Post syntax
- [code]posts[/code]
- User syntax
- [code]uploader[/code]
- Chaining syntax
- [code]media_assets[/code]
- [code]upload_media_assets[/code]
Special search parameters
The following are additional search fields.
- [code]is_posted[/code] - Whether to show uploads that have a post or not (Help:Boolean Syntax).
Search order
Using the search parameter [code]order[/code] with one of the following values changes the order of the results.
- [code]id[/code] - ID descending.
- [code]id_desc[/code] - ID descending.
- [code]id_asc[/code] - ID descending.
- [code]random[/code] - Random order.
- [code]custom[/code] - (See Help:Common URL Parameters for more details)
04 Show
[hr]
Returns a single upload record.
[table]
[tbody]
[tr]
[td]HTTP Method[/td]
[td]GET[/td]
[/tr]
[tr]
[td]Base URL[/td]
[td][code]/uploads/$id.json[/code][/td]
[/tr]
[tr]
[td]Type[/td]
[td]read request[/td]
[/tr]
[tr]
[td]Description[/td]
[td][code]$id[/code] is the upload ID[/td]
[/tr]
[/tbody]
[/table]
05 Create
[hr]
Creates a single upload record.
[table]
[tbody]
[tr]
[td]HTTP Method[/td]
[td]POST[/td]
[/tr]
[tr]
[td]Base URL[/td]
[td][code]/uploads.json[/code][/td]
[/tr]
[tr]
[td]Type[/td]
[td]write request[/td]
[/tr]
[/tbody]
[/table]
Create parameters
Upload parameters take the following format (see Help:API Write Requests for more info):
[code]
Upload[FIELD]=VALUE
[/code]
- Mandatory: One of these values must be present.
- [code]source[/code]
- [code]files[/code] (Help:Array Format])
- Optional:
- [code]referer_url[/code]
06 See also
[hr]
07 External links
[hr]
[table]
[tbody]
[tr]
[td]Controller[/td]
[td]<https://github.com/danbooru/danbooru/blob/master/app/controllers/uploads_controller.rb>[/td]
[td][/td]
[/tr]
[tr]
[td]Model[/td]
[td]<https://github.com/danbooru/danbooru/blob/master/app/models/upload.rb>[/td]
[/tr]
[tr]
[td]Policy[/td]
[td]<https://github.com/danbooru/danbooru/blob/master/app/policies/upload_policy.rb>[/td]
[/tr]
[/tbody]
[/table]