Vendor Products

Find products associated with a single vendor.

Retrieve products associated with a specific vendor domain. Use this to power vendor profile pages and product catalogs.

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


Endpoint

GET /vendors/{vendorDomain}/products

Path parameters

NameTypeRequiredDescription
vendorDomainstringYesVendor domain (e.g. microsoft.com)

Query parameters

NameTypeRequiredDefaultDescription
productNamestringNoFilter by product name (contains)
pageintNo0Page index (0‑based)
sizeintNo20Page size (max 200)

Example — List products by vendor

curl -sS "https://api.salescaddy.ai/api/vendors/microsoft.com/products?productName=outlook&page=0&size=20" \
  -H "Authorization: Bearer $TOKEN"
const url = "https://api.salescaddy.ai/api/vendors/microsoft.com/products?page=0&size=10";
const res = await fetch(url, { headers: { Authorization: `Bearer ${process.env.TOKEN}` } });
console.log(await res.json());
import os, requests
r = requests.get("https://api.salescaddy.ai/api/vendors/microsoft.com/products",
                 params={"page":0,"size":10},
                 headers={"Authorization": f"Bearer {os.environ['TOKEN']}"})
print(r.json())
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/vendors/microsoft.com/products?page=0&size=10");
Console.WriteLine(await res.Content.ReadAsStringAsync());

Sample response (trimmed):

{
  "totalPages": 1,
  "totalElements": 2,
  "content": [
    {
      "id": "410bd630-6d19-4d5f-b95b-22fdb0bcd022",
      "name": "Microsoft Outlook",
      "description": "",
      "logo": "https://images.g2crowd.com/uploads/product/image/69054bc7d40597b06fc3905720ccc914/microsoft-outlook.png",
      "category": "Calendar",
      "features": [
        "AI Image-to-Text",
        "AI Text Generation",
        "AI Text Summarization",
        "AI Text-to-Image",
        "AI Text-to-Speech",
        "Calendar",
        "Calendar Collaboration",
        "Contacts",
        "Customizable Viewing",
        "Customized Calendar Notifications",
        "Desktop Application",
        "Filters",
        "Import Events",
        "Keyboard Shortcuts",
        "Location-Based Alerts",
        "Mobile Application",
        "Multi-Calendar View",
        "Multiple Calendar Management",
        "Notifications",
        "Reminders",
        "Screen Reader Compatibility",
        "Software Integrations",
        "Sync Multiple Calendars",
        "Task Management",
        "Unified Inbox"
      ],
      "reviewCount": 2904,
      "starRating": 4.5,
      "avgRating": 8.999309539794922,
      "vendor": {
        "domain": "microsoft.com",
        "name": "Microsoft",
        "logo": "https://img.logo.dev/microsoft.com?token=pk_S-z4OHSVRdqZEzd20vlKcw"
      },
      "categoryId": "a737264f-ea76-4981-aeac-c3ffcd4a3bbb"
    },
    {
      "id": "f1040e5b-1b30-4299-9a75-c73931d806d6",
      "name": "Outlook Customer Manager",
      "description": "",
      "logo": "https://images.g2crowd.com/uploads/product/image/922c72685a41fb6759b93880e18a96da/39dd988e-452e-432f-9e4f-cd263b1f0d8e.png",
      "category": "CRM",
      "features": [
        "Breadth of Partner Applications",
        "Call Center Features",
        "Campaign Management",
        "Case Management",
        "Contact & Account Management",
        "Customer Contract Management",
        "Customer Support Portal",
        "Customization",
        "Dashboards",
        "Data Import & Export Tools",
        "Desktop Integration",
        "Document & Content Mgmt.",
        "Email Marketing",
        "Forecasting",
        "Integration APIs",
        "Internationalization",
        "Knowledge Base",
        "Lead Management",
        "Marketing ROI Analytics",
        "Mobile User Support",
        "Opportunity & Pipeline Mgmt.",
        "Output Document Generation",
        "Partner Relationship Mgmt. (PRM)",
        "Performance and Reliability",
        "Product & Price List Management",
        "Quote & Order Management",
        "Reporting",
        "Sandbox / Test Environments",
        "Social Collaboration Features",
        "Social Network Integration",
        "Support Analytics",
        "Task / Activity Management",
        "Territory & Quota Management",
        "Text Generation",
        "User, Role, and Access Management",
        "Workflow Capability"
      ],
      "reviewCount": 26,
      "starRating": 4.199999809265137,
      "avgRating": 8.423080444335938,
      "vendor": {
        "domain": "microsoft.com",
        "name": "Microsoft",
        "logo": "https://img.logo.dev/microsoft.com?token=pk_S-z4OHSVRdqZEzd20vlKcw"
      },
      "categoryId": "c54a180e-8540-4560-aee1-c0cd34832aa4"
    }
  ]
}

Notes

  • Use productName to quickly narrow large catalogs (case-insensitive contains).
  • Pagination defaults are page=0, size=20; prefer multiple pages over very large size.
  • IDs (productId, categoryId) can be reused across other endpoints (search, related, usage metrics).

Filtering by product name

curl -sS "https://api.salescaddy.ai/api/vendors/microsoft.com/products?productName=azure&page=0&size=10" \
  -H "Authorization: Bearer $TOKEN"
const url = "https://api.salescaddy.ai/api/vendors/microsoft.com/products?productName=azure&page=0&size=10";
console.log(await (await fetch(url, { headers: { Authorization: `Bearer ${process.env.TOKEN}` } })).json());
r = requests.get("https://api.salescaddy.ai/api/vendors/microsoft.com/products",
                 params={"productName":"azure","page":0,"size":10},
                 headers={"Authorization": f"Bearer {os.environ['TOKEN']}"})
print(r.json())
var res = await http.GetAsync("https://api.salescaddy.ai/api/vendors/microsoft.com/products?productName=azure&page=0&size=10");
Console.WriteLine(await res.Content.ReadAsStringAsync());

Errors

CodeMeaningHow to fix
400Bad requestValidate page/size and query types
401UnauthorizedProvide/refresh Bearer token
404Not foundUnknown vendorDomain
429Rate limit exceededRetry with exponential backoff
500Internal server errorRetry later; contact support if persistent