PostHog / PostHog/posthog

Add Plivo as a data warehouse source

Open
#72,151 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Python
Stars
39.9k
Forks
3.4k
Avg merge
7h 27m
Merged PRs (30d)
222

Description

Is your feature request related to a problem?

PostHog's data warehouse imports from external sources, and several communication providers are already available. Teams that use Plivo for SMS and voice have message and call data they would want to analyze in PostHog alongside their product usage, but there is no way to bring Plivo data in today.

Describe the solution you'd like

Add Plivo as a data warehouse source following the standard source template, so teams can pull Plivo resources such as messages and calls into PostHog and query and join them with the rest of their data. It would live under products/warehouse_sources/backend/temporal/data_imports/sources/plivo/ with the usual source files (source.py, settings.py, plivo.py, canonical_descriptions.py, tests), registered via _load_all.py, authenticating with the Plivo Auth ID and Auth Token and importing through Plivo's REST API, grouped in the Communication category.

Describe alternatives you've considered

Export Plivo data manually and import it as a CSV, which is not continuous and does not stay in sync.

Additional context

Happy to implement this and open a PR.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by inspecting neighboring sources under products/warehouse_sources/backend/temporal/data_imports/sources/ and the registration flow in _load_all.py, then compare their source.py, settings.py, plivo.py, canonical_descriptions.py, and tests. Done means Plivo is registered in the Communication category, authenticates with Auth ID and Auth Token, imports messages and calls through the REST API, and its tests pass.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
data-engineering
Issue type
Feature
Difficulty
3/5
Estimated time
1-2 days
Activity status
Quiet
Clarity
Clearly specified
Newbie friendliness
72/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.