> ## Documentation Index
> Fetch the complete documentation index at: https://deepline.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Particle: List Company Podcast Recommendations

> List podcasts a company could advertise on next, from its company slug or domain. Includes inputs, outputs, SDK V2 examples, and Deepline cost.

List podcasts a company could advertise on next, from its company slug or domain.

> [!NOTE]
>
> Tool ID: `particle_list_company_podcast_recommendations`

## Run this action

Use the TypeScript SDK for one call. Use `ctx.tools.execute(...)` inside a Play for durable calls, scheduled calls, or CSV processing.

```ts theme={"languages":{"custom":["/languages/deepline-prompt.json"]}}
import { Deepline } from 'deepline';

const deepline = await Deepline.connect();
const result = await deepline.tools.execute(
  'particle_list_company_podcast_recommendations',
  {
    "id": "id_123"
  },
);

console.log(result.toolResponse.raw);
```

### CLI

```bash theme={"languages":{"custom":["/languages/deepline-prompt.json"]}}
deepline tools execute particle_list_company_podcast_recommendations --input '{
  "id": "id_123"
}' --json
```

## Example response

The SDK returns this shape at `result.toolResponse.raw`. The example values illustrate the response.

```json theme={"languages":{"custom":["/languages/deepline-prompt.json"]}}
{
  "data": {
    "data": [
      {
        "band": "strong",
        "podcast": {
          "id": "id_123",
          "title": "VP of Engineering"
        },
        "score": 123
      }
    ],
    "has_more": true
  }
}
```

Use `deepline describe particle_list_company_podcast_recommendations --json` for the latest machine-readable contract.

## Input reference

Returns shows the company does NOT advertise on, ranked by how related they are to the shows it DOES — the buy-side prospect list. Each seed show counts by how much the company advertises there, so a list is anchored on its main venues. every show it has ever bought is excluded. Each row carries the podcast, a calibrated score in (0,1), a band (strong / moderate / weak), and with include=via the company's own shows that led there. Companies with no podcast advertising get an empty page.

| Name | Type | Required | Default | Details |
| - | - | - | - | - |
| `payload.limit` | `integer` | No | `25` | Results per page Format: `int64`. Minimum: 1. Maximum: 100. |
| `payload.cursor` | `string` | No | — | Opaque pagination cursor from previous response |
| `payload.id` | `string` | Yes | — | Company identifier — slug, domain, or canonical ID |
| `payload.include` | `array` | No | — | Optional response sections. Pass include=via to attach, for each recommendation, the company's own shows that led to it — the venues to cite when explaining why the recommendation fits. |
| `payload.min_score` | `number` | No | — | Only recommendations at or above this score, applied within the 200 strongest recommendations the list holds. Omit (or 0) for every recommendation. The band field is the recommended way to filter by strength. Format: `double`. Minimum: 0. Maximum: 1. |
| `payload.language` | `string` | No | — | Only shows in this language (ISO 639-1 code, e.g. 'en', 'es'. A region suffix such as 'fr-CA' is reduced to the language), applied within the 200 strongest recommendations the list holds. |

<details>
  <summary>Show raw input schema</summary>

  ### Input JSON Schema

  ```json theme={"languages":{"custom":["/languages/deepline-prompt.json"]}}
  {
    "type": "object",
    "description": "Returns shows the company does NOT advertise on, ranked by how related they are to the shows it DOES — the buy-side prospect list. Each seed show counts by how much the company advertises there, so a list is anchored on its main venues; every show it has ever bought is excluded. Each row carries the podcast, a calibrated score in (0,1), a band (strong / moderate / weak), and with include=via the company's own shows that led there. Companies with no podcast advertising get an empty page.",
    "properties": {
      "limit": {
        "type": "integer",
        "description": "Results per page",
        "default": 25,
        "minimum": 1,
        "maximum": 100,
        "format": "int64"
      },
      "cursor": {
        "type": "string",
        "description": "Opaque pagination cursor from previous response"
      },
      "id": {
        "type": "string",
        "description": "Company identifier — slug, domain, or canonical ID"
      },
      "include": {
        "type": [
          "array",
          "null"
        ],
        "description": "Optional response sections. Pass include=via to attach, for each recommendation, the company's own shows that led to it — the venues to cite when explaining why the recommendation fits.",
        "items": {
          "type": "string",
          "enum": [
            "via"
          ]
        }
      },
      "min_score": {
        "type": "number",
        "description": "Only recommendations at or above this score, applied within the 200 strongest recommendations the list holds. Omit (or 0) for every recommendation; the band field is the recommended way to filter by strength.",
        "minimum": 0,
        "maximum": 1,
        "format": "double"
      },
      "language": {
        "type": "string",
        "description": "Only shows in this language (ISO 639-1 code, e.g. 'en', 'es'; a region suffix such as 'fr-CA' is reduced to the language), applied within the 200 strongest recommendations the list holds."
      }
    },
    "required": [
      "id"
    ],
    "additionalProperties": false
  }
  ```
</details>

## Output reference

Standard tool result payload.

| Name | Type | Required | Default | Details |
| - | - | - | - | - |
| `result.data` | `object` | Yes | — | Provider response payload. |
| `result.data.cursor` | `string` | No | — | Pass to next request for more results |
| `result.data.data` | `array` | Yes | — | List of results |
| `result.data.data[].band` | `"strong" \| "moderate" \| "weak"` | Yes | — | Coarse class of the score. branch on this rather than on exact thresholds. Allowed: `strong`, `moderate`, `weak`. |
| `result.data.data[].podcast` | `object` | Yes | — | — |
| `result.data.data[].podcast.best_rank` | `object` | No | — | — |
| `result.data.data[].podcast.best_rank.captured_at` | `string` | Yes | — | Format: `date-time`. |
| `result.data.data[].podcast.best_rank.category_slug` | `string` | No | — | — |
| `result.data.data[].podcast.best_rank.chart_type` | `"top_podcasts"` | Yes | — | Allowed: `top_podcasts`. |
| `result.data.data[].podcast.best_rank.country` | `string` | No | — | — |
| `result.data.data[].podcast.best_rank.rank` | `integer` | Yes | — | Format: `int64`. |
| `result.data.data[].podcast.best_rank.source` | `"apple" \| "spotify"` | Yes | — | Allowed: `apple`, `spotify`. |
| `result.data.data[].podcast.id` | `string` | Yes | — | Podcast ID |
| `result.data.data[].podcast.image_url` | `string` | No | — | Cover image URL |
| `result.data.data[].podcast.popularity` | `number` | No | — | Global popularity percentile in (0,1], a cume\_dist ranking over all currently-charting podcasts (Apple Podcasts charts). Higher is more popular. Omitted when the podcast is not currently charting, on endpoints that build this resource from a projection rather than the full podcast row, and in episode stream, feed and archive payloads, which are stored and replayed: read it live from the podcast endpoints. Format: `double`. |
| `result.data.data[].podcast.publisher` | `object` | No | — | — |
| `result.data.data[].podcast.publisher.id` | `string` | Yes | — | Publisher ID |
| `result.data.data[].podcast.publisher.name` | `string` | Yes | — | Publisher name |
| `result.data.data[].podcast.publisher.slug` | `string` | No | — | Human-readable slug identifier (e.g., 'goalhanger', 'iheartpodcasts'). When present, accepted in place of the ID anywhere a publisher reference is taken in the API. Occasionally absent on publishers whose name doesn't slugify (e.g., scripts not representable in ASCII URL slugs). |
| `result.data.data[].podcast.slug` | `string` | No | — | Human-readable slug identifier |
| `result.data.data[].podcast.title` | `string` | Yes | — | Podcast title |
| `result.data.data[].score` | `number` | Yes | — | Strength of the recommendation in (0,1): the seed shows' relatedness to this one, compounded across the seeds that list it. For a guest the seeds are the shows that booked them, counted once per publisher. for a company the shows it already advertises on, weighted by how much it advertises there. Format: `double`. |
| `result.data.data[].via` | `array \| null` | No | — | The seed shows that led to this recommendation, strongest first: the person's own shows, or the shows the company already buys. The reason to cite when explaining the fit. |
| `result.data.data[].via[].best_rank` | `object` | No | — | — |
| `result.data.data[].via[].best_rank.captured_at` | `string` | Yes | — | Format: `date-time`. |
| `result.data.data[].via[].best_rank.category_slug` | `string` | No | — | — |
| `result.data.data[].via[].best_rank.chart_type` | `"top_podcasts"` | Yes | — | Allowed: `top_podcasts`. |
| `result.data.data[].via[].best_rank.country` | `string` | No | — | — |
| `result.data.data[].via[].best_rank.rank` | `integer` | Yes | — | Format: `int64`. |
| `result.data.data[].via[].best_rank.source` | `"apple" \| "spotify"` | Yes | — | Allowed: `apple`, `spotify`. |
| `result.data.data[].via[].id` | `string` | Yes | — | Podcast ID |
| `result.data.data[].via[].image_url` | `string` | No | — | Cover image URL |
| `result.data.data[].via[].popularity` | `number` | No | — | Global popularity percentile in (0,1], a cume\_dist ranking over all currently-charting podcasts (Apple Podcasts charts). Higher is more popular. Omitted when the podcast is not currently charting, on endpoints that build this resource from a projection rather than the full podcast row, and in episode stream, feed and archive payloads, which are stored and replayed: read it live from the podcast endpoints. Format: `double`. |
| `result.data.data[].via[].publisher` | `object` | No | — | — |
| `result.data.data[].via[].publisher.id` | `string` | Yes | — | Publisher ID |
| `result.data.data[].via[].publisher.name` | `string` | Yes | — | Publisher name |
| `result.data.data[].via[].publisher.slug` | `string` | No | — | Human-readable slug identifier (e.g., 'goalhanger', 'iheartpodcasts'). When present, accepted in place of the ID anywhere a publisher reference is taken in the API. Occasionally absent on publishers whose name doesn't slugify (e.g., scripts not representable in ASCII URL slugs). |
| `result.data.data[].via[].slug` | `string` | No | — | Human-readable slug identifier |
| `result.data.data[].via[].title` | `string` | Yes | — | Podcast title |
| `result.data.has_more` | `boolean` | Yes | — | Whether more results exist |
| `result.meta` | `object` | No | — | Additional response metadata (status, paging). |

<details>
  <summary>Show raw output schema</summary>

  ### Output JSON Schema

  ```json theme={"languages":{"custom":["/languages/deepline-prompt.json"]}}
  {
    "type": "object",
    "description": "Standard tool result payload.",
    "properties": {
      "data": {
        "type": "object",
        "description": "Provider response payload.",
        "properties": {
          "cursor": {
            "type": "string",
            "description": "Pass to next request for more results"
          },
          "data": {
            "type": "array",
            "description": "List of results",
            "items": {
              "type": "object",
              "properties": {
                "band": {
                  "type": "string",
                  "description": "Coarse class of the score; branch on this rather than on exact thresholds.",
                  "enum": [
                    "strong",
                    "moderate",
                    "weak"
                  ]
                },
                "podcast": {
                  "type": "object",
                  "properties": {
                    "best_rank": {
                      "type": "object",
                      "properties": {
                        "captured_at": {
                          "type": "string",
                          "format": "date-time"
                        },
                        "category_slug": {
                          "type": "string"
                        },
                        "chart_type": {
                          "type": "string",
                          "enum": [
                            "top_podcasts"
                          ]
                        },
                        "country": {
                          "type": "string"
                        },
                        "rank": {
                          "type": "integer",
                          "format": "int64"
                        },
                        "source": {
                          "type": "string",
                          "enum": [
                            "apple",
                            "spotify"
                          ]
                        }
                      },
                      "required": [
                        "source",
                        "chart_type",
                        "rank",
                        "captured_at"
                      ],
                      "additionalProperties": false
                    },
                    "id": {
                      "type": "string",
                      "description": "Podcast ID"
                    },
                    "image_url": {
                      "type": "string",
                      "description": "Cover image URL"
                    },
                    "popularity": {
                      "type": "number",
                      "description": "Global popularity percentile in (0,1], a cume_dist ranking over all currently-charting podcasts (Apple Podcasts charts). Higher is more popular. Omitted when the podcast is not currently charting, on endpoints that build this resource from a projection rather than the full podcast row, and in episode stream, feed and archive payloads, which are stored and replayed: read it live from the podcast endpoints.",
                      "format": "double"
                    },
                    "publisher": {
                      "type": "object",
                      "properties": {
                        "id": {
                          "type": "string",
                          "description": "Publisher ID"
                        },
                        "name": {
                          "type": "string",
                          "description": "Publisher name"
                        },
                        "slug": {
                          "type": "string",
                          "description": "Human-readable slug identifier (e.g., 'goalhanger', 'iheartpodcasts'). When present, accepted in place of the ID anywhere a publisher reference is taken in the API. Occasionally absent on publishers whose name doesn't slugify (e.g., scripts not representable in ASCII URL slugs)."
                        }
                      },
                      "required": [
                        "id",
                        "name"
                      ],
                      "additionalProperties": false
                    },
                    "slug": {
                      "type": "string",
                      "description": "Human-readable slug identifier"
                    },
                    "title": {
                      "type": "string",
                      "description": "Podcast title"
                    }
                  },
                  "required": [
                    "id",
                    "title"
                  ],
                  "additionalProperties": false
                },
                "score": {
                  "type": "number",
                  "description": "Strength of the recommendation in (0,1): the seed shows' relatedness to this one, compounded across the seeds that list it. For a guest the seeds are the shows that booked them, counted once per publisher; for a company the shows it already advertises on, weighted by how much it advertises there.",
                  "format": "double"
                },
                "via": {
                  "type": [
                    "array",
                    "null"
                  ],
                  "description": "The seed shows that led to this recommendation, strongest first: the person's own shows, or the shows the company already buys. The reason to cite when explaining the fit.",
                  "items": {
                    "type": "object",
                    "properties": {
                      "best_rank": {
                        "type": "object",
                        "properties": {
                          "captured_at": {
                            "type": "string",
                            "format": "date-time"
                          },
                          "category_slug": {
                            "type": "string"
                          },
                          "chart_type": {
                            "type": "string",
                            "enum": [
                              "top_podcasts"
                            ]
                          },
                          "country": {
                            "type": "string"
                          },
                          "rank": {
                            "type": "integer",
                            "format": "int64"
                          },
                          "source": {
                            "type": "string",
                            "enum": [
                              "apple",
                              "spotify"
                            ]
                          }
                        },
                        "required": [
                          "source",
                          "chart_type",
                          "rank",
                          "captured_at"
                        ],
                        "additionalProperties": false
                      },
                      "id": {
                        "type": "string",
                        "description": "Podcast ID"
                      },
                      "image_url": {
                        "type": "string",
                        "description": "Cover image URL"
                      },
                      "popularity": {
                        "type": "number",
                        "description": "Global popularity percentile in (0,1], a cume_dist ranking over all currently-charting podcasts (Apple Podcasts charts). Higher is more popular. Omitted when the podcast is not currently charting, on endpoints that build this resource from a projection rather than the full podcast row, and in episode stream, feed and archive payloads, which are stored and replayed: read it live from the podcast endpoints.",
                        "format": "double"
                      },
                      "publisher": {
                        "type": "object",
                        "properties": {
                          "id": {
                            "type": "string",
                            "description": "Publisher ID"
                          },
                          "name": {
                            "type": "string",
                            "description": "Publisher name"
                          },
                          "slug": {
                            "type": "string",
                            "description": "Human-readable slug identifier (e.g., 'goalhanger', 'iheartpodcasts'). When present, accepted in place of the ID anywhere a publisher reference is taken in the API. Occasionally absent on publishers whose name doesn't slugify (e.g., scripts not representable in ASCII URL slugs)."
                          }
                        },
                        "required": [
                          "id",
                          "name"
                        ],
                        "additionalProperties": false
                      },
                      "slug": {
                        "type": "string",
                        "description": "Human-readable slug identifier"
                      },
                      "title": {
                        "type": "string",
                        "description": "Podcast title"
                      }
                    },
                    "required": [
                      "id",
                      "title"
                    ],
                    "additionalProperties": false
                  }
                }
              },
              "required": [
                "podcast",
                "score",
                "band"
              ],
              "additionalProperties": false
            }
          },
          "has_more": {
            "type": "boolean",
            "description": "Whether more results exist"
          }
        },
        "required": [
          "data",
          "has_more"
        ],
        "additionalProperties": false
      },
      "meta": {
        "type": "object",
        "description": "Additional response metadata (status, paging).",
        "additionalProperties": true
      }
    },
    "required": [
      "data"
    ],
    "additionalProperties": false
  }
  ```
</details>

## Deepline cost

* Pricing model: `fixed` (per call).
* Estimated Deepline credits: `0` per pricing unit.
* Provider-native pricing may still exist outside Deepline credit billing.

## Related documentation

* [Particle provider guide](https://deepline.com/docs/providers/particle/guide.md)
* [SDK V2 quickstart](https://deepline.com/docs/sdk-v2/quickstart.md)
* [SDK reference](https://deepline.com/docs/sdk-v2/sdk-reference.md)
* [Run tools across a CSV](https://deepline.com/docs/sdk-v2/batch-csv.md)


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.