Difference between revisions of "Customer (Rest API)"
(add sample response for get customer list and single customer) |
|||
Line 24: | Line 24: | ||
<pre> | <pre> | ||
− | get '/customers?size=100&page=1 | + | get '/customers?size=100&page=1', 'text/xml' |
</pre> | </pre> | ||
+ | |||
+ | |||
+ | ''XML Result Example'': | ||
+ | |||
+ | <pre> | ||
+ | <?xml version="1.0" encoding="utf-8"?> | ||
+ | <customerList xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="urn:xml:customerList"> | ||
+ | <offset>0</offset> | ||
+ | <size>50</size> | ||
+ | <total>3</total> | ||
+ | <customers> | ||
+ | <customer> | ||
+ | <name>API Customer 17</name> | ||
+ | <accountNumber>460182</accountNumber> | ||
+ | <referenceNumber>49</referenceNumber> | ||
+ | </customer> | ||
+ | <customer> | ||
+ | <name>API Customer 39</name> | ||
+ | <accountNumber>460181</accountNumber> | ||
+ | <referenceNumber>23</referenceNumber> | ||
+ | </customer> | ||
+ | <customer> | ||
+ | <name>API Customer 50</name> | ||
+ | <accountNumber>460183</accountNumber> | ||
+ | <referenceNumber>10</referenceNumber> | ||
+ | </customer> | ||
+ | </customers> | ||
+ | </customerList> | ||
+ | </pre> | ||
+ | |||
+ | |||
+ | ''Json Result Example'': | ||
+ | |||
+ | {"offset":0,"size":50,"total":3,"customers":[{"name":"API Customer 17","accountNumber":"460182","referenceNumber":"49"},{"name":"API Customer 39","accountNumber":"460181","referenceNumber":"23"},{"name":"API Customer 50","accountNumber":"460183","referenceNumber":"10"}]} | ||
Line 65: | Line 99: | ||
get '/customers/me', 'text/xml' | get '/customers/me', 'text/xml' | ||
</pre> | </pre> | ||
+ | |||
+ | |||
+ | ''XML Result Example'': | ||
+ | |||
+ | <pre> | ||
+ | <?xml version="1.0" encoding="utf-8"?> | ||
+ | <customer xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="urn:xml:customer"> | ||
+ | <name>API Customer 17</name> | ||
+ | <accountNumber>460182</accountNumber> | ||
+ | <referenceNumber>49</referenceNumber> | ||
+ | </customer> | ||
+ | </pre> | ||
+ | |||
+ | |||
+ | ''Json Result Example'': | ||
+ | |||
+ | {"name":"API Customer 17","accountNumber":"460182","referenceNumber":"49"} | ||
Revision as of 13:51, 16 September 2009
Contents
Index
URL:
[GET] http://api.emailsrvr.com/v0/customers
Description:
This operation returns the list of customers that the authenticated user has access to.
Remarks:
For the text/xml format, refer to the following schema document: CustomerList.xsd
Example:
get '/customers?size=100&page=1', 'text/xml'
XML Result Example:
<?xml version="1.0" encoding="utf-8"?> <customerList xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="urn:xml:customerList"> <offset>0</offset> <size>50</size> <total>3</total> <customers> <customer> <name>API Customer 17</name> <accountNumber>460182</accountNumber> <referenceNumber>49</referenceNumber> </customer> <customer> <name>API Customer 39</name> <accountNumber>460181</accountNumber> <referenceNumber>23</referenceNumber> </customer> <customer> <name>API Customer 50</name> <accountNumber>460183</accountNumber> <referenceNumber>10</referenceNumber> </customer> </customers> </customerList>
Json Result Example:
{"offset":0,"size":50,"total":3,"customers":[{"name":"API Customer 17","accountNumber":"460182","referenceNumber":"49"},{"name":"API Customer 39","accountNumber":"460181","referenceNumber":"23"},{"name":"API Customer 50","accountNumber":"460183","referenceNumber":"10"}]}
Errors:
Description | HTTP Response Code | Sample Message |
---|---|---|
Format is invalid | 406 | Invalid format |
Show
URL:
[GET] http://api.emailsrvr.com/customers/(customer account number)
Description:
The show operation will return detailed information about the specified account.
Remarks:
Keyword "me" is equivalent to the reseller's own account number.
The show operation only supports the GET HTTP verb. For text/xml format, refer to the following schema document: Customer.xsd
Example:
get '/customers/me', 'text/xml'
XML Result Example:
<?xml version="1.0" encoding="utf-8"?> <customer xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="urn:xml:customer"> <name>API Customer 17</name> <accountNumber>460182</accountNumber> <referenceNumber>49</referenceNumber> </customer>
Json Result Example:
{"name":"API Customer 17","accountNumber":"460182","referenceNumber":"49"}
Errors:
Description | HTTP Response Code | Sample Message |
---|---|---|
Format is invalid | 406 | Invalid format |
Customer account number is invalid | 404 | Invalid account number |
Add/Edit
URL:
Add: [POST] http://api.emailsrvr.com/customers<br> Edit: [PUT] http://api.emailsrvr.com/customers/(customer account number)
Description:
Add/Edit a new sub-account. Note that customer number is not known until the customer is added.
Field Name | Data Type | Description |
---|---|---|
name | string | The customer's display name (Required for Add) |
referenceNumber | string | The reference number of this account |
Example:
post '/customers', 'text/xml', { 'name' => 'Name' }
put '/customers/999999', 'text/xml', { 'name' => 'NewName', 'referenceNumber' => '12345' }
Errors:
Description | HTTP Response Code | Sample Message |
---|---|---|
Format is invalid | 406 | Invalid format |
The name field was not specified | 400 | Missing required field: name |
The name field cannot be blank | 400 | Required field name cannot be empty |
Names cannot start with a space | 400 | Improper Customer Name |
The customer account was not found | 404 | Customer Not Found |
Delete
URL:
[DELETE] http://api.emailsrvr.com/customers/(customer account number)
Description:
Deletes the account.
Example:
delete '/customers/999999', 'text/xml'
Errors:
Description | HTTP Response Code | Sample Message |
---|---|---|
Format is invalid | 406 | Invalid format |
The customer account was not found | 404 | Customer Not Found |