Rest - Admin - Flatpack

From Views API Documentation
Jump to navigation Jump to search

Purpose

To automate and retrieve flatpack archives from views

Base URL

https://app.viewsapp.net/api/restful/admin/flatpack

Get a list of available blocks

 curl --url <Base URL>/getblocks(.json|xml) -u<username>:<password> 

These are the objects can be packed into a flatpack. By default all available data is stored within the flatpack

<?xml version="1.0" encoding="UTF-8"?>
<admin>
    <flatpackblocks>
        <flatpackblock id="0">reports</flatpackblock>
        <flatpackblock id="1">agencyProject</flatpackblock>
        <flatpackblock id="2">caseStudies</flatpackblock>
        <flatpackblock id="3">finance</flatpackblock>
        <flatpackblock id="4">group</flatpackblock>
        <flatpackblock id="5">media</flatpackblock>
        <flatpackblock id="6">note</flatpackblock>
        <flatpackblock id="7">objectives</flatpackblock>
        <flatpackblock id="8">outcomes</flatpackblock>
        <flatpackblock id="9">personCondition</flatpackblock>
        <flatpackblock id="10">personContact</flatpackblock>
        <flatpackblock id="11">personQualifications</flatpackblock>
        <flatpackblock id="12">personRestriction</flatpackblock>
        <flatpackblock id="13">questionnaireAnswers</flatpackblock>
        <flatpackblock id="14">questionnaire</flatpackblock>
        <flatpackblock id="15">questionsData</flatpackblock>
        <flatpackblock id="16">reportsPublished</flatpackblock>
        <flatpackblock id="17">session</flatpackblock>
        <flatpackblock id="18">sessionGroup</flatpackblock>
        <flatpackblock id="19">sessionStaffAttendance</flatpackblock>
        <flatpackblock id="20">stock</flatpackblock>
        <flatpackblock id="21">stockCategory</flatpackblock> 
        <flatpackblock id="22">stockLoan</flatpackblock>
        <flatpackblock id="23">venue</flatpackblock>
        <flatpackblock id="24">personTypePerson</flatpackblock>
        <flatpackblock id="25">personTypeStaff</flatpackblock>
        <flatpackblock id="26">personTypeVolunteer</flatpackblock>
        <flatpackblock id="27">personTypeProfessional</flatpackblock>
        <flatpackblock id="28">sessionAttendance</flatpackblock>
    </flatpackblocks>
</admin>

Note 1: The list above may vary from agency to agency

Note 2: The id's in the resulting XML data are irrelevant and can be ignored


Generate a Flatpack

curl --url <Base URL>/<file> -u<username>:<password> -XPOST [--data "<xml>"]

This will generate a new flatpack, if one does not already exist. If not data is posted to the API, the the flatpack is generated with all the available blocks. To restrict the data within the flatpack archive, you should pass a list of blocks you want:

<flatpackblocks>
    <flatpackblock>personTypePerson</flatpackblock>
    <flatpackblock>personTypeStaff</flatpackblock>
    <flatpackblock>personTypeVolunteer</flatpackblock>
    <flatpackblock>personTypeProfessional</flatpackblock>
    <flatpackblock>sessionAttendance</flatpackblock>
</flatpackblocks>


Listing available Flatpacks

curl --url <Base URL>/list(.json|xml) -u<username>:<password> 
<?xml version="1.0" encoding="UTF-8"?>
<admin>
    <flatpacks>
        <flatpack id="0">
            <file>flatpack20160113.zip</file>
            <date>13/01/2016</date>
            <size>1100021</size>
            <sha1sum>2b77ba54249c7a25f4a05be2b9a7c28a5fe9071f</sha1sum>
        </flatpack>
        <flatpack id="1">
            <file>flatpack20160112.zip</file>
            <date>2016-01-12</date>
            <size>1099668</size>
            <sha1sum>68eac14b20480b9e77f599b8685307153e3f43db</sha1sum>
        </flatpack>
    </flatpacks>
</admin>

Note: The id's in the resulting XML data are irrelevant and can be ignored

Downloading a Flatpack

curl --url <Base URL>/<file> -u<username>:<password> 

This will download a the flatpack zip file requested.

Deleting Flatpacks / House keeping

This is currently not implemented. Please contact us if you need this