Existing saved tasks, schedules and API integrations keep working without changes: an input that does not set the new options gets the legacy output and no phone numbers.
- Private sellers only (
onlyPrivate): keeps only listings from private individuals. Subito's own "Privato" filter also includes some professionals; the Actor leaves them out too. A seller filter already in the start URL wins. Does not apply to single listing URLs.
- Phone numbers (
extractPhoneNumber, paid): adds the phone number of private sellers who published one, charged only when a number is found. advertiser_phone holds the number published on Subito or, when there is none, the first number written in the description, as digits only; one number and one charge per listing. Businesses are never looked up. Off unless you switch it on, and only with the flat format: legacy has no phone column, so with legacy the option is ignored, with a warning, and nothing is charged.
- Result format (
resultFormat): the new flat format is one level, with one column per data point (price, brand, model, version, vehicle type, condition, year, km, fuel, power, emission class, …), ready for spreadsheets. flat adds phone_extraction_status, which explains why a number is present or missing. legacy, the original nested format, stays the format for inputs that do not set this option.
Changes to legacy values
Its fields and structure are unchanged. These values change:
- Image URLs now load: they pointed at an address Subito's image server rejects.
publication_date.local now shows the publication time; it showed the time of the scrape.
- A listing whose data was missing a feature value (emission class, power or seats) or the whole feature list made the page of 30 listings fail. It is now saved, with
null for that value.
- Each listing is saved once per run. Subito moves listings between pages while a run reads them, and overlapping searches return the same listing: these duplicates were saved, and charged, more than once.
- With
maxResultItems, a search's pages are read in order, so the limit keeps the first listings of the search and nothing past the limit is fetched.
- A search start URL already on page N is now paginated from there; it used to read only that page.
- Single listing URLs work again: they returned nothing since Subito changed its listing pages. They now produce the same fields as search results, in the chosen format. Their
legacy output no longer includes advertiser_shop_data, and advertiser_type follows the same rule as search results.
- A failed page is reported in the log instead of adding a
#debug row to the results, so the dataset contains listings only and you are no longer charged for those rows.
- Any Subito.it URL is accepted as a start URL (single listings ending in
.htm, everything else as a search); URLs from other sites are skipped with a clear message.
- Start URLs given as
{ "url": "…" } objects are read, and Subito.it URLs written inside a longer text (for example a whole input pasted as one start URL) are used, with a warning.
- A run with no usable start URL finishes with no listings and a status message saying why. An empty
startUrls list is rejected before the run starts.
- The Output tab in Apify Console shows the columns in the documented order, with a separate view for the
legacy format. Through the API, add view=results for the same order.
- The run's status message tells you when private sellers published phone numbers that were not extracted because the option was off.