Overview
  • Namespace
  • Class

Namespaces

  • MailChimp
    • AuthorizedApps
    • Automations
    • Batches
    • CampaignFolders
    • Campaigns
    • Conversations
    • Ecommerce
    • FileManager
    • Lists
    • Reports
    • TemplateFolders
    • Templates

Classes

  • MailChimp\AuthorizedApps\AuthorizedApps
  • MailChimp\Automations\Automations
  • MailChimp\Batches\Batches
  • MailChimp\CampaignFolders\CampaignFolders
  • MailChimp\Campaigns\Campaigns
  • MailChimp\Campaigns\Content
  • MailChimp\Campaigns\Feedback
  • MailChimp\Conversations\Conversations
  • MailChimp\Ecommerce\Carts
  • MailChimp\Ecommerce\Customers
  • MailChimp\Ecommerce\Ecommerce
  • MailChimp\Ecommerce\Orders
  • MailChimp\Ecommerce\Products
  • MailChimp\FileManager\Files
  • MailChimp\FileManager\Folders
  • MailChimp\Lists\Interests
  • MailChimp\Lists\Lists
  • MailChimp\Lists\Members
  • MailChimp\Lists\MergeFields
  • MailChimp\Lists\Segments
  • MailChimp\Lists\SignupForms
  • MailChimp\Lists\Webhooks
  • MailChimp\MailChimp
  • MailChimp\Reports\Reports
  • MailChimp\TemplateFolders\TemplateFolders
  • MailChimp\Templates\Templates
 1 <?php
 2 namespace MailChimp\Ecommerce;
 3 
 4 class Customers extends Ecommerce
 5 {
 6 
 7     /**
 8      * Get information about a store’s customers.
 9      *
10      * @param string $store_id
11      * @param  array (optional) $query
12      * @return object
13      */
14     public function getCustomers($store_id, array $query = [])
15     {
16         return self::execute("GET", "ecommerce/stores/{$store_id}/customers", $query);
17     }
18 
19     /**
20      * Get information about a specific customer.
21      *
22      * @param string $store_id
23      * @param string $customer_id
24      * @param  array (optional) $query
25      * @return object
26      */
27     public function getCustomer($store_id, $customer_id, array $query = [])
28     {
29         return self::execute("GET", "ecommerce/stores/{$store_id}/customers/{$customer_id}", $query);
30     }
31 
32     /**
33      * Add a new customer to a store
34      *
35      * @param string $store_id
36      * @param string $customer_id
37      * @param string $email_address
38      * @param boolean $opt_in_status
39      * @param  array (optional) $optional_settings
40      * @return object
41      */
42     public function addCustomer($store_id, $customer_id, $email_address, $opt_in_status, array $optional_settings = null)
43     {
44         $optional_fields = ["company", "first_name", "last_name", "orders_count", "vendor", "total_spent", "address"];
45 
46         $data = array(
47             "id" => $customer_id,
48             "email_address" => $email_address,
49             "opt_in_status" => $opt_in_status
50         );
51 
52         // If the optional fields are passed, process them against the list of optional fields.
53         if (isset($optional_settings)) {
54             $data = array_merge($data, self::optionalFields($optional_fields, $optional_settings));
55         }
56 
57         return self::execute("POST", "ecommerce/stores/{$store_id}/customers/", $data);
58     }
59 
60     /**
61      * Update a customer
62      *
63      * @param string $string_id
64      * @param string $customer_id
65      * @param array $data
66      * @return object
67      */
68     public function updateCustomer($store_id, $customer_id, array $data = [] )
69     {
70         return self::execute("PATCH", "ecommerce/stores/{$store_id}/customers/{$customer_id}", $data);
71     }
72 
73     /**
74      * Add or update a customer
75      *
76      * @param string $string_id
77      * @param string $customer_id
78      * @param array $data
79      * @return object
80      */
81     public function upsertCustomer($store_id, $customer_id, array $data = [] )
82     {
83         return self::execute("PUT", "ecommerce/stores/{$store_id}/customers/{$customer_id}", $data);
84     }
85 
86     /**
87      * Delete a customer
88      *
89      * @param string $string_id
90      * @param string $customer_id
91      */
92     public function deleteCustomer($store_id, $customer_id)
93     {
94         return self::execute("DELETE", "ecommerce/stores/{$store_id}/customers/{$customer_id}");
95     }
96 
97 
98 }
99 
API documentation generated by ApiGen