{
  "openapi": "3.0.1",
  "info": {
    "title": "Podcast Activity Tracker: Active Apple Podcasts & Charts",
    "description": "Find active Apple Podcasts shows by keyword, chart or genre. Each row adds real activity from the show RSS feed: last episode, cadence, episodes per 90 days and a 0-100 activity score. No emails, no login, no API key.",
    "version": "0.2",
    "x-build-id": "H331dxkzCnV6CIHIN"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/transparent_meteorite~apple-podcasts-activity-tracker/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-transparent_meteorite-apple-podcasts-activity-tracker",
        "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/transparent_meteorite~apple-podcasts-activity-tracker/runs": {
      "post": {
        "operationId": "runs-sync-transparent_meteorite-apple-podcasts-activity-tracker",
        "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/transparent_meteorite~apple-podcasts-activity-tracker/run-sync": {
      "post": {
        "operationId": "run-sync-transparent_meteorite-apple-podcasts-activity-tracker",
        "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": {
          "searchTerms": {
            "title": "Search terms",
            "type": "array",
            "description": "Keywords searched in the Apple Podcasts directory (show title, publisher and topic), for example marketing, saas, true crime. Each term returns up to 200 shows per country.",
            "items": {
              "type": "string"
            }
          },
          "chartGenres": {
            "title": "Apple charts (genres)",
            "type": "array",
            "description": "Read the Apple Podcasts top chart for these genres in every selected country. All podcasts = the overall Top Shows chart. Each show keeps its chartRank.",
            "items": {
              "type": "string",
              "enum": [
                "all",
                "arts",
                "business",
                "comedy",
                "education",
                "fiction",
                "government",
                "health-fitness",
                "history",
                "kids-family",
                "leisure",
                "music",
                "news",
                "religion-spirituality",
                "science",
                "society-culture",
                "sports",
                "tv-film",
                "technology",
                "true-crime",
                "marketing",
                "entrepreneurship",
                "management",
                "business-news",
                "investing",
                "non-profit",
                "self-improvement",
                "how-to",
                "language-learning",
                "comedy-interviews"
              ],
              "enumTitles": [
                "All podcasts (Top Shows)",
                "Arts",
                "Business",
                "Comedy",
                "Education",
                "Fiction",
                "Government",
                "Health & Fitness",
                "History",
                "Kids & Family",
                "Leisure",
                "Music",
                "News",
                "Religion & Spirituality",
                "Science",
                "Society & Culture",
                "Sports",
                "TV & Film",
                "Technology",
                "True Crime",
                "Business: Marketing",
                "Business: Entrepreneurship",
                "Business: Management",
                "News: Business News",
                "Business: Investing",
                "Business: Non-Profit",
                "Education: Self-Improvement",
                "Education: How To",
                "Education: Language Learning",
                "Comedy: Comedy Interviews"
              ]
            }
          },
          "chartLimit": {
            "title": "Shows per chart",
            "minimum": 1,
            "maximum": 200,
            "type": "integer",
            "description": "How many chart positions to read per genre and country (1-200; the overall Top Shows chart allows up to 100, larger values use the classic chart feed).",
            "default": 50
          },
          "appleIds": {
            "title": "Apple ids or URLs",
            "type": "array",
            "description": "Specific shows to check, as Apple ids (1200361736) or Apple Podcasts URLs (https://podcasts.apple.com/us/podcast/the-daily/id1200361736). Useful for tracking a watch list.",
            "items": {
              "type": "string"
            }
          },
          "countries": {
            "title": "Countries",
            "type": "array",
            "description": "Apple storefronts as 2-letter codes, for example us, gb, ca, au, de. Search and charts run per country.",
            "default": [
              "us"
            ],
            "items": {
              "type": "string"
            }
          },
          "onlyActive": {
            "title": "Only active shows",
            "type": "boolean",
            "description": "Return only shows whose newest episode is within the active window below. Turn off to also get dormant shows (they get isActive = false).",
            "default": true
          },
          "activeWithinDays": {
            "title": "Active within (days)",
            "minimum": 1,
            "maximum": 3650,
            "type": "integer",
            "description": "A show is active when its newest episode was published within this many days (1-3650).",
            "default": 45
          },
          "minEpisodes": {
            "title": "Minimum episodes",
            "minimum": 0,
            "type": "integer",
            "description": "Skip shows with fewer episodes than this (Apple episode count). 0 = no filter.",
            "default": 0
          },
          "language": {
            "title": "Language",
            "type": "string",
            "description": "Keep only shows whose feed declares this language, for example en, es or pt-br (prefix match: en also matches en-us). Leave empty for any language."
          },
          "excludeExplicit": {
            "title": "Exclude explicit shows",
            "type": "boolean",
            "description": "Skip shows Apple or the feed marks as explicit (brand-safety filter for sponsors).",
            "default": false
          },
          "includeFeedActivity": {
            "title": "Read RSS feeds for activity",
            "type": "boolean",
            "description": "Read each show public RSS feed (newest 400 KB) to measure last episode, cadence and episodes per 30/90 days. Turn off for a faster Apple-only run (activity then uses the Apple latest-episode date only).",
            "default": true
          },
          "onlyNewSinceLastRun": {
            "title": "Only new since last run",
            "type": "boolean",
            "description": "Monitor mode: skip shows delivered in an earlier run (remembered by Apple id in a named key-value store). A repeat run on the same input charges only for new shows.",
            "default": false
          },
          "stateStoreName": {
            "title": "Monitor store name",
            "type": "string",
            "description": "Named key-value store that remembers delivered shows. Use a different name per watch list.",
            "default": "apple-podcasts-activity-tracker-seen"
          },
          "maxItems": {
            "title": "Max shows",
            "minimum": 1,
            "maximum": 2000,
            "type": "integer",
            "description": "Maximum podcast rows delivered (and charged) this run. Rows are delivered in source order (your ids, chart rank, then search relevance).",
            "default": 100
          }
        }
      },
      "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}