Jump to content

REST API Documentation

/downloads/files


Upload a file

For requests using an OAuth Access Token for a particular member, any parameters the user doesn't have permission to use are ignored (for example, locked will only be honoured if the authenticated user has permission to lock files).


Parameters

Name Type Description
Required category int The ID number of the category the file should be created in
Required author int The ID number of the member creating the file (0 for guest). Required for requests made using an API Key or the Client Credentials Grant Type. For requests using an OAuth Access Token for a particular member, that member will always be the author
Required title string The file name
Required description string The description as HTML (e.g. "<p>This is an file.</p>"). Will be sanatized for requests using an OAuth Access Token for a particular member; will be saved unaltered for requests made using an API Key or the Client Credentials Grant Type.
Required files object Files. Keys should be filename (e.g. 'file.txt') and values should be file content
version string The version number
screenshots object Screenshots. Keys should be filename (e.g. 'screenshot1.png') and values should be file content.
prefix string Prefix tag
tags string Comma-separated list of tags (do not include prefix)
date datetime The date/time that should be used for the file post date. If not provided, will use the current date/time. Ignored for requests using an OAuth Access Token for a particular member.
ip_address string The IP address that should be stored for the file. If not provided, will use the IP address from the API request. Ignored for requests using an OAuth Access Token for a particular member.
locked int 1/0 indicating if the file should be locked
hidden int 0 = unhidden; 1 = hidden, pending moderator approval; -1 = hidden (as if hidden by a moderator)
pinned int 1/0 indicating if the file should be featured
featured int 1/0 indicating if the file should be featured
anonymous bool If 1, the item will be posted anonymously.

Exceptions

Code Message Description
1S303/7 NO_CATEGEORY The category ID does not exist
1S303/8 NO_AUTHOR The author ID does not exist
1S303/9 NO_TITLE No title was supplied
1S303/A NO_DESC No description was supplied
1S303/B NO_FILES No files were supplied
2S303/H NO_PERMISSION The authorized user does not have permission to create a file in that category
1S303/I BAD_FILE_EXT One of the files has a file type that is not allowed
1S303/J BAD_FILE_SIZE One of the files is too big
1S303/K BAD_SS One of the screenshots is not a valid image
1S303/L BAD_SS_SIZE One of the screenshots is too big by filesize
1S303/M BAD_SS_DIMS One of the screenshots is too big by dimensions
1S303/N NO_SS No screenshots are provided, but screenshots are required for the category

Response

Name Type Description
id int ID number
title string Title
category category object Category
author member object Author
date datetime When the file was created
updated datetime When the file was last updated
description string Description
version string Current version number
changelog string Description of what changed between this version and the previous one
primaryScreenshot file object The primary screenshot
screenshots array of file objects Screenshots
screenshotsThumbnails array of file objects Screenshots in Thumbnail size
primaryScreenshot file object The primary screenshot
primaryScreenshotThumb file object The primary screenshot
downloads int Number of downloads
comments int Number of comments
reviews int Number of reviews
views int Number of views
prefix string The prefix tag, if there is one
tags array of strings The tags
locked bool File is locked
hidden bool File is hidden
pinned bool File is pinned
featured bool File is featured
url string URL
topic topic object The topic
isPaid bool Is the file paid?
prices array of floats Prices (key is currency, value is price). Does not consider associated packages.
canDownload bool If the authenticated member can download. Will be NULL for requests made using an API Key or the Client Credentials Grant Type
canBuy bool Can purchase the file
canReview bool Can review the file
rating float File rating
purchases int Number of purchases
hasPendingVersion bool Whether file has a new version pending. Will be NULL for client requests where the authorized member cannot upload new versions.

category object

Name Type Description
id int ID number
name string Name
url string URL
class string Node class
parentId int|null Parent Node ID
permissions object|null Node permissions

member object

Name Type Description
id int ID number
name string Username
title string Member title
timezone string Member timezone
formattedName string Username with group formatting
primaryGroup group object Primary group
secondaryGroups array of group objects Secondary groups
email string Email address
joined datetime Registration date
registrationIpAddress string IP address when registered
warningPoints int Number of active warning points
reputationPoints int Number of reputation points
photoUrl string URL to photo (which will be the site's default if they haven't set one)
photoUrlIsDefault bool Indicates if the value of photoUrl is the site's default
coverPhotoUrl string URL to profile cover photo (will be blank if there isn't one)
profileUrl string|null URL to profile
validating bool Whether or not the validating flag is set on the member account
posts int Number of content item submissions member has made
lastActivity datetime|null Last activity date on the site.
lastVisit datetime|null Last distinct visit date on the site.
lastPost datetime|null Latest content submission date.
profileViews int Number of times member's profile has been viewed
birthday string Member birthday in MM/DD/YYYY format (or MM/DD format if no year has been supplied).
customFields array of fieldgroup objects Custom profile fields. For requests using an OAuth Access Token for a particular member, only fields the authorized user can view will be included
rank array of rank objects Rank
achievements_points int Points
allowAdminEmails bool Whether or not this member wants to receive admin emails
completed bool Whether or not the registration is completed

group object

Name Type Description
id int ID number
name string Name
formattedName string Name with formatting

fieldgroup object

Name Type Description
name string Group name
fields array of field objects Fields

field object

Name Type Description
name string Field name
value string Value

rank object

Name Type Description
id int ID number
name string Name
url string Path to the rank icon
points int Points

file object

Name Type Description
name string The filename
url string URL to where file is stored
size int Filesize in bytes

topic object

Name Type Description
id int ID number
title string Title
forum forum object Forum
posts int Number of posts
views int Number of views
prefix string The prefix tag, if there is one
tags array of strings The tags
firstPost post object The first post in the topic
lastPost post object The last post in the topic
bestAnswer post object The best answer, if this is a question and there is one
locked bool Topic is locked
hidden bool Topic is hidden
pinned bool Topic is pinned
featured bool Topic is featured
archived bool Topic is archived
poll poll object Poll data, if there is one
url string URL
rating float Average Rating

forum object

Name Type Description
id int ID number
name string Forum name
path string Forum name including parents (e.g. "Example Category > Example Forum")
type string The type of forum: "discussions", "questions", "category", or "redirect"
topics int Number of topics in forum
url string URL
parentId int|null Parent Node ID
permissions object|null Node permissions

post object

Name Type Description
id int ID number
item_id int The ID number of the item this belongs to
author member object Author
date datetime Date
content string The content
hidden bool Is hidden?
url string URL to content
reactions array Array of reactions given, array key is member_id of reaction giver ([member_id => [ title, id, value, icon ]])

poll object

Name Type Description
id int ID number
title string Title
startDate datetime Start Date
closed bool Closed
closedDate datetime Closed Date
public bool Public poll
votes int Number of votes
questions array of question objects The questions

question object

Name Type Description
question string The question
options object Each of the options and how many votes they have had
×
×
  • Create New...