Skip to content

Zalo — Followers ​

List users — zalo.list_users ​

List OA users, up to 50 per page (offset up to 9951). Filter by tag_name, is_follower or last_interaction_period (TODAY, YESTERDAY, L7D, L30D or YYYY_MM_DD:YYYY_MM_DD).

Side effectRiskNeeds approvalIdempotentScopes
NONElownoyes—

Input

FieldTypeRequiredDescription
offsetintegeryesMin 0. Max 9951.
countintegeryesMin 1. Max 50.
tag_namestringno
last_interaction_periodstringnoTODAY, YESTERDAY, L7D, L30D or YYYY_MM_DD:YYYY_MM_DD.
is_followerstringnoOne of: true, false.

Extra fields: ignored.

Output

FieldTypeDescription
dataobjectOne page of users.
data.totalintegerTotal users that match the filter.
data.countintegerNumber of users requested.
data.offsetintegerPosition of the first user in this page.
data.usersarray of objectUsers in this page.
data.users[].user_idstringZalo user ID.

Get user — zalo.get_user ​

Get a user's profile: name, alias, tags, notes, last interaction and shared contact info.

Side effectRiskNeeds approvalIdempotentScopes
NONElownoyes—

Input

FieldTypeRequiredDescription
user_idstringyesZalo user ID of the OA follower.

Extra fields: ignored.

Output

FieldTypeDescription
dataobjectThe user's profile.
data.user_idstringZalo user ID.
data.user_id_by_appstringThe user's ID within the connected app.
data.user_external_idstringThe user's ID in your own system. Empty string when not set.
data.display_namestringName shown on the user's Zalo profile.
data.user_aliasstringAlias the OA gave the user.
data.is_sensitivebooleanTrue when the user is under 18, false when 18 or older.
data.user_last_interaction_datestringDate of the user's last interaction with the OA, dd/MM/yyyy.
data.user_is_followerbooleanTrue while the user follows the OA.
data.avatarstringURL of the user's avatar.
data.avatarsobjectAvatar URLs by size, keyed by pixel size. The reference table types this as a string; its example shows an object.
data.avatars.120stringURL of the 120 px avatar.
data.avatars.240stringURL of the 240 px avatar.
data.dynamic_paramstringLast dynamic_param the user arrived with through the OA's Dynamic URL. Missing when none.
data.tags_and_notes_infoobjectTags and notes the OA set on the user.
data.tags_and_notes_info.notesarray of stringNotes on the user.
data.tags_and_notes_info.tag_namesarray of stringTags on the user.
data.shared_infoobjectContact details the user shared with the OA. Empty when the user shared none.
data.shared_info.namestringName the user shared.
data.shared_info.phonestringPhone number the user shared. The reference also shows it as a number.
data.shared_info.addressstringStreet address the user shared.
data.shared_info.citystringCity the user shared.
data.shared_info.districtstringDistrict the user shared.
data.shared_info.user_dobstringBirthday the user shared, dd/MM/yyyy.

Update user — zalo.update_user ​

Update a user's shared contact info, alias or external ID.

Side effectRiskNeeds approvalIdempotentScopes
WRITEmediumyesno—

Input

FieldTypeRequiredDescription
user_idstringyesZalo user ID of the OA follower.
shared_infoobjectnoContact details the user shared with the OA.
shared_info.namestringno
shared_info.phonestringno
shared_info.addressstringno
shared_info.city_idstringno
shared_info.district_idstringno
shared_info.user_dobstringnoBirthday, dd/MM/yyyy.
user_aliasstringno
user_external_idstringno

Extra fields: ignored.

Output

FieldTypeDescription
dataobjectNot returned: Zalo replies only error and message.

Get user custom info — zalo.get_user_custom_info ​

Get a user's custom field values. Limit the result with fields_to_export.

Side effectRiskNeeds approvalIdempotentScopes
NONElownoyes—

Input

FieldTypeRequiredDescription
user_idstringyesZalo user ID of the OA follower.
fields_to_exportarray of stringnoCustom field names to return.

Extra fields: ignored.

Output

FieldTypeDescription
dataobjectThe user's profile and custom field values.
data.user_idstringZalo user ID.
data.namestringName of the user. Empty when unknown.
data.phonestringPhone number. Empty when unknown.
data.user_dobstringBirthday, dd/MM/yyyy.
data.genderstringGender of the user.
data.full_addressobjectAddress of the user.
data.full_address.user_citystringCity.
data.full_address.user_wardstringWard.
data.full_address.user_addressstringStreet address.
data.user_external_idstringThe user's ID in your own system. Empty string when not set.
data.dynamic_paramstringLast dynamic_param the user arrived with through the OA's Dynamic URL.
data.custom_infoobjectCustom field values, keyed by the OA's own field names (for example loyaltyPoints_number). Every value is a string (booleans as "true"/"false", numbers as text); a table field is an object whose values are strings. This reply sends error as the string "0".

Update user custom info — zalo.update_user_custom_info ​

Set a user's custom field values. custom_info maps field name to value.

Side effectRiskNeeds approvalIdempotentScopes
WRITEmediumyesno—

Input

FieldTypeRequiredDescription
user_idstringyesZalo user ID of the OA follower.
custom_infoobjectyesMap of custom field name to value.

Extra fields: ignored.

Output

FieldTypeDescription
dataobjectNot returned: Zalo replies only error and message.

Delete user info — zalo.delete_user_info ​

Delete the personal info the OA stored for a user. Cannot be undone.

Side effectRiskNeeds approvalIdempotentScopes
WRITEhighyesno—

Input

FieldTypeRequiredDescription
user_idstringyesZalo user ID of the OA follower.

Extra fields: ignored.

Output

FieldTypeDescription
dataobjectNot returned: Zalo replies only error and message.