Skip to main content
Altcraft Docs LogoAltcraft Docs Logo
User guide iconUser guide
Developer guide iconDeveloper guide
Admin guide iconAdmin guide
English
  • Русский
  • English
Login
    User API documentationAPI interactionMatching
      Profilesarrow
    • Import profileUpdate profileImport multiple profilesUpdate multiple profilesAdd multiple profilesAdd profile to databaseImport profile to RabbitMQGet profile dataUploading profiles to a fileDelete profileSubscription fields functional updateDatabase fields functional updateMerging multiple profilesUnsubscribe profile from resourceProfile splitting
        Subscriptionsarrow
      • Add or edit subscriptionGet all profile subscriptionsGet all subscriptions from multiple profilesGet profile subscriptionDelete profile subscriptionRestore deleted subscriptionSuspend all subscriptionsUnsuspend all suspended subscriptions
        Action historyarrow
      • Get profile action historyGet multiple profiles action history
        Profile relationsarrow
      • Attach relationDetach relationModify relation propertiesOverwrite relation propertiesGet profile relations infoGet profile relations info
      Get data for multiple profiles
      Databasesarrow
    • Get database statisticsUpdate statistics on databaseGet database listGet database informationGet database fieldsDatabase wipe
      Resourcesarrow
    • Get resource statisticsUpdate statistics on resourceGet resources listGet resource informationGet resource subscription fields
      Segmentsarrow
    • Create segmentGet statistics on resourceUpdate statistics on segmentAdd or remove profileGet profile data in a static segmentUpdate segmentGet segment informationGet segments listDelete segment
      Suppression listsarrow
    • Create suppression listUpdate suppression listGet suppression list infoGet the list of suppression listsDelete suppression listUpload suppression list data to file
        Suppression list actionsarrow
      • Check if email is suppressedAdd email to suppression listAdd multiple emails to suppression listRemove email from suppression listRemove all emails from suppression listCheck if domain is suppressedAdd domain to suppression listAdd multiple domains to suppression listRemove domain from suppression listRemove all domains from suppression listCheck if phone number is suppressedAdd phone number to suppression listAdd multiple phones to suppression listRemove phone number from suppression listRemove all phone numbers from suppression list
      Templates and fragmentsarrow
    • Get templates listGet template infoDelete templateAdd templateUpdate templateChannel object
      Campaignsarrow
    • Get campaign informationGet campaign listActivate campaignComplete campaignDeactivate campaignGet campaign status
      Mailingsarrow
    • Activate mailingDeactivate mailingGet mailing listGet mailing informationGet mailing logClone mailingDelete mailingGet mailing status
        Broadcast mailingsarrow
      • Get broadcasts listGet broadcast informationCreate broadcast mailingUpdate broadcast mailingLaunch a broadcast mailing
        Regular mailingsarrow
      • Get regular mailings listGet regular mailing informationCreate regular mailingUpdate regular mailingLaunch a regular mailing
        Trigger mailingsarrow
      • Get trigger mailings listGet trigger mailing informationCreate trigger mailingUpdate trigger mailingTrigger launch (API call)Profile import + trigger mailing launchTask for bulk trigger launchTask for bulk profiles import + trigger launchBulk trigger launchBulk profiles import + trigger mailing launchClone a trigger mailingData array
      Automation scenariosarrow
    • Engage profile in scenarioImport and engage profile in scenarioBatch import and engage profiles in a scenarioTask for batch import and engaging profiles in the scenarioGet scenarios listActivate scenarioDeactivate scenario
      Loyalty Programsarrow
    • Get profile tier in a loyalty programExport points transactionsExpiring points for a periodGet profile account transactionsGet trigger promotions listAccrue points to a memberRedeem member pointsCommit temporary transactionPreliminary Order CalculationOrder ConfirmationRoll back temporary transactionCancel points transactionGet points account balanceRegister member in a loyalty programBatch adding participants to loyalty programTask for batch add participants to loyalty programRemove member from loyalty program
      Formsarrow
    • Get form informationGet form listExport form fill data by userExport form fill dataPublish formUnpublish formDelete form
      Promo codesarrow
    • Import promo codesGet promo code informationActivate promo codeUpdate promo codeAttach promo codeDetach promo codeGet all promo codes
      Goalsarrow
    • Goals and goal values registration
      Application push notificationsarrow
    • Processing and adding a subscriptionAdd app push events
      Marketarrow
      • Market objectsarrow
      • Order data objectProduct data objectSKU data objectCategories arrayCustom fields array
        Ordersarrow
      • Import order and item statusesGet orders listDelete orderGet order statusUpdate order line status
        Products and SKUarrow
      • Import products, SKUs and categoriesImport SKUs and categoriesGet products listGet SKUs listDelete productsDelete SKU
      Analytic reportsarrow
    • Get summary reportGet soft bounces reportGet undeliveries report
      Sendersarrow
    • Get senders list
        Virtual senders (Smart accounts only)arrow
      • Get virtual senders listGet virtual sender informationClone virtual senderCreate virtual senderUpdate virtual senderDelete virtual sender
      External datatables queriesarrow
      • Segmentation queriesarrow
      • Add segmentation queryUpdate segmentation queryGet segmentation query informationGet segmentation queries listDelete segmentation query
        Template queriesarrow
      • Add template queryUpdate template queryGet template query informationGet template queries listDelete template query
      Objectsarrow
    • AKMTA objectContent objectEmail rule objectFile objectProfile data objectSMS rule objectSender objectSender typesStart schedule objectSubscription objectTrigger types
      Miscellaneousarrow
    • Upload fileGet message web versionPush providersDeduplication of requestsHow to send API request with RabbitMQList of gender identificationsObtain valid values for fields: browsers, devices, tz, oses, languages
    Importing the API collection in PostmanList of API endpoints
      SDKarrow
      • mSDKarrow
        • Androidarrow
        • Quick StartSDK FunctionalitySDK ConfigurationPublic SDK API
            Provider configuration androidarrow
          • Firebase Cloud MessagingHuawei Mobile ServicesRuStore
          iOSarrow
        • Quick StartSDK FunctionalitySDK ConfigurationPublic SDK API
            Provider configurationarrow
          • Apple Push Notification ServiceFirebase Cloud MessagingHuawei Mobile Services
          React Native (Android/iOS)arrow
        • Quick StartSDK ConfigurationSDK FunctionalityPublic SDK APIProvider setup
          Flutter (Android/iOS)arrow
        • Quick StartSDK ConfigurationSDK FunctionalitySDK Public APIProvider Setup
        Managing JWT and Role Token
      Web Push SDK
  • Profiles
  • Get data for multiple profiles

Get data for multiple profiles

Description​

Gets data for multiple profiles in the database.

Request URL​

Method: POST

https://example.com/api/v1.1/profiles/list

Request parameters​

ParameterTypeExampleRequiredDescription
db_idint20YesDatabase ID
from_idstring"0014a2feb331ace2.20200124134127"NoThe pointer to the next page, taken from the previous request, or passed empty for the first one.
limitint3NoLimit on the number of entries.
Default - 1000
queryJSON обект
"query":{
   "$or":[
      {
         "_lname": "Black"
      },
      {
         "_city": "Bay City"
      }
   ]
}
NoRefinement of the search for profiles by parameters in the form of a query to the database in JSON format. The request is formed according to the MongoDB documentation.

To get a list of fields in the database, use the "Get database fields" request.
fieldsArray of string
"fields": [
   "_id",
   "_lname",
   "_fname",
   "_city",
   "subscriptions"
],
NoContains fields for filtering the displayed profile data.

Request example​

  • JSON
  • XML
{
"db_id": 1,
"from_id": "65117f62736a0e15d273fae9",
"limit": 1,
"query": {
"$or": [
{
"_lname": "Doe"
},
{
"_city": "Moscow"
}
]
},
"fields": [
"_id",
"_lname",
"_fname",
"_city",
"subscriptions"
]
}
<xml>
<db_id>1</db_id>
<from_id>65117f62736a0e15d273fae9</from_id>>
<limit>1</limit>
<fields>_id</fields>
<fields>_lname</fields>
<fields>_fname</fields>
<fields>_city</fields>
<fields>subscriptions</fields>
</xml>

Response example​

  • JSON
  • XML
{
"data": [
{
"_city": "Moscow",
"_fname": "Anna",
"_lname": "Murphy",
"id": "65117f62736a0e15d273faee",
"subscriptions": [
{
"resource_id": 5,
"channel": "email",
"email_data": {
"email": "example@example.edu",
"domain": "example.edu",
"domain_group": "other",
"md5": "7dbeb0466131e377e58988a97196d18e"
},
"priority": 0,
"status": "unsubscribed",
"reg_info": {
"date": "2024-01-09T12:12:18.172Z"
},
"hash_id": "e70dbabe",
"is_delete": false
},
{
"resource_id": 26,
"channel": "push",
"push_data": {
"subscription_id": "abcdefghijklmnqrstuvwxyz",
"provider": "Firefox"
},
"priority": 0,
"status": "subscribed",
"reg_info": {
"date": "2024-04-18T12:30:44.592Z"
},
"hash_id": "e70dbabe",
"is_delete": false
}
]
}
],
"error": 0,
"error_text": "Successful operation",
"next_from_id": "65117f62736a0e15d273faf4"
}
<xml>
<data>
<_city>Toronto</_city>
<_fname>Juan</_fname>
<_lname>Wallace</_lname>
<id>65117f62736a0e15d273fae9</id>
<subscriptions>
<channel>email</channel>
<email_data>
<domain>example.com</domain>
<domain_group>other</domain_group>
<email>example@example.com</email>
<md5>18450b1edfef75279fc4f4f60c78d97e</md5>
</email_data>
<hash_id>a0cc2672</hash_id>
<is_delete>false</is_delete>
<priority>0</priority>
<reg_info>
<date>2024-01-09T12:12:18.172Z</date>
</reg_info>
<resource_id>5</resource_id>
<status>hardbounced</status>
</subscriptions>
</data>
<error>0</error>
<error_text>Successful operation</error_text>
<next_from_id>65117f62736a0e15d273faea</next_from_id>
</xml>

Response parameters​

Main fields​

ParameterTypeDescription
errorintError code. 0 — successful operation
error_textstringError text
next_from_idstringThe value must be passed in the next request to get another piece of data until the result output contains 0 history lines.
dataarray of objectsArray of profile objects (see data object)

data object​

Each element of the data array contains information about the profile: contact data, geolocation, data on interactions with messages, and other information.

ParameterTypeDescription
idstringUnique profile identifier (MongoDB ObjectId)
db_idintDatabase identifier
emailstringProfile email address
phonesarrayProfile phone numbers
_statusintGlobal subscription status
_is_testboolTest profile flag. Returns true if the profile was created in test mode
gcg_is_existsboolDuplicate of the _flags.gcg_is_exists flag: whether the profile is currently in the global control group
_fnamestringFirst name
_lnamestringLast name
_bdatestringBirth date in RFC 3339 format
_sexintGender (according to the gender identities list)
_avatar_setboolIndicates whether the profile avatar is set
_citystringCity. Returned when geolocation data is available
_countrystringCountry in TLD format. Returned when geolocation data is available
_regionstringRegion. Returned when geolocation data is available
_postal_codestringPostal code. Returned when geolocation data is available
_latfloatGeographic latitude. Returned when geolocation data is available
_lonfloatGeographic longitude. Returned when geolocation data is available
_tzstringTime zone
_regdatestringProfile registration date in RFC 3339 format
_createtimestringProfile creation time in RFC 3339 format
_subscribetimestringSubscription time in RFC 3339 format
_updatetimestringTime of the last profile update in RFC 3339 format
_ipstringIP address. Returned when tracking data is available
_browserstringBrowser. Returned when tracking data is available
_osstringOperating system. Returned when tracking data is available
_platformstringPlatform. Returned when tracking data is available
_is_desktopboolIndicates whether a desktop device is used. Returned when tracking data is available
_is_mobileboolIndicates whether a mobile device is used. Returned when tracking data is available
_emaildomainstringEmail address domain
_domaingroupstringDomain group
_acidstringUnique Altcraft identifier
_md5stringMD5 hash of the email address
_xxhstringXXH hash profile identifier
_xxmintXXH hash profile identifier (numeric representation)
_send_existboolIndicates whether an email was sent
_send_datestringDate of the last email send in RFC 3339 format. Returned when a send exists
_deliv_existboolIndicates whether an email was delivered
_deliv_datestringDate of the last email delivery in RFC 3339 format. Returned when a delivery exists
_open_existboolIndicates whether an email was opened
_open_datestringDate of the last email open in RFC 3339 format. Returned when an open exists
_read_existboolIndicates whether an email was read
_read_datestringDate of the last email read in RFC 3339 format. Returned when a read exists
_click_existboolIndicates whether a link in an email was clicked
_click_datestringDate of the last link click in an email in RFC 3339 format. Returned when a click exists
_confirm_existboolIndicates whether the subscription was confirmed
_confirm_datestringDate of the last subscription confirmation in RFC 3339 format. Returned when a confirmation exists
_reply_existboolIndicates whether an email was replied to
_reply_datestringDate of the last email reply in RFC 3339 format. Returned when a reply exists
_sbounce_existboolIndicates whether a soft bounce (temporary delivery failure) occurred
_sbounce_datestringDate of the last soft bounce in RFC 3339 format. Returned when a soft bounce exists
_undeliv_existboolIndicates whether an email was not delivered
_undeliv_datestringDate of the last email non-delivery in RFC 3339 format. Returned when a non-delivery exists
_pixel_open_existboolIndicates whether the tracking pixel fired
_pixel_datestringDate of the last pixel firing in RFC 3339 format. Returned when a firing exists
_send_sms_existboolIndicates whether an SMS was sent
_send_sms_datestringDate of the last SMS send in RFC 3339 format. Returned when a send exists
_deliv_sms_existboolIndicates whether an SMS was delivered
_deliv_sms_datestringDate of the last SMS delivery in RFC 3339 format. Returned when a delivery exists
_click_sms_existboolIndicates whether a link in an SMS was clicked
_click_sms_datestringDate of the last link click in an SMS in RFC 3339 format. Returned when a click exists
_undeliv_sms_existboolIndicates whether an SMS was not delivered
_undeliv_sms_datestringDate of the last SMS non-delivery in RFC 3339 format. Returned when a non-delivery exists
_send_push_existboolIndicates whether a push notification was sent
_send_push_datestringDate of the last push notification send in RFC 3339 format. Returned when a send exists
_open_push_existboolIndicates whether a push notification was opened
_open_push_datestringDate of the last push notification open in RFC 3339 format. Returned when an open exists
_read_push_existboolIndicates whether a push notification was read
_read_push_datestringDate of the last push notification read in RFC 3339 format. Returned when a read exists
_deliv_push_existboolIndicates whether a push notification was delivered
_deliv_push_datestringDate of the last push notification delivery in RFC 3339 format. Returned when a delivery exists
_click_push_existboolIndicates whether a push notification was clicked
_click_push_datestringDate of the last push notification click in RFC 3339 format. Returned when a click exists
_ps_wfarrayIdentifiers of marketing scenarios the profile participated in
_ps_wfsarray of objectsDetails of participation in marketing scenarios (see the _ps_wfs object)
_segsarrayIdentifiers of static segments the profile belongs to
_flagsobjectProfile flags (see the _flags object)
subscriptionsarray of objectsProfile subscriptions to resources (see the subscriptions array)
unsubobjectProfile unsubscription data (see the unsub object)
note

In addition to standard fields, custom database fields may be present in the response. Their names and types depend on the structure of the specific database. Information about database fields can be obtained via /api/v1.1/databases/fields_get/.

note

The request supports the fields parameter to filter returned fields. If fields is not specified, all available profile fields are returned.

subscriptions array​

Contains profile subscriptions to resources. One object is one subscription.

ParameterTypeDescription
resource_idintResource identifier
channelstringChannel type (email, sms, push, whatsapp, viber, telegram_bot, notify)
email_dataobjectEmail subscription data. Returned for the email channel
phone_dataobjectSMS subscription data. Returned for the sms channel
priorityintSubscription priority
statusstringSubscription status
reg_infoobjectSubscription registration information
hash_idstringHash identifier of the subscription
is_deleteboolIndicates whether the subscription is deleted

email_data — Email subscription data

ParameterTypeDescription
emailstringEmail address
domainstringEmail domain
domain_groupstringDomain group
md5stringMD5 hash of the email

phone_data — SMS subscription data

ParameterTypeDescription
phonestringPhone number
md5stringMD5 hash of the phone number

reg_info — Subscription registration information

ParameterTypeDescription
datestringRegistration date in RFC 3339 format

unsub object​

Contains profile unsubscription data. Returned when unsubscription data is available.

ParameterTypeDescription
cintNumber of unsubscriptions
dtstringDate of the last unsubscription in RFC 3339 format
mintIdentifier of the campaign from which the unsubscription occurred

_flags object​

Contains profile flags: global control group participation statuses and channel action flags.

ParameterTypeDescription
channel_actions.emailobjectEmail channel action flags (send, deliv, open, read, click, confirm, confirmsub, reply, unsub)
channel_actions.pushobjectPush channel action flags (send, deliv, open, click)
channel_actions.smsobjectSMS channel action flags (send, deliv, click, unsub)
gcg_is_existsboolIndicates whether the profile is currently in the global control group
gcg_ca_is_existsboolIndicates whether the profile is in the global control group audience
gcg_once_is_existsboolIndicates whether the profile was ever in the global control group
gcg_is_from_fileboolIndicates whether the profile was added to the global control group via "from file" method
scamp_once_existboolIndicates whether the profile was in a campaign audience at least once
web_actions.pixel_openboolIndicates whether the web pixel fired

_ps_wfs object (array element)​

Contains information about the profile's participation in marketing automation scenarios.

ParameterTypeDescription
wIdintMarketing scenario identifier
distringDate the profile entered the scenario in RFC 3339 format
dostringDate the profile exited the scenario in RFC 3339 format. Returned when participation is complete
etstringExit reason from the scenario
lnintNumber of the last completed step (node) in the scenario
sintProfile participation status in the scenario
Last updated on Aug 14, 2026
Previous
Get profile relations info
Next
Databases
  • Description
  • Request URL
  • Request parameters
  • Request example
  • Response example
  • Response parameters
    • Main fields
    • data object
    • subscriptions array
    • unsub object
    • _flags object
    • _ps_wfs object (array element)
© 2015 - 2026 Altcraft, LLC. All rights reserved.