The Pypestream Analytics API provides developers with complete control over their product analytics pipeline. It supports the full data lifecycle: from tracking events and analyzing user behavior within Pypestream, to exporting raw data in batches for deep analysis in your own data warehouse, BI tools, and custom applications.
With Pypestream's Analytics API, you can:
- Track and analyze user events and behaviors across your product.
- Seamlessly export raw data in batches to integrate with your data warehouse, BI platforms, and machine learning models.
- Build custom dashboards and visualizations for your analytics data.
- Segment users into cohorts based on properties and behaviors.
- Access detailed session recordings and user journey analysis.
- Create and manage custom actions that define meaningful user interactions.
Functions
The Pypestream Analytics API gives you access to Pypestream's full suite of product analytics capabilities. The API provides these key features:
- Event Tracking and Management: Capture, retrieve, and analyze user events with custom properties and metadata. Access raw event data to understand how users interact with your product across all touchpoints.
- Advanced Analytics and Insights: Generate sophisticated analytics including trend analysis, funnel conversion tracking, user path analysis, retention cohorts, and timing analysis. Build custom insights to answer specific product questions.
- User and Person Management: Track individual users and their properties over time, manage user lifecycles, and analyze user behavior patterns. Split and merge user profiles, update properties, and maintain comprehensive user timelines.
- Dashboard and Visualization: Create, manage, and customize dashboards to visualize your analytics data. Move dashboard tiles, create dashboards from templates, and build comprehensive reporting views for stakeholders.
- User Segmentation: Build and manage cohorts to segment your user base by behavior, properties, or custom criteria. Duplicate cohorts and analyze cohort membership for targeted analysis and personalization.
- Session Recording Analysis: Access detailed session recordings to understand user behavior at a granular level. Retrieve session snapshots and analyze session properties to optimize user experience.
- Custom Actions: Define and manage custom actions that represent meaningful user behaviors in your product. Create, update, and track actions that align with your business objectives.
- Data Export and Integration: Export analytics data in multiple formats (JSON, CSV) for integration with external systems, data warehouses, and business intelligence tools.
The Pypestream Analytics API is designed for developers building product analytics integrations, custom dashboards, automated reporting systems, and data pipeline integrations with Pypestream's powerful analytics engine.
Rate Limit Types and Limits
- Default API Endpoints
Most API endpoints use these default rate limits:- Burst Rate Limit:
- 480 requests per minute
- Intended to block quick bursts of requests
- Sustained Rate Limit:
- 4800 requests per hour
- Intended to block slower but sustained bursts of requests\
- Burst Rate Limit:
- ClickHouse Endpoints
Endpoints that hit ClickHouse (analytics database) have more aggressive limits:- ClickHouse Burst Rate Limit:
- 240 requests per minute
- ClickHouse Sustained Rate Limit:
- 1200 requests per hour
- ClickHouse Burst Rate Limit:
- Endpoints WITH Rate Limiting
- Most general API endpoints (/api/*)
- Event querying endpoints (using ClickHouse limits)
- Session recording endpoints (using ClickHouse limits)
- Person/user endpoints (using ClickHouse limits)
- Insight/analytics endpoints (using ClickHouse limits)\
Rate Limiting Scope
Rate limits are applied based on:
- Dataset ID (preferred method)
- User ID (fallback if no dataset context)
- IP Address (fallback for unauthenticated requests)
Special Considerations
- Personal API Keys: Rate limiting primarily targets requests made with personal API keys
- Dataset-based: Rate limits are isolated per dataset, so one dataset's usage doesn't affect another
- Allow List: Datasets can be added to an allow list to bypass rate limiting
How can I access my Personal API Key?
To access your Personal API Key, navigate to Analytics > click on your profile icon > select "Personal API Keys" > Create a new Personal API Key.
Overview of API Methods
Our Analytics API uses standard HTTP methods to perform operations. Understanding these methods is key to using the API effectively.
GET
GET
Use GET
to retrieve data. This is a read-only operation and will never modify any data on the server. For example, you would use GET
to fetch a list of all available reports or the details of a specific user.
POST
POST
Use POST
to create a new resource. Whenever you want to add a new entry to the database, such as creating a new analytics dashboard or a new event to track, you will use a POST
request.
PUT
PUT
Use PUT
to completely replace an existing resource. When you use PUT
, you must send the entire object with all of its properties, even the ones that are not being changed. If you omit a property, the API will interpret it as an instruction to remove that property.
PATCH
PATCH
Use PATCH
to partially update an existing resource. Unlike PUT
, a PATCH
request is used to make minor changes to a resource. You only need to send the specific fields you want to change, and the rest of the object will remain untouched.
DELETE
DELETE
Use DELETE
to remove a resource. This is a permanent action that will erase the specified data. For example, you would use DELETE
to remove a dashboard you no longer need.