unPLUGDevelopers

Members API

Find members

GET/v1/members

Looks up members by an exact value. Send one of the three query parameters. There is no partial or fuzzy search. Use it when you have your own id or the guest's contact details but haven't stored the unPLUG id.

Permissions: Secret key with members:read.

Query parameters#

  • external_idstring
    Your id for the guest.
  • emailstring (email)
    Matched in lowercase.
  • phonestring
    E.164. URL-encode the + as %2B.
  • limitinteger
    Min 1Max 100Default 25
  • cursorstring

No match returns 200 with an empty data array, not a 404.

Response fields#

Returns 200 with list of Member

  • dataarray of Member
    Show attributesMember
    • idstring (uuid)
      unPLUG's id for the member. Store it next to your user record.
    • external_idstringNullable
      Your id for the guest, up to 128 characters. null for a guest who has only earned at the register and isn't linked to your login yet.
      Max Length 128
    • statusstring
      active. The member.deleted webhook carries deleted; after that, calls about the member return 410 member_deleted.
      One of active, deleted
    • first_namestringNullable
    • last_namestringNullable
    • emailstring (email)Nullable
      Saved in lowercase.
    • phonestringNullable
      E.164, for example +15125550142.
    • phone_verifiedboolean
      true when you confirmed the guest owns the number, for example with an SMS code. Only verified phones link to existing members.
    • birthdaystring (date)Nullable
      YYYY-MM-DD.
    • points_balanceinteger
      Points the member has now. Never below zero.
    • lifetime_pointsinteger
      All points ever earned, used for tiers. Spending doesn't lower it.
    • id and name of the current tier.
      Show attributesTierRef
      • idstring (uuid)
      • namestring
    • next_tierobjectNullable
      id, name and points_needed (lifetime points still to earn). null at the top tier.
      Show attributesHide attributes
      • idstring (uuid)
      • namestring
      • points_neededinteger
    • communication_preferencesobject
      Marketing consent: email_marketing, sms_marketing, push_marketing. See communication preferences.
      Show attributesHide attributes
      • email_marketingboolean
      • sms_marketingboolean
      • push_marketingboolean
    • metadataobject
      Your own string values. Up to 20 keys, 500 characters each. Don't put personal data here.
    • linked_existingboolean
      Only on create: true when an existing member was linked by verified phone.
    • enrolled_atstring (date-time)
      When the guest joined the program.
    • created_atstring (date-time)
    • updated_atstring (date-time)
  • has_moreboolean
    True when another page exists.
  • next_cursorstringNullable
    Pass as cursor to get the next page.

Error descriptions#

400Bad request
missing_param

None of external_id, email or phone was sent.

400Bad request
invalid_param

The phone isn't E.164.

Any endpoint can also return the common errors.