Contact
Add a new contact
Request:
POST /users/{user_id}/contacts
Accept: application/xml
Content-Type: application/xml
<?xml version="1.0" encoding="UTF-8"?>
<contact>
<name>{name}</name>
<email>{email}</email>
<phone-number>{phone_number}</phone-number>
<im>{im}</im>
<im-network>{im_network}</im-network>
<time-zone>{time_zone}</time-zone>
</contact>
Most of the elements above should be self explanatory, other than a few that are specific to Lypp:
- im
- The user's instant messaging account, eg: john.doe@hotmail.com
- im-network
- The user's instance mesaging network. Can be one of the following:
- aim
- xmpp
- msn
- yahoo
- time-zone
- The user's time zone. Can be one of the following:
- Hawaii
- Alaska
- Pacific Time (US & Canada)
- Arizona
- Mountain Time (US & Canada)
- Central Time (US & Canada)
- Eastern Time (US & Canada)
- Indiana (East)
- Atlantic Time (Canada)
- Newfoundland
Response:
201 Created
Content-Type: application/xml
Location: /users/{user_id}/contacts/{contact_id}
<?xml version="1.0" encoding="UTF-8"?>
<contact>
<id type="integer">{contact_id}</id>
<created-at type="datetime">{created_at}</created-at>
<updated-at type="datetime">{updated_at}</updated-at>
<lock-version type="integer">{lock_version}</lock-version>
<name>{name}</name>
<email>{email}</email>
<phone-number>{phone_number}</phone-number>
<im>{im}</im>
<im-network>{im_network}</im-network>
<time-zone>{time_zone}</time-zone>
</contact>
Example:
curl \
-u username:password \
-H 'Accept: application/xml' \
-H 'Content-Type: application/xml' \
-d '<?xml version="1.0" encoding="UTF-8"?>
<contact>
<name>John Doe</name>
<email>test@example.com</email>
<phone-number>6045555555</phone-number>
</contact>' \
-X POST \
http://lypp.com/users/1/contacts
List all contacts
Request:
GET /users/{user_id}/contacts
Accept: application/xml
Response:
200 OK
Content-Type: application/xml
<?xml version="1.0" encoding="UTF-8"?>
<contacts type="array">
<contact>
<id type="integer">{contact_id}</id>
<created-at type="datetime">{created_at}</created-at>
<updated-at type="datetime">{updated_at}</updated-at>
<lock-version type="integer">{lock_version}</lock-version>
<name>{name}</name>
<email>{email}</email>
<phone-number>{phone_number}</phone-number>
<im>{im}</im>
<im-network>{im_network}</im-network>
<time-zone>{time_zone}</time-zone>
</contact>
...
</contacts>
Example:
curl \
-u username:password \
-H 'Accept: application/xml' \
http://lypp.com/users/1/contacts
Show a contact
Request:
GET /users/{user_id}/contacts/{contact_id}
Accept: application/xml
Response:
200 OK
Content-Type: application/xml
<?xml version="1.0" encoding="UTF-8"?>
<contact>
<id type="integer">{contact_id}</id>
<created-at type="datetime">{created_at}</created-at>
<updated-at type="datetime">{updated_at}</updated-at>
<lock-version type="integer">{lock_version}</lock-version>
<name>{name}</name>
<email>{email}</email>
<phone-number>{phone_number}</phone-number>
<im>{im}</im>
<im-network>{im_network}</im-network>
<time-zone>{time_zone}</time-zone>
</contact>
Example:
curl \
-u username:password \
-H 'Accept: application/xml' \
http://lypp.com/users/1/contacts/2
Update a contact
Request:
PUT /users/{user_id}/contacts/{contact_id}
Accept: application/xml
Content-Type: application/xml
<?xml version="1.0" encoding="UTF-8"?>
<contact>
<name>{name}</name>
<email>{email}</email>
<phone-number>{phone_number}</phone-number>
</contact>
Response:
200 OK
Content-Type: application/xml
<?xml version="1.0" encoding="UTF-8"?>
<contact>
<id type="integer">{contact_id}</id>
<created-at type="datetime">{created_at}</created-at>
<updated-at type="datetime">{updated_at}</updated-at>
<lock-version type="integer">{lock_version}</lock-version>
<name>{name}</name>
<email>{email}</email>
<phone-number>{phone_number}</phone-number>
<im>{im}</im>
<im-network>{im_network}</im-network>
<time-zone>{time_zone}</time-zone>
</contact>
Example:
curl \
-u username:password \
-H 'Accept: application/xml' \
-H 'Content-Type: application/xml' \
-d '<?xml version="1.0" encoding="UTF-8"?>
<contact>
<name>John Doe</name>
<email>test@example.com</email>
<phone-number>6045555555</phone-number>
</contact>' \
-X PUT \
http://lypp.com/users/1/contacts/2
Delete a contact
Request:
DELETE /users/{user_id}/contacts/{contact_id}
Accept: application/xml
Response:
204 No Content
Example:
curl \
-u username:password \
-H 'Accept: application/xml' \
-X DELETE \
http://lypp.com/users/1/contacts/2
