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

Mixpanel: Destination Connector #396

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

Mixpanel: Destination Connector #396

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

Comments

@Mohith93
Copy link

Feature Request: Mixpanel Destination Connector

Issue Type: New Feature / Connector Request

Description

We need to build a Mixpanel Destination Connector that allows users to send data from Multiwoven to their Mixpanel account. This connector will help users automate the tracking of user events, properties, and other analytics data between Multiwoven and Mixpanel for better insights into user behavior, engagement, and product usage.

Requirements

  • Authentication:
    The connector should support Token-based Authentication using the Mixpanel API key (Project Token) to interact securely with the Mixpanel API. Users will need to generate this token from their Mixpanel account.

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

    • api_token: Mixpanel Project Token (API key).
    • Optional: project_id if the integration supports multiple projects.
  • Connector Features:
    The destination connector should be able to:

    1. Send the following data to Mixpanel:
      • User Profiles: Sync user profiles, including attributes such as name, email, and custom properties.
      • Events: Track custom user events, such as clicks, purchases, or specific app interactions.
      • Properties: Update user properties like engagement level, preferences, or custom fields.
    2. Allow users to map their data fields in Multiwoven to Mixpanel properties and events.
    3. Support bulk operations to handle large sets of events and user properties.
  • API Interaction:
    The connector should use the Mixpanel API for sending user profile data, tracking events, and managing properties. API documentation can be found here:
    Mixpanel API Documentation

  • Data Format:
    Data sent to Mixpanel must follow the required structure for events, profiles, and properties. This includes properly formatted JSON data for events and user attributes.

  • Error Handling:
    The connector should handle errors gracefully, including:

    • Invalid API tokens.
    • Data format or validation errors.
    • API rate limit issues or quotas.

Steps to Implement

  1. Authentication Setup:

    • Implement token-based authentication using the Mixpanel Project Token to securely communicate with the Mixpanel API.
  2. Connector Configuration:

    • Create a configuration file that accepts the necessary parameters, such as api_token and optionally project_id.
  3. API Integration:

    • Implement the logic to:
      • Sync user profile data from Multiwoven to Mixpanel.
      • Track and log custom events in Mixpanel, such as user actions or transactions.
      • Update user properties based on the synced data.
    • Support bulk operations for sending multiple events or user data at once.
  4. Field Mapping:

    • Enable users to map data fields from Multiwoven to Mixpanel’s event and profile fields.
    • Support both standard and custom attributes for user profiles and event properties.
  5. Error Handling & Logging:

    • Implement error handling for issues such as authentication failures, invalid data formats, and API rate limits.
    • Provide detailed logs for both successful and failed API interactions.
  6. Testing:

    • Write unit tests and integration tests to ensure the connector’s functionality.
    • Simulate API interactions using mocks to test the syncing of user profiles, event tracking, and property updates.
  7. Documentation:

    • Provide a detailed README.md explaining how to configure and use the connector.
    • Include examples of syncing user profiles, tracking custom events, and updating properties.

Acceptance Criteria

  • The connector successfully syncs data with Mixpanel, including user profiles, custom events, and properties.
  • Proper error handling is implemented, and logs are available for troubleshooting.
  • Unit and integration tests cover all key scenarios, such as event logging, user profile syncing, and property management.
  • 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

@Atharva1723
Copy link

Can I work on this issue?

@Mohith93
Copy link
Author

Hi @Atharva1723,

I hope you're doing well! I wanted to follow up on this issue, you've been working on.

Could you provide an update on the current status or let me know if you’re facing any challenges? I'm happy to assist or answer any questions you may have.

Thank you for your continued contributions to the project. Your efforts are greatly appreciated, and we’re excited to see your progress!

@Atharva1723
Copy link

Hi @Atharva1723,

I hope you're doing well! I wanted to follow up on this issue, you've been working on.

Could you provide an update on the current status or let me know if you’re facing any challenges? I'm happy to assist or answer any questions you may have.

Thank you for your continued contributions to the project. Your efforts are greatly appreciated, and we’re excited to see your progress!

I have started working to build an new project to make an connector , have configured the environment ,setting up the api authentication and further steps, since this is an major issue taking long time sorry for the delay

@Mohith93
Copy link
Author

@Atharva1723 Just wanted to get an update from you is all. No worries, take your time.

@cbrandborg
Copy link

Hi @Atharva1723 just found this repo, and this seems super cool. I have the exact case of doing reverse etl to Mixpanel, so if you need some feedback for it, let me know - Am very keen to try this out!

@Mohith93
Copy link
Author

Hi @Atharva1723
Checking in with you to see if you had any questions or concerns. Please share an update here or get your queries answered on our slack.
Thanks.

@Mohith93
Copy link
Author

Hey @cbrandborg
Check out our slack and let us know if we can be of any help in getting this up and running for you.

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

No branches or pull requests

3 participants