Apify & Crawlee

AC

Apify & Crawlee

This is the official developer community of Apify and Crawlee.

Join

crawlee-js

apify-platform

crawlee-python

💻hire-freelancers

🚀actor-promotion

💫feature-request

💻creators-and-apify

🗣general-chat

🎁giveaways

programming-memes

🌐apify-announcements

🕷crawlee-announcements

👥community

absent-sapphire
absent-sapphire7/28/2025

I will probably decommission my version

I will probably decommission my version over time and send the existing users to the Apify version. If there is any part of the code base that would be useful, I am open to providing a copy. My bigger concern here is that we spend a lot of time and effort building actors and supporting users only to have Apify develop a competing actor with no heads up. It creates confusion for users having multiple, similar actors in the store. And it doesn't inspire me to want to work on any new ones.

Do you know if array input fields can be

Do you know if array input fields can be used with enums? I want to add an array input field where the values are limited to specific options

Is there a chance they will still be

Is there a chance they will still be paying as support said they just have an unpaid invoice or something? If they end up not paying, will Apify make any more requests for them to pay? If they don't pay at all, will they be banned from Apify or at least is there a way for me to block them from reusing my actor?

@Lukas Krivka Sorry for tagging you, but

@Lukas Krivka Sorry for tagging you, but I’ve been trying for a while to find a way to enforce a minimum timeout from actor.json, the API, or even from the UI. I’ve thoroughly searched the official API documentation, the actor.json file, but I haven’t found any option that would allow me to enforce or validate a minimum execution time. I’m aware that a default value exists, but users can freely override it and, for example, set extremely low values like 1 second which leads to a number of issues...
No description

User is only charged for events, no

User is only charged for events, no platform usage. The platform usage affects your revenue. Dev revenue = events - platform usage. This is then summed for all your runs for whole month and if negative, then you get 0. So one bad run can ruin your revenue buffer for that Actor.

Hey Lukas!

Hey Lukas! Thanks again for that helpful screenshot! I'm trying to implement the tiered pricing exactly like you showed me, but I'm running into an issue. In your image (the white UI), I can see the "Apify Store pricing discount" section with the different tier options (No discount, Bronze discount, Silver discount, Gold discount) for each event. However, in my interface (black UI), I only see the basic event configuration without the discount tier options. I don't have the Bronze/Silver/Gold discount fields that you showed. Is this a feature that needs to be enabled somewhere first?...
No description

What about pay per result?

What about pay per result?

PPE/PPR never charges the user anything

PPE/PPR never charges the user anything other than events/results. I probably confused you with unnecessary optionality. TL;DR if you use APIFY_PROXY_PASSWORD, it uses proxy available to the user (every user has access to unlimited RESIDENTIAL). But all charges to any platform resources (CUs, proxy, storage access) are not charged to users but subtracted from your payouts. So if you generate $1 event which costs $0.1 in proxy, user pays Apify $1 for event, your payout is $1 - 0.1 = $0.9 (at th...

I guess storing acccess logs of users

I guess storing acccess logs of users running actor is not storing users data but actors access data, storing users data would mean storing data user is receiving including some kind of his identification... anyway the biggest actors running currently on apify like apollo.io scraper would be breaking the terms because they are tracking users runs to protect against misuse. Sure it would be much smoother if it coulf be possible to setup limits directly like rapidapi allows...

You could try using curl_cffi in Python

You could try using curl_cffi in Python with the impersonate option enabled it often works because it simulates a real browser. In my case, I use Rust with a library called wreq, which does something similar. These tools usually bypass that issue unless the site relies heavily on JavaScript or more advanced browser behavior.
extended-salmon
extended-salmon7/19/2025

hello I created 2 actors payment on

hello I created 2 actors payment on result with my own ai api key I have 2 problem I see that the api key was used and I don't see the run on apify analytics second problem I wan don't allow free users to run the actor cause I am paying the api call fees if this is not possible I am forced to disable this 2 actors...

Hi everyone! I’m new to Apify and

Hi everyone! I’m new to Apify and planning to create multiple actors focused on fast data delivery for users. I was checking the proxy pricing page and I see shared datacenter IPs from $0.6 per IP and dedicated ones from $7 per IP. I have a few questions: 1. What is the fair usage policy for these datacenter IPs (shared and dedicated)? Is there a bandwidth cap (in GB), or is it unlimited with some throttling applied after a threshold? 2. Do you offer any datacenter proxy plans billed by GB (not residential)? I’m looking for a model where each request uses a different IP to maximize concurrency and deliver results faster....

Hey @Public actor developer s 👋

Hey @Public actor developer s 👋 I am thinking to celebrate 50 developers earning more than USD 1000 on Apify every month by sending everyone a special swag. 🫶 I am thinking to run this campaign on social media and discord. We are also thinking to write a blog which can includes quotes from few developers. 💯 ...
ratty-blush
ratty-blush7/15/2025

Recently some of my actor users facing

Recently some of my actor users facing this issue when trying to export scraped data
Cannot load data from dataset. Reason: The dataset does not have a schema specified.
Cannot load data from dataset. Reason: The dataset does not have a schema specified.
Looks like apify platform issue. Please fix this ASAP...

We are aware that rental is the easiest

We are aware that rental is the easiest billing model to set for devs but it has many issues for users - there is big sudden flat charge, you have to manually rent Actor (hard to automate - we could build API for this but it is another step), users are charged with confusing compute etc. MCP/AI is just a small part of this problem but a growing one. When we designed PPE, we wanted to create a flexible billing model that will cover all use-cases (technically, you can charge monthly there as well). But we are aware it is still cumbersome to set up and we have many ideas how to improve it. As the future of rental goes, we want to speak with devs, get feedback and decide on that. We definitely want to discourage using it for new Actors but we won't remove it in near future or suddenly....

Does anyone know how often the ranking

Does anyone know how often the ranking refreshes of the actor pages?

for PPE, do we need to code special

for PPE, do we need to code special events? for example, if someone wanted to charge per result
complex-teal
complex-teal7/8/2025

Is it possible to save the state of the

Is it possible to save the state of the Actor run when it times out, just like for migration events. I do not want the run to start from the beginning if the user resurrects the run.

not that I know anything about impit,

not that I know anything about impit, but wouldn't be issue impit keeping the same session? So you'd need to move that new Impit initialization inside the loop? And the proxy rotating service having some sticky time?
rare-sapphire
rare-sapphire7/7/2025

Hi, i am actively using this actor:

Hi, i am actively using this actor: apidojo/tiktok-scraper there’s an option for geolocation filter but ive been getting a lot of inaccuracies pertaining to the data I’m pulling , the creators are sometimes are prominently from the countries that i havent even mentioned as filter, need help...