{
  "openapi": "3.0.1",
  "info": {
    "title": "Twitter Profile Scraper With Contact Email",
    "description": "Twitter Profile Scraper: Extract profile details including usernames, bios, follower counts, websites, profile URLs, and publicly available contact emails. Build enriched datasets for lead generation, influencer research, prospecting, audience analysis, and social media intelligence.",
    "version": "0.1",
    "x-build-id": "plmt15cHhEn77xRMR"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/api-empire~twitter-profile-scraper/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-api-empire-twitter-profile-scraper",
        "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/api-empire~twitter-profile-scraper/runs": {
      "post": {
        "operationId": "runs-sync-api-empire-twitter-profile-scraper",
        "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/api-empire~twitter-profile-scraper/run-sync": {
      "post": {
        "operationId": "run-sync-api-empire-twitter-profile-scraper",
        "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": {
          "profileUrls": {
            "title": "🔗 Profile URLs",
            "type": "array",
            "description": "List of Twitter/X profile URLs (e.g., https://x.com/elonmusk). Required if handles is empty. (Accepts the base actor's `startUrls` key too.)",
            "items": {
              "type": "string"
            }
          },
          "handles": {
            "title": "🏷️ Twitter/X Handles",
            "type": "array",
            "description": "List of usernames without the @ (e.g., elonmusk). Required if profileUrls is empty. (Accepts the base actor's `twitterHandles` key too.)",
            "items": {
              "type": "string"
            }
          },
          "maxLeadRecords": {
            "title": "📦 Maximum Records",
            "minimum": 1,
            "type": "integer",
            "description": "Hard cap on total items (tweets/replies/lead-profile records) written across the whole run. Default 100 when omitted. (Accepts the base actor's `maxItems` key too.)"
          },
          "scanStartDate": {
            "title": "📅 Start Date (UTC)",
            "type": "string",
            "description": "Lower bound for tweet date. Use absolute date (YYYY-MM-DD) or relative value (for example, 7 days). Empty = no lower bound. (Accepts the base actor's `start` key too.)"
          },
          "scanEndDate": {
            "title": "📅 End Date (UTC)",
            "type": "string",
            "description": "Upper bound for tweet date. Use absolute date (YYYY-MM-DD) or relative value (for example, 1 day). Empty = no upper bound. (Accepts the base actor's `end` key too.)"
          },
          "includeRetweets": {
            "title": "🔁 Include Native Retweets",
            "type": "boolean",
            "description": "When off (unchecked), native retweets (full_text starts with 'RT @') are dropped — this matches the base actor's own default. Only effective for the last ~7-10 days. (Accepts the base actor's `includeNativeRetweets` key too.)"
          },
          "requireMedia": {
            "title": "🖼️ Only Tweets With Images",
            "type": "boolean",
            "description": "Keep only tweets that contain at least one photo. Off (unchecked) matches the base actor's own default. (Accepts the base actor's `onlyImages` key too.)"
          },
          "emitLeadProfile": {
            "title": "👤 Emit Lead Profile Record",
            "type": "boolean",
            "description": "Emit one profile/about record per user, enriched with the same bio-contact and business-heuristic fields as tweet rows. Off (unchecked) matches the base actor's own default. (Accepts the base actor's `getAboutData` key too.)"
          },
          "extractBioContacts": {
            "title": "🎯 Extract Bio Contact & Lead Signals",
            "type": "boolean",
            "description": "Turn on bio/profile contact & lead-signal extraction (bioEmail, profileWebsiteUrl, bioExpandedLinks, isLikelyBusinessAccount).",
            "default": true
          },
          "includeMediaVariants": {
            "title": "🖼️ Include Full Media Asset Variants",
            "type": "boolean",
            "description": "Turn on full media asset variant extraction (mediaAssets[], hasVideo, hasGif, mediaCount).",
            "default": true
          },
          "includeReplies": {
            "title": "💬 Scrape Replies",
            "type": "boolean",
            "description": "Fetch replies to each qualifying tweet via the TweetDetail endpoint. Requires login cookies. Off (unchecked) matches the base actor's own default. (Accepts the base actor's `getReplies` key too.)"
          },
          "replyCountThreshold": {
            "title": "📈 Minimum Reply Count",
            "minimum": 0,
            "type": "integer",
            "description": "Only fetch replies for tweets whose reply_count is at least this value. (Accepts the base actor's `minReplyCount` key too.)"
          },
          "authToken": {
            "title": "🔐 auth_token Cookie",
            "type": "string",
            "description": "Value of the `auth_token` cookie from x.com (devtools → Application → Cookies). Required for includeReplies."
          },
          "csrfToken": {
            "title": "🛡️ ct0 Cookie",
            "type": "string",
            "description": "Value of the `ct0` cookie from x.com. Required for includeReplies."
          },
          "proxyConfiguration": {
            "title": "🌐 Proxy Configuration",
            "type": "object",
            "description": "Apify proxy configuration. Recommended for reliability against rate limits."
          }
        }
      },
      "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}