---
title: "Get customer generation sources"
method: GET
path: "/api/v1/business/customer-generation-sources/{id}"
tags: ["business"]
---

# Get customer generation sources

`GET /api/v1/business/customer-generation-sources/{id}`

## Request

- Base URL: `https://point11.ai`
- URL: `https://point11.ai/api/v1/business/customer-generation-sources/{id}`
- Auth: one of:
  - HTTP bearer
  - OAuth 2 (authorization code, authorization URL `https://auth.point11.ai/oauth2/authorize`, token URL `https://auth.point11.ai/oauth2/token`)

Get what customers can be generated from for up to 100 business profiles, or for every profile with finished research when businessProfileIds is omitted (latest research first, as business_profiles_list lists them; pass id "organization"): for each profile with finished research, its route key, display name and normalized URL, the language its customers speak, its current profile's generation profile (null until one is prepared), and its current forecast with that forecast's generation profile, the generationProfileId business_customers_generate takes for a forecast source. A profile without finished research, or not the organization's, is left out.

## Path parameters

- `id` 'organization', required

## Query parameters

- `businessProfileIds` string[]: These profiles' sources; omit for every profile with finished research, latest research first, up to 1000

## Headers

- `Point11-Organization` string, uuid

## Response `200`

Success.

- BusinessCustomerGenerationSourcesGetResponse
  - `sources` object[], required
    - `businessProfileId` string, uuid, required
    - `profileKey` string, nullable, required
    - `label` string, required
    - `normalizedUrl` string, required
    - `contentLanguage` 'en' | 'fr' | 'es' | 'de' | 'pt' | 'ja' | 'it' | 'nl' | 'sv' | 'cs' | 'pl' | 'tr' | 'ru' | 'zh-Hans' | 'ko' | 'ar', required
    - `generationProfileId` string, uuid, nullable, required
    - `forecastId` string, uuid, nullable, required
    - `forecastGenerationProfileId` string, uuid, nullable, required

## Other responses

- `400`: The input, query, or Idempotency-Key is invalid.
- `401`: The bearer is missing, expired, or not accepted.
- `403`: The credential lacks the operation's scope or role, or the operation needs a different door.
- `404`: The resource or organization does not exist for this caller.
- `405`: This path takes another HTTP method, named in `Allow`.
- `409`: The request conflicts with current state or with prior use of its Idempotency-Key.
- `413`: The request, or the answer it asks for, is too large; narrow it.
- `429`: The credential's rate budget is spent; retry after `Retry-After` seconds.
- `500`: An unexpected server failure; retry later. Only `request_id` identifies it.
- `503`: A dependency is temporarily unavailable; retry after `Retry-After` seconds.
- `default`: Another status a product answers for its own refusal (for example `415` for an unsupported attachment); branch on `code`.

---

[API](https://skmtc.dev/point11/apis/point11-api.md) · [All operations](https://skmtc.dev/point11/apis/point11-api/llms.txt) · [OpenAPI document](https://skmtc.dev/point11/apis/point11-api/revisions/36a84c7aca11?raw)
