Understanding User Properties
Profile properties contain user attributes and traits.
The property section allows you see all of the information related to your customer. Properties span from first-name
and last-name
to email
and fundamental traits your users have or you need to monitor.
💡 Property information can support up to two nested groups.
Properties coming from API
Plainflow allows you to connect a user to their actions and record user traits. It includes a unique User ID
and any optional traits that you know about them.
Calling the Identify API in one of our libraries is one of the first steps to getting started with Plainflow.
Properties coming from integrations
Some profile properties could also come from 3rd-party integrations like Clearbit and MadKudu.
Let’s say that you have created a workflow where you use the action “Enrich user profile” with Clearbit. In this case, the “enriched” information will be saved under the enriched user profile and will be nested under the label “Clearbit” as in the example below.
Add, edit or remove a new property
We don’t allow change to your properties in a manual way. We allow change of properties in a programmatic way. You are able to add, edit or remove properties systematically in your workflow section.
How to get nested default properties
Suppose that you want to get in the email body a nested propperty called coming from Clearbit.
💡 You can access properties nested into object using the dot notation.
To access to the Clearbit property emplyment.role
you will type:
Clearbit.employment.role
Default properties
Trait | Required | Type | Description |
---|---|---|---|
address | Object | Street address of a user optionally containing: city, country, postalCode, state or street | |
age | number | Age of a user | |
avatar | String | URL to an avatar image for the user | |
birthday | date | User’s birthday | |
created_at | date | Date the user’s account was first created. Dates must be formatted using ISO-8601 format | |
description | Description of the user | ||
email | String | Email address of a user | |
first_name | String | First name of a user | |
gender | String | Gender of a user | |
last_name | String | Last name of a user | |
name | String | Full name of a user. If you only pass a first and last name we’ll automatically fill in the full name for you. | |
phone | String | Phone number of a user | |
id | TRUE | String | Unique ID in your database for a user |
subscription | Object | Contains all the info related to a subscription. | |
title | String | The person’s website | |
username | String | The best avatar url we have | |
website | String | Company name |
The Subscription object
The subscription object has the following default properties:
Trait | Type | Description |
---|---|---|
subscription.plan_name | String | The subscription plan name. |
subscription.plan_id | String | The unique identifier of the subscription plan. |
subscription.status | String | The subscription status can be: never subscribed , trial active , trial canceled , trial expired , active , blocked , canceled , expired , unknown |
subscription.payment_status | String | The last payment status can be: pending , paid , dunning , past due , unpaid , canceled , disputed , refunded , unknown . |
subscription.plan_interval_count | Number | The number of intervals (specified in the interval property) between subscription billings. For example, plan_interval_count=month and plan_interval_unit=3 bills every 3 months. |
subscription.plan_interval_unit | String | One of day , week , month or year . The frequency with which a subscription should be billed. |
subscription.service_trial_period_start_at | Date | If the subscription has a trial, the beginning of that trial. |
subscription.service_trial_period_end_at | Date | If the subscription has a trial, the end of that trial. |
subscription.service_period_start_at | Date | When the subscription period started. |
subscription.service_period_end_at | Date | When the subscription will end. |
subscription.service_period_cancelled_at | Date | If the subscription has been canceled, the date of that cancellation. |
subscription.due_date | Date | The date on which payment for this subscription is due. |
subscription.amount_in_cents | String | The amount in cents to be charged on the interval specified. |
subscription.currency | String | Three-letter ISO currency code, in lowercase. |
subscription.discount_code | String | Hash describing the coupon applied to create this discount. |
subscription.discount_amount_in_cents | String | The amount in cents to be charged on the interval specified. |
subscription.tax_amount_in_cents | String | The amount in cents related to the tax rate. |
Not using Plainflow yet? Get your free account here. 👈