Freelancermap Scraper avatar

Freelancermap Scraper

Pricing

from $3.00 / 1,000 results

Go to Apify Store
Freelancermap Scraper

Freelancermap Scraper

Scrape freelancermap.com - Europe's IT freelance marketplace. Search freelance IT projects and freelancer profiles by category, workplace type, and contract type; fetch full project or freelancer profile details by URL.

Pricing

from $3.00 / 1,000 results

Rating

0.0

(0)

Developer

Crawler Bros

Crawler Bros

Maintained by Community

Actor stats

0

Bookmarked

3

Total users

2

Monthly active users

2 days ago

Last modified

Share

Scrape freelancermap.com — one of Europe's largest IT freelance marketplaces. Search or browse freelance IT projects and freelancer profiles by category, workplace type (remote/hybrid/on-site), and contract type, then pull full project or freelancer profile detail by URL. HTTP-only. No auth, no cookies, no proxy required.

What this actor does

  • Four modes: projectSearch, freelancerSearch, projectDetail, freelancerProfile
  • Project search: category or skill/technology tag, workplace type (remote/hybrid/on-site), contract type, sort order, keyword search, city + radius, country, posted-within-days, industry, direct-end-client-only, and an option to include the larger Germany/Austria/Switzerland (DACH) results pool
  • Freelancer search: category or skill/technology tag, keyword search, sort order, city + radius, country, max hourly rate, max daily rate, spoken language, profile-updated-within-days, and an option to include the larger DACH results pool
  • Project detail: company, client company link (when disclosed), location, contract terms, industry, required skills, budget (when disclosed), start date, duration, full description, whether the listing is still open for applications, whether it's been archived, and how many times the poster has edited it
  • Freelancer profile detail: name, headline, bio, location, quoted rate, years of experience, skills, languages, certificates, project history, availability, whether the profile is still active, and the date they become available again (when marked temporarily unavailable)
  • Empty fields are omitted — a record only ever contains fields the source actually published

Output: per-project listing (mode = projectSearch)

  • slug — freelancermap project slug
  • title, company
  • city, country
  • remoteTypeOn-site / Hybrid / Remote
  • contractTypeFreelance / Permanent / Agency contract
  • duration — freeform duration text as published (e.g. 3 months+)
  • startAvailability — freeform start-date text as shown on the listing card (e.g. ASAP, Immediate, or a specific date), independent of duration
  • postedLabel — freeform "posted" label as shown on the listing
  • isEndClient — whether the listing card is tagged "End client" (posted directly by the hiring company, no agency in between)
  • sourceUrl — canonical project URL
  • recordType: "projectListing", scrapedAt

Output: per-freelancer listing (mode = freelancerSearch)

  • slug — freelancermap profile slug
  • name — only present if the freelancer has opted to display it publicly on the directory card
  • headline — the freelancer's profile title
  • city, country
  • sourceUrl — canonical profile URL
  • recordType: "freelancerListing", scrapedAt

Output: per-project detail (mode = projectDetail)

  • projectId, slug, title, company
  • companyUrl — link to the client's freelancermap company page, only when the poster made it public
  • city, country
  • contractType, remotePercent, remoteType
  • industry
  • skills[] — required skills/technologies
  • budget — only when the poster disclosed one
  • startText, startYear, startMonth
  • durationText, durationMonths, extensionPossible
  • workloadPercent — only when disclosed
  • isEndcustomerProject, isTopProject
  • isActive — whether the listing is still open/accepting applications (a project detail page can remain reachable by direct URL after it has closed)
  • applicationsPaused — whether the poster has temporarily paused new applications
  • isArchived — whether the poster has archived the listing (removed it from freelancermap's own search results), independent of isActive/applicationsPaused
  • updateCount — how many times the poster has edited this listing since publishing
  • description — full plain-text project description
  • created, updated — ISO timestamps
  • expires — the project's application deadline (when it stops accepting new applications)
  • posterName — the contact name attached to the listing (a recruiter/agency name or an individual's name)
  • posterId — the posting account's stable numeric ID, useful for grouping multiple listings from the same recruiter/agency
  • posterMemberSince — the date the posting account joined freelancermap
  • additionalLocations[] — named secondary locations, only present on the (uncommon) multi-site projects that list more than one location
  • sourceUrl
  • recordType: "project", scrapedAt

Output: per-freelancer profile detail (mode = freelancerProfile)

  • slug, name, headline
  • about — the freelancer's short bio/intro text, when provided
  • city, country, postalCode
  • rate, rateCurrency — the freelancer's quoted rate as published on their profile (the unit — hourly or daily — is set by the freelancer and isn't separately exposed by the source)
  • experienceYears, freelancerSinceYear, graduation
  • skillsSummary — the freelancer's free-text skills/expertise write-up
  • skills[] — tagged skill keywords, skillsCount
  • languages[]{language, level} (level 1-4)
  • availabilityAvailable / Partially available / Not available
  • unavailableUntil — the date the freelancer becomes available again, only present when they've marked themselves temporarily unavailable
  • profileCompletionPercent, isVerified, isActive — whether the profile itself is currently active on freelancermap
  • isAnonymousProfile — whether the freelancer has opted to hide identifying details from anonymous visitors
  • membershipTier
  • travelAvailability — e.g. Worldwide, Remote only
  • certificates[]{name, issuer, year, url}
  • projectHistory[]{position, company, startDate, endDate, description}
  • avatarUrl — the freelancer's profile photo, when uploaded
  • websiteUrl, youtubeUrl — personal/portfolio site or YouTube channel, when the freelancer listed one
  • portfolioItems[]{title, description, link, imageUrl}, when the freelancer showcased work samples
  • attachmentNames[] — file names of uploaded CV/portfolio attachments, when the freelancer has any (the download links themselves require a freelancermap account, so only the file names are exposed)
  • subCategories[] — broad category tags (e.g. Programming, Consulting), when the profile has any assigned
  • memberSince — the date the freelancer's profile was created on freelancermap
  • profileUpdatedAt — timestamp of the freelancer's most recent profile edit (distinct from memberSince/creation and lastLoginAt/account login)
  • lastLoginAt — timestamp of the freelancer's most recent login (a recent-activity signal)
  • sourceUrl
  • recordType: "freelancer", scrapedAt

Input

FieldTypeDefaultDescription
modestringprojectSearchprojectSearch / freelancerSearch / projectDetail / freelancerProfile
searchQuerystringpythonFree-text keyword search (mode=projectSearch/freelancerSearch)
categoryselectOne of freelancermap's 9 top-level categories (mode=projectSearch/freelancerSearch)
remoteTypeselectonsite / hybrid / remote (mode=projectSearch)
contractTypeselectcontracting (freelance) / permanent_position / employee_leasing (mode=projectSearch)
sortByselectnewestnewest / relevant (mode=projectSearch/freelancerSearch)
minDurationMonthsintDrop projects shorter than this (mode=projectSearch)
technologySlugstringFilter by a skill/technology tag slug, e.g. python-programming-language (mode=projectSearch/freelancerSearch). Takes precedence over category
citystringFilter by city name (mode=projectSearch/freelancerSearch)
radiusKmintSearch radius in km around city (mode=projectSearch/freelancerSearch)
countryselectRestrict to freelancers/projects based in this country — 90 curated countries, a more precise and reliable alternative to city (mode=projectSearch/freelancerSearch)
postedWithinDaysintOnly projects created within this many days (mode=projectSearch)
industryselectRestrict to a client industry, e.g. IT, Finance, Automotive (mode=projectSearch)
endClientOnlybooleanfalseOnly projects posted directly by the end client, excluding agency reposts (mode=projectSearch)
includeDachRegionbooleanfalseAlso include the larger Germany/Austria/Switzerland (DACH) results pool, which freelancermap excludes by default (mode=projectSearch/freelancerSearch)
maxHourlyRateintOnly freelancers quoting at/below this hourly rate (mode=freelancerSearch)
maxDailyRateintOnly freelancers quoting at/below this daily rate (mode=freelancerSearch)
languageselectOnly freelancers who list this spoken language (mode=freelancerSearch)
updatedWithinDaysintOnly freelancer profiles updated within this many days (mode=freelancerSearch)
requireDisplayedNamebooleanfalseOnly emit freelancers whose name is publicly shown (mode=freelancerSearch)
hasAttachmentsOnlybooleanfalseOnly freelancers who uploaded a portfolio/attachment (mode=freelancerSearch)
openToPermanentJobsbooleanfalseOnly freelancers open to permanent-position offers (mode=freelancerSearch)
openToAgencyContractbooleanfalseOnly freelancers open to agency/employee-leasing contracts (mode=freelancerSearch)
excludeUnavailablebooleanfalseDrop freelancers marked fully unavailable (mode=freelancerSearch)
recentlyActiveOnlybooleanfalseOnly freelancers with the most recently updated/active profiles (mode=freelancerSearch)
minAvailabilityPercentintOnly freelancers whose self-reported availability is at least this % (100 = fully available) (mode=freelancerSearch)
projectSlugsOrUrlsarrayProject URLs or slugs to fetch (mode=projectDetail)
profileSlugsOrUrlsarrayFreelancer profile URLs or slugs to fetch (mode=freelancerProfile)
minExperienceYearsintDrop freelancer profiles with less experience (mode=freelancerProfile)
availableOnlybooleanfalseOnly fully-available freelancers (mode=freelancerProfile)
maxItemsint20Hard cap on emitted records (1-500)

Example: browse remote Python projects

{
"mode": "projectSearch",
"searchQuery": "python",
"category": "web-and-software-development",
"remoteType": "remote",
"sortBy": "newest",
"maxItems": 20
}

Example: browse freelance SAP consultants

{
"mode": "freelancerSearch",
"searchQuery": "SAP",
"maxItems": 20
}

Example: fetch full detail for specific projects

{
"mode": "projectDetail",
"projectSlugsOrUrls": [
"https://www.freelancermap.com/project/release-manager-3027983",
"sc-cleared-android-developer-kotlin-remote"
]
}

Example: fetch full detail for specific freelancer profiles

{
"mode": "freelancerProfile",
"profileSlugsOrUrls": ["https://www.freelancermap.com/profile/ryan-devlin"],
"availableOnly": true
}

Use cases

  • IT staffing agencies — monitor newly posted freelance IT contracts by skill/category
  • Freelancer sourcing — build a shortlist of available freelancers with specific skills and experience levels
  • Market research — track quoted freelancer rates and in-demand skills across IT specialisms
  • Recruitment intelligence — compare contract vs. permanent vs. agency-contract demand by category
  • Sales/lead generation — identify companies actively hiring freelance IT talent

Example: browse AWS projects within 50km of London, posted in the last 7 days

{
"mode": "projectSearch",
"technologySlug": "amazon-web-services",
"city": "London",
"radiusKm": 50,
"postedWithinDays": 7,
"maxItems": 20
}

Example: browse available freelancers under €80/hr near Berlin

{
"mode": "freelancerSearch",
"technologySlug": "python-programming-language",
"city": "Berlin",
"radiusKm": 50,
"maxHourlyRate": 80,
"maxItems": 20
}

FAQ

What is the data source? freelancermap.com, a German/European IT freelance marketplace connecting freelancers with freelance and permanent IT projects. This actor is an independent, third-party scraper and is not affiliated with or endorsed by freelancermap.

How many results can I get per search? freelancermap.com shows anonymous (non-logged-in) visitors only the first results page per unique search/filter combination — roughly 18-22 records. To reach a different pool of results, change searchQuery, category, remoteType, or contractType rather than relying on deeper pagination.

Why don't some freelancer listings show a name? Freelancers can choose whether their name appears on the public directory card. When hidden, only their profile headline is shown. Enable requireDisplayedName to skip these.

Why is budget missing on most projects? Most freelance IT project posters on freelancermap don't disclose a budget publicly; the field is included only when the poster provided one.

Is the rate hourly or daily? freelancermap freelancers set a single quoted rate on their profile; the platform doesn't separately expose whether it represents an hourly or daily figure in the public profile data, so this actor reports it as-is (rate + rateCurrency).

Can I filter by skill or technology directly? Yes — set technologySlug to freelancermap's own tag slug (e.g. python-programming-language, sap-hana, amazon-web-services, java-programming-language). This is a more precise alternative to category and takes precedence over it when both are set.

How does the city filter work? For freelancerSearch, city is sent as a query-string parameter directly to freelancermap.com's /freelancer endpoint (works reliably for any city, including German/Austrian/Swiss ones — tested against Berlin, London, Bangkok). For projectSearch, freelancermap's /projects endpoint does not honor city as a query-string parameter at all (it silently returns "No results" regardless of value) — instead this actor routes city through the URL path (/projects/<city-slug>, e.g. /projects/berlin, /projects/münchen). That URL path itself is also confirmed unreliable upstream (its own result-count header includes projects located in entirely different cities/countries — e.g. /projects/berlin returned Shropshire/Brüssel/Stettin listings with zero Berlin-located results), so this actor additionally re-checks the requested city against each project's own displayed city label client-side and drops any mismatch — a broken upstream filter never silently emits mismatched records. Because the URL path slot is shared with category/technologySlug and can't be nested with them upstream, city takes priority over category/technologySlug for projectSearch whenever both are set.

What's the difference between city and country? country is a genuine, reliable server-side filter on both /projects and /freelancer (confirmed live: country set to United Kingdom returns exactly the count freelancermap's own page reports for that bucket, on both endpoints). city is less reliable — see the question above — so prefer country when a broader location filter is enough, and use city/radiusKm only when you need a specific metro area.

Is there a workload (full-time/part-time) or project-start-date filter? No — freelancermap doesn't expose either as a public search filter for anonymous visitors. workloadPercent is still included on project detail records when the poster disclosed it, and minDurationMonths remains available as a client-side duration filter on project search.

How fresh is the data? Every run fetches live pages directly from freelancermap.com — there is no caching layer.

Do I need a freelancermap account, cookies, or a proxy? No. Every mode works against freelancermap's public pages with no login, no cookies, and no proxy configuration.