Link Scraper

Extract all links found on a web page by simply providing a URL to this API. Super fast and easy to use!


ApiStacks uses API keys to authenticate requests. You can view and manage your API keys in the Dashboard.

Your API keys carry many privileges. To keep them from being abused, please do not share the keys on client-side code or Github etc. Keep them very secure.

All requests made to the API must contain the parameter api_key in each of your requests. API requests without authentication will fail.

All API requests must also be made over secure HTTPS. Requests made over plain HTTP may fail.


GET /scrapelinks

api_key (required)

In your Request URL, provide the API Key found within your Dashboard

url (required)

The full URL (including its respective HTTP Protocol) of the website you want to request a screenshot from, e.g.

Premium Parameters

These parameters require a paid subscription to modify

response_type (optional)

Set to “JSON”, “XML”, or “YAML” depending what type of response you want from the API.

maxlinks (optional)

Specify the maximum number of links you want to be returned in the results

includequerystrings (optional)

Specify if you want to include query strings in the links that are scraped

Want to test this API and get live results?

Sample Request

curl --request GET \
--url '{APIKEY}&url={url}' \

Sample Response

    "status": "ok",
    "timestamp": 1651634623582,
    "data": [        
            "text": "Entertainment",
            "href": "/en-us/entertainment"
            "text": "",
            "href": "/en-us/entertainment/news/the-essential-mary-j-blige-playlist/ss-AALoNbC?li=BBnb2gh"
            "text": "The essential Mary J. Blige playlist",
            "href": "/en-us/entertainment/news/the-essential-mary-j-blige-playlist/ss-AALoNbC?li=BBnb2gh"
            "text": "Former 'Blossom' heartthrob Joey Lawrence marries 'Insecure' actress, plus more celeb weddings of 2022",
            "href": "/en-us/entertainment/entertainment-celebrity/former-blossom-heartthrob-joey-lawrence-marries-insecure-actress-plus-more-celeb-weddings-of-2022/ss-AAT3zdp?li=BBnb2gh"
            "text": "Ed Sheeran Collaborates with Ukrainian Band Antytila for Remix to His Song '2Step'",
            "href": "/en-us/music/news/ed-sheeran-collaborates-with-ukrainian-band-antytila-for-remix-to-his-song-2step/ar-AAWTORu?li=BBnb2gh"
            "text": "Fall in Love With Jenny Han's \"The Summer I Turned Pretty\" This June",
            "href": "/en-us/tv/news/fall-in-love-with-jenny-han-s-the-summer-i-turned-pretty-this-june/ss-AAVGQW4?li=BBnb2gh"
            "text": "The End! Mandy, Milo and 'This Is Us' Cast Share Photos From Last Day on Set",
            "href": "/en-us/entertainment/news/the-end-mandy-milo-and-this-is-us-cast-share-photos-from-last-day-on-set/ss-AAWTHs9?li=BBnb2gh"

Rate Limiting

Each subscription has its own rate limit. Your limit is based on your subscription plan (free or paid). If you exceed your limits, don’t worry. You can always upgrade or downgrade at any time.

When you reach a rate limit (both daily and monthly), the service will stop responding and return an HTTP 429 response status code. The error will contain the following JSON string body text.

    "status": "fail",
    "data": "",
    "reason": "Usage limit reached. Please review/upgrade your account"

A reminder email will be sent to you when your API usage reaches 80% and 90% so that you can take immediate actions such as upgrading your plan in order to prevent your application using the API from being interrupted.

Error Codes

ApiStacks uses standard HTTP response codes to indicate the success or failure of an API request.

If the response code is not 200 Ok, it means the operation has failed. You can check the response for a field called ‘reason‘ that briefly explains what the error may be.

Status CodeReason
400The request was not complete or malformed. Parameters may be missing
401API key was not provided or was not valid
403Usage limit was likely reached or the app was not enabled in the dashboard
404API Endpoint does not exist
405Method is not allowed (Only use GET)
500An error occurred on our end