Files
piratepoet/doc/api_methods/GetSubscriber.md
Jan Lysý 083bad3051 Add subscriber tags to documentation
[MAILPOET-4716]
2022-10-13 11:12:10 +02:00

7.8 KiB
Raw Blame History

back to list

Get Subscriber

array getSubscriber(string $subscriber_email)

This method throws an \Exception in the event a subscriber with a given email address doesnt exist.

Arguments

Argument Type Description
$subscriber_email string a valid email address

A subscriber data structure

Subscriber

Property Type Limits Description
id string 11 chars Id of the subscriber
wp_user_id string|null 20 chars Id of a WordPress user associated with the subscriber
is_woocommerce_user string - A flag telling whether the user is also a WooCommerce customer. Possible values are: 1, 0
first_name string 255 chars Fist name of the subscriber.
last_name string 255 chars Last name of the subscriber.
email string 150 chars Email address of the subscriber.
status string - Status of the subscriber. Possible values are: unconfirmed, subscribed, unsubscribed, bounced, inactive
subscribed_ip string|null 45 chars An IP address used for subscription.
confirmed_ip string|null 45 chars An IP address used for confirmation.
confirmed_at string|null - UTC time of subscription confirmation in 'Y-m-d H:i:s' format
created_at string|null - UTC time of creation in 'Y-m-d H:i:s' format
updated_at string - UTC time of last update in 'Y-m-d H:i:s' format
deleted_at string|null - This property in not null in case that list is in trash and contains UTC time in 'Y-m-d H:i:s' format.
unconfirmed_data string|null 65K chars May contain serialized subscriber data in case when there are pending changes waiting for a confirmation from a subscriber
source string|null - Possible values: form,imported,administrator,api,wordpress_user,woocommerce_user,woocommerce_checkout,unknown)
count_confirmations string 11 chars Counter for confirmation emails
subscriptions array - List of subcriber subscriptions
tags array - List of subcriber tags
cf_{custom_field['id']} string 65K chars A custom subscriber field value (see Get Subscriber Fields

Subscriber's subscription

Property Type Limits Description
id string 11 chars Id of relation
subscriber_id string 11 chars Id of subscriber
segment_id string 11 chars Id of a list
status string - Status of a subscription for the list. Possible values: subscribed, unsubscribed
created_at string - UTC time of creation in 'Y-m-d H:i:s' format
updated_at string - UTC time of last update in 'Y-m-d H:i:s' format

Subscriber's tag

Property Type Limits Description
id string 11 chars Id of relation
subscriber_id string 11 chars Id of subscriber
tag_id string 11 chars Id of a list
name string - Name of a tag
created_at string - UTC time of creation in 'Y-m-d H:i:s' format
updated_at string - UTC time of last update in 'Y-m-d H:i:s' format

Response Example

<?php
[
  'id' => '10',
  'wp_user_id' => '72',
  'is_woocommerce_user' => '1',
  'first_name' => 'John',
  'last_name' => 'Doe',
  'email' => 'email@example.com',
  'status' => 'subscribed',
  'subscribed_ip' => '127.0.0.1',
  'confirmed_ip' => NULL,
  'confirmed_at' => NULL,
  'created_at' => '2019-05-07 07:24:37',
  'updated_at' => '2019-05-14 08:43:08',
  'deleted_at' => NULL,
  'unconfirmed_data' => NULL,
  'source' => 'woocommerce_user',
  'count_confirmations' => '0',
  'subscriptions' => [
    0 => [
      'id' => '3',
      'subscriber_id' => '10',
      'segment_id' => '1',
      'status' => 'subscribed',
      'created_at' => '2019-05-07 07:24:37',
      'updated_at' => '2019-05-07 07:24:37',
    ],
    1 => [
      'id' => '13',
      'subscriber_id' => '10',
      'segment_id' => '2',
      'status' => 'unsubscribed',
      'created_at' => '2019-05-14 08:43:08',
      'updated_at' => '2019-05-14 08:43:08',
    ],
  ],
  'tags' => [
    0 => [
      'id' => '2',
      'subscriber_id' => '10',
      'tag_id' => '1',
      'name' => 'Alpha',
      'created_at' => '2019-05-17 05:24:37',
      'updated_at' => '2019-05-17 05:24:37',
    ],
    1 => [
      'id' => '4',
      'subscriber_id' => '10',
      'tag_id' => '5',
      'name' => 'Beta',
      'created_at' => '2020-03-07 15:21:37',
      'updated_at' => '2020-03-07 15:21:37',
    ],
  ],
  'cf_1' => 'US',
  'cf_2' => 'New York',
];

Error handling

All expected errors from the API are exceptions of class \MailPoet\API\MP\v1\APIException. Code of the exception is populated to distinguish between different errors.

An exception of base class \Exception can be thrown when something unexpected happens.

Codes description:

Code Description
4 Asking for a subscriber that does not exist.