Show more

Use to navigate results, ENTER to select one, ESC to close

Type in any word to easily find the endpoint, property or group of operations you are looking for.

API Explorer API changelog
Download source
  • JSON OpenAPI specification
  • YAML OpenAPI specification
RealScout API logo

Topics

  • Introduction
  • Authentication
  • Keeping your token safe
  • Using RealScout with AI tools
  • Limits, paging and errors
  • Building a contact sync

Endpoints

  • Account
    • Get me GET
  • Contacts
    • Add contact tags POST
    • Archive contacts POST
    • List contacts GET
    • Create contact POST
    • Disable auto nurture POST
    • Enable auto nurture POST
    • Get contact GET
    • Update contact PATCH
    • List tags GET
    • Remove contact tags POST
    • Unarchive contacts POST
  • Activity
    • List contact activity GET
  • Conversations
    • List conversation messages GET
    • List conversations GET
  • Listing Alerts
    • Get listing alert GET
    • List listing alert templates GET
    • List listing alerts GET
  • Listing Links
    • List listing links GET
  • Search Links
    • List search links GET
  • Market Alerts
    • Get market alert GET
    • List market alerts GET
  • Home Value Alerts
    • Get home value alert GET
    • List home value alerts GET
Powered by Bump.sh
API Explorer API changelog
Download source
  • JSON OpenAPI specification
  • YAML OpenAPI specification
RealScout API logo

List listing links Run in API Explorer

Ask AI
  • Add to Cursor
  • Add to VSCode
  • Add to other AI tools (MCP)

  • Open in ChatGPT
  • Open in Claude

  • View as Markdown
  • Copy as Markdown

Add MCP server to your AI tool

Allow AI tools and LLMs to interact with the API documentation portal through MCP.

MCP server URL

https://bump.sh/realscout/doc/realscout-api/mcp

Standard setup for AI tools providing an mcp.json file

mcp.json
{
  "RealScout API MCP server": {
    "url": "https://bump.sh/realscout/doc/realscout-api/mcp"
  }
}

Close
GET /listing-links
Bearer auth

The calling agent's shared listing links, newest first, each with its address, the contact it was shared with (none for a public link) and how many listings it holds.

Requires the listing_links:read scope. Rate budget: 60 calls per 1 minute per credential (the list class).

Query parameters

  • contact_id string

    Only links shared with this contact; an id that is none of the agent's contacts is an empty page.

  • cursor string

    Opaque cursor from the previous page's next_cursor; a cursor another list issued is refused.

  • limit integer

    Page size, 1 to 100.

    Minimum value is 1, maximum value is 100. Default value is 25.

Responses

  • 200 application/json

    OK

    Hide headers attributes Show headers attributes
    • X-RateLimit-Limit integer

      Calls allowed in the current window.

    • X-RateLimit-Remaining integer

      Calls left in the current window.

    • X-RateLimit-Reset integer

      Epoch seconds at which the window resets.

    Hide response attributes Show response attributes object
    • data array[object] Required
      Hide data attributes Show data attributes object
      • id string Required
      • name string | null Required
      • url string(uri) | null Required
      • public boolean | null Required
      • contact object | null Required
        Hide contact attributes Show contact attributes object | null
        • id string Required
        • realscout_url string(uri) Required
      • listing_count integer | null Required
      • created_at string(date-time) | null Required
    • has_more boolean Required
    • next_cursor string | null Required

      Send as cursor for the next page; null on the last one.

  • 400 application/json

    The request is invalid; field names the offending input when there is one. A body that is not valid JSON is refused before the API runs, as a bare 400 with no body.

    Hide response attribute Show response attribute object
    • error object Required
      Hide error attributes Show error attributes object
      • code string Required

        Values are internal_error, invalid_request, missing_scope, not_found, rate_limited, or unauthorized.

      • message string Required
      • field string

        The offending input, when one input is to blame.

      • request_id string Required

        Quote this when reporting a problem; it identifies the call in our logs.

  • 401 application/json

    Invalid or missing bearer token.

    Hide response attribute Show response attribute object
    • error object Required
      Hide error attributes Show error attributes object
      • code string Required

        Values are internal_error, invalid_request, missing_scope, not_found, rate_limited, or unauthorized.

      • message string Required
      • field string

        The offending input, when one input is to blame.

      • request_id string Required

        Quote this when reporting a problem; it identifies the call in our logs.

  • 403 application/json

    The credential was not granted the scope this call requires.

    Hide response attribute Show response attribute object
    • error object Required
      Hide error attributes Show error attributes object
      • code string Required

        Values are internal_error, invalid_request, missing_scope, not_found, rate_limited, or unauthorized.

      • message string Required
      • field string

        The offending input, when one input is to blame.

      • request_id string Required

        Quote this when reporting a problem; it identifies the call in our logs.

  • 404 application/json

    Not found, or not yours: the two are indistinguishable on purpose.

    Hide response attribute Show response attribute object
    • error object Required
      Hide error attributes Show error attributes object
      • code string Required

        Values are internal_error, invalid_request, missing_scope, not_found, rate_limited, or unauthorized.

      • message string Required
      • field string

        The offending input, when one input is to blame.

      • request_id string Required

        Quote this when reporting a problem; it identifies the call in our logs.

  • 429 application/json

    Rate limit exceeded; Retry-After says when to try again.

    Hide headers attribute Show headers attribute
    • Retry-After integer

      Seconds until the budget refills.

    Hide response attribute Show response attribute object
    • error object Required
      Hide error attributes Show error attributes object
      • code string Required

        Values are internal_error, invalid_request, missing_scope, not_found, rate_limited, or unauthorized.

      • message string Required
      • field string

        The offending input, when one input is to blame.

      • request_id string Required

        Quote this when reporting a problem; it identifies the call in our logs.

  • 500 application/json

    Something went wrong on our side.

    Hide response attribute Show response attribute object
    • error object Required
      Hide error attributes Show error attributes object
      • code string Required

        Values are internal_error, invalid_request, missing_scope, not_found, rate_limited, or unauthorized.

      • message string Required
      • field string

        The offending input, when one input is to blame.

      • request_id string Required

        Quote this when reporting a problem; it identifies the call in our logs.

GET /listing-links
curl -H "Authorization: Bearer rs_agent_..." "https://www.realscout.com/api/agent/v1/listing-links?limit=25"
Response examples (200)
{
  "data": [
    {
      "id": "UHJvcGVydHlMaXN0LTc4",
      "name": "3 listings Dana picked for you",
      "url": "https://dana.realscout.com/homesearch/property-lists/UHJvcGVydHlMaXN0LTc4",
      "public": false,
      "contact": {
        "id": "VXNlci0xMjM=",
        "realscout_url": "https://www.realscout.com/agent/contacts/VXNlci0xMjM="
      },
      "listing_count": 3,
      "created_at": "2026-08-19T02:11:00Z"
    }
  ],
  "has_more": false,
  "next_cursor": null
}
Response examples (400)
{
  "error": {
    "code": "invalid_request",
    "message": "limit must be an integer.",
    "field": "limit",
    "request_id": "9b2f4c1e-7d3a-4e5b-8f6c-0a1d2e3f4b5c"
  }
}
Response examples (401)
{
  "error": {
    "code": "unauthorized",
    "message": "Invalid or missing credentials.",
    "request_id": "9b2f4c1e-7d3a-4e5b-8f6c-0a1d2e3f4b5c"
  }
}
Response examples (403)
{
  "error": {
    "code": "missing_scope",
    "message": "This call requires the listing_links:read scope, which this credential was not granted.",
    "request_id": "9b2f4c1e-7d3a-4e5b-8f6c-0a1d2e3f4b5c"
  }
}
Response examples (404)
{
  "error": {
    "code": "not_found",
    "message": "No endpoint at GET /api/agent/v1/listing-links.",
    "request_id": "9b2f4c1e-7d3a-4e5b-8f6c-0a1d2e3f4b5c"
  }
}
Response examples (429)
{
  "error": {
    "code": "rate_limited",
    "message": "Rate limit exceeded. Try again in 30 seconds.",
    "request_id": "9b2f4c1e-7d3a-4e5b-8f6c-0a1d2e3f4b5c"
  }
}
Response examples (500)
{
  "error": {
    "code": "internal_error",
    "message": "Something went wrong on our side.",
    "request_id": "9b2f4c1e-7d3a-4e5b-8f6c-0a1d2e3f4b5c"
  }
}