Rest - Contacts - Volunteers: Difference between revisions
(→Schema) |
|||
(2 intermediate revisions by the same user not shown) | |||
Line 4: | Line 4: | ||
===Base URL=== | ===Base URL=== | ||
https://app.viewsapp.net/api/restful/contacts/volunteers | |||
===Schema=== | ===Schema=== | ||
<nowiki>https://app. | <nowiki>https://app.viewsapp.net/api/restful/contacts/volunteers/schema(.xml|.json|.xsd)</nowiki> | ||
==Fetching a volunteers record== | ==Fetching a volunteers record== | ||
Line 29: | Line 29: | ||
<TypeName>volunteers</TypeName> | <TypeName>volunteers</TypeName> | ||
</volunteers> | </volunteers> | ||
==Fetching multiple volunteer records in one call== | |||
It is possible to use the search endpoint to retrieve multiple records | |||
curl --url <Base URL>/search?PersonID[]=xxx&PersonID[]=xxx&PersonID[]=xxx& -u<username>:<password> -H Content-Type:text/xml | |||
Depending on how many you are fetching, you may need to use POST rather than GET | |||
==Searching for a volunteer record== | ==Searching for a volunteer record== | ||
Line 42: | Line 49: | ||
* Updated - yyyy-mm-dd | * Updated - yyyy-mm-dd | ||
* Archived - yyyy-mm-dd | * Archived - yyyy-mm-dd | ||
==Creating a volunteer record== | |||
Once you have created your data file, you can send it using the following: | |||
curl --url <Base URL> -u<username>:<password> -H Content-Type:text/xml -X POST -d "<xml>" | |||
If there is a problem with creating that record, you will get a response containing all the errors, plus a copy of the translated data you supplied. | |||
If the record was created successfully, the service will return a complete reocrd for the newly created record if the attribute id set as the newly created id. | |||
==Updating a volunteer record== | |||
curl --url <Base URL>/<id> -u<username>:<password> -H Content-Type:text/xml -X PUT -d "<xml>" | |||
* id - The ID of the volunteer | |||
The XML should be in the same format as the create XML. However, you only need to supply fields that you wish to update. For example: | |||
<?xml version="1.0" encoding="utf-8"?> | |||
<volunteer id="100001"> | |||
<Forename>Jane</Forename> | |||
<Surname>Smith</Surname> | |||
</volunteer> | |||
''The above would result in updating volunteer 1000001's Forename and Surname values'' | |||
==Archiving a volunteer record== | |||
curl --url <Base URL>/<id>/archive -u<username>:<password> -H Content-Type:text/xml -X PUT -d '<status>1</status>' | |||
* id - The ID of the volunteer record | |||
This will set the archive flag on a volunteer record. If you set the status to 0, then it will remove the archive flag. | |||
==Deleting a volunteer record== | |||
curl --url <Base URL>/<id> -u<username>:<password> -H Content-Type:text/xml -X DELETE | |||
* id - The ID of the volunteer | |||
This should be used with great care as it will permenently delete a volunteer record. |
Latest revision as of 08:34, 6 October 2021
Purpose
This is a read-only API for fetching volunteers regardless of whether they are Staff Volunteers or Participant Volunteers
Base URL
https://app.viewsapp.net/api/restful/contacts/volunteers
Schema
https://app.viewsapp.net/api/restful/contacts/volunteers/schema(.xml|.json|.xsd)
Fetching a volunteers record
curl --url <Base URL>/<id> -u<username>:<password> -H Content-Type:text/xml
This will return an xml file similar to this
<?xml version="1.0" encoding="utf-8"?> <volunteers id="100001"> <Nickname></Nickname> <Forename>John</Forename> <Surname>Smith</Surname> ... <Created>2011-05-09 10:26:09</Created> <CreatedBy>a.user</CreatedBy> <Updated>2011-05-09 10:26:09</Updated> <UpdatedBy>a.user</UpdatedBy> <Archived>0000-00-00 00:00:00</Archived> <ArchivedBy></ArchivedBy> <Type>1</Type> <PersonID>100001</PersonID> <TypeName>volunteers</TypeName> </volunteers>
Fetching multiple volunteer records in one call
It is possible to use the search endpoint to retrieve multiple records
curl --url <Base URL>/search?PersonID[]=xxx&PersonID[]=xxx&PersonID[]=xxx& -u<username>:<password> -H Content-Type:text/xml
Depending on how many you are fetching, you may need to use POST rather than GET
Searching for a volunteer record
curl --url <Base URL>/search?q=<query> -u<username>:<password> -H Content-Type:text/xml
- query - This is a text string to use to search for in the volunteers records
You can search for any field for a specific value by setting the field as a parameter. Please refer to the schema for field names.
There are also a series of fields that you use -from and -to modifiers to express a range:
- DateOfBirth - yyyy-mm-dd
- Age - int (Please note that this is in days)
- Created - yyyy-mm-dd
- Updated - yyyy-mm-dd
- Archived - yyyy-mm-dd
Creating a volunteer record
Once you have created your data file, you can send it using the following:
curl --url <Base URL> -u<username>:<password> -H Content-Type:text/xml -X POST -d "<xml>"
If there is a problem with creating that record, you will get a response containing all the errors, plus a copy of the translated data you supplied.
If the record was created successfully, the service will return a complete reocrd for the newly created record if the attribute id set as the newly created id.
Updating a volunteer record
curl --url <Base URL>/<id> -u<username>:<password> -H Content-Type:text/xml -X PUT -d "<xml>"
- id - The ID of the volunteer
The XML should be in the same format as the create XML. However, you only need to supply fields that you wish to update. For example:
<?xml version="1.0" encoding="utf-8"?> <volunteer id="100001"> <Forename>Jane</Forename> <Surname>Smith</Surname> </volunteer>
The above would result in updating volunteer 1000001's Forename and Surname values
Archiving a volunteer record
curl --url <Base URL>/<id>/archive -u<username>:<password> -H Content-Type:text/xml -X PUT -d '<status>1</status>'
- id - The ID of the volunteer record
This will set the archive flag on a volunteer record. If you set the status to 0, then it will remove the archive flag.
Deleting a volunteer record
curl --url <Base URL>/<id> -u<username>:<password> -H Content-Type:text/xml -X DELETE
- id - The ID of the volunteer
This should be used with great care as it will permenently delete a volunteer record.