Parcelvoy Platform Documentation

repository·main·Indexed 19 days ago

https://github.com/parcelvoy/platform

An open-source multi-channel marketing platform for cross-channel messaging, automated journeys, and real-time segmentation. Documentation covers the @parcelvoy/ui development lifecycle, website deployment, Docker Compose local setup, environment configuration, and the API router structure including Public, Admin, Client, and Project-scoped endpoints. Includes details on user identity management, event tracking via Segment-compatible schemas, and analytics provider integration for Segment, PostHog, and Mixpanel.

Tokens
36.4K
Snippets
128
Records
204
Agent score
67%

What's inside Parcelvoy

  1. What is Parcelvoy?

    main
    Parcelvoy is an open-source automated messaging and customer engagement platform designed for growth companies and enterprises. It provides a user experience similar to SaaS engagement products (such as Braze or Iterable) but offers the flexibility of an open-source architecture for managing customer engagement and automated messaging.
  2. Configure different Campaign Template Types

    main

    Parcelvoy supports four distinct template types, each with specific field behaviors:

    • Email: Comprised of fields like subject, body, and cc. The html field is specifically used to send rendered HTML and supports included styles.
    • Text Message: Primarily a single field. Note that using Handlebars variables can increase the total content length, which may affect how the message is segmented.
    • Push Notification: Consists of a text body, a title, and an optional JSON body. All these fields support Handlebars customization.
    • Webhooks: Acts as a wrapper for HTTP REST requests. You can customize headers and body parameters. Important: The body and headers fields accept objects, but Handlebars is only interpreted at the value level of each key, not on the objects themselves.
  3. What are Journeys in Parcelvoy

    main

    Journeys are configurable sequences of automated actions designed to add personalization to communications. They allow you to put communications on "auto-pilot" by automating tasks such as sending messages, updating users, or performing scheduled actions.

    Common use cases include:

    • Welcome experiences
    • Level up notifications
    • Cart abandonment sequences
    • Special offers
    • Recurring content messages
    • Expiration notifications

    A journey is fundamentally composed of Steps. You define how a user enters a journey using an Entrance step and then connect consecutive steps using a visual editor.

  4. Understand the difference between Public and Secret API Keys

    main

    Parcelvoy uses two types of API keys to control access and permissions. Each key is bound to a specific project and can only interact with data within that project.

    • Public Keys: Designed for use in client libraries. They are safe to use in environments where the key might be exposed publicly (e.g., frontend code). Their scope is limited to data ingestion only.
    • Secret Keys: Designed for administrative tasks via admin APIs. These keys have high privileges and can perform destructive actions, create new campaigns, trigger sends, and manage roles. These should never be exposed in client-side code.
  5. How the Push Notification provider works

    main

    Parcelvoy treats Apple (APN) and Google (Firebase) push notifications as a single provider type called APN & Firebase.

    Because push notifications are considered a single message type, both services are managed within this unified integration. If you only want to target one platform (e.g., only iOS), you can leave the other platform's configuration section blank. Devices belonging to the excluded platform will automatically be skipped during notification sends.

  6. Understand Campaign Templates in Parcelvoy

    main
    Each campaign in Parcelvoy uses a Handlebars template to render the final message sent to end users. Templates define the structure of the message and include placeholders (variables) that are dynamically filled for every recipient. Templates allow for customization through a combination of variables and Handlebars functions.
  7. Understanding Campaigns in Parcelvoy

    main

    In Parcelvoy, Campaigns are the central abstraction for all messaging activities. Every communication—whether it is an email blast, an SMS, a push notification, or a webhook triggered within a journey—is managed as a campaign.

    A campaign encapsulates three core responsibilities:

    1. Scheduling: Determining when the communication occurs.
    2. Targeting: Defining who receives the communication.
    3. Designing: Creating the content and layout of the message.

    Once a campaign is defined, it passes the transmission task to a specific provider. Campaigns support four primary channels:

    • Email
    • Text (SMS)
    • Push Notification
    • Webhook
  8. Configure Campaign General Settings

    main

    When creating a campaign, the following general fields are required:

    • Name: The display name used in lists and throughout the platform.
    • Tags: Selectable tags used for later filtering of campaigns.
    • Type: Defines the delivery logic:
      • blast: Sends the campaign to all users within a generated master list.
      • trigger: Sends the campaign on an individual basis when a specific journey or API event is triggered.
  9. Scalable Deployment Architecture for Parcelvoy

    main

    To scale Parcelvoy to multiple servers as usage increases, you should decouple the major components. A truly scalable deployment involves separating the following four layers into their own managed environments or server instances:

    1. Database: Move from the local compose-managed instance to a dedicated database server.
    2. Queue: Separate the message queue service.
    3. Servers: Deploy the core application servers independently.
    4. UI: Host the user interface separately from the backend services.