Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Braze: Destination Connector #394

Open
Mohith93 opened this issue Sep 30, 2024 · 2 comments
Open

Braze: Destination Connector #394

Mohith93 opened this issue Sep 30, 2024 · 2 comments
Assignees
Labels
enhancement New feature or request hacktoberfest

Comments

@Mohith93
Copy link

**Feature Request: Braze Destination Connector

Issue Type: New Feature / Connector Request

Description

We need to build a Braze Destination Connector that allows users to send data from Multiwoven to their Braze account. This connector will help users automate and sync customer data, events, and campaigns between Multiwoven and Braze to power personalized messaging and marketing automation.

Requirements

  • Authentication:
    The connector should support REST API Key Authentication to interact securely with Braze’s API. The user will need to generate an API key from their Braze account with the required permissions.

  • Configuration:
    The connector should require the following configuration parameters:

    • api_key: Braze API key.
    • rest_endpoint: The REST API endpoint specific to the user’s Braze environment.
    • Optional: braze_campaign_id for linking with Braze campaigns.
  • Connector Features:
    The destination connector should be able to:

    1. Send the following data to Braze:
      • User Profiles: Sync customer or subscriber data, including attributes like email, phone, location, etc.
      • Custom Events: Log custom events such as purchases, app activity, or web behavior.
      • Campaigns: Trigger or update messaging campaigns in Braze, using data from Multiwoven.
    2. Provide users with the ability to map their data fields in Multiwoven to Braze fields (e.g., custom attributes or events).
    3. Support bulk updates for large data sets, such as syncing customer lists.
  • API Interaction:
    The connector should use the Braze REST API to interact with user data, custom events, and campaigns. API documentation can be found here:
    Braze API Documentation

  • Data Format:
    Data sent to Braze must follow the required format for user profiles, custom events, and campaigns. This includes proper JSON structure with customer attributes, event names, and corresponding data points.

  • Error Handling:
    The connector should handle errors gracefully, providing meaningful error messages for issues like invalid API keys, data format errors, or API rate limits.

Steps to Implement

  1. Authentication Setup:

    • Implement Braze API Key authentication to allow secure communication with the Braze REST API.
  2. Connector Configuration:

    • Create a configuration file that accepts the necessary parameters, including api_key and rest_endpoint.
  3. API Integration:

    • Implement the logic to:
      • Sync user profile data from Multiwoven to Braze.
      • Log custom events in Braze using data from Multiwoven (e.g., user actions, transactions).
      • Trigger or update campaigns based on synced data.
    • Support bulk updates for large data sets (e.g., customer lists).
  4. Field Mapping:

    • Enable users to map their data fields from Multiwoven to Braze’s customer attributes and event fields.
    • Handle mapping for both standard fields (e.g., name, email) and custom fields (e.g., app usage).
  5. Error Handling & Logging:

    • Implement error handling for issues such as invalid API credentials, exceeding rate limits, or invalid data formats.
    • Provide detailed logs for successful and failed API calls.
  6. Testing:

    • Write unit tests and integration tests to ensure that the connector functions correctly.
    • Simulate API interactions using mocks to test various scenarios such as profile syncing and event logging.
  7. Documentation:

    • Provide a detailed README.md that explains how to configure and use the connector.
    • Include examples of syncing customer data, logging custom events, and triggering campaigns.

Acceptance Criteria

  • The connector successfully syncs data with Braze, including customer profiles, custom events, and campaigns.
  • Proper error handling is implemented, and detailed logs are available for troubleshooting.
  • Unit and integration tests provide coverage for all key scenarios.
  • Comprehensive documentation is provided for users to configure and use the connector.

Resources

@Mohith93 Mohith93 added enhancement New feature or request hacktoberfest labels Sep 30, 2024
Copy link

linear bot commented Sep 30, 2024

@xyfer17
Copy link
Contributor

xyfer17 commented Oct 28, 2024

@Mohith93 I would like to pick this feature request, please assign it to me

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request hacktoberfest
Projects
None yet
Development

No branches or pull requests

2 participants