Skip to content
scrapeatlas.Dashboard

Coming soon

Get Medium following

Try in Playground

Get public profiles followed by a Medium account. Results include display names, handles, biographies, profile images and available counts.

GET/v1/medium/profile/followingx-api-key
x-api-keystringrequiredheader

Your ScrapeAtlas customer key. Create one on /account/ and set SCRAPEATLAS_API_KEY.

Query parameters
3
handlestringrequiredquery

Medium handle without the leading @.

Exampleexample-writer
limitstringquery

Records returned per page, from 1 to 100.

Example20
cursorstringquery

Optional.

max 8192 chars

Response fields
35
requestIdstring

Request correlation UUID.

Source request attempts, decoded bytes and duration.

accounting.upstreamRequestsinteger

Number of upstream HTTP request attempts.

≥ 0

accounting.responseBytesinteger

Decoded source response bytes.

≥ 0

accounting.durationMsnumber

Elapsed request time in milliseconds.

≥ 0

successboolean

True when usable data is returned; inspect status and coverage.

statusenum

success or partial for usable data; failed or challenged for failure responses.

one of: success, partial

sourceUrlstring

Canonical public Medium URL for the request.

absolute HTTPS URL

fetchedAtstring

UTC retrieval timestamp.

Coverage of the returned source records.

coverage.sourcestring

Public Medium web data.

coverage.completeboolean

Whether the result has no reported omissions.

coverage.warningsstring[]

Warnings that explain partial results.

coverage.orderenumoptional

Returned source order: source_order or ranked.

one of: source_order, ranked

Public profile records in returned source order.

up to 100 items

profiles.idstring

Medium user ID as a source string.

profiles.usernamestring

Public Medium handle.

profiles.namestringnullable

Display name, or null.

profiles.biostringnullable

Profile biography, or null.

profiles.urlstringnullable

Public profile URL, or null.

profiles.imageIdstringnullable

Source avatar image identifier, or null.

profiles.imageUrlstringnullable

Public avatar image URL, or null.

profiles.backgroundImageIdstringnullable

Source background image identifier, or null.

profiles.createdAtintegernullable

Profile creation time as Unix milliseconds, or null.

0 – 9007199254740991

profiles.mediumMemberAtintegernullable

Medium membership start as Unix milliseconds, or null.

0 – 9007199254740991

profiles.languageCodestringnullable

Source language code, or null.

profiles.twitterScreenNamestringnullable

Public X handle, or null.

profiles.facebookDisplayNamestringnullable

Public Facebook display name, or null.

profiles.followerCountintegernullable

Published follower count, or null.

0 – 9007199254740991

profiles.followingCountintegernullable

Published following count, or null.

0 – 9007199254740991

profiles.postCountintegernullable

Published story count, or null.

0 – 9007199254740991

profiles.isSuspendedbooleannullable

Source suspension flag, or null.

profileIdstring

Resolved Medium profile user ID as a source string.

limitinteger

Records returned per page, from 1 to 100.

1 – 100

nextCursorstringnullable

Opaque continuation token, or null.

HTTP 200 returns the success variant. Check status: partial means usable data with warnings, and failed or challenged requests carry a failure object described in Errors & responses.

Error codes
15
HTTPfailure.codeMeaning
400invalid_requestMissing, duplicated, invalid or unsupported request parameters.
401unauthorizedMissing or invalid worker API key.
404not_foundThe requested writer, publication or story was not found.
422restricted_pageThe source requires additional access.
422unsupported_pageThe source did not provide the expected record.
502upstream_challengedThe source challenged the request.
502upstream_rate_limitedThe source rate limited the request.
502upstream_errorA source request failed.
502response_too_largeSource data exceeded the response byte limit.
502payload_too_complexSource data exceeded the traversal depth or node limit.
502unsafe_redirectThe source returned an unexpected redirect.
502request_limitThe request exhausted its source-attempt budget.
503busyAll worker request slots are in use.
504timeoutThe request exceeded its deadline.
200partialUsable data was returned with coverage warnings.