{
  "openapi": "3.0.1",
  "info": {
    "title": "Bulk URL Status Checker",
    "description": "Check large URL lists for status codes, redirects, broken links, response timing, headers, titles, canonical URLs, and robots meta.",
    "version": "0.1",
    "x-build-id": "ZeWYNgvxpRIQtpDel"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/fetch_cat~bulk-url-status-checker/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-fetch_cat-bulk-url-status-checker",
        "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/fetch_cat~bulk-url-status-checker/runs": {
      "post": {
        "operationId": "runs-sync-fetch_cat-bulk-url-status-checker",
        "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/fetch_cat~bulk-url-status-checker/run-sync": {
      "post": {
        "operationId": "run-sync-fetch_cat-bulk-url-status-checker",
        "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": {
          "urls": {
            "title": "URLs",
            "type": "array",
            "description": "Add public HTTP(S) URLs, one per row. Domains without a scheme use HTTPS. Provide this or another URL source; sources are combined. Only standard ports 80/443 are accepted. Private hosts, embedded credentials and credential-like query parameters are rejected before checking; an invalid or unresolvable supplied target can stop the run.",
            "items": {
              "type": "string"
            }
          },
          "urlsText": {
            "title": "URLs as text",
            "type": "string",
            "description": "Optional newline, comma, semicolon, tab, or space separated URLs pasted from a spreadsheet or export."
          },
          "listUrl": {
            "title": "Hosted URL list",
            "type": "string",
            "description": "Optional URL of a text or CSV-like file containing URLs separated by newlines, commas, spaces, tabs, or semicolons."
          },
          "sitemapUrl": {
            "title": "Sitemap URL",
            "type": "string",
            "description": "Optional public XML sitemap URL. Checks the <loc> entries in this file; it does not recursively expand child sitemaps from an index. Use a page sitemap rather than a sitemap index."
          },
          "maxUrls": {
            "title": "Max URLs",
            "minimum": 1,
            "maximum": 100000,
            "type": "integer",
            "description": "Maximum URLs after trimming, removing identical input strings and combining all sources. The form and schema default is 20; raw runtime omission resolves to 1000. Set an explicit limit for predictable API and saved-task inputs. Equivalent spellings of a URL may still produce separate checks.",
            "default": 20
          },
          "includeSeoMeta": {
            "title": "Include SEO meta",
            "type": "boolean",
            "description": "For HTML responses, parse title, meta description, canonical URL, and robots meta. Disable for fastest status-only runs.",
            "default": true
          },
          "concurrency": {
            "title": "Concurrency",
            "minimum": 1,
            "maximum": 200,
            "type": "integer",
            "description": "How many URLs to check in parallel. Lower this for small or fragile websites.",
            "default": 20
          },
          "timeoutSecs": {
            "title": "Timeout per URL (seconds)",
            "minimum": 3,
            "maximum": 120,
            "type": "integer",
            "description": "Timeout for each individual request, in seconds. A URL can require several requests for redirects or method fallback; this is not a total time limit for the entire URL check.",
            "default": 15
          },
          "method": {
            "title": "Request method",
            "enum": [
              "head-get-fallback",
              "get",
              "head"
            ],
            "type": "string",
            "description": "Default: HEAD with GET fallback. With Include SEO meta enabled (the default), this mode starts with GET to read HTML. With SEO meta disabled it starts with HEAD and can fall back to GET on request errors or status 403, 405 or 501. GET only always uses GET; HEAD only never falls back and usually has no page metadata.",
            "default": "head-get-fallback"
          },
          "followRedirects": {
            "title": "Follow redirects",
            "type": "boolean",
            "description": "Follow supported redirects up to Max redirects and record each followed hop. When disabled, finalUrl is the first checked URL and isRedirect remains false; statusCode can still be 3xx.",
            "default": true
          },
          "maxRedirects": {
            "title": "Max redirects",
            "minimum": 0,
            "maximum": 30,
            "type": "integer",
            "description": "Maximum redirect hops to follow for each URL. Zero follows none. If the limit is reached, the last observed response can still be a redirect, so finalUrl is not guaranteed to be the ultimate destination.",
            "default": 10
          },
          "includeResponseHeaders": {
            "title": "Include response headers",
            "type": "boolean",
            "description": "Include response headers on completed responses, with sensitive headers redacted. Omitted on request-error rows. Leave disabled for smaller exports.",
            "default": false
          },
          "userAgent": {
            "title": "User-Agent",
            "type": "string",
            "description": "Optional custom User-Agent string sent to target URLs."
          }
        }
      },
      "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}