Skip to content

feat(workflows): cap sandbox sends per project and recipient each day - #127151

Closed
Silthus wants to merge 19 commits into
workflows-sandbox-delivery/routefrom
workflows-sandbox-delivery/daily-caps
Closed

Silthus wants to merge 19 commits into
workflows-sandbox-delivery/routefrom
workflows-sandbox-delivery/daily-caps

Conversation

@Silthus

@Silthus Silthus commented Nov 2, 2026 •

Copy link
Copy Markdown
Contributor

Problem

  • The sandbox sender lets a team without a verified domain email its own members through one shared PostHog SES identity.
  • Without a daily limit, one project could send unlimited mail through that identity, or one member could receive a flood of it.
  • This PR caps sandbox sends per project and per recipient address each day. A send over either cap skips instead of going out.

Warning

🟡 Merge risk: medium · two-way door (merge-risk rubric)

  • Only sandbox sends claim the caps; own-domain sends do not touch the new code. The caps fail closed: a Valkey error or an invalid cap setting skips every sandbox send.
  • With the switch on, the CDP API opens the SES Valkey pool for test sends. The pool is non-fatal with bounded waits, so an outage skips sandbox test sends instead of stopping the CDP API.
  • Revert: git revert the merge commit. Leftover bucket keys in Valkey expire on their own.

Changes

Right before delivery, every sandbox send, test sends included, claims two daily allowances at once:

Allowance Setting (default) Charged
Per project WORKFLOWS_SANDBOX_DAILY_TEAM_CAP (25) One token per recipient copy
Per recipient address, across the organization WORKFLOWS_SANDBOX_DAILY_RECIPIENT_CAP (5) One token per distinct address
  • A reached allowance skips the send with a run log line and a workflows sandbox email blocked event with reason cap_reached.
  • Both allowances are token buckets that refill over 24 hours. One Valkey script claims both or neither.
  • The worker gives the claim back when the member recheck after the claim skips the send, or when SES throttles before a retry. Returns are deduplicated and expire after five minutes.
  • Recipient keys hash the lowercased address with SHA-256, so the keys hold no address.
  • During a Valkey reconnect, an optional pool fails a command at once instead of queueing it. A failed MX cache read or write falls back to DNS and counts cdp_email_mx_cache_errors_total.

Stack

  1. feat(workflows): restrict sandbox email to verified org members #127149 member gate
  2. feat(workflows): route sandbox email through its fixed ses identity #127150 sandbox route
  3. feat(workflows): cap sandbox sends per project and recipient each day #127151 daily caps ← this PR
  4. feat(workflows): provision a managed sandbox email sender #127152 sender row
  5. feat(workflows): show the managed sandbox sender in channels #127153 Channels row

How did you test this code?

  • Live run with the Node cdp-api at this head (c64edd21351) behind the public API on a box dev stack: provisioning twice returns one sender row; the first two member sends are delivered through the sandbox SES tenant, configuration set and From address, and the third is skipped by the recipient cap; outside@example.com is skipped with the member message; with the worker switch off the member send skips as unavailable. SES got exactly the two delivered sends. Stubs: a local SES endpoint that records each request, a DNS preload that answers an MX record for example.com, workflows-sandbox-sender answered true, PersonHog off (nothing on the send path reads persons).
  • Live stall run at this head: a proxy in front of the CDP Redis stalls every blocked-event store call. Two bursts of 15 concurrent non-member sends and a member send all answer within 2.5 seconds, and the member send is still delivered. Exactly ten store calls stall; the other captures give up at their deadline, and no other Redis user waits.
  • Prod shape: the caps apply only to the sandbox provider, which production does not have, so no production send claims a cap. The MX cache change alters only its error path.
  • Outage: fails a command at once while an optional pool reconnects instead of queueing it runs against a real Valkey with the client's connection destroyed. falls back to DNS and counts the failure when a Valkey command fails covers the MX cache.
  • CI report: the duplication warnings name files outside this stack, such as products/warehouse_sources/.
  • Review: GPT-6.1 Sol reviewed the PR and the fixes in several final reads; each finding is fixed in a commit on this stack, and the posthog[bot] threads are answered.

Test rationale: the daily caps block drives real sends through executeSendEmail with a real Redis limiter. It catches a send over a cap going out, a repeated address charged twice, and a claim kept after the send skipped. rate-limiter.service.test.ts covers claimAllOrNothing and returnClaim replay and late-return guards, which no send-level test reaches.

Release status

  • This change is behind a feature flag and is not available to users

Docs update

  • docs/internal/workflows-email-sending-tiers.md documents the two allowances, their settings and the fail-closed behavior.

🤖 Agent context

Autonomy: Human-driven (agent-assisted)

Agent: Claude Code, Claude Opus 5.5 (claude-opus-5-5). Review by GPT-6.1 Sol.

Skills: /recreating-fork-prs, /stacking-prs, /writing-pr-descriptions, tdd, merge-risk, qa-swarm

More context for AI agents
  • Session: squashed from feat(workflows): cap sandbox sends per project and recipient each day Silthus/posthog#604 at 8e541b56978 onto the route layer. The tree equals that fork head merged into master bf976a762be.
  • Decisions: the recipient allowance uses the team's organization from the team cache, the same source as the footer.
  • Decisions: claim right before delivery, then recheck members and return the claim if the recheck skips.
  • Decisions: the email worker keeps its fatal Valkey pool; only the CDP API pool is non-fatal.
  • Read closely: the Lua scripts in rate-limiter.service.ts.

🤖 Generated with Claude Code

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@Silthus Silthus added hogbox-preview Spin up a per-PR PostHog preview on a hogland hogbox posthog-review labels Nov 2, 2026
@Silthus Silthus self-assigned this Nov 2, 2026
@github-actions

github-actions Bot commented Nov 2, 2026 •

Copy link
Copy Markdown
Contributor

🤖 CI report

✅ Trunk lane — non-backend lane

This PR is assigned to the non-backend lane. It does not run backend Python tests and may merge in parallel with PRs in other lanes.

⚠️ Duplication (Python) — 884 new duplicated blocks (worst 311 tokens)

New Python code duplication introduced by this branch. Fails at 70+ tokens in app code, or 150+ tokens when both copies live in test files. Advisory while the gate proves itself: extract a shared helper instead of copying.

First copy Second copy Lines Tokens
products/warehouse_sources/sources/breezometer/breezometer.py:42 products/warehouse_sources/sources/openweather/openweather.py:39 57 311
products/warehouse_sources/backend/temporal/data_imports/sources/baserow/baserow.py:84 products/warehouse_sources/sources/medusa/medusa.py:98 43 297
products/warehouse_sources/sources/aha/tests/test_aha.py:22 products/warehouse_sources/sources/aha_ideas/tests/test_aha_ideas.py:25 48 294
products/warehouse_sources/sources/impact/impact.py:94 products/warehouse_sources/sources/impact_partner/impact_partner.py:73 38 261
products/warehouse_sources/sources/aha/aha.py:40 products/warehouse_sources/sources/aha_ideas/aha_ideas.py:36 37 238
products/warehouse_sources/backend/temporal/data_imports/sources/linkedin_ads/linkedin_ads.py:142 products/warehouse_sources/sources/google_analytics/google_analytics.py:79 26 220
products/warehouse_sources/sources/datahub/datahub.py:110 products/warehouse_sources/sources/discourse/discourse.py:63 33 213
products/batch_exports/backend/temporal/destinations/redshift_batch_export.py:1237 products/batch_exports/backend/temporal/destinations/redshift_batch_export.py:1754 36 212
products/warehouse_sources/sources/adjust/adjust.py:250 products/warehouse_sources/sources/tenjin/tenjin.py:47 31 176
products/product_analytics/backend/hogql_queries/lifecycle/test/test_lifecycle_data_warehouse.py:231 products/product_analytics/backend/hogql_queries/lifecycle/test/test_lifecycle_data_warehouse.py:448 19 175
products/warehouse_sources/backend/temporal/data_imports/sources/snowflake/snowflake.py:399 products/warehouse_sources/sources/databricks/databricks.py:291 28 171
products/warehouse_sources/sources/aws_cost_anomaly_detection/aws_cost_anomaly_detection.py:221 products/warehouse_sources/sources/aws_cost_explorer/aws_cost_explorer.py:317 35 171
products/warehouse_sources/sources/invoiceninja/invoiceninja.py:118 products/warehouse_sources/sources/pretix/pretix.py:90 30 170
products/warehouse_sources/sources/aws_budgets/aws_budgets.py:128 products/warehouse_sources/sources/aws_ses/aws_ses.py:117 17 169
products/warehouse_sources/sources/aws_budgets/aws_budgets.py:246 products/warehouse_sources/sources/aws_cost_anomaly_detection/aws_cost_anomaly_detection.py:184 22 164
products/warehouse_sources/sources/aws_budgets/aws_budgets.py:246 products/warehouse_sources/sources/aws_cost_explorer/aws_cost_explorer.py:280 22 164
products/warehouse_sources/sources/dockerhub/tests/test_dockerhub.py:205 products/warehouse_sources/sources/ubidots/tests/test_ubidots.py:206 18 162
products/warehouse_sources/sources/thinkific/canonical_descriptions.py:58 products/warehouse_sources/sources/thinkific_courses/canonical_descriptions.py:82 47 161
products/warehouse_sources/sources/amazon_ads/source.py:66 products/warehouse_sources/sources/amazon_selling_partner/source.py:169 39 159
products/warehouse_sources/backend/temporal/data_imports/sources/conftest.py:14 products/warehouse_sources/sources/conftest.py:33 19 157
products/warehouse_sources/sources/appsflyer/appsflyer.py:69 products/warehouse_sources/sources/gladly/gladly.py:98 22 156
products/warehouse_sources/sources/impact/impact.py:159 products/warehouse_sources/sources/impact_partner/impact_partner.py:120 29 156
products/warehouse_sources/sources/openai/openai.py:62 products/warehouse_sources/sources/openai_ads/openai_ads.py:83 26 156
products/warehouse_sources/sources/mixpanel/mixpanel.py:60 products/warehouse_sources/sources/writesonic/writesonic.py:46 29 148
products/warehouse_sources/sources/cody/source.py:106 products/warehouse_sources/sources/surveymonkey/source.py:118 22 144
products/warehouse_sources/sources/freshcaller/freshcaller.py:105 products/warehouse_sources/sources/fulcrum/fulcrum.py:98 25 144
products/warehouse_sources/sources/freshcaller/freshcaller.py:105 products/warehouse_sources/sources/hellobaton/hellobaton.py:63 25 144
products/warehouse_sources/sources/hatchet/hatchet.py:164 products/warehouse_sources/sources/langsmith/langsmith.py:252 19 144
products/warehouse_sources/sources/amazon_cloudwatch/source.py:189 products/warehouse_sources/sources/dynamodb/source.py:85 39 141
products/warehouse_sources/sources/cody/source.py:106 products/warehouse_sources/sources/terraform_cloud/source.py:100 22 141
products/warehouse_sources/sources/babelforce/babelforce.py:172 products/warehouse_sources/sources/onfleet/onfleet.py:48 16 137
products/warehouse_sources/sources/amazon_cloudwatch/source.py:189 products/warehouse_sources/sources/aws_athena/source.py:100 38 136
products/batch_exports/backend/temporal/destinations/databricks_batch_export.py:1336 products/batch_exports/backend/temporal/destinations/snowflake_batch_export.py:1503 30 135
products/warehouse_sources/backend/temporal/data_imports/sources/gitea/source.py:177 products/warehouse_sources/sources/instatus/source.py:84 24 134
products/warehouse_sources/backend/temporal/data_imports/sources/gitea/source.py:177 products/warehouse_sources/sources/pganalyze/source.py:46 24 134
products/warehouse_sources/backend/temporal/data_imports/sources/gitea/source.py:177 products/warehouse_sources/sources/plain/source.py:118 24 134
products/warehouse_sources/sources/stigg/stigg.py:73 products/warehouse_sources/sources/tickettailor/tickettailor.py:103 32 134
products/warehouse_sources/sources/lattice/lattice.py:47 products/warehouse_sources/sources/pipeliner/pipeliner.py:58 20 132
products/warehouse_sources/backend/temporal/data_imports/sources/gitea/source.py:177 products/warehouse_sources/sources/formbricks/source.py:118 23 131
products/warehouse_sources/backend/temporal/data_imports/sources/gitea/source.py:177 products/warehouse_sources/sources/pipeliner/source.py:120 23 131
products/warehouse_sources/backend/temporal/data_imports/sources/gitea/source.py:177 products/warehouse_sources/sources/wordpress/source.py:143 23 131
products/warehouse_sources/sources/aws_sagemaker/source.py:146 products/warehouse_sources/sources/aws_systems_manager/source.py:121 35 131
products/warehouse_sources/sources/back_market/back_market.py:75 products/warehouse_sources/sources/tavus/tavus.py:73 21 131
products/warehouse_sources/sources/finnhub/source.py:64 products/warehouse_sources/sources/kubecost/source.py:97 22 131
products/warehouse_sources/sources/appfollow/appfollow.py:108 products/warehouse_sources/sources/perigon/perigon.py:87 27 130
products/warehouse_sources/backend/temporal/data_imports/sources/mailgun/mailgun.py:127 products/warehouse_sources/sources/pingdom/pingdom.py:43 15 129
products/warehouse_sources/sources/babelforce/babelforce.py:172 products/warehouse_sources/sources/onepagecrm/onepagecrm.py:43 15 129
products/warehouse_sources/sources/formbricks/formbricks.py:77 products/warehouse_sources/sources/octopus_deploy/octopus_deploy.py:88 18 128
products/warehouse_sources/sources/salesflare/salesflare.py:86 products/warehouse_sources/sources/svix/svix.py:139 26 127
products/warehouse_sources/sources/active_campaign/source.py:104 products/warehouse_sources/sources/asknicely/source.py:96 24 126
products/warehouse_sources/sources/active_campaign/source.py:104 products/warehouse_sources/sources/chargify/source.py:75 24 126
products/warehouse_sources/sources/active_campaign/source.py:104 products/warehouse_sources/sources/coinmarketcap/source.py:94 24 126
products/warehouse_sources/sources/active_campaign/source.py:104 products/warehouse_sources/sources/klaus/source.py:100 24 126
products/warehouse_sources/sources/datahub/datahub.py:103 products/warehouse_sources/sources/unleash/unleash.py:69 18 126
products/warehouse_sources/sources/datahub/datahub.py:120 products/warehouse_sources/sources/unleash/unleash.py:86 24 126
products/warehouse_sources/sources/thinkific/source.py:52 products/warehouse_sources/sources/thinkific_courses/source.py:57 35 126
products/warehouse_sources/sources/aha/aha.py:291 products/warehouse_sources/sources/aha_ideas/aha_ideas.py:257 23 125
products/warehouse_sources/sources/awin/awin.py:174 products/warehouse_sources/sources/impact/impact.py:99 17 125
products/warehouse_sources/backend/temporal/data_imports/sources/google_search_console/google_search_console.py:364 products/warehouse_sources/sources/google_analytics/google_analytics.py:184 14 124
products/warehouse_sources/sources/appsignal/appsignal.py:59 products/warehouse_sources/sources/babelforce/babelforce.py:172 15 124
products/warehouse_sources/sources/coolify/coolify.py:262 products/warehouse_sources/sources/digitalocean/digitalocean.py:50 18 124
products/warehouse_sources/sources/dixa/dixa.py:70 products/warehouse_sources/sources/onfleet/onfleet.py:50 18 124
products/warehouse_sources/sources/codecov/source.py:155 products/warehouse_sources/sources/northflank/source.py:55 24 123
products/warehouse_sources/sources/hubplanner/hubplanner.py:60 products/warehouse_sources/sources/mux/mux.py:92 20 123
products/warehouse_sources/sources/aha/aha.py:161 products/warehouse_sources/sources/aha_ideas/aha_ideas.py:144 27 122
products/warehouse_sources/sources/amazon_cloudwatch/source.py:189 products/warehouse_sources/sources/aws_iam_access_analyzer/source.py:129 33 122
products/warehouse_sources/sources/appdynamics/source.py:127 products/warehouse_sources/sources/jamf_pro/source.py:112 37 121
products/warehouse_sources/sources/browser_use/browser_use.py:205 products/warehouse_sources/sources/deel/deel.py:126 17 121
products/warehouse_sources/sources/openai/openai.py:95 products/warehouse_sources/sources/openai_ads/openai_ads.py:112 18 121
products/warehouse_sources/sources/news_api/news_api.py:81 products/warehouse_sources/sources/sendowl/sendowl.py:61 19 120
products/warehouse_sources/sources/oncehub/oncehub.py:72 products/warehouse_sources/sources/semgrep/semgrep.py:116 17 120
products/warehouse_sources/backend/temporal/data_imports/sources/mailgun/source.py:191 products/warehouse_sources/sources/orb/source.py:88 30 119
products/warehouse_sources/backend/temporal/data_imports/sources/mailgun/source.py:191 products/warehouse_sources/sources/solarwinds_service_desk/source.py:124 30 119
products/warehouse_sources/sources/aws_ses/source.py:161 products/warehouse_sources/sources/aws_systems_manager/source.py:124 33 119
products/warehouse_sources/sources/copper/copper.py:98 products/warehouse_sources/sources/uptimerobot/uptimerobot.py:96 18 119
products/warehouse_sources/sources/partnerize/partnerize.py:93 products/warehouse_sources/sources/roark/roark.py:104 20 119
products/warehouse_sources/sources/pagerduty/pagerduty.py:124 products/warehouse_sources/sources/partnerize/partnerize.py:94 19 118
products/demo/backend/logic/products/hedgebox/matrix.py:281 products/demo/backend/logic/products/spikegpt/matrix.py:29 33 117
products/warehouse_sources/backend/temporal/data_imports/sources/sentry/source.py:424 products/warehouse_sources/sources/fillout/source.py:105 26 117
products/warehouse_sources/sources/aha_ideas/aha_ideas.py:92 products/warehouse_sources/sources/reverb/reverb.py:91 17 117
products/warehouse_sources/sources/confluent_cloud/confluent_cloud.py:70 products/warehouse_sources/sources/klaus/klaus.py:140 15 117
products/warehouse_sources/backend/temporal/data_imports/sources/sharepoint/sharepoint.py:123 products/warehouse_sources/sources/power_bi_admin/power_bi_admin.py:89 21 116
products/warehouse_sources/backend/temporal/data_imports/sources/woocommerce/woocommerce.py:230 products/warehouse_sources/sources/maxio/maxio.py:90 18 116
products/warehouse_sources/sources/capsule_crm/capsule_crm.py:132 products/warehouse_sources/sources/granola/granola.py:265 27 116
products/warehouse_sources/sources/smartwaiver/smartwaiver.py:98 products/warehouse_sources/sources/smartwaiver/smartwaiver.py:143 20 116
products/warehouse_sources/sources/amazon_cloudwatch/amazon_cloudwatch.py:360 products/warehouse_sources/sources/aws_athena/athena.py:165 14 115
products/warehouse_sources/sources/argocd/source.py:108 products/warehouse_sources/sources/codacy/source.py:108 24 115
products/warehouse_sources/sources/argocd/source.py:108 products/warehouse_sources/sources/digitalocean/source.py:72 24 115
products/warehouse_sources/sources/argocd/source.py:108 products/warehouse_sources/sources/frill/source.py:86 24 115
products/warehouse_sources/sources/argocd/source.py:108 products/warehouse_sources/sources/kandji/source.py:61 24 115
products/warehouse_sources/sources/argocd/source.py:108 products/warehouse_sources/sources/launchdarkly/source.py:263 24 115
products/warehouse_sources/sources/argocd/source.py:108 products/warehouse_sources/sources/split_io/source.py:170 24 115
products/warehouse_sources/sources/argocd/source.py:108 products/warehouse_sources/sources/zoom/source.py:121 24 115
products/warehouse_sources/sources/elevenlabs/elevenlabs.py:136 products/warehouse_sources/sources/lattice/lattice.py:50 17 115
products/warehouse_sources/sources/freshcaller/freshcaller.py:111 products/warehouse_sources/sources/news_api/news_api.py:83 17 115
products/warehouse_sources/sources/capsule_crm/capsule_crm.py:91 products/warehouse_sources/sources/nocrm/nocrm.py:80 13 114
products/warehouse_sources/sources/demodesk/demodesk.py:79 products/warehouse_sources/sources/spotlercrm/spotlercrm.py:58 18 114
products/warehouse_sources/sources/eventbrite/eventbrite.py:243 products/warehouse_sources/sources/pretix/pretix.py:314 25 114
products/warehouse_sources/sources/freshcaller/freshcaller.py:68 products/warehouse_sources/sources/sendowl/sendowl.py:41 16 114
products/warehouse_sources/backend/temporal/data_imports/sources/mailgun/source.py:191 products/warehouse_sources/sources/jotform/source.py:128 26 113
products/warehouse_sources/sources/adyen/adyen.py:120 products/warehouse_sources/sources/checkout_com/payments.py:229 15 113
products/warehouse_sources/sources/argocd/argocd.py:94 products/warehouse_sources/sources/sonatype_nexus/sonatype_nexus.py:67 17 113
products/warehouse_sources/sources/drip/drip.py:78 products/warehouse_sources/sources/humanitix/humanitix.py:88 17 113
products/warehouse_sources/sources/eventbrite/source.py:81 products/warehouse_sources/sources/pretix/source.py:117 24 113
products/warehouse_sources/sources/beamer/beamer.py:50 products/warehouse_sources/sources/rss/rss.py:58 15 112
products/warehouse_sources/sources/drip/drip.py:78 products/warehouse_sources/sources/float_app/float_app.py:92 14 112
products/warehouse_sources/sources/elevenlabs/elevenlabs.py:157 products/warehouse_sources/sources/lattice/lattice.py:76 18 112
products/warehouse_sources/sources/justsift/justsift.py:123 products/warehouse_sources/sources/thinkific/thinkific.py:121 24 112
products/warehouse_sources/sources/sentinelone/sentinelone.py:202 products/warehouse_sources/sources/tickettailor/tickettailor.py:70 18 112
products/warehouse_sources/backend/temporal/data_imports/sources/azure_log_analytics/azure_log_analytics.py:188 products/warehouse_sources/sources/azure_cost_management/azure_cost_management.py:315 15 111
products/warehouse_sources/backend/temporal/data_imports/sources/chatwoot/chatwoot.py:126 products/warehouse_sources/sources/formbricks/formbricks.py:123 17 111
products/warehouse_sources/backend/temporal/data_imports/sources/common/rest_source/paginators.py:142 products/warehouse_sources/sources/aircall/aircall.py:204 20 111
products/warehouse_sources/backend/temporal/data_imports/sources/mailgun/mailgun.py:128 products/warehouse_sources/sources/aircall/aircall.py:55 13 111
products/warehouse_sources/backend/temporal/data_imports/sources/mailgun/mailgun.py:128 products/warehouse_sources/sources/appsignal/appsignal.py:61 11 111
products/warehouse_sources/sources/amazon_cloudwatch/source.py:189 products/warehouse_sources/sources/aws_cost_anomaly_detection/source.py:151 31 111
products/warehouse_sources/sources/amazon_cloudwatch/source.py:189 products/warehouse_sources/sources/aws_organizations/source.py:155 31 111
products/warehouse_sources/sources/awin/awin.py:177 products/warehouse_sources/sources/dbt/dbt.py:344 15 111
products/warehouse_sources/sources/my_hours/my_hours.py:207 products/warehouse_sources/sources/salesflare/salesflare.py:95 19 111
products/warehouse_sources/sources/qualaroo/qualaroo.py:154 products/warehouse_sources/sources/rentcast/rentcast.py:136 27 111
products/warehouse_sources/backend/temporal/data_imports/sources/motherduck/motherduck.py:190 products/warehouse_sources/sources/databricks/databricks.py:144 13 110
products/warehouse_sources/sources/amazon_cloudwatch/source.py:189 products/warehouse_sources/sources/aws_cost_and_usage_report/source.py:167 31 110
products/warehouse_sources/sources/canvas_lms/canvas_lms.py:296 products/warehouse_sources/sources/thinkific_courses/thinkific_courses.py:119 17 110
products/warehouse_sources/sources/elevenlabs/elevenlabs.py:161 products/warehouse_sources/sources/pipeliner/pipeliner.py:92 14 110
products/batch_exports/backend/temporal/destinations/databricks_batch_export.py:1336 products/batch_exports/backend/temporal/destinations/postgres_batch_export.py:992 22 109
products/warehouse_sources/backend/temporal/data_imports/sources/servicenow/source.py:106 products/warehouse_sources/sources/elasticsearch/source.py:129 38 109
products/warehouse_sources/sources/attio/attio.py:44 products/warehouse_sources/sources/attio/attio.py:78 16 109
products/batch_exports/backend/temporal/destinations/postgres_batch_export.py:45 products/batch_exports/backend/temporal/destinations/snowflake_batch_export.py:39 16 108
products/warehouse_sources/sources/aws_guardduty/aws_guardduty.py:132 products/warehouse_sources/sources/aws_macie/aws_macie.py:93 16 108
products/warehouse_sources/sources/cohere/source.py:100 products/warehouse_sources/sources/flexmail/source.py:92 28 108
products/warehouse_sources/sources/cohere/source.py:100 products/warehouse_sources/sources/google_webfonts/source.py:90 28 108
products/warehouse_sources/sources/cohere/source.py:100 products/warehouse_sources/sources/height/source.py:85 28 108
products/warehouse_sources/sources/cohere/source.py:100 products/warehouse_sources/sources/jellyfish/source.py:81 28 108
products/warehouse_sources/sources/cohere/source.py:100 products/warehouse_sources/sources/judgeme_reviews/source.py:95 28 108
products/warehouse_sources/sources/cohere/source.py:100 products/warehouse_sources/sources/luma/source.py:100 28 108
products/warehouse_sources/sources/cohere/source.py:100 products/warehouse_sources/sources/mention/source.py:88 28 108
products/warehouse_sources/sources/cohere/source.py:100 products/warehouse_sources/sources/oncehub/source.py:82 28 108
products/warehouse_sources/sources/cohere/source.py:100 products/warehouse_sources/sources/optimizely/source.py:131 28 108
products/warehouse_sources/sources/cohere/source.py:100 products/warehouse_sources/sources/pabbly_subscriptions_billing/source.py:93 28 108
products/warehouse_sources/sources/cohere/source.py:100 products/warehouse_sources/sources/partnerstack/source.py:94 28 108
products/warehouse_sources/sources/cohere/source.py:100 products/warehouse_sources/sources/paystack/source.py:88 28 108
products/warehouse_sources/sources/cohere/source.py:100 products/warehouse_sources/sources/printify/source.py:83 28 108
products/warehouse_sources/sources/cohere/source.py:100 products/warehouse_sources/sources/rocketlane/source.py:86 28 108
products/warehouse_sources/sources/cohere/source.py:100 products/warehouse_sources/sources/sage_hr/source.py:98 28 108
products/warehouse_sources/sources/cohere/source.py:100 products/warehouse_sources/sources/smaily/source.py:102 28 108
products/warehouse_sources/sources/cohere/source.py:100 products/warehouse_sources/sources/svix/source.py:91 28 108
products/warehouse_sources/sources/cohere/source.py:100 products/warehouse_sources/sources/unleash/source.py:178 28 108
products/warehouse_sources/sources/cohere/source.py:100 products/warehouse_sources/sources/vultr/source.py:69 28 108
products/warehouse_sources/sources/cohere/source.py:100 products/warehouse_sources/sources/wrike/source.py:93 28 108
products/warehouse_sources/sources/grafana/grafana.py:355 products/warehouse_sources/sources/instana/instana.py:149 12 108
products/warehouse_sources/sources/runpod/runpod.py:63 products/warehouse_sources/sources/vercel/vercel.py:374 12 108
products/warehouse_sources/sources/aws_organizations/aws_organizations.py:130 products/warehouse_sources/sources/aws_ses/aws_ses.py:146 15 107
products/warehouse_sources/sources/aws_sagemaker/source.py:146 products/warehouse_sources/sources/aws_step_functions/source.py:117 29 107
products/warehouse_sources/sources/freshcaller/freshcaller.py:111 products/warehouse_sources/sources/semgrep/semgrep.py:66 14 107
products/warehouse_sources/sources/planhat/planhat.py:49 products/warehouse_sources/sources/qualaroo/qualaroo.py:156 25 107
products/warehouse_sources/backend/temporal/data_imports/sources/motherduck/motherduck.py:190 products/warehouse_sources/backend/temporal/data_imports/sources/mysql/mysql.py:313 12 106
products/warehouse_sources/sources/amazon_cloudwatch/source.py:189 products/warehouse_sources/sources/aws_cost_explorer/source.py:147 30 106
products/batch_exports/backend/temporal/destinations/azure_blob_batch_export.py:351 products/batch_exports/backend/temporal/destinations/bigquery_batch_export.py:1546 21 105
products/warehouse_sources/backend/temporal/data_imports/sources/sharepoint/source.py:236 products/warehouse_sources/sources/azure_cost_management/source.py:78 30 105
products/warehouse_sources/sources/capsule_crm/capsule_crm.py:136 products/warehouse_sources/sources/freshservice/freshservice.py:118 23 105
products/warehouse_sources/sources/codecov/codecov.py:180 products/warehouse_sources/sources/nebius_ai/nebius_ai.py:99 15 105
products/warehouse_sources/sources/codecov/codecov.py:180 products/warehouse_sources/sources/replicate/replicate.py:94 15 105
products/warehouse_sources/sources/codecov/codecov.py:180 products/warehouse_sources/sources/trigger_dev/trigger_dev.py:118 15 105
products/warehouse_sources/sources/gitguardian/gitguardian.py:342 products/warehouse_sources/sources/trigger_dev/trigger_dev.py:400 24 105
products/warehouse_sources/backend/temporal/data_imports/sources/snowflake/snowflake.py:156 products/warehouse_sources/sources/databricks/databricks.py:171 12 104
products/warehouse_sources/sources/aha/aha.py:214 products/warehouse_sources/sources/campfire/campfire.py:212 15 104
products/warehouse_sources/sources/aha/aha.py:214 products/warehouse_sources/sources/chartmogul/chartmogul.py:207 15 104
products/warehouse_sources/sources/aha/aha.py:214 products/warehouse_sources/sources/convertkit/convertkit.py:223 15 104
products/warehouse_sources/sources/aha/aha.py:214 products/warehouse_sources/sources/fleetio/fleetio.py:288 15 104
products/warehouse_sources/sources/aha/aha.py:214 products/warehouse_sources/sources/freshservice/freshservice.py:163 15 104
products/warehouse_sources/sources/aha/aha.py:214 products/warehouse_sources/sources/fulcrum/fulcrum.py:174 15 104
products/warehouse_sources/sources/aha/aha.py:214 products/warehouse_sources/sources/humanitix/humanitix.py:233 15 104
products/warehouse_sources/sources/aha/aha.py:214 products/warehouse_sources/sources/smartlead/smartlead.py:151 15 104
products/warehouse_sources/sources/aws_cost_anomaly_detection/aws_cost_anomaly_detection.py:109 products/warehouse_sources/sources/aws_cost_explorer/aws_cost_explorer.py:107 17 104
products/warehouse_sources/sources/aws_iam_access_analyzer/source.py:129 products/warehouse_sources/sources/aws_waf/source.py:135 28 104
products/warehouse_sources/sources/back_market/back_market.py:191 products/warehouse_sources/sources/hellobaton/hellobaton.py:154 25 104
products/warehouse_sources/sources/back_market/back_market.py:191 products/warehouse_sources/sources/zenloop/zenloop.py:103 25 104
products/warehouse_sources/sources/gerrit/gerrit.py:77 products/warehouse_sources/sources/omni/omni.py:57 16 104
products/warehouse_sources/sources/justsift/justsift.py:123 products/warehouse_sources/sources/stack_overflow_for_teams/stack_overflow_for_teams.py:109 24 104
products/warehouse_sources/sources/aws_sagemaker/source.py:146 products/warehouse_sources/sources/aws_security_hub/source.py:136 28 103
products/warehouse_sources/sources/bitrise/source.py:109 products/warehouse_sources/sources/snowplow/source.py:219 23 103
products/warehouse_sources/sources/cody/source.py:106 products/warehouse_sources/sources/square/source.py:126 14 103
products/warehouse_sources/sources/simplesat/simplesat.py:94 products/warehouse_sources/sources/smartreach/smartreach.py:109 22 103
products/warehouse_sources/backend/temporal/data_imports/sources/okta/okta.py:74 products/warehouse_sources/sources/sentinelone/sentinelone.py:62 15 102
products/warehouse_sources/sources/adyen/adyen.py:437 products/warehouse_sources/sources/adyen/adyen.py:461 17 102
products/warehouse_sources/sources/back_market/back_market.py:191 products/warehouse_sources/sources/tavus/tavus.py:141 25 102
products/warehouse_sources/backend/temporal/data_imports/sources/mailerlite/mailerlite.py:136 products/warehouse_sources/sources/canvas_lms/canvas_lms.py:298 15 101
products/warehouse_sources/backend/temporal/data_imports/sources/sharepoint/source.py:236 products/warehouse_sources/sources/power_bi_admin/source.py:151 28 101
products/warehouse_sources/sources/aha/aha.py:214 products/warehouse_sources/sources/cal_com/cal_com.py:378 15 101
products/warehouse_sources/sources/amazon_cloudwatch/source.py:189 products/warehouse_sources/sources/aws_sagemaker/source.py:147 28 101
products/warehouse_sources/sources/aws_sagemaker/source.py:146 products/warehouse_sources/sources/aws_savings_plans/source.py:127 27 101
products/warehouse_sources/sources/beamer/beamer.py:204 products/warehouse_sources/sources/rss/rss.py:149 18 101
products/warehouse_sources/sources/canny/canny.py:223 products/warehouse_sources/sources/churnkey/churnkey.py:86 24 101
products/warehouse_sources/sources/rippling/rippling.py:192 products/warehouse_sources/sources/simplesat/simplesat.py:115 22 101
products/warehouse_sources/sources/rippling/rippling.py:192 products/warehouse_sources/sources/zendesk_sell/zendesk_sell.py:154 22 101
products/warehouse_sources/sources/simplesat/simplesat.py:95 products/warehouse_sources/sources/workable/workable.py:241 21 101
products/warehouse_sources/sources/who_gho/who_gho.py:41 products/warehouse_sources/sources/world_bank/world_bank.py:52 16 101
products/warehouse_sources/sources/who_gho/who_gho.py:146 products/warehouse_sources/sources/who_gho/who_gho.py:195 15 101
products/warehouse_sources/sources/amazon_cloudwatch/source.py:189 products/warehouse_sources/sources/aws_config/source.py:137 27 100
products/warehouse_sources/sources/back_market/back_market.py:191 products/warehouse_sources/sources/hitpay/hitpay.py:195 25 100
products/warehouse_sources/sources/better_stack/better_stack.py:56 products/warehouse_sources/sources/folk/folk.py:58 15 100
products/warehouse_sources/sources/browser_use/browser_use.py:183 products/warehouse_sources/sources/deel/deel.py:101 12 100
products/warehouse_sources/sources/chartmogul/chartmogul.py:86 products/warehouse_sources/sources/oncehub/oncehub.py:76 14 100
products/warehouse_sources/sources/drata/drata.py:178 products/warehouse_sources/sources/stigg/stigg.py:82 21 100
products/warehouse_sources/sources/orca_security/orca_security.py:220 products/warehouse_sources/sources/polymarket/polymarket.py:109 27 100
products/batch_exports/backend/temporal/destinations/azure_blob_batch_export.py:350 products/batch_exports/backend/temporal/destinations/s3_batch_export.py:761 22 99
products/warehouse_sources/sources/back_market/back_market.py:191 products/warehouse_sources/sources/float_app/float_app.py:316 25 99
products/warehouse_sources/sources/cody/source.py:106 products/warehouse_sources/sources/copper/source.py:56 13 99
products/warehouse_sources/sources/gusto/source.py:84 products/warehouse_sources/sources/workday/source.py:88 31 99
products/warehouse_sources/sources/rippling/rippling.py:192 products/warehouse_sources/sources/tempo/tempo.py:163 22 99
products/warehouse_sources/backend/temporal/data_imports/sources/okta/okta.py:74 products/warehouse_sources/sources/katana/katana.py:48 14 98
products/warehouse_sources/backend/temporal/data_imports/sources/okta/okta.py:74 products/warehouse_sources/sources/metorial/metorial.py:42 14 98
products/warehouse_sources/sources/amazon_cloudwatch/source.py:189 products/warehouse_sources/sources/aws_glue_data_catalog/source.py:131 27 98
products/warehouse_sources/sources/amazon_cloudwatch/source.py:189 products/warehouse_sources/sources/aws_guardduty/source.py:120 27 98
products/warehouse_sources/sources/amazon_cloudwatch/source.py:189 products/warehouse_sources/sources/aws_inspector/source.py:140 27 98
products/warehouse_sources/sources/aws_iam_access_analyzer/aws_iam_access_analyzer.py:119 products/warehouse_sources/sources/aws_macie/aws_macie.py:103 14 98
products/warehouse_sources/sources/back_market/back_market.py:191 products/warehouse_sources/sources/zonka_feedback/zonka_feedback.py:257 21 98
products/warehouse_sources/sources/datahub/datahub.py:120 products/warehouse_sources/sources/dynatrace/dynatrace.py:88 21 98
products/warehouse_sources/sources/elevenlabs/elevenlabs.py:161 products/warehouse_sources/sources/zuora/zuora.py:106 14 98
products/warehouse_sources/sources/hubplanner/hubplanner.py:220 products/warehouse_sources/sources/sonar_cloud/sonar_cloud.py:157 24 98
products/warehouse_sources/sources/shopify/queries/discount_nodes.py:40 products/warehouse_sources/sources/shopify/queries/discount_nodes.py:129 26 98
products/warehouse_sources/backend/temporal/data_imports/sources/mailerlite/mailerlite.py:138 products/warehouse_sources/sources/aha/aha.py:216 13 97
products/warehouse_sources/backend/temporal/data_imports/sources/mailerlite/mailerlite.py:138 products/warehouse_sources/sources/front/front.py:174 13 97
products/warehouse_sources/backend/temporal/data_imports/sources/mailerlite/mailerlite.py:138 products/warehouse_sources/sources/granola/granola.py:193 13 97
products/warehouse_sources/backend/temporal/data_imports/sources/okta/okta.py:74 products/warehouse_sources/sources/jamf_pro/jamf_pro.py:178 11 97
products/warehouse_sources/backend/temporal/data_imports/sources/okta/okta.py:75 products/warehouse_sources/sources/infisical/infisical.py:134 13 97
products/warehouse_sources/backend/temporal/data_imports/sources/salesforce/source.py:210 products/warehouse_sources/sources/env0/source.py:90 15 97
products/warehouse_sources/sources/aviator/aviator.py:70 products/warehouse_sources/sources/pulumi_cloud/pulumi_cloud.py:91 17 97
products/warehouse_sources/sources/blogger/blogger.py:35 products/warehouse_sources/sources/nocrm/nocrm.py:68 12 97
products/warehouse_sources/sources/codefresh/codefresh.py:122 products/warehouse_sources/sources/jumpcloud/jumpcloud.py:159 13 97
products/warehouse_sources/sources/codemagic/codemagic.py:233 products/warehouse_sources/sources/courier/courier.py:239 13 97
products/warehouse_sources/sources/cronitor/cronitor.py:480 products/warehouse_sources/sources/openrouter/openrouter.py:441 20 97
products/warehouse_sources/sources/cronitor/cronitor.py:480 products/warehouse_sources/sources/squarespace/squarespace.py:240 20 97
products/warehouse_sources/sources/hetzner/hetzner.py:127 products/warehouse_sources/sources/opsgenie/opsgenie.py:301 27 97
products/warehouse_sources/sources/hetzner/hetzner.py:127 products/warehouse_sources/sources/xmatters/xmatters.py:306 24 97
products/warehouse_sources/sources/safetyculture/safetyculture.py:224 products/warehouse_sources/sources/smartreach/smartreach.py:130 24 97
products/warehouse_sources/sources/tvmaze/tvmaze.py:77 products/warehouse_sources/sources/watchmode/watchmode.py:114 19 97
products/warehouse_sources/sources/amazon_cloudwatch/source.py:189 products/warehouse_sources/sources/aws_cloudtrail/source.py:148 26 96
products/warehouse_sources/sources/appcues/source.py:71 products/warehouse_sources/sources/umami/source.py:141 20 96
products/warehouse_sources/sources/aviationstack/aviationstack.py:283 products/warehouse_sources/sources/marketstack/marketstack.py:316 16 96
products/warehouse_sources/sources/aws_config/aws_config.py:113 products/warehouse_sources/sources/aws_sagemaker/aws_sagemaker.py:133 14 96
products/warehouse_sources/sources/back_market/back_market.py:191 products/warehouse_sources/sources/safetyculture/safetyculture.py:224 25 96
products/warehouse_sources/sources/bitbucket/source.py:179 products/warehouse_sources/sources/cimis/source.py:117 19 96
products/warehouse_sources/sources/bitbucket/source.py:179 products/warehouse_sources/sources/deno_deploy/source.py:94 19 96
products/warehouse_sources/sources/browser_use/browser_use.py:102 products/warehouse_sources/sources/copper/copper.py:73 14 96
products/warehouse_sources/sources/drata/drata.py:179 products/warehouse_sources/sources/ruddr/ruddr.py:104 20 96
products/warehouse_sources/sources/propertyware/propertyware.py:112 products/warehouse_sources/sources/salesflare/salesflare.py:67 21 96
products/warehouse_sources/backend/temporal/data_imports/sources/mem0/source.py:131 products/warehouse_sources/sources/impact/source.py:110 17 95
products/warehouse_sources/backend/temporal/data_imports/sources/mem0/source.py:131 products/warehouse_sources/sources/impact_partner/source.py:107 17 95
products/warehouse_sources/backend/temporal/data_imports/sources/mem0/source.py:131 products/warehouse_sources/sources/mailosaur/source.py:91 17 95
products/warehouse_sources/backend/temporal/data_imports/sources/mem0/source.py:131 products/warehouse_sources/sources/spacelift/source.py:132 17 95
products/warehouse_sources/sources/anthropic/source.py:196 products/warehouse_sources/sources/runpod/source.py:94 19 95
products/warehouse_sources/sources/aws_budgets/aws_budgets.py:704 products/warehouse_sources/sources/aws_cost_anomaly_detection/aws_cost_anomaly_detection.py:430 23 95
products/warehouse_sources/sources/canny/canny.py:223 products/warehouse_sources/sources/codefresh/codefresh.py:238 24 95
products/warehouse_sources/sources/canny/canny.py:223 products/warehouse_sources/sources/savvycal/savvycal.py:144 24 95
products/warehouse_sources/sources/linkrunner/source.py:111 products/warehouse_sources/sources/scale_ai/source.py:103 19 95
products/warehouse_sources/sources/marketstack/marketstack.py:278 products/warehouse_sources/sources/papersign/papersign.py:139 28 95
products/warehouse_sources/sources/new_york_times/new_york_times.py:136 products/warehouse_sources/sources/pylon/pylon.py:100 13 95
products/warehouse_sources/sources/news_api/news_api.py:208 products/warehouse_sources/sources/shopwired/shopwired.py:142 20 95
products/warehouse_sources/sources/openaq/source.py:107 products/warehouse_sources/sources/replicate/source.py:112 19 95
products/warehouse_sources/sources/printify/printify.py:481 products/warehouse_sources/sources/shippo/shippo.py:268 11 95
products/warehouse_sources/sources/amazon_cloudwatch/source.py:189 products/warehouse_sources/sources/aws_budgets/source.py:140 26 94
products/warehouse_sources/sources/amazon_cloudwatch/source.py:189 products/warehouse_sources/sources/aws_macie/source.py:125 26 94
products/warehouse_sources/sources/bol_retailer/bol_retailer.py:179 products/warehouse_sources/sources/everflow/everflow.py:198 11 94
products/warehouse_sources/sources/bol_retailer/bol_retailer.py:180 products/warehouse_sources/sources/trafficstars/trafficstars.py:98 12 94
products/warehouse_sources/sources/browser_use/browser_use.py:156 products/warehouse_sources/sources/metorial/metorial.py:98 13 94
products/warehouse_sources/sources/circleci_insights/circleci_insights.py:42 products/warehouse_sources/sources/northflank/northflank.py:48 17 94
products/warehouse_sources/sources/drata/drata.py:182 products/warehouse_sources/sources/oncehub/oncehub.py:119 17 94
products/warehouse_sources/sources/height/height.py:57 products/warehouse_sources/sources/shortio/shortio.py:46 23 94
products/warehouse_sources/sources/katana/katana.py:152 products/warehouse_sources/sources/nocrm/nocrm.py:267 24 94
products/warehouse_sources/sources/thinkific/thinkific.py:49 products/warehouse_sources/sources/thinkific_courses/thinkific_courses.py:81 13 94
products/warehouse_sources/backend/temporal/data_imports/sources/gitea/source.py:177 products/warehouse_sources/sources/freshsales/source.py:87 14 93
products/warehouse_sources/backend/temporal/data_imports/sources/gitea/source.py:177 products/warehouse_sources/sources/langfuse/source.py:207 14 93
products/warehouse_sources/backend/temporal/data_imports/sources/instantly/instantly.py:242 products/warehouse_sources/sources/mercury/mercury.py:131 15 93
products/warehouse_sources/backend/temporal/data_imports/sources/mem0/source.py:131 products/warehouse_sources/sources/railway/source.py:108 16 93
products/warehouse_sources/backend/temporal/data_imports/sources/salesforce/source.py:210 products/warehouse_sources/sources/unstructured/source.py:107 13 93
products/warehouse_sources/sources/amazon_cloudwatch/amazon_cloudwatch.py:332 products/warehouse_sources/sources/aws_athena/athena.py:191 15 93
products/warehouse_sources/sources/back_market/back_market.py:174 products/warehouse_sources/sources/mighty_networks/mighty_networks.py:149 18 93
products/warehouse_sources/sources/boldsign/source.py:63 products/warehouse_sources/sources/komodor/source.py:99 25 93
products/warehouse_sources/sources/cal_com/cal_com.py:105 products/warehouse_sources/sources/drata/drata.py:52 15 93
products/warehouse_sources/sources/capsule_crm/capsule_crm.py:164 products/warehouse_sources/sources/persistiq/persistiq.py:141 23 93
products/warehouse_sources/sources/census/census.py:144 products/warehouse_sources/sources/hightouch/hightouch.py:151 17 93
products/warehouse_sources/sources/chargify/chargify.py:98 products/warehouse_sources/sources/spotlercrm/spotlercrm.py:117 19 93
products/warehouse_sources/sources/humanitix/humanitix.py:304 products/warehouse_sources/sources/opinion_stage/opinion_stage.py:194 17 93
products/batch_exports/backend/temporal/destinations/redshift_batch_export.py:1280 products/batch_exports/backend/temporal/destinations/redshift_batch_export.py:1797 18 92
products/warehouse_sources/sources/aha/source.py:60 products/warehouse_sources/sources/aha_ideas/source.py:60 26 92
products/warehouse_sources/sources/appcues/source.py:131 products/warehouse_sources/sources/qualaroo/source.py:56 26 92
products/warehouse_sources/sources/appcues/source.py:131 products/warehouse_sources/sources/sendowl/source.py:52 26 92
products/warehouse_sources/sources/appcues/source.py:131 products/warehouse_sources/sources/shopwired/source.py:53 26 92
products/warehouse_sources/sources/aws_compute_optimizer/aws_compute_optimizer.py:63 products/warehouse_sources/sources/aws_glue_data_catalog/aws_glue_data_catalog.py:67 11 92
products/warehouse_sources/sources/back_market/back_market.py:191 products/warehouse_sources/sources/guardian/guardian.py:109 20 92
products/warehouse_sources/sources/bamboohr/source.py:57 products/warehouse_sources/sources/sage_hr/source.py:58 26 92
products/warehouse_sources/sources/bugsnag/source.py:241 products/warehouse_sources/sources/eventzilla/source.py:99 22 92
products/warehouse_sources/sources/campayn/source.py:59 products/warehouse_sources/sources/nocrm/source.py:61 26 92
products/warehouse_sources/sources/capsule_crm/capsule_crm.py:139 products/warehouse_sources/sources/vantage/vantage.py:139 20 92
products/warehouse_sources/sources/capsule_crm/capsule_crm.py:158 products/warehouse_sources/sources/katana/katana.py:152 21 92
products/warehouse_sources/sources/crunchbase/crunchbase.py:108 products/warehouse_sources/sources/factorial/factorial.py:92 15 92
products/warehouse_sources/sources/devin_ai/devin_ai.py:172 products/warehouse_sources/sources/inflowinventory/inflowinventory.py:152 17 92
products/warehouse_sources/sources/drip/drip.py:81 products/warehouse_sources/sources/opinion_stage/opinion_stage.py:82 14 92
products/warehouse_sources/sources/env0/source.py:53 products/warehouse_sources/sources/monte_carlo/source.py:55 25 92
products/warehouse_sources/sources/flowlu/source.py:59 products/warehouse_sources/sources/membrain/source.py:66 26 92
products/warehouse_sources/sources/harvest/harvest.py:220 products/warehouse_sources/sources/lemlist/lemlist.py:210 25 92
products/warehouse_sources/sources/impact/source.py:63 products/warehouse_sources/sources/impact_partner/source.py:60 26 92
products/warehouse_sources/sources/katana/katana.py:152 products/warehouse_sources/sources/mailtrap/mailtrap.py:200 24 92
products/warehouse_sources/sources/newsdata/source.py:102 products/warehouse_sources/sources/nocrm/source.py:109 18 92
products/warehouse_sources/sources/thinkific/canonical_descriptions.py:1 products/warehouse_sources/sources/thinkific_courses/canonical_descriptions.py:1 28 92
products/warehouse_sources/backend/temporal/data_imports/sources/gitea/source.py:177 products/warehouse_sources/sources/appdynamics/source.py:237 14 91
products/warehouse_sources/backend/temporal/data_imports/sources/gitea/source.py:177 products/warehouse_sources/sources/drata/source.py:95 14 91
products/warehouse_sources/backend/temporal/data_imports/sources/gitea/source.py:177 products/warehouse_sources/sources/infisical/source.py:140 14 91
products/warehouse_sources/backend/temporal/data_imports/sources/gitea/source.py:177 products/warehouse_sources/sources/invoiceninja/source.py:72 14 91
products/warehouse_sources/backend/temporal/data_imports/sources/gitea/source.py:177 products/warehouse_sources/sources/koyeb/source.py:95 14 91
products/warehouse_sources/backend/temporal/data_imports/sources/gitea/source.py:177 products/warehouse_sources/sources/npm_registry/source.py:92 14 91
products/warehouse_sources/backend/temporal/data_imports/sources/gitea/source.py:177 products/warehouse_sources/sources/windmill/source.py:110 14 91
products/warehouse_sources/backend/temporal/data_imports/sources/sentry/sentry.py:1405 products/warehouse_sources/sources/fillout/fillout.py:248 22 91
products/warehouse_sources/sources/aws_config/source.py:145 products/warehouse_sources/sources/aws_iam_access_analyzer/source.py:137 26 91
products/warehouse_sources/sources/aws_organizations/aws_organizations.py:104 products/warehouse_sources/sources/aws_ses/aws_ses.py:105 13 91
products/warehouse_sources/sources/bitbucket/source.py:180 products/warehouse_sources/sources/newsdata/source.py:102 18 91
products/warehouse_sources/sources/care_quality_commission/source.py:109 products/warehouse_sources/sources/firehydrant/source.py:119 20 91
products/warehouse_sources/sources/care_quality_commission/source.py:109 products/warehouse_sources/sources/float_app/source.py:96 20 91
products/warehouse_sources/sources/finnhub/source.py:64 products/warehouse_sources/sources/tawk_to/source.py:96 14 91
products/warehouse_sources/sources/linkrunner/linkrunner.py:218 products/warehouse_sources/sources/linkrunner/linkrunner.py:275 13 91
products/warehouse_sources/sources/partnerize/partnerize.py:67 products/warehouse_sources/sources/roark/roark.py:87 13 91
products/warehouse_sources/backend/temporal/data_imports/sources/fourthwall/fourthwall.py:123 products/warehouse_sources/sources/browser_use/browser_use.py:103 13 90
products/warehouse_sources/backend/temporal/data_imports/sources/fourthwall/fourthwall.py:123 products/warehouse_sources/sources/hubplanner/hubplanner.py:66 13 90
products/warehouse_sources/sources/amazon_cloudwatch/amazon_cloudwatch.py:157 products/warehouse_sources/sources/aws_cost_and_usage_report/aws_cost_and_usage_report.py:113 13 90
products/warehouse_sources/sources/auth0/source.py:204 products/warehouse_sources/sources/infisical/source.py:102 25 90
products/warehouse_sources/sources/aws_cloudtrail/aws_cloudtrail.py:69 products/warehouse_sources/sources/aws_waf/aws_waf.py:73 11 90
products/warehouse_sources/sources/aws_config/aws_config.py:113 products/warehouse_sources/sources/aws_glue_data_catalog/aws_glue_data_catalog.py:117 13 90
products/warehouse_sources/sources/better_stack/better_stack.py:225 products/warehouse_sources/sources/rootly/rootly.py:145 19 90
products/warehouse_sources/sources/braze/braze.py:114 products/warehouse_sources/sources/eventzilla/eventzilla.py:131 14 90
products/warehouse_sources/sources/browser_use/browser_use.py:158 products/warehouse_sources/sources/devin_ai/devin_ai.py:102 11 90
products/warehouse_sources/sources/bugherd/bugherd.py:41 products/warehouse_sources/sources/canvas_lms/canvas_lms.py:98 14 90
products/warehouse_sources/sources/canny/canny.py:223 products/warehouse_sources/sources/rippling/rippling.py:192 24 90
products/warehouse_sources/sources/dataforseo/source.py:167 products/warehouse_sources/sources/groq/source.py:83 20 90
products/warehouse_sources/sources/dataforseo/source.py:167 products/warehouse_sources/sources/simfin/source.py:54 20 90
products/warehouse_sources/sources/easypromos/easypromos.py:154 products/warehouse_sources/sources/semgrep/semgrep.py:215 14 90
products/warehouse_sources/sources/easypromos/easypromos.py:154 products/warehouse_sources/sources/vellum/vellum.py:183 14 90
products/warehouse_sources/sources/eventbrite/eventbrite.py:250 products/warehouse_sources/sources/eventzilla/eventzilla.py:250 18 90
products/warehouse_sources/sources/exchange_rates_api/settings.py:12 products/warehouse_sources/sources/open_exchange_rates/settings.py:12 23 90
products/warehouse_sources/sources/flagsmith/source.py:177 products/warehouse_sources/sources/healthchecks/source.py:134 14 90
products/warehouse_sources/sources/folk/folk.py:144 products/warehouse_sources/sources/tenjin/tenjin.py:135 18 90
products/warehouse_sources/sources/fulcrum/fulcrum.py:245 products/warehouse_sources/sources/pandadoc/pandadoc.py:239 16 90
products/warehouse_sources/sources/greenhouse/greenhouse.py:236 products/warehouse_sources/sources/lever/lever.py:241 25 90
products/warehouse_sources/sources/teamtailor/teamtailor.py:87 products/warehouse_sources/sources/tempo/tempo.py:143 21 90
products/warehouse_sources/backend/temporal/data_imports/sources/gitea/source.py:177 products/warehouse_sources/sources/circleci/source.py:96 14 89
products/warehouse_sources/backend/temporal/data_imports/sources/gitea/source.py:177 products/warehouse_sources/sources/circleci_insights/source.py:128 14 89
products/warehouse_sources/backend/temporal/data_imports/sources/gitea/source.py:177 products/warehouse_sources/sources/gainsight_px/source.py:69 14 89
products/warehouse_sources/sources/aha/aha.py:171 products/warehouse_sources/sources/hellobaton/hellobaton.py:138 17 89
products/warehouse_sources/sources/aha/aha.py:171 products/warehouse_sources/sources/stack_overflow_for_teams/stack_overflow_for_teams.py:93 17 89
products/warehouse_sources/sources/anthropic/source.py:196 products/warehouse_sources/sources/openai/source.py:197 17 89
products/warehouse_sources/sources/canny/canny.py:225 products/warehouse_sources/sources/firehydrant/firehydrant.py:162 22 89
products/warehouse_sources/sources/cisco_duo/cisco_duo.py:141 products/warehouse_sources/sources/lacework/lacework.py:111 14 89
products/warehouse_sources/sources/coingecko/coingecko.py:588 products/warehouse_sources/sources/shipstation/shipstation.py:258 17 89
products/warehouse_sources/sources/doppler/source.py:92 products/warehouse_sources/sources/pulumi_cloud/source.py:143 21 89
products/warehouse_sources/sources/exchange_rates_api/source.py:106 products/warehouse_sources/sources/open_exchange_rates/source.py:108 17 89
products/warehouse_sources/sources/finnhub/source.py:64 products/warehouse_sources/sources/gerrit/source.py:98 13 89
products/warehouse_sources/sources/flowlu/flowlu.py:66 products/warehouse_sources/sources/justsift/justsift.py:103 20 89
products/warehouse_sources/sources/flowlu/flowlu.py:66 products/warehouse_sources/sources/zenloop/zenloop.py:82 20 89
products/warehouse_sources/sources/flowlu/flowlu.py:66 products/warehouse_sources/sources/zonka_feedback/zonka_feedback.py:240 20 89
products/warehouse_sources/sources/jamf_pro/jamf_pro.py:128 products/warehouse_sources/sources/qualtrics/qualtrics.py:217 13 89
products/warehouse_sources/sources/judgeme_reviews/judgeme_reviews.py:90 products/warehouse_sources/sources/persistiq/persistiq.py:120 16 89
products/warehouse_sources/sources/judgeme_reviews/judgeme_reviews.py:90 products/warehouse_sources/sources/sendowl/sendowl.py:121 16 89
products/warehouse_sources/sources/paperform/paperform.py:109 products/warehouse_sources/sources/sentinelone/sentinelone.py:206 13 89
products/warehouse_sources/sources/planhat/planhat.py:54 products/warehouse_sources/sources/simplecast/simplecast.py:88 20 89
products/warehouse_sources/sources/pylon/source.py:92 products/warehouse_sources/sources/sonarqube/source.py:118 17 89
products/warehouse_sources/sources/pylon/source.py:92 products/warehouse_sources/sources/teamcity/source.py:97 17 89
products/warehouse_sources/backend/temporal/data_imports/sources/billomat/source.py:137 products/warehouse_sources/sources/chargebee/source.py:132 21 88
products/warehouse_sources/backend/temporal/data_imports/sources/common/rest_source/paginators.py:326 products/warehouse_sources/sources/braze/braze.py:114 14 88
products/warehouse_sources/backend/temporal/data_imports/sources/sharepoint/sharepoint.py:62 products/warehouse_sources/sources/power_bi_admin/power_bi_admin.py:66 13 88
products/warehouse_sources/backend/temporal/data_imports/sources/yousign/source.py:94 products/warehouse_sources/sources/concord/source.py:63 22 88
products/warehouse_sources/sources/appfigures/source.py:120 products/warehouse_sources/sources/openfda/source.py:93 18 88
products/warehouse_sources/sources/back_market/back_market.py:191 products/warehouse_sources/sources/pingdom/pingdom.py:227 21 88
products/warehouse_sources/sources/back_market/back_market.py:197 products/warehouse_sources/sources/tremendous/tremendous.py:205 19 88
products/warehouse_sources/sources/buttondown/buttondown.py:120 products/warehouse_sources/sources/teamtailor/teamtailor.py:91 17 88
products/warehouse_sources/sources/canny/canny.py:223 products/warehouse_sources/sources/justsift/justsift.py:123 24 88
products/warehouse_sources/sources/cisco_duo/cisco_duo.py:144 products/warehouse_sources/sources/signoz/signoz.py:244 11 88
products/warehouse_sources/sources/cisco_duo/cisco_duo.py:144 products/warehouse_sources/sources/sourcegraph/sourcegraph.py:181 11 88
products/warehouse_sources/sources/dbt/source.py:173 products/warehouse_sources/sources/doppler/source.py:93 19 88
products/warehouse_sources/sources/devin_ai/devin_ai.py:175 products/warehouse_sources/sources/metorial/metorial.py:181 14 88
products/warehouse_sources/sources/eventbrite/eventbrite.py:243 products/warehouse_sources/sources/leadfeeder/leadfeeder.py:592 19 88
products/warehouse_sources/sources/hetzner/hetzner.py:127 products/warehouse_sources/sources/teamwork/teamwork.py:165 22 88
products/warehouse_sources/sources/reverb/reverb.py:229 products/warehouse_sources/sources/thinkific_courses/thinkific_courses.py:208 14 88
products/warehouse_sources/backend/temporal/data_imports/sources/calendly/calendly.py:41 products/warehouse_sources/backend/temporal/data_imports/sources/whop/whop.py:25 16 87
products/warehouse_sources/backend/temporal/data_imports/sources/common/rest_source/paginators.py:396 products/warehouse_sources/sources/back_market/back_market.py:86 12 87
products/warehouse_sources/backend/temporal/data_imports/sources/common/rest_source/paginators.py:396 products/warehouse_sources/sources/less_annoying_crm/less_annoying_crm.py:107 12 87
products/warehouse_sources/backend/temporal/data_imports/sources/common/rest_source/paginators.py:396 products/warehouse_sources/sources/retently/retently.py:102 12 87
products/warehouse_sources/backend/temporal/data_imports/sources/webflow/webflow.py:411 products/warehouse_sources/sources/giphy/giphy.py:96 16 87
products/warehouse_sources/sources/alguna/alguna.py:98 products/warehouse_sources/sources/planhat/planhat.py:57 17 87
products/warehouse_sources/sources/bluetally/bluetally.py:73 products/warehouse_sources/sources/unleash/unleash.py:161 17 87
products/warehouse_sources/sources/close/source.py:79 products/warehouse_sources/sources/zylo/source.py:77 15 87
products/warehouse_sources/sources/cloudinary/cloudinary.py:305 products/warehouse_sources/sources/loops/loops.py:197 13 87
products/warehouse_sources/sources/culture_amp/source.py:66 products/warehouse_sources/sources/taboola/source.py:81 24 87
products/warehouse_sources/sources/front/front.py:238 products/warehouse_sources/sources/secoda/secoda.py:77 15 87
products/warehouse_sources/sources/nager_date/nager_date.py:113 products/warehouse_sources/sources/nager_date/nager_date.py:130 12 87
products/batch_exports/backend/temporal/destinations/bigquery_batch_export.py:1553 products/batch_exports/backend/temporal/destinations/postgres_batch_export.py:1000 23 86
products/warehouse_sources/backend/temporal/data_imports/sources/gumroad/gumroad.py:232 products/warehouse_sources/sources/first_promoter/first_promoter.py:321 12 86
products/warehouse_sources/backend/temporal/data_imports/sources/mailerlite/mailerlite.py:214 products/warehouse_sources/sources/assemblyai/assemblyai.py:129 17 86
products/warehouse_sources/backend/temporal/data_imports/sources/mailerlite/mailerlite.py:214 products/warehouse_sources/sources/buttondown/buttondown.py:120 17 86
products/warehouse_sources/backend/temporal/data_imports/sources/mailerlite/mailerlite.py:214 products/warehouse_sources/sources/campfire/campfire.py:170 17 86
products/warehouse_sources/backend/temporal/data_imports/sources/mailerlite/mailerlite.py:214 products/warehouse_sources/sources/capsule_crm/capsule_crm.py:142 17 86
products/warehouse_sources/backend/temporal/data_imports/sources/mailerlite/mailerlite.py:214 products/warehouse_sources/sources/harvest/harvest.py:204 17 86
products/warehouse_sources/backend/temporal/data_imports/sources/mailerlite/mailerlite.py:214 products/warehouse_sources/sources/helpscout/helpscout.py:193 17 86
products/warehouse_sources/backend/temporal/data_imports/sources/mailerlite/mailerlite.py:214 products/warehouse_sources/sources/intruder/intruder.py:96 17 86
products/warehouse_sources/backend/temporal/data_imports/sources/mailerlite/mailerlite.py:214 products/warehouse_sources/sources/openfda/openfda.py:186 17 86
products/warehouse_sources/backend/temporal/data_imports/sources/okta/okta.py:53 products/warehouse_sources/sources/canvas_lms/canvas_lms.py:51 15 86
products/warehouse_sources/backend/temporal/data_imports/sources/webflow/webflow.py:411 products/warehouse_sources/sources/koyeb/koyeb.py:177 16 86
products/warehouse_sources/sources/aha/aha.py:133 products/warehouse_sources/sources/smartlead/smartlead.py:76 16 86
products/warehouse_sources/sources/auth0/source.py:205 products/warehouse_sources/sources/infisical/source.py:103 25 86
products/warehouse_sources/sources/beamer/beamer.py:206 products/warehouse_sources/sources/twelve_labs/twelve_labs.py:275 16 86
products/warehouse_sources/sources/chargify/chargify.py:102 products/warehouse_sources/sources/waydev/waydev.py:121 16 86
products/warehouse_sources/sources/cortex/cortex.py:157 products/warehouse_sources/sources/sleekplan/sleekplan.py:162 15 86
products/warehouse_sources/sources/elevenlabs/elevenlabs.py:343 products/warehouse_sources/sources/onepassword/onepassword.py:184 17 86
products/warehouse_sources/sources/hookdeck/hookdeck.py:317 products/warehouse_sources/sources/todoist/todoist.py:92 17 86
products/warehouse_sources/sources/jobnimbus/jobnimbus.py:81 products/warehouse_sources/sources/nocrm/nocrm.py:251 17 86
products/warehouse_sources/sources/pulumi_cloud/pulumi_cloud.py:311 products/warehouse_sources/sources/pulumi_cloud/pulumi_cloud.py:591 12 86
products/warehouse_sources/sources/tavus/tavus.py:125 products/warehouse_sources/sources/thinkific/thinkific.py:105 17 86
products/warehouse_sources/sources/teamcity/teamcity.py:190 products/warehouse_sources/sources/vercel/vercel.py:117 11 86
posthog/api/integration.py:2783 posthog/api/user_integration.py:573 19 85
products/warehouse_sources/backend/temporal/data_imports/sources/servicenow/servicenow.py:279 products/warehouse_sources/sources/alguna/alguna.py:98 17 85
products/warehouse_sources/backend/temporal/data_imports/sources/servicenow/servicenow.py:279 products/warehouse_sources/sources/jobnimbus/jobnimbus.py:81 17 85
products/warehouse_sources/backend/temporal/data_imports/sources/servicenow/servicenow.py:279 products/warehouse_sources/sources/jotform/jotform.py:218 17 85
products/warehouse_sources/backend/temporal/data_imports/sources/servicenow/servicenow.py:279 products/warehouse_sources/sources/xmatters/xmatters.py:290 17 85
products/warehouse_sources/sources/blogger/blogger.py:171 products/warehouse_sources/sources/uservoice/uservoice.py:209 18 85
products/warehouse_sources/sources/bluetally/bluetally.py:75 products/warehouse_sources/sources/tremendous/tremendous.py:186 15 85
products/warehouse_sources/sources/brevo/brevo.py:113 products/warehouse_sources/sources/lemlist/lemlist.py:197 14 85
products/warehouse_sources/sources/cast_ai/cast_ai.py:117 products/warehouse_sources/sources/spot_io/spot_io.py:100 15 85
products/warehouse_sources/sources/checkout_com/checkout_com.py:142 products/warehouse_sources/sources/churnkey/churnkey.py:70 18 85
products/warehouse_sources/sources/clockodo/clockodo.py:219 products/warehouse_sources/sources/stockdata/stockdata.py:176 15 85
products/warehouse_sources/sources/coolify/source.py:95 products/warehouse_sources/sources/digitalocean/source.py:152 20 85
products/warehouse_sources/sources/demodesk/demodesk.py:56 products/warehouse_sources/sources/spotlercrm/spotlercrm.py:32 13 85
products/warehouse_sources/sources/drata/drata.py:188 products/warehouse_sources/sources/paperform/paperform.py:155 11 85
products/warehouse_sources/sources/dropbox_sign/source.py:105 products/warehouse_sources/sources/nebius_ai/source.py:92 18 85
products/warehouse_sources/sources/flowlu/flowlu.py:69 products/warehouse_sources/sources/tavus/tavus.py:125 17 85
products/warehouse_sources/sources/hetzner/hetzner.py:110 products/warehouse_sources/sources/katana/katana.py:136 18 85
products/warehouse_sources/sources/linearb/source.py:102 products/warehouse_sources/sources/skyvern/source.py:125 17 85
products/warehouse_sources/sources/logz_io/source.py:139 products/warehouse_sources/sources/vapi/source.py:120 18 85
products/warehouse_sources/backend/temporal/data_imports/sources/mailerlite/mailerlite.py:215 products/warehouse_sources/sources/better_stack/better_stack.py:228 16 84
products/warehouse_sources/backend/temporal/data_imports/sources/mailerlite/mailerlite.py:215 products/warehouse_sources/sources/folk/folk.py:146 16 84
products/warehouse_sources/backend/temporal/data_imports/sources/mailerlite/mailerlite.py:215 products/warehouse_sources/sources/mixmax/mixmax.py:219 16 84
products/warehouse_sources/backend/temporal/data_imports/sources/mailerlite/mailerlite.py:215 products/warehouse_sources/sources/simplesat/simplesat.py:100 16 84
products/warehouse_sources/backend/temporal/data_imports/sources/mailerlite/mailerlite.py:215 products/warehouse_sources/sources/zendesk_sell/zendesk_sell.py:139 16 84
products/warehouse_sources/backend/temporal/data_imports/sources/woocommerce/woocommerce.py:299 products/warehouse_sources/sources/easybill/easybill.py:97 13 84
products/warehouse_sources/sources/active_campaign/source.py:104 products/warehouse_sources/sources/factorial/source.py:95 13 84
products/warehouse_sources/sources/agilecrm/agilecrm.py:254 products/warehouse_sources/sources/elevenlabs/elevenlabs.py:344 16 84
products/warehouse_sources/sources/anthropic/anthropic.py:158 products/warehouse_sources/sources/elevenlabs/elevenlabs.py:162 12 84
products/warehouse_sources/sources/aws_ses/source.py:174 products/warehouse_sources/sources/dynamodb/source.py:100 25 84
products/warehouse_sources/sources/baseten/baseten.py:77 products/warehouse_sources/sources/paperform/paperform.py:110 13 84
products/warehouse_sources/sources/baseten/baseten.py:79 products/warehouse_sources/sources/chartmogul/chartmogul.py:88 11 84
products/warehouse_sources/sources/beamer/beamer.py:207 products/warehouse_sources/sources/firecrawl/firecrawl.py:203 15 84
products/warehouse_sources/sources/clockify/clockify.py:107 products/warehouse_sources/sources/perigon/perigon.py:74 13 84
products/warehouse_sources/sources/deno_deploy/deno_deploy.py:290 products/warehouse_sources/sources/surveysparrow/surveysparrow.py:241 18 84
products/warehouse_sources/sources/dub/dub.py:91 products/warehouse_sources/sources/partnerstack/partnerstack.py:83 13 84
products/warehouse_sources/sources/elevenlabs/source.py:115 products/warehouse_sources/sources/metorial/source.py:97 17 84
products/warehouse_sources/sources/hubplanner/hubplanner.py:220 products/warehouse_sources/sources/rootly/rootly.py:163 23 84
products/warehouse_sources/sources/humanitix/humanitix.py:210 products/warehouse_sources/sources/thinkific_courses/thinkific_courses.py:94 11 84
products/warehouse_sources/sources/logz_io/logz_io.py:86 products/warehouse_sources/sources/metaplane/metaplane.py:92 14 84
products/warehouse_sources/sources/stigg/stigg.py:73 products/warehouse_sources/sources/svix/svix.py:109 24 84
products/warehouse_sources/backend/temporal/data_imports/sources/gumroad/gumroad.py:232 products/warehouse_sources/sources/teachable/teachable.py:712 11 83
products/warehouse_sources/backend/temporal/data_imports/sources/instantly/instantly.py:244 products/warehouse_sources/sources/hyros/hyros.py:104 13 83
products/warehouse_sources/backend/temporal/data_imports/sources/mailerlite/mailerlite.py:216 products/warehouse_sources/sources/k6_cloud/k6_cloud.py:228 15 83
products/warehouse_sources/backend/temporal/data_imports/sources/mailgun/source.py:191 products/warehouse_sources/sources/cloudflare/source.py:232 16 83
products/warehouse_sources/backend/temporal/data_imports/sources/servicenow/servicenow.py:280 products/warehouse_sources/sources/pingdom/pingdom.py:212 16 83
products/warehouse_sources/backend/temporal/data_imports/sources/servicenow/servicenow.py:280 products/warehouse_sources/sources/propertyware/propertyware.py:116 16 83
products/warehouse_sources/sources/autumn/source.py:98 products/warehouse_sources/sources/teachable/source.py:97 18 83
products/warehouse_sources/sources/aviator/aviator.py:70 products/warehouse_sources/sources/inngest/inngest.py:66 16 83
products/warehouse_sources/sources/aviator/aviator.py:73 products/warehouse_sources/sources/pulumi_cloud/pulumi_cloud.py:94 15 83
products/warehouse_sources/sources/aws_iam_access_analyzer/aws_iam_access_analyzer.py:65 products/warehouse_sources/sources/aws_macie/aws_macie.py:73 17 83
products/warehouse_sources/sources/blogger/blogger.py:152 products/warehouse_sources/sources/fireworks_ai/fireworks_ai.py:277 14 83
products/warehouse_sources/sources/bloomerang/bloomerang.py:249 products/warehouse_sources/sources/marketstack/marketstack.py:263 17 83
products/warehouse_sources/sources/bluetally/bluetally.py:95 products/warehouse_sources/sources/news_api/news_api.py:208 17 83
products/warehouse_sources/sources/browser_use/browser_use.py:373 products/warehouse_sources/sources/hetzner/hetzner.py:133 22 83
products/warehouse_sources/sources/cast_ai/cast_ai.py:200 products/warehouse_sources/sources/hightouch/hightouch.py:216 22 83
products/warehouse_sources/sources/checkout_com/checkout_com.py:143 products/warehouse_sources/sources/insightly/insightly.py:192 17 83
products/warehouse_sources/sources/clickup/clickup.py:242 products/warehouse_sources/sources/guardian/guardian.py:94 16 83
products/warehouse_sources/sources/clickup/clickup.py:242 products/warehouse_sources/sources/hetzner/hetzner.py:111 16 83
products/warehouse_sources/sources/coolify/coolify.py:80 products/warehouse_sources/sources/datahub/datahub.py:120 19 83
products/warehouse_sources/sources/courier/courier.py:186 products/warehouse_sources/sources/lingo_dev/lingo_dev.py:126 14 83
products/warehouse_sources/sources/decagon/decagon.py:164 products/warehouse_sources/sources/sendgrid/sendgrid.py:66 11 83
products/warehouse_sources/sources/dropbox_sign/dropbox_sign.py:184 products/warehouse_sources/sources/frill/frill.py:211 17 83
products/warehouse_sources/sources/guru/guru.py:250 products/warehouse_sources/sources/twilio/twilio.py:289 15 83
products/warehouse_sources/backend/temporal/data_imports/sources/common/rest_source/paginators.py:326 products/warehouse_sources/sources/smartwaiver/smartwaiver.py:105 13 82
products/warehouse_sources/backend/temporal/data_imports/sources/fusionauth/fusionauth.py:78 products/warehouse_sources/sources/flagsmith/flagsmith.py:103 12 82
products/warehouse_sources/backend/temporal/data_imports/sources/mailerlite/mailerlite.py:217 products/warehouse_sources/sources/front/front.py:239 14 82
products/warehouse_sources/backend/temporal/data_imports/sources/woocommerce/woocommerce.py:299 products/warehouse_sources/sources/kickscale/kickscale.py:161 13 82
products/warehouse_sources/backend/temporal/data_imports/sources/woocommerce/woocommerce.py:299 products/warehouse_sources/sources/tvmaze/tvmaze.py:82 13 82
products/warehouse_sources/sources/active_campaign/active_campaign.py:120 products/warehouse_sources/sources/asaas/asaas.py:151 15 82
products/warehouse_sources/sources/aha/aha.py:174 products/warehouse_sources/sources/tally/tally.py:175 14 82
products/warehouse_sources/sources/aircall/aircall.py:331 products/warehouse_sources/sources/amplemarket/amplemarket.py:126 17 82
products/warehouse_sources/sources/aircall/aircall.py:331 products/warehouse_sources/sources/confluence/confluence.py:172 17 82
products/warehouse_sources/sources/aircall/aircall.py:331 products/warehouse_sources/sources/greenhouse/greenhouse.py:220 17 82
products/warehouse_sources/sources/aviator/aviator.py:483 products/warehouse_sources/sources/replicate/replicate.py:411 19 82
products/warehouse_sources/sources/back_market/back_market.py:84 products/warehouse_sources/sources/freshcaller/freshcaller.py:114 12 82
products/warehouse_sources/sources/back_market/back_market.py:197 products/warehouse_sources/sources/oura/oura.py:170 19 82
products/warehouse_sources/sources/bitbucket/source.py:181 products/warehouse_sources/sources/everhour/source.py:96 17 82
products/warehouse_sources/sources/bitbucket/source.py:181 products/warehouse_sources/sources/leadfeeder/source.py:126 17 82
products/warehouse_sources/sources/bitbucket/source.py:181 products/warehouse_sources/sources/logz_io/source.py:140 17 82
products/warehouse_sources/sources/chargify/chargify.py:103 products/warehouse_sources/sources/telnyx/telnyx.py:106 15 82
products/warehouse_sources/sources/chartmogul/chartmogul.py:170 products/warehouse_sources/sources/courier/courier.py:186 15 82
products/warehouse_sources/sources/clickup/clickup.py:243 products/warehouse_sources/sources/retently/retently.py:213 15 82
products/warehouse_sources/sources/clockodo/clockodo.py:222 products/warehouse_sources/sources/news_api/news_api.py:172 12 82
products/warehouse_sources/sources/coingecko/coingecko.py:594 products/warehouse_sources/sources/less_annoying_crm/less_annoying_crm.py:289 11 82
products/warehouse_sources/sources/culture_amp/source.py:63 products/warehouse_sources/sources/personio/source.py:63 23 82
products/warehouse_sources/sources/drata/drata.py:183 products/warehouse_sources/sources/easypromos/easypromos.py:200 15 82
products/warehouse_sources/sources/flowlu/flowlu.py:71 products/warehouse_sources/sources/linode/linode.py:140 15 82
products/warehouse_sources/sources/freshcaller/freshcaller.py:172 products/warehouse_sources/sources/hubplanner/hubplanner.py:206 14 82
products/warehouse_sources/sources/greenhouse/greenhouse.py:242 products/warehouse_sources/sources/hubplanner/hubplanner.py:229 21 82
products/warehouse_sources/sources/octopus_deploy/octopus_deploy.py:136 products/warehouse_sources/sources/signoz/signoz.py:74 13 82
products/warehouse_sources/sources/us_bea/source.py:70 products/warehouse_sources/sources/us_census/source.py:74 15 82
products/warehouse_sources/backend/temporal/data_imports/sources/instantly/instantly.py:244 products/warehouse_sources/sources/openalex/openalex.py:187 13 81
products/warehouse_sources/backend/temporal/data_imports/sources/lemon_squeezy/lemon_squeezy.py:175 products/warehouse_sources/sources/gleif/gleif.py:112 16 81
products/warehouse_sources/backend/temporal/data_imports/sources/servicenow/servicenow.py:282 products/warehouse_sources/sources/opn_payments/opn_payments.py:109 14 81
products/warehouse_sources/sources/appsignal/appsignal.py:1223 products/warehouse_sources/sources/appsignal/appsignal.py:1299 11 81
products/warehouse_sources/sources/avalara/avalara.py:162 products/warehouse_sources/sources/bloomerang/bloomerang.py:251 14 81
products/warehouse_sources/sources/aws_compute_optimizer/source.py:68 products/warehouse_sources/sources/aws_iam_access_analyzer/source.py:65 14 81
products/warehouse_sources/sources/aws_systems_manager/source.py:66 products/warehouse_sources/sources/triple_whale/source.py:51 17 81
products/warehouse_sources/sources/bill_com/bill_com.py:56 products/warehouse_sources/sources/salesloft/salesloft.py:38 13 81
products/warehouse_sources/sources/blueshift/blueshift.py:162 products/warehouse_sources/sources/browserbase/browserbase.py:80 14 81
products/warehouse_sources/sources/clickup/clickup.py:244 products/warehouse_sources/sources/freshcaller/freshcaller.py:172 14 81
products/warehouse_sources/sources/clickup/clickup.py:244 products/warehouse_sources/sources/justcall/justcall.py:142 14 81
products/warehouse_sources/sources/codecov/source.py:155 products/warehouse_sources/sources/jamf_pro/source.py:168 16 81
products/warehouse_sources/sources/codecov/source.py:155 products/warehouse_sources/sources/jumpcloud/source.py:124 16 81
products/warehouse_sources/sources/codecov/source.py:155 products/warehouse_sources/sources/stytch/source.py:115 16 81
products/warehouse_sources/sources/cronitor/cronitor.py:485 products/warehouse_sources/sources/doppler/doppler.py:393 18 81
products/warehouse_sources/sources/culture_amp/source.py:63 products/warehouse_sources/sources/sage_intacct/source.py:60 23 81
products/warehouse_sources/sources/databricks/source.py:149 products/warehouse_sources/sources/qualtrics/source.py:128 25 81
products/warehouse_sources/sources/ding_connect/ding_connect.py:147 products/warehouse_sources/sources/papersign/papersign.py:126 15 81
products/warehouse_sources/sources/formbricks/formbricks.py:168 products/warehouse_sources/sources/granola/granola.py:88 11 81
products/warehouse_sources/sources/genesys_cloud/source.py:125 products/warehouse_sources/sources/personio/source.py:68 22 81
products/warehouse_sources/sources/justcall/source.py:65 products/warehouse_sources/sources/secureframe/source.py:76 22 81
products/warehouse_sources/sources/leexi/source.py:67 products/warehouse_sources/sources/spacelift/source.py:78 22 81
products/warehouse_sources/sources/linearb/source.py:103 products/warehouse_sources/sources/openaq/source.py:110 16 81
products/warehouse_sources/backend/temporal/data_imports/sources/fourthwall/fourthwall.py:123 products/warehouse_sources/sources/invoiceninja/invoiceninja.py:103 12 80
products/warehouse_sources/backend/temporal/data_imports/sources/lemon_squeezy/lemon_squeezy.py:175 products/warehouse_sources/sources/aircall/aircall.py:332 16 80
products/warehouse_sources/backend/temporal/data_imports/sources/lemon_squeezy/lemon_squeezy.py:175 products/warehouse_sources/sources/select_star/select_star.py:79 16 80
products/warehouse_sources/backend/temporal/data_imports/sources/whop/whop.py:172 products/warehouse_sources/sources/kalshi/kalshi.py:465 16 80
products/warehouse_sources/sources/aiven/aiven.py:309 products/warehouse_sources/sources/eventbrite/eventbrite.py:252 16 80
products/warehouse_sources/sources/amazon_cloudwatch/source.py:189 products/warehouse_sources/sources/aws_batch/source.py:116 23 80
products/warehouse_sources/sources/apify_dataset/apify_dataset.py:50 products/warehouse_sources/sources/recall_ai/recall_ai.py:46 12 80
products/warehouse_sources/sources/appfollow/appfollow.py:108 products/warehouse_sources/sources/kong_konnect/kong_konnect.py:65 12 80
products/warehouse_sources/sources/bettermode/bettermode.py:123 products/warehouse_sources/sources/braintree/braintree.py:123 11 80
products/warehouse_sources/sources/clickup/clickup.py:159 products/warehouse_sources/sources/maxio/maxio.py:83 13 80
products/warehouse_sources/sources/easybill/easybill.py:128 products/warehouse_sources/sources/eventzilla/eventzilla.py:257 15 80
products/warehouse_sources/sources/leadfeeder/source.py:77 products/warehouse_sources/sources/loop_returns/source.py:74 22 80
products/warehouse_sources/sources/propertyware/propertyware.py:65 products/warehouse_sources/sources/telnyx/telnyx.py:29 11 80
products/warehouse_sources/sources/salesloft/salesloft.py:146 products/warehouse_sources/sources/xendit/xendit.py:196 21 80
products/warehouse_sources/sources/thinkific/canonical_descriptions.py:26 products/warehouse_sources/sources/thinkific_courses/canonical_descriptions.py:53 23 80
products/warehouse_sources/backend/temporal/data_imports/sources/instantly/instantly.py:244 products/warehouse_sources/sources/cloudability/cloudability.py:148 13 79
products/warehouse_sources/backend/temporal/data_imports/sources/instantly/instantly.py:244 products/warehouse_sources/sources/cloudinary/cloudinary.py:306 13 79
products/warehouse_sources/backend/temporal/data_imports/sources/instantly/instantly.py:244 products/warehouse_sources/sources/servicem8/servicem8.py:160 13 79
products/warehouse_sources/backend/temporal/data_imports/sources/mem0/source.py:131 products/warehouse_sources/sources/gitguardian/source.py:106 15 79
products/warehouse_sources/backend/temporal/data_imports/sources/reddit_ads/reddit_ads.py:367 products/warehouse_sources/sources/cliniko/cliniko.py:129 15 79
products/warehouse_sources/sources/aha/aha.py:172 products/warehouse_sources/sources/back_market/back_market.py:176 15 79
products/warehouse_sources/sources/aha/source.py:100 products/warehouse_sources/sources/aha_ideas/source.py:100 14 79
products/warehouse_sources/sources/apollo/apollo.py:222 products/warehouse_sources/sources/rollbar/rollbar.py:199 16 79
products/warehouse_sources/sources/appfigures/appfigures.py:68 products/warehouse_sources/sources/appfollow/appfollow.py:71 12 79
products/warehouse_sources/sources/appfollow/appfollow.py:108 products/warehouse_sources/sources/capsule_crm/capsule_crm.py:92 12 79
products/warehouse_sources/sources/auth0/source.py:204 products/warehouse_sources/sources/coupa/source.py:81 24 79
products/warehouse_sources/sources/aws_cloudtrail/aws_cloudtrail.py:183 products/warehouse_sources/sources/aws_cloudtrail/aws_cloudtrail.py:405 12 79
products/warehouse_sources/sources/bitrise/source.py:113 products/warehouse_sources/sources/bugsnag/source.py:247 19 79
products/warehouse_sources/sources/bitrise/source.py:113 products/warehouse_sources/sources/honeycomb/source.py:220 19 79
products/warehouse_sources/sources/capsule_crm/capsule_crm.py:166 products/warehouse_sources/sources/convertkit/convertkit.py:304 21 79
products/warehouse_sources/sources/cloudzero/cloudzero.py:157 products/warehouse_sources/sources/sprig/sprig.py:117 15 79
products/warehouse_sources/sources/fullstory/fullstory.py:167 products/warehouse_sources/sources/zoom/zoom.py:77 11 79
products/warehouse_sources/sources/plain/queries.py:133 products/warehouse_sources/sources/plain/queries.py:253 26 79
products/warehouse_sources/sources/plain/queries.py:133 products/warehouse_sources/sources/plain/queries.py:305 26 79
products/warehouse_sources/sources/plain/queries.py:133 products/warehouse_sources/sources/plain/queries.py:359 26 79
products/warehouse_sources/sources/plain/queries.py:133 products/warehouse_sources/sources/plain/queries.py:400 26 79
products/warehouse_sources/sources/plain/queries.py:133 products/warehouse_sources/sources/plain/queries.py:437 26 79
products/warehouse_sources/sources/plain/queries.py:133 products/warehouse_sources/sources/plain/queries.py:482 26 79
products/feature_flags/backend/api/feature_flag.py:4396 products/feature_flags/backend/api/feature_flag.py:5233 14 78
products/warehouse_sources/backend/temporal/data_imports/sources/baserow/baserow.py:341 products/warehouse_sources/sources/ownerrez/ownerrez.py:136 14 78
products/warehouse_sources/backend/temporal/data_imports/sources/common/rest_source/paginators.py:240 products/warehouse_sources/sources/anthropic/anthropic.py:158 11 78
products/warehouse_sources/backend/temporal/data_imports/sources/instantly/instantly.py:244 products/warehouse_sources/sources/torii/torii.py:37 13 78
products/warehouse_sources/backend/temporal/data_imports/sources/lemon_squeezy/lemon_squeezy.py:177 products/warehouse_sources/sources/guru/guru.py:251 14 78
products/warehouse_sources/backend/temporal/data_imports/sources/zendesk/zendesk.py:687 products/warehouse_sources/sources/intercom/intercom.py:74 12 78
products/warehouse_sources/sources/active_campaign/active_campaign.py:120 products/warehouse_sources/sources/lever/lever.py:228 15 78
products/warehouse_sources/sources/adyen/adyen.py:547 products/warehouse_sources/sources/adyen/adyen.py:614 13 78
products/warehouse_sources/sources/amazon_ads/amazon_ads.py:169 products/warehouse_sources/sources/singular/singular.py:84 15 78
products/warehouse_sources/sources/azure_cost_management/azure_cost_management.py:212 products/warehouse_sources/sources/exchange_rates_api/exchange_rates_api.py:137 19 78
products/warehouse_sources/sources/azure_devops/azure_devops.py:633 products/warehouse_sources/sources/azure_devops/azure_devops.py:682 11 78
products/warehouse_sources/sources/canny/canny.py:229 products/warehouse_sources/sources/capsule_crm/capsule_crm.py:164 18 78
products/warehouse_sources/sources/chameleon/chameleon.py:206 products/warehouse_sources/sources/resend/resend.py:225 17 78
products/warehouse_sources/sources/circleci/circleci.py:234 products/warehouse_sources/sources/circleci_insights/circleci_insights.py:228 18 78
products/warehouse_sources/sources/circleci_insights/circleci_insights.py:207 products/warehouse_sources/sources/northflank/northflank.py:153 11 78
products/warehouse_sources/sources/clay/clay.py:112 products/warehouse_sources/sources/cloudzero/cloudzero.py:157 12 78
products/warehouse_sources/sources/clickup/clickup.py:247 products/warehouse_sources/sources/freshchat/freshchat.py:277 11 78
products/warehouse_sources/sources/cursor/source.py:103 products/warehouse_sources/sources/new_relic/source.py:262 16 78
products/warehouse_sources/sources/docuseal/docuseal.py:158 products/warehouse_sources/sources/onepassword/onepassword.py:200 24 78
products/warehouse_sources/sources/flowlu/flowlu.py:75 products/warehouse_sources/sources/invoiceninja/invoiceninja.py:268 11 78
products/warehouse_sources/sources/gitbook/gitbook.py:308 products/warehouse_sources/sources/roark/roark.py:164 12 78
products/warehouse_sources/sources/hellobaton/source.py:106 products/warehouse_sources/sources/vellum/source.py:92 19 78
products/warehouse_sources/sources/hellobaton/source.py:106 products/warehouse_sources/sources/zep/source.py:101 19 78
products/warehouse_sources/sources/helpscout/helpscout.py:229 products/warehouse_sources/sources/sendgrid/sendgrid.py:406 11 78
products/warehouse_sources/sources/helpscout/helpscout.py:229 products/warehouse_sources/sources/vantage/vantage.py:178 11 78
products/warehouse_sources/sources/helpscout/helpscout.py:229 products/warehouse_sources/sources/workable/workable.py:167 11 78
products/warehouse_sources/sources/openai_ads/openai_ads.py:330 products/warehouse_sources/sources/reverb/reverb.py:195 16 78
products/messaging/backend/presentation/views/message_preferences.py:5 products/messaging/backend/presentation/views/message_suppression.py:3 12 77
products/warehouse_sources/backend/temporal/data_imports/sources/common/rest_source/paginators.py:328 products/warehouse_sources/sources/plausible/plausible.py:127 11 77
products/warehouse_sources/backend/temporal/data_imports/sources/freshdesk/source.py:128 products/warehouse_sources/sources/shipmail/source.py:77 16 77
products/warehouse_sources/backend/temporal/data_imports/sources/servicenow/source.py:97 products/warehouse_sources/sources/grafana/source.py:98 23 77
products/warehouse_sources/sources/anvil/anvil.py:425 products/warehouse_sources/sources/jellyfish/jellyfish.py:398 14 77
products/warehouse_sources/sources/appcues/source.py:130 products/warehouse_sources/sources/justcall/source.py:60 21 77
products/warehouse_sources/sources/appfollow/appfollow.py:108 products/warehouse_sources/sources/rootly/rootly.py:55 13 77
products/warehouse_sources/sources/argocd/source.py:108 products/warehouse_sources/sources/notion/source.py:158 15 77
products/warehouse_sources/sources/autumn/source.py:99 products/warehouse_sources/sources/dynamics365/source.py:137 17 77
products/warehouse_sources/sources/autumn/source.py:99 products/warehouse_sources/sources/first_promoter/source.py:97 17 77
products/warehouse_sources/sources/back_market/back_market.py:75 products/warehouse_sources/sources/clickup/clickup.py:159 13 77
products/warehouse_sources/sources/bigmailer/bigmailer.py:186 products/warehouse_sources/sources/chameleon/chameleon.py:206 17 77
products/warehouse_sources/sources/bland_ai/bland_ai.py:555 products/warehouse_sources/sources/goldcast/goldcast.py:143 11 77
products/warehouse_sources/sources/cloudflare_d1/source.py:64 products/warehouse_sources/sources/drip/source.py:105 21 77
products/warehouse_sources/sources/coinmarketcap/coinmarketcap.py:263 products/warehouse_sources/sources/coinmarketcap/coinmarketcap.py:355 16 77
products/warehouse_sources/sources/concord/concord.py:269 products/warehouse_sources/sources/concord/concord.py:307 14 77
products/warehouse_sources/sources/databricks/source.py:149 products/warehouse_sources/sources/jamf_pro/source.py:99 23 77
products/warehouse_sources/sources/demodesk/demodesk.py:86 products/warehouse_sources/sources/moengage/moengage.py:100 11 77
products/warehouse_sources/sources/easypromos/easypromos.py:156 products/warehouse_sources/sources/northpass_lms/northpass_lms.py:361 12 77
products/warehouse_sources/sources/env0/source.py:53 products/warehouse_sources/sources/leexi/source.py:63 25 77
products/warehouse_sources/sources/everflow/everflow.py:56 products/warehouse_sources/sources/smartsheet/smartsheet.py:51 11 77
products/warehouse_sources/sources/folk/source.py:92 products/warehouse_sources/sources/rootly/source.py:100 15 77
products/warehouse_sources/sources/justsift/justsift.py:94 products/warehouse_sources/sources/rocketlane/rocketlane.py:188 22 77
products/warehouse_sources/sources/klaus/klaus.py:362 products/warehouse_sources/sources/shippo/shippo.py:252 21 77
products/warehouse_sources/sources/mixpanel/source.py:178 products/warehouse_sources/sources/writesonic/source.py:110 13 77
products/warehouse_sources/sources/rentcast/rentcast.py:161 products/warehouse_sources/sources/ruddr/ruddr.py:123 22 77
products/warehouse_sources/sources/secureframe/secureframe.py:294 products/warehouse_sources/sources/secureframe/secureframe.py:363 12 77
products/warehouse_sources/sources/surveymonkey/surveymonkey.py:263 products/warehouse_sources/sources/surveysparrow/surveysparrow.py:248 13 77
products/product_tours/backend/llm/client.py:18 products/surveys/backend/llm/client.py:29 20 76
products/warehouse_sources/backend/temporal/data_imports/sources/baserow/baserow.py:126 products/warehouse_sources/sources/medusa/medusa.py:142 17 76
products/warehouse_sources/backend/temporal/data_imports/sources/gitea/source.py:177 products/warehouse_sources/sources/gitlab/source.py:135 12 76
products/warehouse_sources/backend/temporal/data_imports/sources/mailjet/mailjet.py:306 products/warehouse_sources/sources/shipstation/shipstation.py:280 16 76
products/warehouse_sources/backend/temporal/data_imports/sources/matomo/matomo.py:69 products/warehouse_sources/sources/taboola/taboola.py:73 14 76
products/warehouse_sources/sources/amazon_ads/canonical_descriptions.py:143 products/warehouse_sources/sources/amazon_ads/canonical_descriptions.py:223 21 76
products/warehouse_sources/sources/amazon_cloudwatch/source.py:189 products/warehouse_sources/sources/aws_ses/source.py:159 22 76
products/warehouse_sources/sources/baseten/baseten.py:283 products/warehouse_sources/sources/paperform/paperform.py:288 12 76
products/warehouse_sources/sources/better_stack/better_stack.py:114 products/warehouse_sources/sources/rootly/rootly.py:83 15 76
products/warehouse_sources/sources/bitrise/bitrise.py:218 products/warehouse_sources/sources/netlify/netlify.py:276 14 76
products/warehouse_sources/sources/browser_use/browser_use.py:376 products/warehouse_sources/sources/surveysparrow/surveysparrow.py:243 19 76
products/warehouse_sources/sources/buttondown/buttondown.py:155 products/warehouse_sources/sources/conekta/conekta.py:202 11 76
products/warehouse_sources/sources/campaign_monitor/source.py:124 products/warehouse_sources/sources/kickscale/source.py:121 23 76
products/warehouse_sources/sources/campayn/source.py:59 products/warehouse_sources/sources/wufoo/source.py:128 23 76
products/warehouse_sources/sources/checkout_com/source.py:271 products/warehouse_sources/sources/leadfeeder/source.py:78 21 76
products/warehouse_sources/sources/clickhouse_cloud/clickhouse_cloud.py:358 products/warehouse_sources/sources/runpod/runpod.py:297 18 76
products/warehouse_sources/sources/clickhouse_cloud/clickhouse_cloud.py:358 products/warehouse_sources/sources/sonarqube/sonarqube.py:425 18 76
products/warehouse_sources/sources/clickhouse_cloud/clickhouse_cloud.py:358 products/warehouse_sources/sources/veracode/veracode.py:344 18 76
products/warehouse_sources/sources/codemagic/codemagic.py:74 products/warehouse_sources/sources/ding_connect/ding_connect.py:91 11 76
products/warehouse_sources/sources/digitalocean/settings.py:350 products/warehouse_sources/sources/digitalocean/settings.py:369 14 76
products/warehouse_sources/sources/e_conomic/canonical_descriptions.py:232 products/warehouse_sources/sources/e_conomic/canonical_descriptions.py:279 20 76
products/warehouse_sources/sources/formbricks/formbricks.py:150 products/warehouse_sources/sources/gitlab/gitlab.py:223 14 76
products/warehouse_sources/sources/genesys_cloud/source.py:123 products/warehouse_sources/sources/zuora/source.py:100 23 76
products/warehouse_sources/sources/kapa_ai/source.py:56 products/warehouse_sources/sources/lexware_office/source.py:50 14 76
products/warehouse_sources/sources/kisi/source.py:59 products/warehouse_sources/sources/speedcurve/source.py:57 21 76
products/warehouse_sources/sources/orca_security/orca_security.py:230 products/warehouse_sources/sources/paperform/paperform.py:288 17 76
products/warehouse_sources/sources/packagist/packagist.py:267 products/warehouse_sources/sources/transistor/transistor.py:290 12 76
products/warehouse_sources/sources/perigon/perigon.py:73 products/warehouse_sources/sources/productboard/productboard.py:41 13 76
products/warehouse_sources/backend/temporal/data_imports/sources/featurebase/source.py:192 products/warehouse_sources/sources/bitrise/source.py:117 15 75
products/warehouse_sources/backend/temporal/data_imports/sources/featurebase/source.py:192 products/warehouse_sources/sources/mailersend/source.py:115 15 75
products/warehouse_sources/backend/temporal/data_imports/sources/featurebase/source.py:192 products/warehouse_sources/sources/splunk_observability_cloud/source.py:156 15 75
products/warehouse_sources/backend/temporal/data_imports/sources/matomo/matomo.py:66 products/warehouse_sources/sources/kubecost/kubecost.py:84 17 75
products/warehouse_sources/backend/temporal/data_imports/sources/sharepoint/sharepoint.py:145 products/warehouse_sources/sources/power_bi_admin/power_bi_admin.py:111 15 75
products/warehouse_sources/sources/active_campaign/active_campaign.py:110 products/warehouse_sources/sources/coinmarketcap/coinmarketcap.py:413 18 75
products/warehouse_sources/sources/aha_ideas/aha_ideas.py:181 products/warehouse_sources/sources/leadfeeder/leadfeeder.py:601 17 75
products/warehouse_sources/sources/airwallex/airwallex.py:302 products/warehouse_sources/sources/heroku/heroku.py:238 13 75
products/warehouse_sources/sources/airwallex/source.py:63 products/warehouse_sources/sources/frontegg/source.py:136 22 75
products/warehouse_sources/sources/amplitude/source.py:179 products/warehouse_sources/sources/open_meteo/source.py:136 14 75
products/warehouse_sources/sources/appcues/source.py:131 products/warehouse_sources/sources/trustpilot/source.py:57 22 75
products/warehouse_sources/sources/argocd/source.py:108 products/warehouse_sources/sources/devin_ai/source.py:109 15 75
products/warehouse_sources/sources/argocd/source.py:108 products/warehouse_sources/sources/flagsmith/source.py:161 15 75
products/warehouse_sources/sources/argocd/source.py:108 products/warehouse_sources/sources/less_annoying_crm/source.py:92 15 75
products/warehouse_sources/sources/argocd/source.py:108 products/warehouse_sources/sources/netlify/source.py:95 15 75
products/warehouse_sources/sources/argocd/source.py:108 products/warehouse_sources/sources/pypi/source.py:94 15 75
products/warehouse_sources/sources/argocd/source.py:108 products/warehouse_sources/sources/rubygems/source.py:88 15 75
products/warehouse_sources/sources/argocd/source.py:108 products/warehouse_sources/sources/segment/source.py:302 15 75
products/warehouse_sources/sources/argocd/source.py:108 products/warehouse_sources/sources/sonar_cloud/source.py:120 15 75
products/warehouse_sources/sources/aws_systems_manager/source.py:66 products/warehouse_sources/sources/ghost/source.py:125 15 75
products/warehouse_sources/sources/aws_systems_manager/source.py:66 products/warehouse_sources/sources/plane/source.py:116 15 75
products/warehouse_sources/sources/azure_devops/azure_devops.py:741 products/warehouse_sources/sources/square/square.py:294 14 75
products/warehouse_sources/sources/breezometer/source.py:107 products/warehouse_sources/sources/google_pagespeed_insights/source.py:131 17 75
products/warehouse_sources/sources/buildium/source.py:118 products/warehouse_sources/sources/propertyware/source.py:61 22 75
products/warehouse_sources/sources/capsule_crm/capsule_crm.py:164 products/warehouse_sources/sources/harvest/harvest.py:226 15 75
products/warehouse_sources/sources/chargebee/chargebee.py:361 products/warehouse_sources/sources/servicem8/servicem8.py:150 18 75
products/warehouse_sources/sources/clockify/clockify.py:363 products/warehouse_sources/sources/perigon/perigon.py:191 16 75
products/warehouse_sources/sources/confluent_cloud/confluent_cloud.py:329 products/warehouse_sources/sources/klaus/klaus.py:363 20 75
products/warehouse_sources/sources/criteo/source.py:83 products/warehouse_sources/sources/kajabi/source.py:51 22 75
products/warehouse_sources/sources/flowlu/flowlu.py:70 products/warehouse_sources/sources/rewardful/rewardful.py:102 15 75
products/warehouse_sources/sources/ghost/ghost.py:151 products/warehouse_sources/sources/givebutter/givebutter.py:83 17 75
products/warehouse_sources/sources/grafana_irm/grafana_irm.py:254 products/warehouse_sources/sources/grafana_irm/grafana_irm.py:297 15 75
products/warehouse_sources/sources/hatchet/hatchet.py:241 products/warehouse_sources/sources/kernel/kernel.py:161 16 75
products/warehouse_sources/sources/insightly/insightly.py:65 products/warehouse_sources/sources/kong_konnect/kong_konnect.py:50 11 75
products/warehouse_sources/sources/luma/luma.py:241 products/warehouse_sources/sources/printify/printify.py:469 18 75
products/warehouse_sources/sources/onepagecrm/onepagecrm.py:226 products/warehouse_sources/sources/orca_security/orca_security.py:227 15 75
products/warehouse_sources/sources/openai/openai.py:75 products/warehouse_sources/sources/openai_ads/openai_ads.py:96 14 75
products/warehouse_sources/backend/temporal/data_imports/sources/matomo/matomo.py:69 products/warehouse_sources/sources/applovin/applovin.py:75 14 74
products/warehouse_sources/backend/temporal/data_imports/sources/matomo/matomo.py:69 products/warehouse_sources/sources/outbrain/outbrain.py:298 14 74
products/warehouse_sources/backend/temporal/data_imports/sources/matomo/matomo.py:69 products/warehouse_sources/sources/plausible/plausible.py:65 14 74
products/warehouse_sources/backend/temporal/data_imports/sources/yousign/source.py:100 products/warehouse_sources/sources/phyllo/source.py:78 19 74
products/warehouse_sources/sources/abnormal_security/source.py:71 products/warehouse_sources/sources/boldsign/source.py:69 21 74
products/warehouse_sources/sources/aha/aha.py:133 products/warehouse_sources/sources/humanitix/humanitix.py:210 15 74
products/warehouse_sources/sources/airwallex/airwallex.py:303 products/warehouse_sources/sources/bitrise/bitrise.py:218 12 74
products/warehouse_sources/sources/anthropic/anthropic.py:134 products/warehouse_sources/sources/openai/openai.py:75 12 74
products/warehouse_sources/sources/appfigures/source.py:123 products/warehouse_sources/sources/care_quality_commission/source.py:114 15 74
products/warehouse_sources/sources/appfigures/source.py:123 products/warehouse_sources/sources/deepgram/source.py:103 15 74
products/warehouse_sources/sources/appfigures/source.py:123 products/warehouse_sources/sources/new_york_times/source.py:115 15 74
products/warehouse_sources/sources/asana/asana.py:164 products/warehouse_sources/sources/dynamics_365_business_central/dynamics_365_business_central.py:251 15 74
products/warehouse_sources/sources/asana/asana.py:164 products/warehouse_sources/sources/env0/env0.py:281 15 74
products/warehouse_sources/sources/asana/asana.py:164 products/warehouse_sources/sources/leexi/leexi.py:157 15 74
products/warehouse_sources/sources/asana/asana.py:164 products/warehouse_sources/sources/mailosaur/mailosaur.py:141 15 74
products/warehouse_sources/sources/aws_budgets/aws_budgets.py:650 products/warehouse_sources/sources/aws_cost_anomaly_detection/aws_cost_anomaly_detection.py:380 18 74
products/warehouse_sources/sources/azure_cost_management/azure_cost_management.py:217 products/warehouse_sources/sources/open_exchange_rates/open_exchange_rates.py:209 14 74
products/warehouse_sources/sources/campfire/campfire.py:51 products/warehouse_sources/sources/deepgram/deepgram.py:46 11 74
products/warehouse_sources/sources/campfire/campfire.py:160 products/warehouse_sources/sources/smartsheet/smartsheet.py:230 20 74
products/warehouse_sources/sources/canny/canny.py:230 products/warehouse_sources/sources/membrain/membrain.py:233 17 74
products/warehouse_sources/sources/canny/canny.py:232 products/warehouse_sources/sources/heroku/heroku.py:280 15 74
products/warehouse_sources/sources/circleci/circleci.py:119 products/warehouse_sources/sources/circleci_insights/circleci_insights.py:114 16 74
products/warehouse_sources/sources/concord/source.py:124 products/warehouse_sources/sources/cursor/source.py:104 15 74
products/warehouse_sources/sources/concord/source.py:124 products/warehouse_sources/sources/dbt/source.py:178 15 74
products/warehouse_sources/sources/configcat/configcat.py:402 products/warehouse_sources/sources/shortio/shortio.py:41 23 74
products/warehouse_sources/sources/dataforseo/source.py:167 products/warehouse_sources/sources/rki_covid/source.py:56 16 74
products/warehouse_sources/sources/deepgram/deepgram.py:399 products/warehouse_sources/sources/heroku/heroku.py:285 15 74
products/warehouse_sources/sources/ding_connect/ding_connect.py:170 products/warehouse_sources/sources/eventee/eventee.py:54 11 74
products/warehouse_sources/sources/firehydrant/firehydrant.py:158 products/warehouse_sources/sources/mux/mux.py:420 22 74
products/warehouse_sources/sources/gerrit/gerrit.py:516 products/warehouse_sources/sources/teamcity/teamcity.py:437 16 74
products/warehouse_sources/sources/infisical/infisical.py:152 products/warehouse_sources/sources/jumpcloud/jumpcloud.py:101 11 74
products/warehouse_sources/sources/infisical/infisical.py:152 products/warehouse_sources/sources/octopus_deploy/octopus_deploy.py:184 11 74
products/warehouse_sources/sources/intruder/intruder.py:66 products/warehouse_sources/sources/todoist/todoist.py:57 14 74
products/warehouse_sources/sources/jira/jira.py:119 products/warehouse_sources/sources/jira/jira.py:134 12 74
products/warehouse_sources/sources/katana/katana.py:160 products/warehouse_sources/sources/smartwaiver/smartwaiver.py:258 18 74
products/warehouse_sources/sources/squadcast/squadcast.py:1 products/warehouse_sources/sources/tenable_vulnerability_management/tenable_vulnerability_management.py:1 18 74
products/warehouse_sources/sources/trunk_io/trunk_io.py:63 products/warehouse_sources/sources/trunk_io/trunk_io.py:110 13 74
products/logs/backend/presentation/views/alerts_api.py:771 products/replay_vision/backend/api/vision_alerts.py:306 14 73
products/warehouse_sources/sources/amplitude/amplitude.py:388 products/warehouse_sources/sources/testrail/testrail.py:501 14 73
products/warehouse_sources/sources/appfollow/appfollow.py:108 products/warehouse_sources/sources/katana/katana.py:63 12 73
products/warehouse_sources/sources/argocd/source.py:108 products/warehouse_sources/sources/churnkey/source.py:101 13 73
products/warehouse_sources/sources/argocd/source.py:108 products/warehouse_sources/sources/crates_io/source.py:92 13 73
products/warehouse_sources/sources/auth0/source.py:204 products/warehouse_sources/sources/commercetools/source.py:204 24 73
products/warehouse_sources/sources/automox/automox.py:547 products/warehouse_sources/sources/similarweb/similarweb.py:487 11 73
products/warehouse_sources/sources/aws_cloudtrail/source.py:155 products/warehouse_sources/sources/aws_config/source.py:144 21 73
products/warehouse_sources/sources/back_market/back_market.py:75 products/warehouse_sources/sources/humanitix/humanitix.py:81 13 73
products/warehouse_sources/sources/baseten/baseten.py:283 products/warehouse_sources/sources/vantage/vantage.py:226 13 73
products/warehouse_sources/sources/baseten/baseten.py:283 products/warehouse_sources/sources/vellum/vellum.py:225 13 73
products/warehouse_sources/sources/bigmailer/bigmailer.py:188 products/warehouse_sources/sources/campaign_monitor/campaign_monitor.py:299 15 73
products/warehouse_sources/sources/bluetally/bluetally.py:96 products/warehouse_sources/sources/guardian/guardian.py:116 16 73
products/warehouse_sources/sources/browser_use/browser_use.py:375 products/warehouse_sources/sources/twelve_labs/twelve_labs.py:408 16 73
products/warehouse_sources/sources/buzzsprout/buzzsprout.py:270 products/warehouse_sources/sources/campaign_monitor/campaign_monitor.py:341 14 73
products/warehouse_sources/sources/charthop/charthop.py:226 products/warehouse_sources/sources/statuspage/statuspage.py:182 17 73
products/warehouse_sources/sources/clockify/clockify.py:107 products/warehouse_sources/sources/snyk/snyk.py:82 12 73
products/warehouse_sources/sources/clockify/clockify.py:342 products/warehouse_sources/sources/deepgram/deepgram.py:367 12 73
products/warehouse_sources/sources/confluence/source.py:72 products/warehouse_sources/sources/jira/source.py:81 24 73
products/warehouse_sources/sources/databricks/source.py:151 products/warehouse_sources/sources/qualtrics/source.py:130 24 73
products/warehouse_sources/sources/drata/drata.py:327 products/warehouse_sources/sources/ramp/ramp.py:227 18 73
products/warehouse_sources/sources/e_conomic/canonical_descriptions.py:257 products/warehouse_sources/sources/e_conomic/canonical_descriptions.py:280 21 73
products/warehouse_sources/sources/ezofficeinventory/ezofficeinventory.py:203 products/warehouse_sources/sources/faire/faire.py:177 16 73
products/warehouse_sources/sources/kickscale/kickscale.py:181 products/warehouse_sources/sources/postscript/postscript.py:181 14 73
products/warehouse_sources/sources/new_york_times/new_york_times.py:265 products/warehouse_sources/sources/new_york_times/new_york_times.py:314 11 73
products/warehouse_sources/sources/nuget/nuget.py:487 products/warehouse_sources/sources/pylon/pylon.py:471 17 73
products/warehouse_sources/sources/planhat/planhat.py:73 products/warehouse_sources/sources/rentcast/rentcast.py:161 22 73
products/warehouse_sources/sources/rocketlane/rocketlane.py:69 products/warehouse_sources/sources/trello/trello.py:98 11 73
ee/hogai/llm.py:393 ee/hogai/llm.py:470 12 72
products/warehouse_sources/backend/temporal/data_imports/sources/gumroad/source.py:129 products/warehouse_sources/sources/productboard/source.py:118 17 72
products/warehouse_sources/backend/temporal/data_imports/sources/matomo/matomo.py:69 products/warehouse_sources/sources/easybill/easybill.py:29 14 72
products/warehouse_sources/backend/temporal/data_imports/sources/yousign/source.py:100 products/warehouse_sources/sources/bill_com/source.py:102 18 72
products/warehouse_sources/sources/abnormal_security/source.py:75 products/warehouse_sources/sources/rudderstack/source.py:266 18 72
products/warehouse_sources/sources/adroll/source.py:68 products/warehouse_sources/sources/flexmail/source.py:59 20 72
products/warehouse_sources/sources/aha/aha.py:161 products/warehouse_sources/sources/uservoice/uservoice.py:175 20 72
products/warehouse_sources/sources/aha/source.py:66 products/warehouse_sources/sources/bamboohr/source.py:63 20 72
products/warehouse_sources/sources/aha/source.py:66 products/warehouse_sources/sources/hellobaton/source.py:64 20 72
products/warehouse_sources/sources/aha_ideas/aha_ideas.py:181 products/warehouse_sources/sources/resend/resend.py:266 16 72
products/warehouse_sources/sources/aircall/source.py:68 products/warehouse_sources/sources/recruitee/source.py:65 20 72
products/warehouse_sources/sources/apitally/source.py:87 products/warehouse_sources/sources/bugherd/source.py:81 17 72
products/warehouse_sources/sources/apitally/source.py:87 products/warehouse_sources/sources/cast_ai/source.py:81 17 72
products/warehouse_sources/sources/apitally/source.py:87 products/warehouse_sources/sources/dovetail/source.py:83 17 72
products/warehouse_sources/sources/apitally/source.py:87 products/warehouse_sources/sources/hightouch/source.py:102 17 72
products/warehouse_sources/sources/apitally/source.py:87 products/warehouse_sources/sources/sendgrid/source.py:175 17 72
products/warehouse_sources/sources/apitally/source.py:87 products/warehouse_sources/sources/sleekplan/source.py:84 17 72
products/warehouse_sources/sources/apitally/source.py:87 products/warehouse_sources/sources/yoco/source.py:96 17 72
products/warehouse_sources/sources/appfollow/appfollow.py:109 products/warehouse_sources/sources/lemlist/lemlist.py:64 11 72
products/warehouse_sources/sources/appsflyer/appsflyer.py:158 products/warehouse_sources/sources/cody/cody.py:119 13 72
products/warehouse_sources/sources/ashby/canonical_descriptions.py:5 products/warehouse_sources/sources/lattice/canonical_descriptions.py:5 18 72
products/warehouse_sources/sources/auth0/source.py:204 products/warehouse_sources/sources/zoom/source.py:206 22 72
products/warehouse_sources/sources/aviator/source.py:93 products/warehouse_sources/sources/dropbox_sign/source.py:108 17 72
products/warehouse_sources/sources/aviator/source.py:93 products/warehouse_sources/sources/mux/source.py:147 17 72
products/warehouse_sources/sources/aws_budgets/source.py:113 products/warehouse_sources/sources/aws_cost_anomaly_detection/source.py:124 17 72
products/warehouse_sources/sources/bitbucket/source.py:183 products/warehouse_sources/sources/persona/source.py:121 15 72
products/warehouse_sources/sources/blogger/blogger.py:174 products/warehouse_sources/sources/deepgram/deepgram.py:387 14 72
products/warehouse_sources/sources/browser_use/browser_use.py:379 products/warehouse_sources/sources/easybill/easybill.py:125 16 72
products/warehouse_sources/sources/campaign_monitor/campaign_monitor.py:341 products/warehouse_sources/sources/semgrep/semgrep.py:275 12 72
products/warehouse_sources/sources/chargify/source.py:125 products/warehouse_sources/sources/telnyx/source.py:108 16 72
products/warehouse_sources/sources/checkout_com/source.py:246 products/warehouse_sources/sources/plaid/source.py:90 18 72
products/warehouse_sources/sources/coassemble/source.py:60 products/warehouse_sources/sources/inflowinventory/source.py:79 20 72
products/warehouse_sources/sources/coassemble/source.py:60 products/warehouse_sources/sources/okendo/source.py:64 20 72
products/warehouse_sources/sources/coassemble/source.py:60 products/warehouse_sources/sources/onepagecrm/source.py:62 20 72
products/warehouse_sources/sources/codecov/codecov.py:180 products/warehouse_sources/sources/gnews/gnews.py:96 11 72
products/warehouse_sources/sources/cody/source.py:106 products/warehouse_sources/sources/coveralls/source.py:125 12 72
products/warehouse_sources/sources/datahub/datahub.py:431 products/warehouse_sources/sources/unleash/unleash.py:208 11 72
products/warehouse_sources/sources/drata/drata.py:280 products/warehouse_sources/sources/raygun/raygun.py:418 12 72
products/warehouse_sources/sources/dynamics_365_business_central/source.py:84 products/warehouse_sources/sources/power_bi_admin/source.py:160 22 72
products/warehouse_sources/sources/e_conomic/canonical_descriptions.py:232 products/warehouse_sources/sources/e_conomic/canonical_descriptions.py:256 19 72
products/warehouse_sources/sources/e_conomic/e_conomic.py:329 products/warehouse_sources/sources/launchdarkly/launchdarkly.py:144 15 72
products/warehouse_sources/sources/e_conomic/e_conomic.py:329 products/warehouse_sources/sources/mollie/mollie.py:113 15 72
products/warehouse_sources/sources/elasticemail/elasticemail.py:343 products/warehouse_sources/sources/sendgrid/sendgrid.py:462 13 72
products/warehouse_sources/sources/elasticemail/source.py:109 products/warehouse_sources/sources/render/source.py:116 14 72
products/warehouse_sources/sources/freshservice/canonical_descriptions.py:5 products/warehouse_sources/sources/greenhouse/canonical_descriptions.py:5 18 72
products/warehouse_sources/sources/freshservice/canonical_descriptions.py:5 products/warehouse_sources/sources/recharge/canonical_descriptions.py:5 18 72
products/warehouse_sources/sources/freshservice/canonical_descriptions.py:5 products/warehouse_sources/sources/rippling/canonical_descriptions.py:5 18 72
products/warehouse_sources/sources/freshservice/canonical_descriptions.py:5 products/warehouse_sources/sources/salesloft/canonical_descriptions.py:5 18 72
products/warehouse_sources/sources/height/height.py:64 products/warehouse_sources/sources/rentcast/rentcast.py:170 16 72
products/warehouse_sources/sources/honeybadger/honeybadger.py:423 products/warehouse_sources/sources/plivo/plivo.py:372 18 72
products/warehouse_sources/sources/invoiceninja/invoiceninja.py:132 products/warehouse_sources/sources/moxie/moxie.py:65 16 72
products/warehouse_sources/sources/jotform/source.py:73 products/warehouse_sources/sources/knowbe4/source.py:113 20 72
products/warehouse_sources/sources/jotform/source.py:73 products/warehouse_sources/sources/komodor/source.py:98 20 72
products/warehouse_sources/sources/lemlist/lemlist.py:131 products/warehouse_sources/sources/semgrep/semgrep.py:275 16 72
products/warehouse_sources/sources/npm_registry/npm_registry.py:343 products/warehouse_sources/sources/pypi/pypi.py:233 18 72
products/warehouse_sources/sources/onepagecrm/onepagecrm.py:227 products/warehouse_sources/sources/trustpilot/trustpilot.py:378 15 72
products/warehouse_sources/sources/persona/persona.py:371 products/warehouse_sources/sources/stytch/stytch.py:575 16 72
products/warehouse_sources/sources/sftp/sftp.py:341 products/warehouse_sources/sources/sftp/sftp.py:399 13 72
products/warehouse_sources/sources/squadcast/squadcast.py:2 products/warehouse_sources/sources/swarmia/swarmia.py:4 17 72
products/warehouse_sources/backend/temporal/data_imports/sources/billomat/source.py:190 products/warehouse_sources/sources/rokt_ads/source.py:173 20 71
products/warehouse_sources/sources/adapty/source.py:97 products/warehouse_sources/sources/kajabi/source.py:110 11 71
products/warehouse_sources/sources/adobe_analytics/adobe_analytics.py:409 products/warehouse_sources/sources/adobe_analytics/adobe_analytics.py:448 14 71
products/warehouse_sources/sources/aha_ideas/aha_ideas.py:183 products/warehouse_sources/sources/rocketlane/rocketlane.py:117 14 71
products/warehouse_sources/sources/amplitude/source.py:248 products/warehouse_sources/sources/clip/source.py:103 20 71
products/warehouse_sources/sources/amplitude/source.py:248 products/warehouse_sources/sources/pabbly_subscriptions_billing/source.py:54 20 71
products/warehouse_sources/sources/apitally/source.py:88 products/warehouse_sources/sources/twenty/source.py:101 16 71
products/warehouse_sources/sources/asaas/asaas.py:142 products/warehouse_sources/sources/cliniko/cliniko.py:120 17 71
products/warehouse_sources/sources/aws_budgets/source.py:147 products/warehouse_sources/sources/aws_cloudtrail/source.py:155 20 71
products/warehouse_sources/sources/aws_macie/source.py:132 products/warehouse_sources/sources/aws_savings_plans/source.py:135 20 71
products/warehouse_sources/sources/back_market/back_market.py:197 products/warehouse_sources/sources/canny/canny.py:229 14 71
products/warehouse_sources/sources/bamboohr/source.py:88 products/warehouse_sources/sources/raygun/source.py:121 14 71
products/warehouse_sources/sources/buildium/source.py:118 products/warehouse_sources/sources/culture_amp/source.py:64 20 71
products/warehouse_sources/sources/buildium/source.py:118 products/warehouse_sources/sources/phyllo/source.py:64 20 71
products/warehouse_sources/sources/bunny/bunny.py:351 products/warehouse_sources/sources/fleetio/fleetio.py:204 12 71
products/warehouse_sources/sources/codacy/codacy.py:381 products/warehouse_sources/sources/codacy/codacy.py:426 11 71
products/warehouse_sources/sources/codecov/codecov.py:180 products/warehouse_sources/sources/dbt/dbt.py:360 11 71
products/warehouse_sources/sources/codecov/codecov.py:180 products/warehouse_sources/sources/gitguardian/gitguardian.py:85 11 71
products/warehouse_sources/sources/companycam/source.py:89 products/warehouse_sources/sources/opn_payments/source.py:99 16 71
products/warehouse_sources/sources/companycam/source.py:89 products/warehouse_sources/sources/zendesk_sunshine/source.py:138 16 71
products/warehouse_sources/sources/convertkit/convertkit.py:300 products/warehouse_sources/sources/drata/drata.py:323 16 71
products/warehouse_sources/sources/databricks/source.py:149 products/warehouse_sources/sources/flutterwave/source.py:80 20 71
products/warehouse_sources/sources/dynamics365/source.py:135 products/warehouse_sources/sources/greenhouse/source.py:182 14 71
products/warehouse_sources/sources/env0/source.py:53 products/warehouse_sources/sources/soda_cloud/source.py:102 20 71
products/warehouse_sources/sources/fastly/fastly.py:122 products/warehouse_sources/sources/splunk_observability_cloud/splunk_observability_cloud.py:95 13 71
products/warehouse_sources/sources/financial_modelling/financial_modelling.py:273 products/warehouse_sources/sources/plaid/plaid.py:316 16 71
products/warehouse_sources/sources/google_play_console/google_play_console.py:695 products/warehouse_sources/sources/google_play_console/google_play_console.py:726 11 71
products/warehouse_sources/sources/harvest/harvest.py:117 products/warehouse_sources/sources/pexels/pexels.py:79 11 71
products/warehouse_sources/sources/intruder/intruder.py:162 products/warehouse_sources/sources/skyvern/skyvern.py:209 13 71
products/warehouse_sources/sources/intruder/intruder.py:162 products/warehouse_sources/sources/todoist/todoist.py:166 13 71
products/warehouse_sources/sources/invoiceninja/invoiceninja.py:121 products/warehouse_sources/sources/lago/lago.py:75 12 71
products/warehouse_sources/sources/lemlist/lemlist.py:130 products/warehouse_sources/sources/lemlist/lemlist.py:218 17 71
products/warehouse_sources/sources/lightdash/lightdash.py:54 products/warehouse_sources/sources/metabase/metabase.py:103 11 71
products/warehouse_sources/sources/marketo/source.py:87 products/warehouse_sources/sources/workday/source.py:87 21 71
products/warehouse_sources/sources/nuget/nuget.py:487 products/warehouse_sources/sources/plaid/plaid.py:315 13 71
products/warehouse_sources/sources/oncehub/oncehub.py:156 products/warehouse_sources/sources/reply_io/reply_io.py:134 11 71
products/warehouse_sources/backend/temporal/data_imports/sources/google_search_console/google_search_console.py:267 products/warehouse_sources/sources/google_analytics/google_analytics.py:104 15 70
products/warehouse_sources/backend/temporal/data_imports/sources/servicenow/source.py:86 products/warehouse_sources/sources/elasticsearch/source.py:109 21 70
products/warehouse_sources/sources/active_campaign/active_campaign.py:123 products/warehouse_sources/sources/heyreach/heyreach.py:131 11 70
products/warehouse_sources/sources/aha_ideas/aha_ideas.py:181 products/warehouse_sources/sources/back_market/back_market.py:200 16 70
products/warehouse_sources/sources/airwallex/airwallex.py:175 products/warehouse_sources/sources/opsgenie/opsgenie.py:126 12 70
products/warehouse_sources/sources/appstack/source.py:64 products/warehouse_sources/sources/tmdb/source.py:67 19 70
products/warehouse_sources/sources/auth0/auth0.py:108 products/warehouse_sources/sources/gainsight_cs/gainsight_cs.py:117 13 70
products/warehouse_sources/sources/aws_compute_optimizer/aws_compute_optimizer.py:115 products/warehouse_sources/sources/aws_config/aws_config.py:115 11 70
products/warehouse_sources/sources/azure_devops/azure_devops.py:744 products/warehouse_sources/sources/monday/monday.py:440 13 70
products/warehouse_sources/sources/bettermode/source.py:96 products/warehouse_sources/sources/gusto/source.py:83 21 70
products/warehouse_sources/sources/bloomerang/bloomerang.py:204 products/warehouse_sources/sources/thinkific_courses/thinkific_courses.py:95 11 70
products/warehouse_sources/sources/bluetally/bluetally.py:96 products/warehouse_sources/sources/buzzsprout/buzzsprout.py:268 16 70
products/warehouse_sources/sources/campaign_monitor/campaign_monitor.py:341 products/warehouse_sources/sources/heroku/heroku.py:280 11 70
products/warehouse_sources/sources/capsule_crm/capsule_crm.py:133 products/warehouse_sources/sources/pexels/pexels.py:140 19 70
products/warehouse_sources/sources/cohere/source.py:100 products/warehouse_sources/sources/polar/source.py:145 19 70
products/warehouse_sources/sources/cronitor/cronitor.py:487 products/warehouse_sources/sources/newsdata/newsdata.py:175 13 70
products/warehouse_sources/sources/deno_deploy/deno_deploy.py:292 products/warehouse_sources/sources/teamwork/teamwork.py:175 20 70
products/warehouse_sources/sources/ghost/ghost.py:153 products/warehouse_sources/sources/ynab/ynab.py:47 15 70
products/warehouse_sources/sources/gologin/gologin.py:84 products/warehouse_sources/sources/systeme/systeme.py:68 15 70
products/warehouse_sources/sources/housecall_pro/settings.py:121 products/warehouse_sources/sources/housecall_pro/settings.py:138 14 70
products/warehouse_sources/sources/hubplanner/hubplanner.py:220 products/warehouse_sources/sources/justsift/justsift.py:123 22 70
products/warehouse_sources/sources/jamf_pro/source.py:133 products/warehouse_sources/sources/metabase/source.py:106 22 70
products/warehouse_sources/sources/justsift/justsift.py:137 products/warehouse_sources/sources/shippo/shippo.py:263 11 70
products/warehouse_sources/sources/listmonk/listmonk.py:205 products/warehouse_sources/sources/megaphone/megaphone.py:146 11 70
products/warehouse_sources/sources/northpass_lms/northpass_lms.py:359 products/warehouse_sources/sources/raygun/raygun.py:417 12 70
products/warehouse_sources/sources/paperform/paperform.py:296 products/warehouse_sources/sources/retently/retently.py:245 12 70
products/warehouse_sources/sources/pardot/pardot.py:225 products/warehouse_sources/sources/pardot/pardot.py:338 14 70
products/warehouse_sources/sources/plain/queries.py:23 products/warehouse_sources/sources/plain/queries.py:251 20 70
products/warehouse_sources/sources/planhat/planhat.py:73 products/warehouse_sources/sources/qualaroo/qualaroo.py:180 22 70
products/warehouse_sources/sources/planhat/planhat.py:73 products/warehouse_sources/sources/recruitee/recruitee.py:169 22 70
products/warehouse_sources/sources/pulumi_cloud/pulumi_cloud.py:350 products/warehouse_sources/sources/pulumi_cloud/pulumi_cloud.py:425 11 70
products/warehouse_sources/sources/pulumi_cloud/pulumi_cloud.py:350 products/warehouse_sources/sources/pulumi_cloud/pulumi_cloud.py:546 11 70
products/warehouse_sources/sources/recreation/recreation.py:189 products/warehouse_sources/sources/spotlercrm/spotlercrm.py:135 21 70
products/warehouse_sources/sources/secoda/secoda.py:91 products/warehouse_sources/sources/simplecast/simplecast.py:107 22 70
products/warehouse_sources/sources/squadcast/squadcast.py:3 products/warehouse_sources/sources/sumo_logic/sumo_logic.py:4 16 70
products/warehouse_sources/sources/surveymonkey/surveymonkey.py:248 products/warehouse_sources/sources/surveysparrow/surveysparrow.py:233 16 70
⚠️ Duplication (TypeScript) — 29 new duplicated blocks (worst 2203 tokens)

New TypeScript code duplication introduced by this branch. Fails at 70+ tokens in app code, or 150+ tokens when both copies live in test files. Advisory while the gate proves itself: extract a shared helper instead of copying.

First copy Second copy Lines Tokens
nodejs/src/ingestion/pipelines/sessionreplay/ai-research/image-fetch-v4/configuration-policy.ts:583 nodejs/src/ingestion/pipelines/sessionreplay/ml-mirror-image-fetch/configuration-policy.ts:516 292 2203
nodejs/src/ingestion/pipelines/sessionreplay/ai-research/image-fetch-v4/configuration-policy.ts:261 nodejs/src/ingestion/pipelines/sessionreplay/ml-mirror-image-fetch/configuration-policy.ts:262 214 1176
nodejs/src/ingestion/pipelines/sessionreplay/ai-research/image-fetch-v4/configuration-policy.test.ts:350 nodejs/src/ingestion/pipelines/sessionreplay/ml-mirror-image-fetch/configuration-policy.test.ts:287 152 1047
nodejs/src/ingestion/pipelines/sessionreplay/ai-research/image-fetch-v4/configuration-policy.test.ts:9 nodejs/src/ingestion/pipelines/sessionreplay/ml-mirror-image-fetch/configuration-policy.test.ts:8 130 708
frontend/src/lib/oauthScopes.generated.ts:12 services/mcp/src/lib/oauth-scopes.generated.ts:12 255 525
frontend/src/scenes/session-recordings/SessionsRecordings-player-failure.stories.tsx:19 frontend/src/scenes/session-recordings/player/sidebar/PlayerSidebarOverviewTab.stories.tsx:32 86 344
nodejs/src/ingestion/pipelines/sessionreplay/ai-research/image-fetch-v4/configuration-policy.test.ts:186 nodejs/src/ingestion/pipelines/sessionreplay/ml-mirror-image-fetch/configuration-policy.test.ts:134 73 342
nodejs/src/ingestion/pipelines/sessionreplay/ai-research/image-fetch-v4/configuration-policy.test.ts:309 nodejs/src/ingestion/pipelines/sessionreplay/ml-mirror-image-fetch/configuration-policy.test.ts:246 29 259
nodejs/src/ingestion/pipelines/sessionreplay/ai-research/image-fetch-v4/configuration-policy.ts:551 nodejs/src/ingestion/pipelines/sessionreplay/ml-mirror-image-fetch/configuration-policy.ts:484 30 232
services/mcp/scripts/generate-tools.ts:2280 services/mcp/scripts/generate-tools.ts:2305 20 180
products/workflows/frontend/Workflows/hogflows/panel/testing/HogFlowEditorNotificationPanelTest.tsx:356 products/workflows/frontend/Workflows/hogflows/panel/testing/HogFlowEditorPanelTest.tsx:145 26 151
frontend/src/scenes/session-recordings/playlist/SessionRecordingPreviewCompact.tsx:1 frontend/src/scenes/session-recordings/playlist/SessionRecordingPreviewFeed.tsx:1 27 138
services/mcp/scripts/generate-tools.ts:2259 services/mcp/scripts/generate-tools.ts:2287 12 138
frontend/src/lib/utils/liquid.ts:188 nodejs/src/cdp/utils/liquid.ts:92 22 137
frontend/src/lib/utils/liquid.ts:155 nodejs/src/cdp/utils/liquid.ts:59 28 134
products/product_analytics/frontend/insights/funnels/funnelDataLogic.ts:316 products/product_analytics/frontend/insights/funnels/funnelDataLogic.ts:548 23 121
frontend/src/scenes/session-recordings/playlist/SessionRecordingPreview.tsx:248 frontend/src/scenes/session-recordings/playlist/SessionRecordingPreviewCompact.tsx:186 18 120
frontend/src/lib/integrations/integrationsLogic.ts:714 frontend/src/scenes/settings/organization/organizationIntegrationsLogic.ts:214 51 112
services/mcp/scripts/yaml-config-schema.ts:188 services/mcp/scripts/yaml-config-schema.ts:624 30 100
frontend/src/scenes/dashboard/dashboardTemplateEntities.ts:257 frontend/src/scenes/hog-functions/filters/cdpFilterSeries.ts:97 14 89
products/ai_observability/frontend/settings/AddKeyModal.tsx:184 products/ai_observability/frontend/settings/LLMProviderKeysSettings.tsx:209 24 86
frontend/src/scenes/feature-flags/featureFlagsLogic.ts:313 frontend/src/scenes/feature-flags/flagSelectionLogic.ts:235 15 82
frontend/src/scenes/session-recordings/playlist/SessionRecordingPreviewCompact.tsx:147 frontend/src/scenes/session-recordings/playlist/SessionRecordingPreviewFeed.tsx:131 16 82
services/mcp/scripts/yaml-config-schema.ts:199 services/mcp/src/tools/toolDefinitions.ts:22 19 81
frontend/src/scenes/feature-flags/featureFlagsLogic.ts:313 frontend/src/scenes/feature-flags/featureFlagsLogic.ts:542 15 80
frontend/src/lib/components/AddToDashboard/addToDashboardModalLogic.ts:72 frontend/src/lib/components/AddToDashboard/addToDashboardModalLogic.ts:101 15 74
products/data_warehouse/frontend/scenes/SourceScene/tabs/sourceSettingsLogic.ts:1508 products/data_warehouse/frontend/scenes/SourceScene/tabs/sourceSettingsLogic.ts:1535 11 73
frontend/src/lib/statistics.ts:19 packages/quill/packages/charts/src/utils/statistics.ts:20 12 71
frontend/src/scenes/insights/insightLogic.tsx:232 frontend/src/scenes/insights/insightLogic.tsx:410 13 71
✅ Hogbox preview — ready, open the preview

▶ Open the preview

🔑 Login test@posthog.com / 12345678 (demo data)
🧩 Running this PR's backend on the PostHog :master base (frontend unchanged by this PR)
🔗 Link stable across rebuilds: a re-push swaps the box underneath, the URL stays
🔒 Access tailnet only (PostHog VPN)
🛠️ Admin inspect & debug state in hogland
💤 Idle sleeps after ~30 min idle (snapshot to S3, zero node cost) and wakes on your next visit in ~30s, behind a brief "waking up" screen

commit 758c8b9 · box box-9022d765daca · ready in 1685s (push → usable) · build log · rebuilds on every push, torn down on close

@posthog posthog Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

PostHog Review · Standard · reviewed 37ebb8c: 2 Should fix.

This is the only automatic review while this pull request is a draft. Comment @posthog review to review new changes sooner. Otherwise, a review of the new changes runs when you mark it ready for review.

See this review and its findings in PostHog Review. Comment @posthog review --deep for a Deep review. A Deep review takes longer and looks deeper than a Standard review.

Comment thread nodejs/src/cdp/cdp-services.ts Resolved
Silthus and others added 2 commits November 2, 2026 09:26
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
… out a connection

failOpen covers only the Valkey callback. The optional pool cdp-api opens for the sandbox
sender rejects acquire after a second, so an outage threw out of the MX check and the
transactional endpoint answered 500. A pool error now counts as a cache miss.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Silthus and others added 2 commits November 2, 2026 10:02
…aily-caps

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
The DNS fallback for an unreachable SES Valkey now records cdp_email_mx_cache_errors_total
by operation, so an outage is visible apart from ordinary DNS traffic.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Silthus and others added 2 commits November 2, 2026 10:10
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
failOpen turned a failed GET or SET into null before the catch could count it. Without
failOpen, both reach the catch, which counts the failure and falls back to DNS.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Silthus and others added 2 commits November 2, 2026 10:58
…ic and footer CSS into daily-caps

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

# Conflicts:
#	docs/internal/workflows-email-sending-tiers.md
#	nodejs/src/cdp/services/messaging/email.service.test.ts
The optional SES Valkey pool's clients kept the ioredis offline queue, so during an outage every
caller's command waited there, memory grew, and expired work replayed on recovery. Once a connected
client is handed out, its offline queue is off.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…acing and capture cap into daily-caps

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

# Conflicts:
#	docs/internal/workflows-email-sending-tiers.md
…ent captures into daily-caps

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

# Conflicts:
#	nodejs/src/cdp/services/messaging/email.service.test.ts
…caps

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

# Conflicts:
#	nodejs/src/cdp/services/messaging/email.service.test.ts
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@parameterai

parameterai Bot commented Nov 3, 2026 •

Copy link
Copy Markdown

Risk: No findings

This PR adds daily send caps for the workflows sandbox email sender: a per-project token bucket and a per-recipient-address bucket (org-scoped), claimed atomically right before delivery via a new all-or-nothing Lua script, with deduplicated refunds when the post-claim member recheck or SES throttling cancels the send. It also makes the cdp-api's SES Valkey pool optional/non-fatal and turns MX-cache Valkey failures into counted DNS fallbacks. The cap logic is fail-closed and the accounting is atomically correct; I found no way to send over a cap, refund without a charge, or cross tenant boundaries.

Sentinel reviewed 758c8b9 · Review settings

@Silthus Silthus added the stamphog Request AI approval (no full review) label Nov 3, 2026
stamphog[bot]

This comment was marked as outdated.

@Silthus

Silthus commented Nov 3, 2026

Copy link
Copy Markdown
Contributor Author

@PostHog review

@posthog

posthog Bot commented Nov 3, 2026

Copy link
Copy Markdown
Contributor

@Silthus PostHog Review is reviewing this pull request.

@posthog posthog Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

PostHog Review · Standard · reviewed 3a3709f: no findings.

@Silthus

Silthus commented Nov 3, 2026

Copy link
Copy Markdown
Contributor Author

@PostHog review

@posthog

posthog Bot commented Nov 3, 2026

Copy link
Copy Markdown
Contributor

@Silthus PostHog Review is reviewing this pull request.

@posthog posthog Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

PostHog Review · Standard · reviewed 9c65436: 1 Should fix.

A denial spends no tokens, so a replayed claim can decide again. Storing
denials left one key per rejected send for ten minutes.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@stamphog
stamphog Bot dismissed their stale review November 3, 2026 10:09

A new stamphog review started for this PR — the fresh verdict replaces this approval.

@Silthus

Silthus commented Nov 3, 2026

Copy link
Copy Markdown
Contributor Author

@PostHog review

@posthog

posthog Bot commented Nov 3, 2026

Copy link
Copy Markdown
Contributor

@Silthus PostHog Review is reviewing this pull request.

@stamphog stamphog Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Approved.

Risky changes have independent assurance from the current-head review and owning-team authorship with strong familiarity. The older review concern about unbounded denial records is fixed: denied claims return before replay records are written.

  • Author wrote 75% of the modified lines and has 1 merged PRs in these paths (familiarity STRONG).
  • PostHog Review (Standard) reviewed the current head: no findings.
Gate mechanics and policy version
Gate Result
prerequisites ✓ all clear
deny-list ✓ no deny categories matched
size ✓ 446L, 8F substantive, 1039L/13F incl. docs/generated/snapshots — within ceiling
tier ✓ T1-agent / T1d-complex (1039L, 13F, two-areas, feat)
stamphog 2.7.0 .stamphog/policy.yml @ 758c8b9 · reviewed head 758c8b9

@posthog posthog Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

PostHog Review · Standard · reviewed 758c8b9: no findings.

@Silthus

Silthus commented Nov 3, 2026

Copy link
Copy Markdown
Contributor Author

Replaced by #128410, the daily caps layer of the sandbox sender's safety stack. The MX cache change is left out so other teams see no change.

@Silthus Silthus closed this Nov 3, 2026

This branch was successfully deployed

1 active deployment
hogbox-preview — 758c8b9d Deployed Nov 3, 2026 by github-actions[bot]
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

hogbox-preview Spin up a per-PR PostHog preview on a hogland hogbox stamphog Request AI approval (no full review)

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant