Company - Feed

Fetch a company’s news & activity feed with a cursor-based pagination.
Use it to drive “What’s new at this account?” widgets, sales research, or alerting.

Base URL: https://api.salescaddy.ai/api


Endpoint

GET /companies/{companyDomain}/feed

Path parameters

NameTypeRequiredDescription
companyDomainstringYese.g., hilton.com

Query parameters

NameTypeRequiredDefaultDescription
paginationIdstringNoOpaque cursor from the previous response to fetch the next batch

The feed uses a cursor (paginationId) instead of page/size. Store this value and pass it to retrieve the next items.


Example — First page

curl -X 'GET' \
  'https://api.salescaddy.ai/api/companies/hilton.com/feed' \
  -H 'accept: application/json' \
  -H "Authorization: Bearer $TOKEN"
const url = "https://api.salescaddy.ai/api/companies/hilton.com/feed";
const res = await fetch(url, { headers: { Authorization: `Bearer ${process.env.TOKEN}` } });
const data = await res.json();
console.log(data);
import os, requests
r = requests.get("https://api.salescaddy.ai/api/companies/hilton.com/feed",
                 headers={"Authorization": f"Bearer {os.environ['TOKEN']}"})
data = r.json()
print(data)
using System.Net.Http.Headers;
var http = new HttpClient();
http.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", TOKEN);
var res = await http.GetAsync("https://api.salescaddy.ai/api/companies/hilton.com/feed");
Console.WriteLine(await res.Content.ReadAsStringAsync());

Sample response (trimmed):

{
  "paginationId": "eyJvZmZzZXQiOjEwMH0=",
  "feeds": [
    {
      "description": "Hilton recently announced the signing of AMARIS Grace Bay to its exclusive LXR Hotels & Resorts portfolio, a distinctive resort and residential development set to debut in 2028 on the world-renowned Grace Bay Beach. Located along pristine shores, AMARIS brings a new dimension of curated luxury to Turks & Caicos, offering travelers an intimate escape defined by exceptional design and personalized service. AMARIS Grace Bay, LXR Hotels & Resorts is owned by SEFAMM (TCI) Ltd.Situated along one of th",
      "enclosureImageUrl": "https://s3.amazonaws.com/owler-image/feedenclosure/hilton-to-expand-luxury-footprint-with-lxr-hotels-resorts-in-turks-and-caicos-_20251229_120000_original.png",
      "date": "2025-12-29T09:04:00Z",
      "publisherLogoUrl": "https://image4.owler.com/publisher/bwhotelier_original.png",
      "publisherName": "BW Hotelier",
      "sourceUrl": "https://www.bwhotelier.com/article/hilton-to-expand-luxury-footprint-with-lxr-hotels-resorts-in-turks-and-caicos-585172",
      "title": "Hilton: Hilton to expand luxury footprint with LXR Hotels & Resorts in Turks and Caicos ",
      "category": "NEWS"
    },
    {
      "description": "Hilton Doha The Pearl Celebrates Sixth Anniversary, Redefining Luxury Hospitality And Dining In Doha's Thriving Tourism SceneHilton Doha The Pearl marks its sixth anniversary with new dining concepts, a refined identity, and continued growth in Doha's competitive hospitality sector. The post Hilton Doha The Pearl Celebrates Sixth Anniversary, Redefining Luxury Hospitality And Dining In Doha's Thriving Tourism Scene appeared first on Travel And Tour World.",
      "date": "2025-12-28T00:00:00Z",
      "publisherLogoUrl": "https://s3.amazonaws.com/owler-image/publisher/travelandtourworld_original.png",
      "publisherName": "Travel and Tour World",
      "sourceUrl": "https://www.travelandtourworld.com/news/article/hilton-doha-the-pearl-celebrates-sixth-anniversary-redefining-luxury-hospitality-and-dining-in-dohas-thriving-tourism-scene/",
      "title": "Hilton: Hilton Doha The Pearl Celebrates Sixth Anniversary, Redefining Luxury Hospitality And Dining In Doha's Thriving Tourism Scene",
      "category": "NEWS"
    },
    {
      "description": "DoubleTree by Hilton Africa Expands with New Hotels in Togo, Congo, MoroccoDoubleTree by Hilton Africa expansion adds hotel options in Togo, Congo, Morocco enhancing travel stays and amenities for global guests. The post DoubleTree by Hilton Africa Expands with New Hotels in Togo, Congo, Morocco appeared first on Travel And Tour World.",
      "date": "2025-12-28T00:00:00Z",
      "publisherLogoUrl": "https://s3.amazonaws.com/owler-image/publisher/travelandtourworld_original.png",
      "publisherName": "Travel and Tour World",
      "sourceUrl": "https://www.travelandtourworld.com/news/article/doubletree-by-hilton-africa-expands-with-new-hotels-in-togo-congo-morocco/",
      "title": "Hilton: DoubleTree by Hilton Africa Expands with New Hotels in Togo, Congo, Morocco",
      "category": "NEWS"
    },
....
  ]
}

Example — Next page (use paginationId)

curl -X 'GET' \
  'https://api.salescaddy.ai/api/companies/hilton.com/feed?paginationId=AoJw2KL7hpsDODY5M2IwNjI5NDU5ZjViMjRjOTg4ZWVmNg%3D%3D' \
  -H 'accept: application/json' \
  -H "Authorization: Bearer $TOKEN"
const cursor = "eyJvZmZzZXQiOjEwMH0="; // from previous response
const res = await fetch(`https://api.salescaddy.ai/api/companies/hilton.com/feed?paginationId=${encodeURIComponent(cursor)}`, {
  headers: { Authorization: `Bearer ${process.env.TOKEN}` }
});
console.log(await res.json());
cursor = "eyJvZmZzZXQiOjEwMH0="  # from previous response
r = requests.get("https://api.salescaddy.ai/api/companies/hilton.com/feed",
                 params={"paginationId": cursor},
                 headers={"Authorization": f"Bearer {os.environ['TOKEN']}"})
print(r.json())
var cursor = "eyJvZmZzZXQiOjEwMH0="; // from previous response
var url = $"https://api.salescaddy.ai/api/companies/hilton.com/feed?paginationId={System.Net.WebUtility.UrlEncode(cursor)}";
var res2 = await http.GetAsync(url);
Console.WriteLine(await res2.Content.ReadAsStringAsync());

Use cases & tips

  • Account research — surface recent partnerships, product launches, funding, hiring spikes, etc.
  • Sales alerts — poll periodically; when new id appears, notify account owner.
  • Cursor handling — always store the latest paginationId you used to fetch; pass it to continue where you left off.
  • De‑duplication — persist seen ids to avoid duplicate notifications.
  • Backfill — if you want older items, continue following cursors until the API returns no further paginationId.

Errors

CodeMeaningHow to fix
400Bad requestValidate companyDomain; ensure paginationId is a cursor returned by API.
401UnauthorizedProvide/refresh Bearer token.
403ForbiddenCheck client permissions.
404Not foundUnknown companyDomain or feed unavailable.
429Rate limit exceededRetry with exponential backoff; respect Retry-After.
500Internal server errorRetry later; contact support if persistent.