{
  "openapi": "3.0.1",
  "info": {
    "title": "Reddit Archive Scraper - Posts & Comments ($0.75/1K)",
    "description": "Export archived Reddit posts and comments by subreddit or user with UTC date filters. No Reddit API key, login, cookies, or proxy setup. Built on Arctic Shift for fast historical backfills, AI/RAG datasets, monitoring, and SEO research at $0.75 per 1,000 rows.",
    "version": "0.1",
    "x-build-id": "51Fe1DVsJBuqCZrVW"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/whoareyouanas~reddit-faster-actor/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-whoareyouanas-reddit-faster-actor",
        "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/whoareyouanas~reddit-faster-actor/runs": {
      "post": {
        "operationId": "runs-sync-whoareyouanas-reddit-faster-actor",
        "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/whoareyouanas~reddit-faster-actor/run-sync": {
      "post": {
        "operationId": "run-sync-whoareyouanas-reddit-faster-actor",
        "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",
        "required": [
          "targets"
        ],
        "properties": {
          "targets": {
            "title": "Targets",
            "minItems": 1,
            "uniqueItems": true,
            "type": "array",
            "description": "Reddit targets in r/name or u/name form.",
            "items": {
              "type": "string"
            }
          },
          "datasets": {
            "title": "Datasets",
            "type": "array",
            "description": "Select which Reddit object types to download.",
            "items": {
              "type": "string",
              "enum": [
                "posts",
                "comments"
              ],
              "enumTitles": [
                "Posts",
                "Comments"
              ]
            },
            "default": [
              "posts"
            ]
          },
          "startDate": {
            "title": "Start date",
            "type": "string",
            "description": "UTC lower bound. Supports YYYY-MM-DD, ISO datetime, epoch seconds, epoch milliseconds, none, or all.",
            "default": "2024-01-01"
          },
          "endDate": {
            "title": "End date",
            "type": "string",
            "description": "UTC upper bound. YYYY-MM-DD is exclusive of the next UTC day. Use now for the current time.",
            "default": "2024-01-01"
          },
          "maxItemsPerKind": {
            "title": "Max items per dataset",
            "minimum": 1,
            "type": "integer",
            "description": "Optional cap for newly pushed rows per selected dataset and target.",
            "default": 1
          },
          "maxPagesPerKind": {
            "title": "Max pages per dataset",
            "minimum": 1,
            "type": "integer",
            "description": "Optional cap for fetched non-empty API pages per selected dataset and target."
          },
          "limit": {
            "title": "API limit",
            "type": "string",
            "description": "Arctic Shift limit parameter. Increase for large exports; the prefilled value keeps example runs small.",
            "default": "5"
          },
          "windowDays": {
            "title": "Window days",
            "minimum": 0,
            "type": "number",
            "description": "Maximum time span per API search request. Use 0 to disable windowing.",
            "default": 1
          },
          "minWindowSeconds": {
            "title": "Minimum window seconds",
            "minimum": 1,
            "type": "integer",
            "description": "Smallest retry window after oversized API range responses.",
            "default": 60
          },
          "requestDelayMs": {
            "title": "Request delay",
            "minimum": 0,
            "type": "integer",
            "description": "Delay between successful non-empty page requests.",
            "default": 0
          },
          "timeoutSeconds": {
            "title": "Timeout",
            "minimum": 1,
            "type": "number",
            "description": "HTTP timeout for each Arctic Shift request.",
            "default": 60
          },
          "retries": {
            "title": "Retries",
            "minimum": 0,
            "type": "integer",
            "description": "Retries for transient HTTP or network failures.",
            "default": 3
          },
          "retrySleepSeconds": {
            "title": "Retry sleep",
            "minimum": 0,
            "type": "number",
            "description": "Base sleep between retries. Later retries wait a multiple of this value.",
            "default": 2
          },
          "skipMetadata": {
            "title": "Skip metadata",
            "type": "boolean",
            "description": "Skip the subreddit/user metadata request. Provide startDate for large ranges when enabled.",
            "default": false
          },
          "dryRun": {
            "title": "Dry run",
            "type": "boolean",
            "description": "Build request URLs and summary records without fetching posts/comments or pushing dataset rows.",
            "default": false
          },
          "resumeFromState": {
            "title": "Resume from state",
            "type": "boolean",
            "description": "Continue from checkpoint records in the default key-value store when present.",
            "default": true
          },
          "verboseLog": {
            "title": "Verbose log",
            "type": "boolean",
            "description": "Log each progress update instead of every page checkpoint interval.",
            "default": false
          },
          "baseUrl": {
            "title": "API base URL",
            "type": "string",
            "description": "Advanced override for the Arctic Shift Photon Reddit API base URL.",
            "default": "https://arctic-shift.photon-reddit.com/api"
          }
        }
      },
      "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
                  }
                }
              },
              "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}