Skip to content
Lodle edited this page May 13, 2014 · 4 revisions

Table of Contents

Upload Crashdump

This is used to upload a crashdump file from the client.

Input

URL

 * http://api.desura.com/1/crashupload

Post

 * crashfile: Required, This is the dump file compressed using bzip2
 * os: Required, string. This is the operating system and version (eg. Win XP SP3)
 * appid: Required, int. This is the [wiki:GeneralAppVersion application version]
 * build: Required, int. This is the application build
 * user: Optional, string. Hint at who uploaded the crash

Process

 1. When wanting to upload a crashdump this api is called
   * Invalid data will result in a 107 (validation error) being thrown.
   * Any other errors will result in a 100 (generic error) message being thrown.
 1. If a valid data is provided, 0 (ok) will be returned

Output

0: Ok

<?xml version="1.0" encoding="utf-8"?> 
<crashupload xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="desura" version="1">
	<status code="0"/>
</crashupload>

107: Validation Error

<?xml version="1.0" encoding="utf-8"?> 
<crashupload xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="desura" version="1">
	<status code="107">The OS field is required. You did not select a crashfile file to upload.</status>
	<validation>
		<fields>
			<os>The OS field is required.</os>
			<crashfile>You did not select a crashfile file to upload.</crashfile>
		</fields>
	</validation>
</crashupload>

100: Generic Error

As above, only with different status code and text.

Method

Once a crash dump has been uploaded it needs to be added to a db table with all the info.