Views API Documentation: Difference between revisions

From Views API Documentation
Jump to navigation Jump to search
 
(One intermediate revision by the same user not shown)
Line 11: Line 11:


The use of OAthu2 access_tokens can be used. To do this, you must first request an <code>access_token</code> from the authentication portal https://authport.viewsapp.net/. This can be done in the following way (using Google Apps Script:
The use of OAthu2 access_tokens can be used. To do this, you must first request an <code>access_token</code> from the authentication portal https://authport.viewsapp.net/. This can be done in the following way (using Google Apps Script:
 
<pre>
  // Get access_token
// Get access_token
  var response = UrlFetchApp.fetch('ttps://authportal.viewsapp.net/token.php', {
var response = UrlFetchApp.fetch('https://authportal.viewsapp.net/token.php', {
    'method'  : 'post',
  'method'  : 'post',
    'payload' : {'grant_type': 'password', 'username' : 'my_username', 'password' : 'my_password'},
  'payload' : {'grant_type': 'password', 'username' : 'my_username', 'password' : 'my_password'},
    'headers' : {"Authorization": "Basic " + Utilities.base64Encode('my_username' + ":" + 'my_password')}
  'headers' : {"Authorization": "Basic " + Utilities.base64Encode('my_username' + ":" + 'my_password')}
  });
});
  var access_token = JSON.parse(response.getContentText()).access_token;
var access_token = JSON.parse(response.getContentText()).access_token;
</pre>
    
    
You would then pass the following fields along side any request:
You would then pass the following fields along side any request:
Line 25: Line 26:
* access_token=<access_token>
* access_token=<access_token>


 
via curl:
 
<pre>curl --url https://authportal.viewsapp.net/token.php -X POST -d "grant_type=password" -u<username>:<password> -H Accept:application/json</pre>


====Searching the API's====
====Searching the API's====
Line 47: Line 48:
** [[Rest - Contacts - Participants - Conditions|Conditions]]
** [[Rest - Contacts - Participants - Conditions|Conditions]]
** [[Rest - Contacts - Participants - Restrictions|Restrictions]]
** [[Rest - Contacts - Participants - Restrictions|Restrictions]]
** [[Rest - Contacts - Participants - Associations|Associations]]
* [[Rest - Contacts - Staff|Staff]]
* [[Rest - Contacts - Staff|Staff]]
** [[Rest - Contacts - Staff - Sessions|Session Attendance]]
** [[Rest - Contacts - Staff - Sessions|Session Attendance]]
Line 53: Line 55:
** [[Rest - Contacts - Staff - Questionnaires|Questionnaires]]
** [[Rest - Contacts - Staff - Questionnaires|Questionnaires]]
** [[Rest - Contacts - Staff - Volunteering|Volunteering]]
** [[Rest - Contacts - Staff - Volunteering|Volunteering]]
** [[Rest - Contacts - Staff - Associations|Associations]]
* [[Rest - Contacts - Volunteers|Volunteers]]
* [[Rest - Contacts - Volunteers|Volunteers]]
** [[Rest - Contacts - Volunteers - Sessions|Session Attendance]]
** [[Rest - Contacts - Volunteers - Sessions|Session Attendance]]

Latest revision as of 13:57, 17 January 2022

Rest

General Overview

All of our REST services are available in both XML and JSON formats, unless otherwise stated. The default format is XML. For the purposes of this documentation we only document the XML method. If you want to interact using json, then you should either make sure you request using Content-Type: application/json, alternatively you have append the extension .json to the URI e.g:

curl --url <Base URL>/<id> -u<username>:<password> -H Accept:application/json

or

curl --url <Base URL>/<id>.json -u<username>:<password>

Using OAuth2

The use of OAthu2 access_tokens can be used. To do this, you must first request an access_token from the authentication portal https://authport.viewsapp.net/. This can be done in the following way (using Google Apps Script:

// Get access_token
var response = UrlFetchApp.fetch('https://authportal.viewsapp.net/token.php', {
  'method'  : 'post',
  'payload' : {'grant_type': 'password', 'username' : 'my_username', 'password' : 'my_password'},
  'headers' : {"Authorization": "Basic " + Utilities.base64Encode('my_username' + ":" + 'my_password')}
});
var access_token = JSON.parse(response.getContentText()).access_token;

You would then pass the following fields along side any request:

  • client_id=<username>
  • access_token=<access_token>

via curl:

curl --url https://authportal.viewsapp.net/token.php -X POST -d "grant_type=password" -u<username>:<password> -H Accept:application/json

Searching the API's

A lot of the API's have a search capabilities and share some parameters:

  • q=<string> - This is a free text field for basic searching
  • pageFold=<int> - This the number of results to return in any result set
  • offset=<int> - This is how many records to offset in the result set
  • page=<int> - This can be used in place of offset as is just makes an adjustment to the offset value using the following fomula: offset = (page-1)*pageFold.
    • If used in conjunction with offset, then each page is offset by the specified values also.
    • By default this equals 1.
  • archived - By default, only non-archived results are returned. Setting this parameter to 1 result in searching archived records

Contacts

Work

Evidence

Admin

SOAP Documention

Contacts

Evidence