Difference between revisions of "Customer (Rest API)"
(Updated to reflect latest version.) |
(Sync to latest.) |
||
Line 2: | Line 2: | ||
− | == Index == | + | == Index (Reseller Only) == |
Line 68: | Line 68: | ||
− | == Show == | + | == Show (Reseller Only) == |
''URL'': | ''URL'': | ||
Line 114: | Line 114: | ||
− | == Add/Edit == | + | == Add/Edit (Reseller Only) == |
''URL'': | ''URL'': | ||
Line 181: | Line 181: | ||
− | == Delete == | + | == Delete (Reseller Only) == |
''URL'': | ''URL'': |
Revision as of 07:22, 29 March 2010
Contents
Index (Reseller Only)
URL:
[GET] https://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"}]}
Show (Reseller Only)
URL:
[GET] https://api.emailsrvr.com/v0/customers/(customer account number)
Description:
The show operation will return detailed information about the specified account.
Remarks:
To do the show operation on the account that is logged in instead of a customer's account, use "me" in the place of the customer account number i.e. 'https://api.emailsrvr.com/v0/customers/me'.
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"}
Add/Edit (Reseller Only)
URL:
Add: [POST] https://api.emailsrvr.com/customers Edit: [PUT] https://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 |
---|---|---|
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 |
Delete (Reseller Only)
URL:
[DELETE] https://api.emailsrvr.com/customers/(customer account number)
Description:
Deletes the account.
Example:
delete '/customers/999999', 'text/xml'