{
  "openapi": "3.0.1",
  "info": {
    "title": "AI Domain Finder - Confirmed Available Domains",
    "description": "Describe your idea in plain English. Get up to 50 brandable domain names confirmed available via RDAP and WHOIS, scored on TLD fit, typo-resistance, and multi-language safety, each tagged register / consider / monitor / skip.",
    "version": "0.0",
    "x-build-id": "B08aaE28ZUbB1k3Pc"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/marielise.dev~ai-domain-finder/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-marielise.dev-ai-domain-finder",
        "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/marielise.dev~ai-domain-finder/runs": {
      "post": {
        "operationId": "runs-sync-marielise.dev-ai-domain-finder",
        "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/marielise.dev~ai-domain-finder/run-sync": {
      "post": {
        "operationId": "run-sync-marielise.dev-ai-domain-finder",
        "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": [
          "idea",
          "aiApiKey"
        ],
        "properties": {
          "idea": {
            "title": "Idea Description",
            "type": "string",
            "description": "Describe the business, product, niche, customer, or positioning in plain English. Example: 'a marketplace for freelance dog walkers in Europe'."
          },
          "keywords": {
            "title": "Seed Keywords",
            "type": "array",
            "description": "Optional anchor words the AI should incorporate or riff on when inventing names."
          },
          "tlds": {
            "title": "TLDs to Check",
            "type": "array",
            "description": "Domain extensions to include when generating and checking names.",
            "default": [
              ".com",
              ".io",
              ".co",
              ".ai",
              ".app"
            ]
          },
          "count": {
            "title": "Results to Return",
            "minimum": 1,
            "maximum": 50,
            "type": "integer",
            "description": "How many confirmed available domains to return.",
            "default": 10
          },
          "candidatePoolSize": {
            "title": "Candidate Pool Size",
            "minimum": 10,
            "maximum": 60,
            "type": "integer",
            "description": "How many AI-generated domain candidates to create before availability checks. Leave empty to use an adaptive default. Larger pools surface more distinct quality names."
          },
          "style": {
            "title": "Naming Style",
            "enum": [
              "creative",
              "professional",
              "playful",
              "minimal"
            ],
            "type": "string",
            "description": "Branding tone to bias the AI toward.",
            "default": "creative"
          },
          "avoidWords": {
            "title": "Avoid Words",
            "type": "array",
            "description": "Words or fragments the AI should not use in generated names."
          },
          "maxLength": {
            "title": "Max Name Length",
            "minimum": 4,
            "maximum": 30,
            "type": "integer",
            "description": "Maximum number of characters for the domain name part only, excluding the TLD.",
            "default": 15
          },
          "aiProvider": {
            "title": "AI Provider",
            "enum": [
              "anthropic",
              "openai"
            ],
            "type": "string",
            "description": "Which AI provider to use for domain generation and relevance scoring.",
            "default": "anthropic"
          },
          "aiApiKey": {
            "title": "AI API Key",
            "type": "string",
            "description": "API key for the selected AI provider. This field is encrypted by Apify."
          },
          "domainrApiKey": {
            "title": "Domainr API Key (optional enricher)",
            "type": "string",
            "description": "Optional. Default checks use RDAP + native whois (no key needed, free, authoritative). Supplying a Domainr key adds aftermarket/marketed signal alongside the default check."
          },
          "porkbunApiKey": {
            "title": "Porkbun API Key (optional enricher)",
            "type": "string",
            "description": "Optional. When provided alongside the secret key, adds Porkbun price quotes and a premium-domain flag to results."
          },
          "porkbunSecretKey": {
            "title": "Porkbun Secret Key (optional enricher)",
            "type": "string",
            "description": "Optional. Required together with the Porkbun API key."
          },
          "excludePremium": {
            "title": "Exclude Premium Domains",
            "type": "boolean",
            "description": "When true, domains flagged as 'premium' by registries (sold at marked-up prices) are filtered out of results. Defaults to true.",
            "default": true
          },
          "ideaType": {
            "title": "Idea Type (Optional)",
            "enum": [
              "marketplace",
              "saas-b2b",
              "saas-b2c",
              "dev-tool",
              "ai-product",
              "consumer-app",
              "content-site",
              "agency",
              "portfolio",
              "ecommerce",
              "unknown"
            ],
            "type": "string",
            "description": "Skip the AI auto-classification step by providing the business type directly. Leave blank to auto-classify. Affects TLD scoring + generator prompt."
          },
          "relevanceFloor": {
            "title": "Relevance Floor",
            "minimum": 0,
            "maximum": 10,
            "type": "integer",
            "description": "Drop any candidate whose AI relevance score (0-10) falls below this floor. Higher = stricter. Default 5.5.",
            "default": 5
          },
          "runSafetyCheck": {
            "title": "Run Multi-Language Safety Check",
            "type": "boolean",
            "description": "When true, runs an AI pass that flags names with negative phonetic/sexual/scatological/cultural connotations across English, Spanish, French, Italian, German, Dutch, and Portuguese. Adds ~1 AI call per run. Defaults to true.",
            "default": true
          },
          "runBrandClashCheck": {
            "title": "Run Brand Clash Check",
            "type": "boolean",
            "description": "When true, runs an AI pass that flags names confusingly similar to famous existing brands. Adds ~1 AI call per run. Defaults to true.",
            "default": true
          },
          "runTypoCheck": {
            "title": "Run Typo-Resistance Check",
            "type": "boolean",
            "description": "When true, runs an AI pass that flags names which LOOK LIKE typos or mangled real words (e.g. 'dogstrid' reading as botched 'stride'). Genuine invented brand names like 'walkoos' or 'spotify' pass through. Adds ~1 AI call per run. Defaults to true.",
            "default": true
          }
        }
      },
      "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}