{
  "openapi": "3.0.1",
  "info": {
    "title": "Claude Prompt Actor – GEO - API + Web Search, Citations",
    "description": "Sends prompts to Claude via the Anthropic API (BYOK) with web search enabled, and returns the answer as text + markdown, the cited sources and aggregated domains.",
    "version": "0.1",
    "x-build-id": "YCAYEYxZVqcomSJXO"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/automation_nerd~claude-prompt-actor/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-automation_nerd-claude-prompt-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/automation_nerd~claude-prompt-actor/runs": {
      "post": {
        "operationId": "runs-sync-automation_nerd-claude-prompt-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/automation_nerd~claude-prompt-actor/run-sync": {
      "post": {
        "operationId": "run-sync-automation_nerd-claude-prompt-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": [
          "prompts",
          "apiKey"
        ],
        "properties": {
          "prompts": {
            "title": "Prompts",
            "type": "array",
            "description": "Questions/prompts to send to Claude. Each prompt runs in its own independent conversation.",
            "default": [
              "What are the most popular Nike products?"
            ],
            "items": {
              "type": "string"
            }
          },
          "apiKey": {
            "title": "Anthropic API key (BYOK)",
            "type": "string",
            "description": "Your own Anthropic API key (starts with 'sk-ant-'). Get one at https://platform.claude.com/settings/keys (Create Key). Safe to enter: this is a secret field — Apify stores it encrypted, it is never shown in the run input, log or dataset, and it is only used to call the Anthropic API. Tokens are billed to your own Anthropic account (BYOK, no markup); you can revoke or rotate the key anytime in the Anthropic console."
          },
          "model": {
            "title": "Model",
            "enum": [
              "claude-opus-4-8",
              "claude-sonnet-5",
              "claude-haiku-4-5",
              "claude-fable-5"
            ],
            "type": "string",
            "description": "Which Claude model to use. Opus 4.8 is the most capable (default); switch to Sonnet or Haiku for lower cost. Fable 5 is the strongest and most expensive tier.",
            "default": "claude-opus-4-8"
          },
          "overrideSystemPrompt": {
            "title": "Override system prompt",
            "type": "string",
            "description": "Leave empty to use the Actor's built-in Claude.ai/Desktop-style system prompt (warm tone, Jan 2026 knowledge cutoff, minimal formatting, web-search-aware) — it is applied automatically, so you don't need to paste it here. Set this only to REPLACE that default with your own system prompt. The token {{CURRENT_DATE}} is replaced with today's date at runtime."
          },
          "webSearch": {
            "title": "Enable web search",
            "type": "boolean",
            "description": "Let Claude use Anthropic's server-side web search tool to ground answers in current information and produce cited sources. Turn off for pure model-knowledge answers (no sources).",
            "default": true
          },
          "maxSearchUses": {
            "title": "Max web searches per prompt",
            "minimum": 1,
            "maximum": 20,
            "type": "integer",
            "description": "Upper bound on how many web searches Claude may run while answering one prompt. Lower = cheaper and faster; higher = more thorough. Only applies when web search is enabled.",
            "default": 5
          },
          "extendedThinking": {
            "title": "Extended thinking",
            "type": "boolean",
            "description": "Enable adaptive extended thinking (Claude reasons before answering). Improves hard questions at the cost of extra tokens/latency. Ignored for Haiku 4.5 (not supported).",
            "default": false
          },
          "maxTokens": {
            "title": "Max output tokens",
            "minimum": 256,
            "maximum": 64000,
            "type": "integer",
            "description": "Maximum length of Claude's answer (in tokens). The request is streamed, so large values are safe from timeouts.",
            "default": 8192
          },
          "maxConcurrency": {
            "title": "Max concurrency (parallel prompts)",
            "minimum": 1,
            "maximum": 20,
            "type": "integer",
            "description": "How many prompts to send to the API in parallel. Higher = faster; bounded by your Anthropic rate limits. No extra memory needed (no browser).",
            "default": 3
          },
          "maxRequestRetries": {
            "title": "Max retries per prompt",
            "minimum": 0,
            "maximum": 8,
            "type": "integer",
            "description": "How often to retry a prompt on a transient API error (rate limit / 5xx / connection). Reported per item as 'attempts'. Refusals and invalid requests are not retried.",
            "default": 2
          }
        }
      },
      "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}