Rest - Contacts - Participants: Difference between revisions

From Views API Documentation
Jump to navigation Jump to search
(No difference)

Revision as of 08:24, 28 May 2012

Purpose

TUsed for creating, editing and deleting Participants from the Views system.

Base URL

http://app.views.coop/api/restful/contacts/participants

Creating a participant

As with all our services, the data structure can vary from account to account, depending how you have configured your system. To get the expected schema for the data you need to supply, you should download the schema information from: http://app.views.coop/api/restful/contacts/participants/schema(.xml%7C.json%7C.xsd)

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.

Fetching a partcipant

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"?>
<participant 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>participant</TypeName>
</participant>

Searching for a participant

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 participants records

Updating a participant

curl --url <Base URL>/<id> -u<username>:<password> -H Content-Type:text/xml -X PUT -d "<xml>"
  • id - The ID of the participant

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"?>
<participant id="100001">
   <Forename>Jane</Forename>
   <Surname>Smith</Surname>
</participant>

The above would result in updating participant 1000001's Forename and Surname values

Archiving a participant

curl --url <Base URL>/<id> -u<username>:<password> -H Content-Type:text/xml -X PUT -d '<status>1</status>'
  • id - The ID of the participant

This will set the archive flag on a participant. If you set the status to 0, then it will remove the archive flag.


Deleting a participant

curl --url <Base URL>/<id> -u<username>:<password> -H Content-Type:text/xml -X DELETE
  • id - The ID of the participant

This should be used with great care as it will permenently delet a participants record.