Documentation
Sign inGet started

Create a contact property

POST
/v1/contact-properties
const prop = await bird.contactProperties.create({ key: "plan", type: "string" });
console.log(prop.id); // "cp_…"
Defines a custom property that contacts in the workspace can carry. The key becomes available in contact data and as a template variable in broadcasts. The key and type cannot be changed after creation.
A key already in use returns a conflict error. A workspace can hold at most 200 properties; archived properties keep their key and count toward that limit.
Payload della richiesta
key
string
obbligatorio
The property key, used as the key in contact data and as the attribute in the bird.contact.<key> broadcast template variable. Lowercase letters, digits, and underscores, starting with a letter. Cannot be changed after creation.
type
string
obbligatorio
The value type every contact must use for a property. Cannot be changed after creation.
datetime values are RFC 3339 timestamps with an explicit offset (for example 2024-01-15T09:30:00Z or 2024-01-15T11:30:00+02:00); a bare date or a time with no offset is rejected. The value is normalized to UTC with second precision on write, so 2024-01-15T11:30:00+02:00 is stored and returned as 2024-01-15T09:30:00Z, and any fractional seconds are dropped.
Possible values: string, number, boolean, datetime
fallback_value
Default used when a contact has no value for this property and the template does not supply an inline fallback. A string, number, boolean, or RFC 3339 datetime matching the declared type (strings up to 500 characters), or null for no fallback; a value of another type returns a validation error.
Payload di risposta
id
string
obbligatorio
ID of the property (prp_-prefixed), accepted by every operation that takes a property_id.
key
string
obbligatorio
The property key, used as the key in contact data and as the attribute in the bird.contact.<key> broadcast template variable. Lowercase letters, digits, and underscores, starting with a letter. Cannot be changed after creation.
type
string
obbligatorio
The value type every contact must use for a property. Cannot be changed after creation.
datetime values are RFC 3339 timestamps with an explicit offset (for example 2024-01-15T09:30:00Z or 2024-01-15T11:30:00+02:00); a bare date or a time with no offset is rejected. The value is normalized to UTC with second precision on write, so 2024-01-15T11:30:00+02:00 is stored and returned as 2024-01-15T09:30:00Z, and any fractional seconds are dropped.
Possible values: string, number, boolean, datetime
fallback_value
Default used when a contact has no value for this property and the template does not supply an inline fallback. A string, number, boolean, or RFC 3339 datetime matching the declared type (strings up to 500 characters), or null when no fallback is set.
archived
boolean
Whether the property is archived. An archived property is rejected in new contact writes and stops rendering in templates, but every value already stored on contacts is preserved. Reactivate it with unarchive.
created_at
string
obbligatorio
updated_at
string
obbligatorio