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 documentationGetting StartedFAQAltcraft glossary
      Profiles and databasesarrow
    • Subscription resourcesManaging databasesSubscriber profileProfiles import and data updateScheduled customer data importAutomatic data collectionBulk customers profiles updateDouble opt-in subscriptionSuppression listsProfile relationsProfile history exportProfile exportCreating a static segment based on import resultsHow to open a CSV fileMatchingTypes of fields in the databaseGlobal control groupsSubscription Manager
      Communication channelsarrow
      • Email channelarrow
      • Email: ISP interactions best practicesEmail: sending domain configurationEmail: setting up and using postmastersБыстрый старт
        Push channelarrow
        • Mobile Pusharrow
        • Settings & implementation
            Integrate your app with Altcraftarrow
          • Providers: push message structureProcessing and adding a subscriptionEvent registration
          Web pusharrow
        • Preliminary Settings
            Web browser push configurationarrow
          • Firebase Cloud messagingApple SafariMozilla Services
          Connecting Web Push to a WebsiteTransferring Data to the PlatformWeb Push SDK Methods
            Import of subscriptions from third-party push servicesarrow
          • Migrating push subscriptions from third-party servicesHow to transfer push subscriptions configured for Safari?Migration from OneSignal
      SMS channel
        Creating mailing from scratcharrow
      • EmailSMSWeb PushMobile PushWhatsAppViber*™Руководство: SMS-рассылка через VK NotifyMAX BotMAX GroupNotifyTelegram BotTelegram Group
      Communication Channels WorkflowРуководство: SMS-рассылка через УТШРуководство: push-рассылка через сервис от "Согласие"
      Segmentationarrow
    • Static SegmentsDynamic SegmentsUpdatable Segments
        Segmentation Conditionsarrow
      • Segmentation by Profile dataSegmentation by Interactions with EntitiesSegmentation by Activity of the channelSegmentation by external dataSegmentation by external SQL tablesSegmentation by Profile structure
      Best Send Time (BST)Logical operators "AND" and "OR"Recommendations for working with segments
      Message templatesarrow
      • Working with message templatesarrow
      • Working in the editorEmail-templateSMS templatePush templateMAX templateTelegram templateWhatsApp templateViber™ templateNotify template
        Visual editor for email-templatearrow
      • Visual editor interfaceAdding blocksElements and their settingsCustom blocksStyle managerLayer manager
      Template fragmentsImage galleryContent personalizationCreating tables based on array elementsBlock editor for email template
        Altcraft Variables and Functionsarrow
      • Logical expressions in messagesLoops in messagesMarket variables in templatesUsing the JSONPath functionality
        Dynamic content in messagesarrow
      • Dynamic HTML contentDynamic JSON contentContent from SQL database in templatesDynamic API content
      Importing and exporting a message templateImporting a template from a third-party serviceExporting a template from Pixcraft
      Mailingsarrow
    • Mailings calendarBroadcast mailingsRegular mailingTrigger mailingMultivariate testingMailing testingMailing schedulePlacement mailing
      Campaignsarrow
    • Working with CampaignsLocal control groups (LCG)Stratification Violation ErrorAudience expansionAudience building
      Automation scenariosarrow
    • Managing scenariosNodes of the scenarioClassic marketing scenariosStep-by-step welcome scenario guideScenario for automatic notification of the managerAbandoned cart scenario
      Marketarrow
    • Market settings
        Productsarrow
      • How to create a product manuallyHow to import a product from a fileScheduled product importProduct and SKU SegmentsPreparing the YML file
      OrdersMarket variables in message templateGuide: how to send an order confirmation email
      Loyalty programsarrow
    • Loyalty programsLoyalty integration with external systemsБыстрый стартBasic loyalty program use casesOrder SegmentsPromotion codes
      Reports and analyticsarrow
    • Channel reportTraffic report
        Summary reportarrow
      • Summary report metrics
      Cohorts reportLifetime reportFunnels reportGoals reportAudience growth reportClick map reportLoyalty programs reportBounces reportUndeliveries reportReport on global control groups
      Integrationsarrow
      • Action hooksarrow
      • Altcraft Action HooksAction hooks event typesAction Hook Message StructureJSON batch request (HTTP POST action hook)Message to RabbitMQ brokerMessage to RabbitMQ exchangerMessage to Kafka brokerTest event
        Integration of third-party services using Albatoarrow
      • Connecting Altcraft to Albato Launching the welcome scenario using AlbatoTransmitting event dataSetting app a trigger mailingEvent registrationGoogle Sheets and Altcraft integration AmoCRM and Altcraft integration
      Facebook Ads Manager™Google Ads AudiencesMAXYandex.Audience™VK Ads™Static segment synchronizationYandex AppMetrica™Tilda™Lpgenerator™WhatsAppViber*™ integrationIntegration scopeData Transmitted During SynchronizationNotify
      Weblayersarrow
      • Formsarrow
      • Create a formForm constructorAppearanceActions after form activationData analyticsBinding data channel and formsConditional logic in forms and surveysNPS testing
        Pixelsarrow
      • Goal customer actions and scoring
        Pop-upsarrow
      • Creating and publishing a pop-upSetting up a popup in the code editorManaging pop-ups manually via scriptPopup analyticsGuide: pop-up for push subscriptionsCase: Creating a pop-up with the "Wheel of Fortune" widgetBasic cases of placing a popup via the Tag Manager
        Tag Managerarrow
      • Configuring and installing Tag ManagerTrigger typesVariables typesLinking a pixel and the Tag manager
      Settingsarrow
    • Account settingsCustom linksVirtual sendersSending policiesAudit journalTags FAQ
        Users, groups and accessarrow
      • Two-Factor Authentication (2FA)
        Connectionsarrow
      • Connection to Facebook Ads ManagerConnection to Google AdsConnecting to Yandex.Audience™Connection to 360dialogConnection to EdnaConnection to Devino TelecomConnection to SMSTrafficConnection to VK Ads™Connection to MTS OmniChannelCustom Authentication ConnectionOAuth2 connectionBasic Authentication connectionToken Authentication connectionConnection to RapportoMAX connectionConnection to Notify
      Attribute settings
      API requests: where to startarrow
    • Import or update a profileTrigger mailing launchEngage profile in scenario
      Changelogarrow
    • v2026.1.76v2025.4.75v2025.4.74v2025.3.73v2025.2.72v2025.1.71v2024.4.70v2024.3.69v2024.2.68.2v2024.1.68
    Documentation archivelibrary
  • Profiles and databases
  • Managing databases

Managing databases

Description​

Modern people-based marketing techniques use real time behavior tracking and customers personal information.

Altcraft database management provides you with powerful and flexible tools to collect and make use of customer profiles data.

Flexibility and usefulness of database depends on how it is created, filled, and maintained. If data is correctly collected and organized, then it becomes possible to segment subscribers depending on certain attribute to separate groups and send targeted content to each group.

This process is called Segmentation, and for this we have certain element - segment, which has many intuitive settings.

Think about your marketing for a minute. What goals do you have, who is your audience and what information is interesting for them.
For example:

  • Do you have your seasonal customers? Do they prefer certain product types?
  • Is it necessary to send different content templates depending on customers occupation or hobbies;

  • What other parameters affect your customers behaviour?

It can be convenient to figure out what customer information is necessary for you, and write it. You can use it to create custom fields for storing information about your customers in the database.

Thoughtful database setup will bring skyrocketing impact, especially in the long run.

Managing a database​

To manage databases, select Data —> Profiles databases in the main menu. To create a new database, click + Create in the top panel. To edit an existing database, click on its name.

The following functions are available in the context menu:

— view profiles

— import customer profiles

— copy profilesto another database

— update multiple profiles in the database. Using this instrument, you canupdate profiles, subscribe them to resources, attach or detach promo codes.

— exportcustomer profiles into a file. Beforeexport, you can specify data you need to download.

— export profile history. Download data on profile activity.

— create a new empty database with the same structure. Custom fields will be copied into a new database.

— delete database altogether with profiles.

tip

You can delete a database only if it does not contain any profiles that have had interactions within the account. If there have been interactions, such as sending mailings to these profiles, you must first delete those profiles from the database.

Creating a profiles database​

General settings​

The following settings can be configured for a database:

  • Database name: name displayed in platform database lists.
  • Description: database purpose description.
  • Set group: database access group.
  • Tags: custom tags that can be used for quick search and analytics.
  • Subscription manager title: title displayed only in subscription manager.
  • Subscription manager language: subscription manager page language for database profiles.
  • Attached suppression list: a custom suppression list for this database.
  • Resources: enable communication with database profiles through various channels within a specific topic. Instructions on how to configure the resource are provided in this article.
  • Watchers database: select this option for a database of observers. They will receive messages when a mailing starts together with your customers. Databases with this option can be selected in Smart mailing settings.

Default fields​

Standard profile fields are designed to keep the most frequently used customer information.

Default — this value is used when field value is unknown after profile import.

Make required — this field will be required during import. If you enter a Default value, profile import without this field value will be possible.

Subscription manager — this field value will be shown in subscription manager page.

info

Fields with customer geodata are divided into two types:

  • The first ("reg." In the field name) is the information received during registration: based on the IP address or static import data.
  • The second is the latest data received from the client’s actions history: also based on IP address or transmitted data.

Custom fields​

Custom fields are created by users of the Altcraft system to store specific for business customer information. You can create unlimited custom fields. They can contain 10 different data types:

  • Number — positive and negative integer numbers.
  • Float — floating-point number: it has a decimal place.
  • Line — text in any language, including numbers, special characters, spaces. Unicode standard is used.
  • Date — date in RFC 3339 format, like 2019-08-22T00:00:00.000Z.
  • Boolean — this field provides a choice of two options: True or False (Yes or No). It is used to define if customer has certain attribute, like VIP status.
  • Enum — this field is similar to Boolean, but allows you to choose one option from unlimited number of options created by user. For example, customer tariff plan. Options are written in a comma separated line.
  • IP — IP in IPv4 format. For example, 127.0.0.1.
  • Tags — in this field, several values can be written simultaneously. They may be products or services purchased by customer, or other values, composition of which may vary. Tags are written in line, separated by "," "|" or ";". Therefore, these characters can not be used in tag itself. For example: Product-1, Product 2, Product_3.
  • Object is a field for storing undefined data: a set of flags or complex data structures.
  • Array of objects is a field for storing a subtable, which, for instance, may contain a list of managers, contracts, etc.
Validation in objects and arrays

1. Naming rules. In object field names, only Latin letters (in any case), digits from 0 to 9, the underscore _, and the hyphen - are allowed.

2. Data type. You can store data of int, float, string, boolean types in the "Object array" or "Object" fields.

Example
[ 
{
"key1": 12.3,
"key2": 12,
"key3": true,
"key4": "text"
}
]

3. Object structure. If you use such types as "Array of objects" or "Object", you can only store peer objects or peer objects that are nested within other objects. If you use objects with a more complex structure, connect the SQL database and create queries to select profiles.

Details

Valid values:

[
{"x":1},
{"y":2}
]

//OR

{
"key_1":
{
"sub_key_1":
{"x":1,"y":2}
},
"key_2":
{
"sub_key_1":
{"x":5,"y":3}
}
}

//OR

[
{"key": "value_1", "new_key": "new_value1"},
{"key": "value_2", "new_key": "new_value2"}
]

Invalid values:

[
["x","y"],
["z","w"]
]

//OR

{
"key":
[
["x","y"],
["z","w"]
]
}

//OR


[
{"key1": "value_1", "new_key10": "new_value1"},
{"key7": "value_2", "new_key300": "new_value2"}
]

tip

You can find detailed information about the types of fields in the database and the allowed values in this article.

Email settings​

These fields are required for creating a new database:

And these you will need to gather replies:

Machine learning settings​

Enabling machine learning in the database allows you to determine the best time to send a message to a profile. This data can then be used to segment profiles and set up scenarios.

To get started with this module, you need to add fields to the platform configuration file.

After saving the settings, you will see a window with information about when the recalculation of profile data in the machine learning database is scheduled. The first best time data will be displayed after the first calculation.

info

The schedule for updating machine learning data is set in the configuration file in the ML_REFRESH_TIME_HOURS (UTC +0) field. The default is at 00:00.

Last updated on Mar 12, 2026
Previous
Subscription resources
Next
Subscriber profile
  • Description
  • Managing a database
  • Creating a profiles database
    • General settings
    • Default fields
    • Custom fields
    • Email settings
    • Machine learning settings
© 2015 - 2026 Altcraft, LLC. All rights reserved.