What are Apify Actors?
Apify Actors are serverless cloud programs that can perform anything from a simple action, like filling out a web form, to a complex operation, like crawling an entire website. They are programs packaged as Docker images, which accept a well-defined JSON input, perform an action, and optionally produce a well-defined JSON output.Key Features
- Serverless Execution: No infrastructure management required, just deploy and run
- Stateful Operations: Actors can maintain state across executions, enabling runs from seconds to hours, or even indefinitely
- Flexible I/O: Accept JSON input and produce JSON output with well-defined schemas
- Built-in Storage: Access to datasets, key-value stores, and request queues
- Composable: Actors can call and interact with each other to build complex systems
Actor Structure
Each Apify Actor consists of:- Dockerfile: Manages code location, build process, and execution instructions
- Source Code: Your application logic (Python, Node.js, or other languages)
- Input/Output Schemas: Define required inputs and produced results
- README Documentation: Explains functionality for users
- Metadata: Actor name, description, author, and version
Getting Started
Add Agnost analytics to your Apify Actor in four simple steps:1. Get Your Organization ID
Get your organization ID from app.agnost.ai2. Install Agnost
- Python
- Node.js
3. Add One Line of Code
- Python
- Node.js
4. View Metrics
Visit app.agnost.ai to view your analytics:- Monitor Actor runs in real-time
- Track performance and latency
- Analyze success and failure rates
- Identify optimization opportunities
Configuration
Customize tracking behavior with configuration options:- Python
- Node.js
Configuration Options
| Option | Type | Default | Description |
|---|---|---|---|
endpoint | string | "https://api.agnost.ai" | API endpoint URL |
disable_input / disableInput | boolean | false | Disable tracking of input parameters |
disable_output / disableOutput | boolean | false | Disable tracking of output responses |
log_level | string | "INFO" | Python only. Log verbosity: DEBUG, INFO, WARNING, ERROR |
identify | function | None / undefined | Function (request, env) → UserIdentity to identify users from request context. See user identification. |
UserIdentity is a dict (Python) or object (Node) that must contain a userId key. Other fields (e.g. email, role) are optional and forwarded as user traits. Prefer stable pseudonymous IDs and non-sensitive traits for production traffic unless your team has approved sending direct identifiers.
User Identification
Track analytics per user to understand usage patterns across different customers or organizations running your Actor.- Python
- Node.js
Common Use Cases
- Multi-tenant Actors: Track which customer or organization is using the Actor
- Subscription Tiers: Segment analytics by free, pro, or enterprise users
- Cost Attribution: Understand usage and costs per customer
- Customer Success: Monitor individual customer health and engagement
Complete Example
- Python
- Node.js
Why Add Analytics to Your Actor?
Performance Optimization
- Identify slow operations and bottlenecks
- Track execution time trends over versions
- Optimize resource usage and costs
Usage Insights
- Monitor how customers use your Actor
- Understand which features are most popular
- Identify usage patterns and trends
Error Tracking
- Track failure rates and error patterns
- Debug issues faster with detailed context
- Monitor service reliability
Business Intelligence
- Segment users by subscription tier
- Track adoption and retention
- Make data-driven decisions for features and pricing
Verify
Run one Actor invocation, then open app.agnost.ai. Check Raw logs first, then Tools for MCP tool calls emitted by the Actor.Troubleshooting
- Confirm
track(...)ortrackMCP(...)runs before Actor tool calls. - Confirm the org ID is correct.
- Confirm Actor input fields used in
identifyare present. - If Actor input/output can contain sensitive customer data, redact or disable input/output capture before production rollout. See Data Governance.
Resources
- Configuration Guide: Advanced configuration options
- Apify Actors Documentation: Learn about Apify Actors
- Apify Actors Development: Development guide
Need Help?
- Email: [email protected]
- Book a call
