Skip to content
scrapeatlas.Dashboard

Travel & communities

Couchsurfing API

Read public Couchsurfing member profiles, community events and the upcoming events of a city with source fields preserved.

3 endpointsx-api-key

Retrieve public Couchsurfing profiles, events and location information, with identifiers, images and structured records.

API availability: Available

Base URL · local workerhttp://localhost:3018Public API: https://api.scrapeatlas.com.
Authenticationx-api-keyCustomer key from your account. See Authentication.

Endpoints

GET/v1/couchsurfing/profile

Get a Couchsurfing profile

Retrieve one public member profile by handle: identity, about text, home and travel locations, languages, interests, photos, legacy profile answers, friend count and published prompt answers.

Reference
GET/v1/couchsurfing/event

Get a Couchsurfing event

Retrieve one public community event (hangout) by URL: title, description, schedule, activity, venue with coordinates and map link, cover image, recurrence, organizer summaries, participation counters and the public interested/attending previews.

Reference
GET/v1/couchsurfing/events

List Couchsurfing events by location

List the upcoming public events embedded in a Couchsurfing location page, together with the location's published summary, statistics and FAQ, and the source total.

Reference

Quick start

Create an API key on your account page, then call the public API. Values below are placeholders.

Terminal
curl "https://api.scrapeatlas.com/v1/couchsurfing/profile?handle=Couchsurfing" \
  -H "x-api-key: YOUR_API_KEY"

Coverage & limits

  • Independent stateless worker, port 3018, COUCHSURFING_API_KEY in x-api-key. No database, login, browser, cookies, proxy or result storage.
  • Four concurrent requests, 20-second deadline, two upstream attempts including one transient retry. Challenges and 429 responses are not retried. Redirects are rejected.
  • Fixed www.couchsurfing.com HTTPS origin under /c/. At most 8 MiB decoded HTML, 200,000 parsed nodes, depth 32 and 100 records per array. No scripts, media or outbound links are fetched.
  • Public page state: layout changes are reported as explicit unsupported_page failures rather than guessed. No credentials, session cookies or private endpoints are used.
  • Private profiles fail with restricted; deleted records fail with not_found.
  • Location events: the embedded page of events with the source total; interested and attending lists are the page previews, marked attendee_preview_only. Counters are source values.
  • Viewer-relative fields (friend and block status, mutual counts, current-user flags), locale settings, raw participant join records and geospatial index cells are excluded.
Error codes
12
HTTPfailure.codeMeaning
200partialUsable page data with explicit coverage warnings.
400invalid_requestMissing, duplicate, unsupported or malformed parameters.
401unauthorizedMissing or invalid service key.
403restrictedPrivate member profile.
404not_foundMissing or deleted profile, event or location.
429upstream_rate_limitedSource throttled retrieval.
502upstream_challengedThe source challenged the request.
502unsupported_pageMissing, malformed or mismatched structured page state.
502response_too_large payload_too_complexByte, node or depth limit exceeded.
502unsafe_redirect request_limit upstream_errorBounded retrieval failed.
503busyAll slots are occupied.
504timeoutDeadline expired.