{
  "openapi": "3.0.1",
  "info": {
    "title": "Internal test build — use wechat-official-account-scraper",
    "description": "Internal QA twin. Use the supported product instead: https://apify.com/korado_labs/wechat-official-account-scraper",
    "version": "0.4",
    "x-build-id": "lcWY4sD4RW3mJFRPT"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/korado_labs~wechat-oa-dev-test/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-korado_labs-wechat-oa-dev-test",
        "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/korado_labs~wechat-oa-dev-test/runs": {
      "post": {
        "operationId": "runs-sync-korado_labs-wechat-oa-dev-test",
        "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/korado_labs~wechat-oa-dev-test/run-sync": {
      "post": {
        "operationId": "run-sync-korado_labs-wechat-oa-dev-test",
        "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": {
          "operation": {
            "title": "Operation",
            "enum": [
              "articleSearch",
              "accountSearch",
              "accountRecentArticles",
              "articleDetail",
              "monitorAccounts"
            ],
            "type": "string",
            "description": "Which public-source operation to run: search indexed articles, search accounts, list an account's recent indexed articles, extract detail for specific article URLs, or monitor accounts for new and changed articles.",
            "default": "articleSearch"
          },
          "keyword": {
            "title": "Keyword",
            "maxLength": 200,
            "type": "string",
            "description": "Search term for articleSearch and accountSearch. If articleSearch is run with no other source fields, the Actor uses the demo keyword 科技 so the daily quality check returns real rows. Chinese terms generally have the best index coverage."
          },
          "account": {
            "title": "Account",
            "maxLength": 200,
            "type": "string",
            "description": "Required for accountRecentArticles. Accepts the public display name, a wxid such as rmrbwx, or a gh_ id. Results are limited to publicly indexed articles."
          },
          "articleUrls": {
            "title": "Article URLs",
            "maxItems": 200,
            "type": "array",
            "description": "HTTPS mp.weixin.qq.com article URLs for articleDetail. Do not set a schema default here — a default array would be injected into unrelated operations.",
            "items": {
              "type": "string"
            }
          },
          "watchlist": {
            "title": "Watchlist",
            "maxItems": 200,
            "type": "array",
            "description": "Required for monitorAccounts. Each value may be a public display name, a wxid, or a gh_ id. Only new or changed articles are returned and billed on later runs. No schema default — an empty default would contaminate other operations.",
            "items": {
              "type": "string"
            }
          },
          "since": {
            "title": "Published since",
            "maxLength": 40,
            "type": "string",
            "description": "Optional ISO-8601 date/datetime. Rows with known publication times older than this are skipped."
          },
          "maxPages": {
            "title": "Maximum index pages",
            "minimum": 1,
            "maximum": 50,
            "type": "integer",
            "description": "Stops earlier when pages are empty or fully duplicate. More pages do not guarantee more coverage.",
            "default": 3
          },
          "webhookUrl": {
            "title": "HTTPS webhook",
            "maxLength": 2048,
            "type": "string",
            "description": "Optional monitor delivery URL. Must be public HTTPS; private, loopback, link-local and credential-bearing URLs are rejected. Payloads are HMAC-SHA256 signed."
          },
          "resolveLinks": {
            "title": "Resolve article links",
            "type": "boolean",
            "description": "Replace session-bound Sogou redirect links in results with the real mp.weixin.qq.com article URL (one extra request per row, so runs are slower). Row identity and change tracking are stable either way.",
            "default": false
          },
          "proxyConfiguration": {
            "title": "Proxy configuration",
            "type": "object",
            "description": "Optional Apify Proxy settings. Direct account search in the source index is geo-limited: a China (CN) residential exit restores it. Without a proxy the Actor automatically derives accounts from the article index instead. Proxies also add resilience against source rate limits."
          },
          "proxyUrls": {
            "title": "Custom proxy URLs",
            "maxItems": 50,
            "type": "array",
            "description": "Bring-your-own HTTP(S) proxies, e.g. http://user:pass@host:port, rotated per request. Used only when Proxy configuration above is empty or unavailable.",
            "items": {
              "type": "string"
            }
          }
        }
      },
      "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}