Mostaql Projects Monitor avatar

Mostaql Projects Monitor

Pricing

from $5.00 / 1,000 projects

Go to Apify Store
Mostaql Projects Monitor

Mostaql Projects Monitor

New freelance projects from mostaql.com, the largest Arabic freelance marketplace: title, category, skills, budget, bids, date and description. Filter by category, skill or keyword; schedule with onlyNew. No client personal data.

Pricing

from $5.00 / 1,000 projects

Rating

0.0

(0)

Developer

ABDULWAHAB NASER RASHED ALQARAWI

ABDULWAHAB NASER RASHED ALQARAWI

Maintained by Community

Actor stats

0

Bookmarked

11

Total users

8

Monthly active users

13 days ago

Last modified

Share

Choose categories, skills or keywords, or leave them empty to browse public Mostaql projects. Get one row per project with its budget, date, skills, description and a link back to the project.

Filter by category, skill or keyword and reuse Only new to avoid delivering the same project ID again. No Mostaql API key or login is needed; Apify API calls use your Apify token. No browser or proxy is used.

Start with five projects

Click Start with the prefilled input, or use this small API example:

{"maxProjects": 5, "maxPages": 1, "keywords": [], "onlyNew": false}

This reads one listing page and stops after five delivered projects. It does not filter for a particular skill, so the first example does not depend on WordPress or Python projects being available. If the source refuses access, the run reports the block rather than bypassing it.

Verified Apify run TFvxneMCWmYxpoD2a, build 0.1.3, returned five projects successfully on 7 October 2026 (Kuwait time; 6 October UTC). It read one listing page and five project pages, plus robots.txt, in 6.3 seconds. These three rows show metadata from that run; source listings can change:

Project ID and linkBudget (USD)Published (UTC)
128346450–1002026-10-06T21:43:13Z
1283461100–2502026-10-06T21:41:49Z
128345925–502026-10-06T20:52:22Z

For a repeatable setup, follow the practical guide to monitoring unseen Mostaql project IDs.


What you get

One row per project, 13 fields, every one always present — missing values come back as null, never dropped.

FieldMeaning or example
titleUser-written project title; not reproduced in this guide
categoryProject category displayed by Mostaql
skillsComma-separated skill names
budgetMin / budgetMax / currencyLower and upper stated budget, with currency
bidsCountNumber of bids shown in the listing
publishedAtISO 8601 timestamp in UTC, as in the verified sample above
descriptionfull text, line breaks kept, markup removed
urlLink back to the project, as in the verified sample above

Plus projectId, scrapedAt, and changeType (NEW with Only new, else null).

Times are real UTC. The listing shows local-looking timestamps; the site's own RSS feed gives the same project with +0000, so they are returned as ISO 8601 UTC.


Project text and privacy

This Actor skips structured client and bidder profile elements: names, usernames, avatars and profile links. Tests check those elements are excluded. Titles and descriptions are user-written text returned without redaction; they can contain names, contact details or other personal information. This is not a contact-finding service. Review the data before sharing it and use the project URL to respond through Mostaql.

Public visibility and robots.txt access do not grant ownership or permission to republish project descriptions. Follow the Mostaql terms and applicable rights. The Actor is independent and not endorsed by Mostaql.


Filters

  • Categories — programming, AI, design, marketing, writing & translation, business, engineering, support, training.
  • Skills — a skill slug (web-security) or a link such as https://mostaql.com/projects/skill/web-security.
  • Keywords — matched against title, description, skills and category. Case, Arabic diacritics and alef forms are ignored, so مسوق finds مسوّق and الكتروني finds إلكتروني. A project matches if it contains any keyword.
  • Minimum budget (minBudget, USD) — a project matches when the top of its budget range (budgetMax) is at least this, so $100–$250 matches 250. A project with no stated budget never matches a minimum.
  • Published since (publishedSince) — 2026-09-01 (00:00 UTC) or a date-time with a zone, such as 2026-09-01T08:00:00Z or 2026-09-01T11:00:00+03:00. It is compared with publishedAt, which is UTC. A malformed value stops the run before any request; a project with no publish time never matches.

All filters are checked on the project page before a row is delivered, so a project that does not match is never charged. With onlyNew, the minimum budget and the since-date become part of the remembered state's key only when set: an existing monitor that does not use them keeps its memory.

With both skills and categories, the skill listings are read and each project's own category is checked.


Only new projects

Turn on onlyNew and schedule the Actor (every hour, say). Each run delivers only projects that no earlier run delivered, marked changeType: NEW. Known projects are recognised from the listing alone, so their pages are not read again.

Measured 15 Sep 2026, on all categories with maxPages: 2:

RunRequestsTimeProjects delivered
First5359.9 s50 (all NEW)
Second, one minute later32.4 s0

A run skips projects it already delivered and keeps reading older listing pages, up to maxPages, until it has maxProjects new ones. So when your cap is smaller than what the pages hold, later runs also deliver older projects you have not received yet. Measured on Apify 15 Sep 2026 with maxProjects: 30: the second run skipped the 30 known projects and delivered the next 30 older ones. To receive only fresh projects, keep maxPages low.

How it remembers:

  • Project ids are kept in a named key-value store in your account (stateStoreName, default mostaql-projects-state), under a key built from your filters. Two monitors with different filters never hide each other's projects.
  • A project that was read but did not match your keywords is remembered too, so it is not read again on every run.
  • A project that was not delivered — its page failed, or the run stopped at your spending limit — is not remembered and is tried again next run.
  • If a run stops at maxProjects, projects further down the listing are still unseen and are delivered by the next run. They are older, not new; set maxProjects to at least maxPages × 25 if you want each run to cover its whole window.

Speed and politeness

One request at a time, at least one second apart. A run reads one listing page per 25 projects plus one page per project it has not seen.

Measured 15 Sep 2026: 50 projects in 59.9 seconds (53 requests).

  • robots.txt is read at the start of every run and obeyed for every URL. On 15 Sep 2026 it disallowed only /search and /ajax/; the Actor never requests either, even through a redirect.
  • Every request, redirects included, must stay on https://mostaql.com.
  • maxPages (default 5, at most 40) bounds every run.
  • If the site answers "too many requests", the Actor waits (up to 30 s) and tries once more. If it refuses again, answers 403, or shows a challenge page, the run stops and says so. There is no attempt to get around a block.

Honest notes

Bids count comes from the listing. The project page lists the bids but not their number; the listing states it (7 عروض, عرض واحد, أضف أول عرض = 0).

Budgets are in US dollars. Every budget seen on 15 Sep 2026 was written in $. currency is null if a budget ever appears without a currency sign.

A project page that cannot be read is skipped, counted under unreadable in the run report, and — with onlyNew — tried again next run.

Every run publishes a report to the key-value store under RUN_REPORT: requests, listing pages read, projects read, already seen, filtered out, unreadable, and whether the run stopped at a block, the spending limit or maxProjects.

incomplete: true means a source block, robots restriction or unreadable page prevented full coverage. Partial rows are kept with that warning. A run with no delivered rows and one of these source errors fails visibly; a completed run with no matching or unseen projects still succeeds normally.

Repeat the same monitor

Save an Apify Task with your filters and a stable stateStoreName, then reuse it with onlyNew: true. Run it again manually before scheduling: zero rows is expected when the covered listings contain no unseen project IDs. Do not run two copies against the same state store at once; state updates are not locked. This monitors unseen project IDs, not later edits to an existing project.

{"categories": ["development"], "maxProjects": 25, "maxPages": 1,
"onlyNew": true, "stateStoreName": "mostaql-development-monitor"}

Changes — 7 October 2026

  • First-run prefill returns up to five unfiltered projects from one page.
  • Source errors no longer look like successful empty runs; partial coverage is explicit in RUN_REPORT.
  • Redirect destinations are checked against the robots.txt rules loaded for the run.
  • Clarified that user-written text is not guaranteed free of personal data.

Questions, or a project that looks wrong?

Open an issue with the project link.