{
  "openapi": "3.0.1",
  "info": {
    "title": "Podcast Guest Leads — Host Emails, Activity & Apple Charts",
    "description": "Find active podcasts by keyword or Apple category with the host email published in the show's RSS feed, last episode date, episodes per month, interview share, guest examples and Apple chart rank. Built for PR and guest booking.",
    "version": "0.1",
    "x-build-id": "SSZoxdrW89aYY2SAd"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/technicaldost~podcast-guest-leads/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-technicaldost-podcast-guest-leads",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor, waits for its completion, and returns Actor's dataset items in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/acts/technicaldost~podcast-guest-leads/runs": {
      "post": {
        "operationId": "runs-sync-technicaldost-podcast-guest-leads",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor and returns information about the initiated run in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/runsResponseSchema"
                }
              }
            }
          }
        }
      }
    },
    "/acts/technicaldost~podcast-guest-leads/run-sync": {
      "post": {
        "operationId": "run-sync-technicaldost-podcast-guest-leads",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor, waits for completion, and returns the OUTPUT from Key-value store in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    }
  },
  "components": {
    "schemas": {
      "inputSchema": {
        "type": "object",
        "properties": {
          "keywords": {
            "title": "Keywords",
            "type": "array",
            "description": "Topics to search on Apple Podcasts (iTunes Search API), e.g. \"saas marketing\", \"b2b sales\", \"founder stories\". Each keyword returns up to ~100–200 shows. Use keywords, categories or both.",
            "items": {
              "type": "string"
            }
          },
          "categories": {
            "title": "Apple Podcasts categories (top charts)",
            "type": "array",
            "description": "Optional. Adds the top-charting shows (up to 200) of each Apple Podcasts category in the chosen country, with their chart rank. Example: Marketing, Entrepreneurship, Technology.",
            "items": {
              "type": "string",
              "enum": [
                "Arts",
                "Books",
                "Design",
                "Fashion & Beauty",
                "Food",
                "Performing Arts",
                "Visual Arts",
                "Business",
                "Careers",
                "Entrepreneurship",
                "Investing",
                "Management",
                "Marketing",
                "Non-Profit",
                "Comedy",
                "Comedy Interviews",
                "Improv",
                "Stand-Up",
                "Education",
                "Courses",
                "How To",
                "Language Learning",
                "Self-Improvement",
                "Fiction",
                "Comedy Fiction",
                "Drama",
                "Science Fiction",
                "Government",
                "Health & Fitness",
                "Alternative Health",
                "Fitness",
                "Medicine",
                "Mental Health",
                "Nutrition",
                "Sexuality",
                "History",
                "Kids & Family",
                "Education for Kids",
                "Parenting",
                "Pets & Animals",
                "Stories for Kids",
                "Leisure",
                "Animation & Manga",
                "Automotive",
                "Aviation",
                "Crafts",
                "Games",
                "Hobbies",
                "Home & Garden",
                "Video Games",
                "Music",
                "Music Commentary",
                "Music History",
                "Music Interviews",
                "News",
                "Business News",
                "Daily News",
                "Entertainment News",
                "News Commentary",
                "Politics",
                "Sports News",
                "Tech News",
                "Religion & Spirituality",
                "Buddhism",
                "Christianity",
                "Hinduism",
                "Islam",
                "Judaism",
                "Religion",
                "Spirituality",
                "Science",
                "Astronomy",
                "Chemistry",
                "Earth Sciences",
                "Life Sciences",
                "Mathematics",
                "Natural Sciences",
                "Nature",
                "Physics",
                "Social Sciences",
                "Society & Culture",
                "Documentary",
                "Personal Journals",
                "Philosophy",
                "Places & Travel",
                "Relationships",
                "Sports",
                "Baseball",
                "Basketball",
                "Cricket",
                "Fantasy Sports",
                "Football",
                "Golf",
                "Hockey",
                "Rugby",
                "Running",
                "Soccer",
                "Swimming",
                "Tennis",
                "Volleyball",
                "Wilderness",
                "Wrestling",
                "TV & Film",
                "After Shows",
                "Film History",
                "Film Interviews",
                "Film Reviews",
                "TV Reviews",
                "Technology",
                "True Crime"
              ]
            }
          },
          "country": {
            "title": "Country (Apple storefront)",
            "pattern": "^[a-zA-Z]{2}$",
            "type": "string",
            "description": "2-letter Apple Podcasts storefront code used for search and charts: us, gb, ca, au, in, ie, nz, de, fr, es…",
            "default": "us"
          },
          "maxShowsPerKeyword": {
            "title": "Max shows per keyword / category",
            "minimum": 1,
            "maximum": 200,
            "type": "integer",
            "description": "How many search results (or chart positions) to check per keyword or category. Apple returns at most ~200.",
            "default": 100
          },
          "activeWithinDays": {
            "title": "Only shows active within (days)",
            "minimum": 0,
            "maximum": 3650,
            "type": "integer",
            "description": "Keep only shows that published an episode in the last N days. 0 = no activity filter. Tip: 30 for very active shows, 90 for still-running shows.",
            "default": 90
          },
          "requireEmail": {
            "title": "Only shows with a host email",
            "type": "boolean",
            "description": "Drop shows whose public RSS feed does not publish a contact email (itunes:owner email or managingEditor). Shows that are dropped are not charged.",
            "default": false
          },
          "minEpisodes": {
            "title": "Minimum total episodes",
            "minimum": 0,
            "type": "integer",
            "description": "Skip brand-new or one-off shows with fewer episodes than this. 0 = no minimum.",
            "default": 5
          },
          "interviewFormatOnly": {
            "title": "Interview / guest shows only",
            "type": "boolean",
            "description": "Keep only shows where at least 30% of the 20 latest episode titles look like guest interviews (\"with Jane Doe\", \"ft.\", \"Jane Doe | Topic\"…). Heuristic.",
            "default": false
          },
          "languages": {
            "title": "Languages",
            "type": "array",
            "description": "Optional. Keep only shows whose RSS <language> matches, e.g. en, es, de (en also matches en-us, en-gb). Leave empty for all.",
            "items": {
              "type": "string"
            }
          },
          "includeChartRank": {
            "title": "Add Apple chart rank",
            "type": "boolean",
            "description": "Look up each show’s rank in Apple’s top 200 for its category and the overall Top 100 (free Apple chart feeds).",
            "default": true
          },
          "onlyNew": {
            "title": "Only new since last run (for schedules)",
            "type": "boolean",
            "description": "Remembers which shows (Apple collectionId) this stream already delivered and returns only shows you have not received before. Ideal for a weekly \"new shows in my niche\" schedule — you never pay twice for the same show.",
            "default": false
          },
          "stateKey": {
            "title": "Stream name",
            "type": "string",
            "description": "Separate \"only new\" memory per client, niche or campaign (e.g. \"client-acme-saas\"). Each stream de-duplicates independently.",
            "default": "default"
          },
          "maxItems": {
            "title": "Max leads per run",
            "minimum": 1,
            "type": "integer",
            "description": "Hard cap on podcast leads returned (and charged) per run.",
            "default": 100
          },
          "feedConcurrency": {
            "title": "Feed concurrency",
            "minimum": 1,
            "maximum": 20,
            "type": "integer",
            "description": "How many RSS feeds to download in parallel (1–20).",
            "default": 8
          }
        }
      },
      "runsResponseSchema": {
        "type": "object",
        "properties": {
          "data": {
            "type": "object",
            "properties": {
              "id": {
                "type": "string"
              },
              "actId": {
                "type": "string"
              },
              "userId": {
                "type": "string"
              },
              "startedAt": {
                "type": "string",
                "format": "date-time",
                "example": "2025-01-08T00:00:00.000Z"
              },
              "finishedAt": {
                "type": "string",
                "format": "date-time",
                "example": "2025-01-08T00:00:00.000Z"
              },
              "status": {
                "type": "string",
                "example": "READY"
              },
              "meta": {
                "type": "object",
                "properties": {
                  "origin": {
                    "type": "string",
                    "example": "API"
                  },
                  "userAgent": {
                    "type": "string"
                  }
                }
              },
              "stats": {
                "type": "object",
                "properties": {
                  "inputBodyLen": {
                    "type": "integer",
                    "example": 2000
                  },
                  "rebootCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "restartCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "resurrectCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "computeUnits": {
                    "type": "integer",
                    "example": 0
                  }
                }
              },
              "options": {
                "type": "object",
                "properties": {
                  "build": {
                    "type": "string",
                    "example": "latest"
                  },
                  "timeoutSecs": {
                    "type": "integer",
                    "example": 300
                  },
                  "memoryMbytes": {
                    "type": "integer",
                    "example": 1024
                  },
                  "diskMbytes": {
                    "type": "integer",
                    "example": 2048
                  }
                }
              },
              "buildId": {
                "type": "string"
              },
              "defaultKeyValueStoreId": {
                "type": "string"
              },
              "defaultDatasetId": {
                "type": "string"
              },
              "defaultRequestQueueId": {
                "type": "string"
              },
              "buildNumber": {
                "type": "string",
                "example": "1.0.0"
              },
              "containerUrl": {
                "type": "string"
              },
              "usage": {
                "type": "object",
                "properties": {
                  "ACTOR_COMPUTE_UNITS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_WRITES": {
                    "type": "integer",
                    "example": 1
                  },
                  "KEY_VALUE_STORE_LISTS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_INTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_EXTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_SERPS": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_UNBLOCKER_UNITS": {
                    "type": "integer",
                    "example": 0
                  }
                }
              },
              "usageTotalUsd": {
                "type": "number",
                "example": 0.00005
              },
              "usageUsd": {
                "type": "object",
                "properties": {
                  "ACTOR_COMPUTE_UNITS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_WRITES": {
                    "type": "number",
                    "example": 0.00005
                  },
                  "KEY_VALUE_STORE_LISTS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_INTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_EXTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_SERPS": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_UNBLOCKER_UNITS": {
                    "type": "integer",
                    "example": 0
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}