API Upload Project Assets

From zFairs Contest Management
Revision as of 14:37, 23 November 2020 by Trent (talk | contribs) (Trent moved page API Upload Project Image to API Upload Project Assets)

Upload Project Assets

Upload Project Image

You can use our api to upload images to a project, so these can be viewed by your judges or in the showcase. To do this you need to POST a message to your site. Below is an example of what needs to be posted.

fetch('/api/data/project/file', {
    method:'POST',
    headers:{'Content-Type': 'application/json'},
    body: JSON.stringify({
            Username:'admin username',
            Password: 'password',
            FairId: '9df61f13-474b-442f-ac1f-edca7348ef71', //This value can be found in your url it's the value of f
            Body: {
				"ProjectKey":"32161f13-474b-442f-ac1f-edca7348e000",
				"Base64String" : "iVBORw0KGgoAAAANSUhEUgAAAQIAA...", //not required if you use DownloadFromUrl
				"DownloadFromUrl":"http://yoursite.com/somefile.png", //optional can be used in stead of Base64String
				"FileName": "myAwesomeFile.png",
				"Caption": "indescribable"
			}
        })
})
.then(response => response.json())
.then(data=>{console.log('Success: ',data);})
.catch((error)=>{console.log('Error: ', error);});

Upload Project Paperwork

You can use our api to upload project paperwork, so these can be viewed by your judges, SRC, and IRB. These files need to be PDFs, you will need to get the PaperworkFileType form the API Get Info. To do this you need to POST a message to your site. Below is an example of what needs to be posted.

fetch('/api/data/project/file', {
    method:'POST',
    headers:{'Content-Type': 'application/json'},
    body: JSON.stringify({
            Username:'admin username',
            Password: 'password',
            FairId: '9df61f13-474b-442f-ac1f-edca7348ef71', //This value can be found in your url it's the value of f
            Body: {
				"ProjectKey":"32161f13-474b-442f-ac1f-edca7348e000",
				"PaperworkFileType": 123, // this is pulled from the get info api
				"Base64String" : "iVBORw0KGgoAAAANSUhEUgAAAQIAA...", //not required if you use DownloadFromUrl
				"DownloadFromUrl":"http://yoursite.com/somefile.png", //optional can be used in stead of Base64String
				"FileName": "myAwesomeFile.png",
				"Caption": "indescribable"
			}
        })
})
.then(response => response.json())
.then(data=>{console.log('Success: ',data);})
.catch((error)=>{console.log('Error: ', error);});