List Content Requests

Paginate the content requests that drive your workspace content workflows.

Content request endpoints expose the requests that drive workspace content workflows, including account mapping workflows.

GET/api/v2/content-requests

Query parameters

ParameterTypeDescription
pageintegerPage number (default 1).
page_sizeintegerNumber of items per page (default 25).
date_fromISO 8601 timestampInclude requests created at or after this date.
date_toISO 8601 timestampInclude requests created at or before this date.
typestringFilter by request type. Valid values: account_mapping, top_account_content.
stagestringFilter by stage. Repeat the parameter to include multiple stages.
company_idintegerFilter by company or top account ID. Takes priority over all human-identifier params below.
company_domainstring[]Filter by company domain (e.g. acme.com). Comma-separated or repeatable. Maximum 100 values. Resolved via single-winning-tier waterfall: company_id > company_linkedin_handle > company_linkedin_url > company_domain.
company_linkedin_handlestring[]Filter by company LinkedIn handle. Comma-separated or repeatable. Maximum 100 values. See company_domain for tier priority.
company_linkedin_urlstring[]Filter by company LinkedIn URL. Comma-separated or repeatable. Maximum 100 values. See company_domain for tier priority.

If stage is omitted, the endpoint returns requests in all stages except completed. Valid stage values:

account_mapping_ready, account_mapping_in_progress, account_mapping_ingestion_ready, account_mapping_ingestion_in_progress, account_mapping_failed, completed, top_account_content_scraping_ready, top_account_content_scraping_starting, top_account_content_scraping_in_progress, top_account_content_ingestion_in_progress, top_account_content_failed.

Repeat stage for multi-stage filtering:

/api/v2/content-requests?stage=account_mapping_in_progress&stage=account_mapping_ready

Example request

curl "https://api.getsillage.com/api/v2/content-requests?type=account_mapping&page=1&page_size=10&company_domain=acme.com" \
  -H "Authorization: Bearer $SILLAGE_API_KEY"
const response = await fetch(
  'https://api.getsillage.com/api/v2/content-requests?type=account_mapping&page=1&page_size=10&company_domain=acme.com',
  {
    headers: {
      Authorization: `Bearer ${process.env.SILLAGE_API_KEY}`,
    },
  },
)

const result = await response.json()
import { request } from 'node:https'

const req = request(
  new URL(
    'https://api.getsillage.com/api/v2/content-requests?type=account_mapping&page=1&page_size=10&company_domain=acme.com',
  ),
  {
    headers: {
      Authorization: `Bearer ${process.env.SILLAGE_API_KEY}`,
    },
  },
  (res) => {
    let body = ''
    res.on('data', (chunk) => {
      body += chunk
    })
    res.on('end', () => {
      console.log(JSON.parse(body))
    })
  },
)

req.end()
import os
import requests

response = requests.get(
    "https://api.getsillage.com/api/v2/content-requests",
    params={
        "type": "account_mapping",
        "page": "1",
        "page_size": "10",
        "company_domain": "acme.com",
    },
    headers={"Authorization": f"Bearer {os.environ['SILLAGE_API_KEY']}"},
    timeout=30,
)
response.raise_for_status()
result = response.json()

Example response

{
  "data": [
    {
      "id": 43821,
      "type": "account_mapping",
      "stage": "account_mapping_in_progress",
      "created_at": "2026-06-12T08:30:00.000Z",
      "updated_at": "2026-06-12T09:10:00.000Z",
      "company": {
        "id": 8421,
        "name": "Acme",
        "domain": "acme.com",
        "linkedin_url": "https://www.linkedin.com/company/acme"
      },
      "inputs": {}
    }
  ],
  "meta": {
    "pagination": {
      "page": 1,
      "page_size": 10,
      "page_count": 3,
      "total": 28
    },
    "resolved_companies": [
      {
        "company_id": 8421,
        "matched_by": "domain",
        "identifier": "acme.com"
      }
    ]
  }
}

meta.resolved_companies

Present on all list responses (GET and POST). Contains one entry per company matched from a company filter (company_id, company_domain, company_linkedin_handle, or company_linkedin_url).

FieldTypeDescription
company_idintegerNumeric SQL id of the matched company.
matched_bystringWhich identifier tier produced this match. One of: company_id, linkedin_handle, linkedin_url, domain.
identifierstringThe original identifier value supplied by the caller (domain, handle, URL, or numeric id echoed as a string).

All entries share the same matched_by value for a given response. When no company filter is supplied, resolved_companies is an empty array.

On this page