openapi: 3.0.0 info: title: "MineLead API" version: "1.0" description: "MineLead API helps you find company emails, generate leads, and create value for youself and for other." termsOfService: "https://minelead.io/terms" x-logo: url: "https://minelead.io/static/images/minelead-icon.svg" backgroundColor: "#fafbfb" altText: "Minelead Logo - Redoc" contact: email: "support@minelead.com" sidebar: backgroundColor: "#fff" servers: - url: https://api.minelead.io/v1 variables: {} paths: /search: get: summary: Search description: Search for leads operationId: search parameters: - name: key in: query description: "" required: true style: form explode: true schema: type: string example: myApiKey - name: domain in: query description: "" required: true style: form explode: true schema: type: string example: domain.com - name: name in: query description: "If no domain is provided and name is given, search will be based on name" required: false style: form explode: true schema: type: string example: company name - name: max-emails in: query description: "Display a maximum of 4 emails for a domain (optional)" required: false style: form explode: true schema: type: number example: max-emails=4 - name: generic in: query description: "Display only generic emails (optional)" required: false style: form explode: true schema: type: boolean example: generic=true - name: light-mode in: query description: "Display only already found emails" required: false style: form explode: true schema: type: boolean example: light_mode=true - name: enrich in: query description: "Enrich emails with professional profile data (title, location, gender, industry, summary) powered by Minelead's proprietary enrichment system. Up to 10 unenriched emails are processed per request." required: false style: form explode: true schema: type: boolean example: enrich=true - name: deep in: query description: | **Deep Search** — Minelead's proprietary AI engine discovers real employees' emails for each company at a 10x higher rate. Returns a `deep_search` object alongside the standard `emails` array, containing `persons` with name, title, verified email, and professional profile URL. **Cost:** 5 credits (upfront) + 2 credits per verified email found. Blocked on catch-all domains (no credits charged). required: false style: form explode: true schema: type: boolean example: true - name: max_deep_results in: query description: "Maximum number of verified emails to return from Deep Search. Defaults to 10. Only used when deep=true." required: false style: form explode: true schema: type: integer example: 10 x-code-samples: - lang: "curl" source: curl -L -X GET "https://api.minelead.io/v1/search/?domain=www.example.com&key=yourapikey&max-emails=4" - lang: "curl (Deep Search)" source: curl -L -X GET "https://api.minelead.io/v1/search/?domain=hubspot.com&key=yourapikey&deep=true&max_deep_results=10" responses: 200: description: "" headers: Date: content: text/plain: schema: type: string example: Thu, 11 Jul 2019 12:56:31 GMT Server: content: text/plain: schema: type: string example: WSGIServer/0.2 CPython/3.6.8 Content-Length: content: text/plain: schema: type: string example: 1931 Vary: content: text/plain: schema: type: string example: Origin X-Frame-Options: content: text/plain: schema: type: string example: SAMEORIGIN content: application/json: schema: $ref: "#/components/schemas/Search" example: domain: domain.com status: found pattern: '{pattern}@domain.com' emails: - email: example1@domain.com verified: true saved: false email_type: personal name: John Smith title: Senior Engineer location: San Francisco, CA gender: male industry: Software summary: John is a Senior Engineer at Example Corp. - email: press@domain.com verified: true saved: false email_type: generic name: null title: null location: null gender: null industry: null summary: null deep_search: names_found: 12 emails_verified: 8 credits_charged: 21 catch_all: false persons: - name: Sarah Johnson title: Marketing Director email: s.johnson@domain.com quality: 100 verified: true linkedin_url: "https://www.linkedin.com/in/sarah-johnson" twitter_url: null github_url: null - name: Mark Patel title: Head of Sales email: m.patel@domain.com quality: 100 verified: true linkedin_url: "https://www.linkedin.com/in/mark-patel" twitter_url: null github_url: null deprecated: false /enrich: get: summary: Enrich description: | Enrich a single email address with professional profile data (job title, location, gender, industry, summary). Powered by Minelead's proprietary enrichment system. **Cost:** 2 credits per request. operationId: enrich parameters: - name: key in: query description: "Your API key" required: true style: form explode: true schema: type: string example: myApiKey - name: email in: query description: "The email address to enrich" required: true style: form explode: true schema: type: string example: john.smith@example.com - name: name in: query description: "Full name of the person. Optional, but including it improves enrichment accuracy." required: false style: form explode: true schema: type: string example: John Smith - name: company in: query description: "Company name or domain. Optional, but including it alongside name improves enrichment accuracy." required: false style: form explode: true schema: type: string example: example.com x-code-samples: - lang: "curl" source: curl -L -X GET "https://api.minelead.io/v1/enrich/?email=john.smith@example.com&key=yourapikey" responses: 200: description: "" content: application/json: schema: $ref: "#/components/schemas/Enrich" example: status: success email: john.smith@example.com name: John Smith title: Senior Software Engineer location: San Francisco, CA gender: male industry: Software summary: John Smith is a Senior Software Engineer at Example Corp, specializing in backend systems. deprecated: false /buying-intent: get: summary: Buying Intent description: | Analyze a company's buying intent by scanning news, the company's own website, and LinkedIn job postings from the last 180 days. Returns an intent score (0–100), signals grouped by category with source links, predicted purchasing moves, a company profile, and a recommended pitch angle. Each signal is one real-world event, with its source links in `urls`: when several outlets report the same event, they are grouped into one signal listing every link. **Caching:** results are cached per domain for 7 days. Within that window the cached result is returned (and charged) unless `refresh=true` is passed. **Cost:** 5 credits per successful request, including cached results. Errors are not charged. operationId: buying-intent parameters: - name: key in: query description: "Your API key" required: true style: form explode: true schema: type: string example: myApiKey - name: company in: query description: "Company name" required: true style: form explode: true schema: type: string example: Acme Corp - name: domain in: query description: "Company domain (without scheme)" required: true style: form explode: true schema: type: string example: acme.com - name: refresh in: query description: "Pass `true` to skip the 7-day cache and run a fresh analysis." required: false style: form explode: true schema: type: string enum: ["true"] example: "true" - name: level in: query description: "Signal source filter: 1 = news only, 2 = website/LinkedIn only. Omit for both (full analysis). Partial runs always run fresh and are not cached." required: false style: form explode: true schema: type: integer enum: [1, 2] example: 1 x-code-samples: - lang: "curl" source: curl -L -X GET "https://api.minelead.io/v1/buying-intent/?company=Acme+Corp&domain=acme.com&key=yourapikey" responses: 200: description: "Buying intent analysis result" content: application/json: schema: $ref: "#/components/schemas/BuyingIntent" example: status: success company: Acme Corp domain: acme.com intent_score: 80 intent_level: hot confidence: high time_sensitivity: immediate summary: "Acme Corp is actively hiring in sales and engineering, and recently raised a Series B. These signals indicate a company in growth mode with likely demand for CRM, HR, and cloud tools." recommended_pitch_angle: "Lead with ROI-focused sales CRM messaging — they are scaling a sales team post-funding and need tools to manage pipeline." reasoning: "Series B funding and active sales hiring drive a hot intent score." intent_categories: - category: funding strength: high recency: last_30d signals: - text: "Acme Corp raises $50M Series B to expand enterprise offering" period: last_30d date: "2026-09-15" sentiment: positive source_tier: tier_1 urls: - "https://techcrunch.com/2026/09/15/acme-corp-series-b" - "https://www.businesswire.com/news/home/acme-corp-series-b" recommended_solutions: - marketing automation - sales CRM - analytics platform - category: hiring_sales strength: low recency: last_30d signals: - text: "Senior Account Executive at Acme Corp" period: last_30d date: "2026-09-28" sentiment: neutral source_tier: tier_3 urls: - "https://www.linkedin.com/jobs/view/senior-account-executive-at-acme-corp-123456" recommended_solutions: - sales CRM - sales engagement platform - lead enrichment tool predicted_moves: - timeframe: 90_days prediction: "Acme Corp will evaluate a sales engagement platform to onboard its new account executives." driven_by: [hiring_sales, funding] signal_channels: news_network: true company_website: true hiring_signals: true growth_trajectory: accelerating company_profile: description: "Acme Corp builds workflow automation software for mid-market companies." business_model: B2B industry: saas industry_vertical: "workflow automation" meta: date_windows: 30d: "2026-09-06" 90d: "2026-07-08" 180d: "2026-04-09" 400: description: "Missing or invalid parameters" content: application/json: example: status: error message: "Provide both company and domain" 401: description: "Authentication required" content: application/json: example: status: error message: "Authentication required" 402: description: "Insufficient credits" content: application/json: example: status: error message: "Insufficient credits (buying intent costs 5)" 404: description: "No public buying signals found for this company. Not charged. The same answer is returned for up to 90 days unless `refresh=true` is passed." content: application/json: example: status: error message: "No public buying signals found for this company. Pass refresh=true to run a new analysis." 500: description: "Analysis failed" content: application/json: example: status: error message: "Buying intent analysis failed" 503: description: "Search sources temporarily unavailable — retry shortly" content: application/json: example: status: error message: "Buying intent temporarily unavailable. Please try again shortly." deprecated: false /validate: get: summary: Validate description: "Check the validity of an email address. Also detects whether the address belongs to a disposable email provider (returned as `disposable_status`)." operationId: validate parameters: - name: key in: query description: "" required: true style: form explode: true schema: type: string example: myApiKey - name: email in: query description: "" required: true style: form explode: true schema: type: string example: email@domain.com - name: firstname in: query description: "" required: false style: form explode: true schema: type: string example: john - name: lastname in: query description: "" required: false style: form explode: true schema: type: string example: doe x-code-samples: - lang: "curl" source: curl -L -X GET "https://api.minelead.io/v1/validate/?email=name@example.com&key=yourapikey&firstname=john&lastname=doe" responses: 200: description: "" headers: Date: content: text/plain: schema: type: string example: Thu, 11 Jul 2019 12:57:32 GMT Server: content: text/plain: schema: type: string example: WSGIServer/0.2 CPython/3.6.8 Content-Length: content: text/plain: schema: type: string example: 62 Vary: content: text/plain: schema: type: string example: Origin X-Frame-Options: content: text/plain: schema: type: string example: SAMEORIGIN content: application/json: schema: $ref: "#/components/schemas/Validate" example: status: success || catch-all form: true webmail: true mx: true exist: true firstname: john lastname: doe disposable_status: Not Disposable deprecated: false /detect-disposable: get: summary: Detect Disposable description: Check if an email address is from a disposable email provider operationId: detect-disposable parameters: - name: key in: query description: "Your API key" required: true style: form explode: true schema: type: string example: myApiKey - name: email in: query description: "The email address to check" required: true style: form explode: true schema: type: string example: test@10minutemail.com x-code-samples: - lang: "curl" source: curl -L -X GET "https://api.minelead.io/v1/detect-disposable/?email=test@10minutemail.com&key=yourapikey" responses: 200: description: "Disposable email detection result" headers: Date: content: text/plain: schema: type: string example: Thu, 11 Jul 2019 12:57:32 GMT Server: content: text/plain: schema: type: string example: WSGIServer/0.2 CPython/3.6.8 Content-Length: content: text/plain: schema: type: string example: 256 Vary: content: text/plain: schema: type: string example: Origin X-Frame-Options: content: text/plain: schema: type: string example: SAMEORIGIN content: application/json: schema: $ref: "#/components/schemas/DetectDisposable" example: status: success email: test@10minutemail.com disposability_score: 4 format_valid: true spam_score: "NA" domain_type: business disposable_status: "Disposable" a_record_status: "Missing" ptr_record_status: "Missing" mx_record_status: "Present" timestamp: 1625832452.123 deprecated: false /find: get: summary: Find description: Find a professional email using a firstname and a lastname operationId: find parameters: - name: key in: query description: "" required: true style: form explode: true schema: type: string example: myApiKey - name: domain in: query description: "" required: true style: form explode: true schema: type: string example: example.com - name: firstname in: query description: "" required: true style: form explode: true schema: type: string example: firstname - name: lastname in: query description: "" required: true style: form explode: true schema: type: string example: lastname x-code-samples: - lang: "curl" source: curl -L -X GET "https://api.minelead.io/v1/find/?domain=example.com&firstname=john&lastname=smith&key=yourapikey" responses: 200: description: "" headers: Date: content: text/plain: schema: type: string example: Thu, 11 Jul 2019 12:57:32 GMT Server: content: text/plain: schema: type: string example: WSGIServer/0.2 CPython/3.6.8 Content-Length: content: text/plain: schema: type: string example: 62 Vary: content: text/plain: schema: type: string example: Origin X-Frame-Options: content: text/plain: schema: type: string example: SAMEORIGIN content: application/json: schema: $ref: "#/components/schemas/Find" example: status: success domain: example.com firstname: john lastname: smith email: jsmith@example.com deprecated: false /social-email-finder: get: summary: Social Email Finder description: > Find verified professional emails from a YouTube channel or Twitter/X profile URL. Pass the social media profile URL and receive emails grouped by domain, each with a quality score, verification status, and email type (personal vs generic). Cost: 2 credits per successful request (emails found). No charge if no emails are found. operationId: social-email-finder security: - api_key: [] parameters: - name: key in: query description: Your API key required: true style: form explode: true schema: type: string example: myApiKey - name: url in: query description: > Full URL of the social media profile. Supported: youtube.com channel URLs (all formats) and twitter.com / x.com profile URLs. required: true style: form explode: true schema: type: string example: "https://www.youtube.com/@mkbhd" x-code-samples: - lang: "curl" source: curl -L -X GET "https://api.minelead.io/v1/social-email-finder/?url=https://www.youtube.com/%40mkbhd&key=yourapikey" responses: 200: description: Social email finder result content: application/json: schema: $ref: "#/components/schemas/SocialEmailFinder" example: status: found social_url: "https://www.youtube.com/@mkbhd" platform: youtube channel_name: Marques Brownlee message: "Found 2 email(s) across 1 domain(s)" timestamp: 1718000000.0 domains: - domain: mkbhd.com confidence: primary status: found name: MKBHD pattern: "first@domain" emails: - email: marques@mkbhd.com quality: 92 verified: true name: Marques Brownlee email_type: personal saved: false - email: info@mkbhd.com quality: 85 verified: true name: "" email_type: generic saved: false 400: description: Missing or invalid parameters content: application/json: example: status: error message: Please provide a social media URL via the ?url= parameter 401: description: Authentication required content: application/json: example: status: error message: Unauthorized Access 402: description: Insufficient credits content: application/json: example: status: error message: Limit Reached deprecated: false # /convert: # get: # summary: Convert # description: Get domain name from company name and vice-versa # operationId: convert # parameters: # - name: key # in: query # description: "" # required: true # style: form # explode: true # schema: # type: string # example: myApiKey # - name: domain # in: query # description: "" # required: false # style: form # explode: true # schema: # type: string # example: example.com # - name: name # in: query # description: "" # required: false # style: form # explode: true # schema: # type: string # example: example # x-code-samples: # - lang: "curl" # source: curl -L -X GET "https://api.minelead.io/v1/convert/?domain=example.com&key=yourapikey" # responses: # 200: # description: "" # headers: # Date: # content: # text/plain: # schema: # type: string # example: Thu, 11 Jul 2019 12:57:32 GMT # Server: # content: # text/plain: # schema: # type: string # example: WSGIServer/0.2 CPython/3.6.8 # Content-Length: # content: # text/plain: # schema: # type: string # example: 62 # Vary: # content: # text/plain: # schema: # type: string # example: Origin # X-Frame-Options: # content: # text/plain: # schema: # type: string # example: SAMEORIGIN # content: # application/json: # schema: # $ref: "#/components/schemas/Convert" # example: # status: success # domain: example.com # name: example # deprecated: false /tags: post: summary: Generate description: Generate leads from tags operationId: Generate parameters: - name: key in: query description: "" required: true style: form explode: true schema: type: string example: myApiKey requestBody: description: "" content: application/json: schema: $ref: "#/components/schemas/Generator" example: tags: [new york, hotel] required: true x-code-samples: - lang: "curl" source: | curl -L -X POST -d '{ "tags" : [ "new york","hotel" ] }' "https://api.minelead.io/v1/tags/?key=yourapikey" responses: 200: description: "" headers: Date: content: text/plain: schema: type: string example: Thu, 11 Jul 2019 13:48:06 GMT Server: content: text/plain: schema: type: string example: WSGIServer/0.2 CPython/3.6.8 Content-Length: content: text/plain: schema: type: string example: 198 Vary: content: text/plain: schema: type: string example: Origin X-Frame-Options: content: text/plain: schema: type: string example: SAMEORIGIN content: application/json: schema: $ref: "#/components/schemas/Generator" example: status: success companies: ["company1", "company2"] deprecated: false /leads: get: summary: List leads description: List your leads operationId: list-leads parameters: - name: key in: query description: "" required: true style: form explode: true schema: type: string example: myApiKey x-code-samples: - lang: "curl" source: curl -L -X GET "https://api.minelead.io/v1/leads/?key=yourapikey" responses: 200: description: "" headers: Date: content: text/plain: schema: type: string example: Thu, 11 Jul 2019 12:57:51 GMT Server: content: text/plain: schema: type: string example: WSGIServer/0.2 CPython/3.6.8 Content-Length: content: text/plain: schema: type: string example: 1786 Vary: content: text/plain: schema: type: string example: Origin X-Frame-Options: content: text/plain: schema: type: string example: SAMEORIGIN content: application/json: schema: $ref: "#/components/schemas/Leads-ListLeads" example: status: success leads: - id: 1 firstname: jim lastname: smith company: domain1.com email: jim_smith@domain1.com verified: true quality: 100 - id: 2 firstname: john lastname: miller company: domain2.com email: john.miller@domain2.com verified: false quality: 0 - id: 3 firstname: tim lastname: larson company: domain3.com email: tim@domain3.com verified: true quality: 75 deprecated: false post: summary: Add Lead description: Add a lead to your leads operationId: add-lead parameters: - name: key in: query description: "" required: true style: form explode: true schema: type: string example: myApiKey requestBody: description: "" content: application/json: schema: $ref: "#/components/schemas/Leads-AddLeadRequest" example: leads: - email: press@domain1.com - email: info@domain2.com required: true x-code-samples: - lang: "curl" source: | curl -L -X POST -d '{ "leads" : [ {"email": "name@example.com"} ] }' "https://api.minelead.io/v1/leads/?key=yourapikey" responses: 200: description: "" headers: Date: content: text/plain: schema: type: string example: Thu, 11 Jul 2019 13:48:06 GMT Server: content: text/plain: schema: type: string example: WSGIServer/0.2 CPython/3.6.8 Content-Length: content: text/plain: schema: type: string example: 198 Vary: content: text/plain: schema: type: string example: Origin X-Frame-Options: content: text/plain: schema: type: string example: SAMEORIGIN content: application/json: schema: $ref: "#/components/schemas/Leads-AddLead" example: status: success message: - leads added successfully - all the leads provided are already in your account deprecated: false put: summary: Edit Lead description: Edit a lead from your leads operationId: edit-lead parameters: - name: key in: query description: "" required: true style: form explode: true schema: type: string example: myApiKey requestBody: description: "" content: application/json: schema: $ref: "#/components/schemas/Leads-DeleteLeadRequest" example: email: - email: musk@domain1.com lastname: musk - email: elon@domain2.com firstname: elon required: true x-code-samples: - lang: "curl" source: | curl -L -X PUT -d '{ "leads" : [ {"email":"name@example.com"} ] }' "https://api.minelead.io/v1/leads/?key=yourapikey" responses: 200: description: "" headers: Date: content: text/plain: schema: type: string example: Thu, 11 Jul 2019 13:47:05 GMT Server: content: text/plain: schema: type: string example: WSGIServer/0.2 CPython/3.6.8 Content-Length: content: text/plain: schema: type: string example: 194 Vary: content: text/plain: schema: type: string example: Origin X-Frame-Options: content: text/plain: schema: type: string example: SAMEORIGIN content: application/json: schema: $ref: "#/components/schemas/Leads-DeleteLead" example: status: success message: - leads edited successfully - no leads found deprecated: false delete: summary: Delete Lead description: Delete a lead from your leads operationId: delete-lead parameters: - name: key in: query description: "" required: true style: form explode: true schema: type: string example: myApiKey requestBody: description: "" content: application/json: schema: $ref: "#/components/schemas/Leads-DeleteLeadRequest" example: email: - email: press@domain1.com - email: info@domain3.com - email: falseexample required: true x-code-samples: - lang: "curl" source: | curl -L -X DELETE -d '{ "leads" : [ {"email":"name@example.com"} ] }' "https://api.minelead.io/v1/leads/?key=yourapikey" responses: 200: description: "" headers: Date: content: text/plain: schema: type: string example: Thu, 11 Jul 2019 13:47:05 GMT Server: content: text/plain: schema: type: string example: WSGIServer/0.2 CPython/3.6.8 Content-Length: content: text/plain: schema: type: string example: 194 Vary: content: text/plain: schema: type: string example: Origin X-Frame-Options: content: text/plain: schema: type: string example: SAMEORIGIN content: application/json: schema: $ref: "#/components/schemas/Leads-DeleteLead" example: status: success message: - leads deleted successfully - no leads found deprecated: false /history: get: summary: History - List description: List your search history operationId: history-list parameters: - name: key in: query description: "" required: true style: form explode: true schema: type: string example: myApiKey - name: start in: query description: "" required: true style: form explode: true schema: type: integer format: int32 example: 0 - name: limit in: query description: "" required: true style: form explode: true schema: type: integer format: int32 example: 7 x-code-samples: - lang: "curl" source: curl -L -X GET "https://api.minelead.io/v1/history/?start=0&limit=10&key=yourapikey" responses: 200: description: "" headers: Date: content: text/plain: schema: type: string example: Thu, 11 Jul 2019 13:00:16 GMT Server: content: text/plain: schema: type: string example: WSGIServer/0.2 CPython/3.6.8 Content-Length: content: text/plain: schema: type: string example: 939 Vary: content: text/plain: schema: type: string example: Origin X-Frame-Options: content: text/plain: schema: type: string example: SAMEORIGIN content: application/json: schema: $ref: "#/components/schemas/History-List" example: status: success history: - status: found date: 2019-07-11 12:51:15 company: domain: domain7.com - status: found date: 2019-07-08 15:15:20 company: domain: domain6.com - status: found date: 2019-07-08 15:13:08 company: domain: domain5.com - status: found date: 2019-07-08 15:13:01 company: domain: domain4.com - status: found date: 2019-07-08 15:12:43 company: domain: domain3.com - status: found date: 2019-07-08 15:12:28 company: domain: domain2.com - status: found date: 2019-07-08 15:12:07 company: domain: domain1.com deprecated: false /campaigns: get: summary: Campaigns - List description: List your campaigns operationId: campaigns-list parameters: - name: key in: query required: true style: form explode: true schema: type: string example: myApiKey x-code-samples: - lang: "curl" source: curl -L -X GET "https://api.minelead.io/v1/campaigns/?key=yourapikey" responses: 200: headers: Date: content: text/plain: schema: type: string example: Thu, 11 Jul 2019 13:00:16 GMT Server: content: text/plain: schema: type: string example: WSGIServer/0.2 CPython/3.6.8 Content-Length: content: text/plain: schema: type: string example: 939 Vary: content: text/plain: schema: type: string example: Origin X-Frame-Options: content: text/plain: schema: type: string example: SAMEORIGIN content: application/json: schema: $ref: "#/components/schemas/Campaigns-List" example: status: success campaigns: - id: 1 name: Campaign created_time: "2022-10-18T14:59:59.056Z" actuve: true paused: false archived: false completed: false running: false deprecated: false /campaigns-recipients: get: summary: Recipients - List description: List your campaigns recipients lists operationId: recipients-list parameters: - name: key in: query description: "" required: true style: form explode: true schema: type: string example: myApiKey x-code-samples: - lang: "curl" source: curl -L -X GET "https://api.minelead.io/v1/campaigns/?key=yourapikey" responses: 200: description: "" headers: Date: content: text/plain: schema: type: string example: Thu, 11 Jul 2019 13:00:16 GMT Server: content: text/plain: schema: type: string example: WSGIServer/0.2 CPython/3.6.8 Content-Length: content: text/plain: schema: type: string example: 939 Vary: content: text/plain: schema: type: string example: Origin X-Frame-Options: content: text/plain: schema: type: string example: SAMEORIGIN content: application/json: schema: $ref: "#/components/schemas/Recipients-List" example: status: success recipient_list: - id: 1 name: My list recipients_count: 2 recipients: - john@minelead.io - jane@minelead.io deprecated: false post: summary: Create Recipients List description: Create a recipient list operationId: create-recipients parameters: - name: key in: query description: "" required: true style: form explode: true schema: type: string example: myApiKey x-code-samples: - lang: "curl" source: curl -L -X GET "https://api.minelead.io/v1/campaigns/recipients/?key=yourapikey" requestBody: description: "" content: application/json: schema: $ref: "#/components/schemas/Recipients-Create" example: list_name: mylist emails: - press@domain1.com - info@domain2.com required: true responses: 200: description: "" headers: Date: content: text/plain: schema: type: string example: Thu, 11 Jul 2019 13:00:16 GMT Server: content: text/plain: schema: type: string example: WSGIServer/0.2 CPython/3.6.8 Content-Length: content: text/plain: schema: type: string example: 939 Vary: content: text/plain: schema: type: string example: Origin X-Frame-Options: content: text/plain: schema: type: string example: SAMEORIGIN content: application/json: schema: $ref: "#/components/schemas/Recipients-Create-Response" example: status: success id: 1 name: mylist deprecated: false put: summary: Edit Recipients List description: Add or remove emails from a recipients list operationId: edit-recipients parameters: - name: key in: query required: true style: form explode: true schema: type: string example: myApiKey x-code-samples: - lang: "curl" source: curl -L -X GET "https://api.minelead.io/v1/campaigns/recipients/?key=yourapikey" requestBody: content: application/json: schema: $ref: "#/components/schemas/Recipients-Edit" example: id: 1 operation: add/remove emails: - press@domain1.com - info@domain2.com required: true responses: 200: description: "" headers: Date: content: text/plain: schema: type: string example: Thu, 11 Jul 2019 13:00:16 GMT Server: content: text/plain: schema: type: string example: WSGIServer/0.2 CPython/3.6.8 Content-Length: content: text/plain: schema: type: string example: 939 Vary: content: text/plain: schema: type: string example: Origin X-Frame-Options: content: text/plain: schema: type: string example: SAMEORIGIN content: application/json: schema: $ref: "#/components/schemas/Recipients-Edit-Response" example: status: success message: list edited successfully deprecated: false /account: post: summary: Account description: Get account informations operationId: Account requestBody: description: "" content: application/json: schema: $ref: "#/components/schemas/Account" example: key: "myApiKey" required: true x-code-samples: - lang: "curl" source: | curl -L -X POST -d '{ "key" : "myApiKey" }' "https://api.minelead.io/v1/account/" responses: 200: description: "" headers: Date: content: text/plain: schema: type: string example: Thu, 11 Jul 2019 13:48:06 GMT Server: content: text/plain: schema: type: string example: WSGIServer/0.2 CPython/3.6.8 Content-Length: content: text/plain: schema: type: string example: 198 Vary: content: text/plain: schema: type: string example: Origin X-Frame-Options: content: text/plain: schema: type: string example: SAMEORIGIN content: application/json: schema: $ref: "#/components/schemas/Account_response" example: status: success message: "Authenticated" data : { email : email_address@example.com, username : username, api_key : myApiKey, leads : 1000, sub : Enterprise } deprecated: false components: schemas: BuyingIntent: title: BuyingIntent type: object properties: status: type: string enum: [success, error] example: success message: type: string description: "Error description — returned instead of the fields below when status is error" company: type: string description: "Company name, as sent in the request" domain: type: string description: "Company domain, as sent in the request" intent_score: type: integer minimum: 0 maximum: 100 description: "Computed from each category's strength and recency. 0 = no signal, 100 = very strong recent signals" intent_level: type: string enum: [hot, warm, cold, none] description: "hot=70–100, warm=40–69, cold=10–39, none=0–9" confidence: type: string enum: [high, medium, low] description: "Based on the quality of the sources behind the signals (see source_tier)" time_sensitivity: type: string enum: [immediate, 3_months, 6_months, low] description: "How soon to reach out — immediate when a high-strength category has a signal in the last 30 days" summary: type: string description: "2–3 sentence executive summary" recommended_pitch_angle: type: string description: "One sentence on how to approach the company" reasoning: type: string description: "The key signals driving the score" intent_categories: type: array description: "Detected signals grouped by category" items: type: object properties: category: type: string enum: - hiring_engineering - hiring_marketing - hiring_sales - hiring_ai - hiring_customer_support - hiring_general - expansion - funding - merger_acquisition - new_executive - partnership - customer_win - new_market_entry - rebranding - ipo_preparation - product_launch - technology_adoption - investment - security_incident - legal_regulatory - financial_performance - other strength: type: string enum: [high, medium, low] description: "Fixed per category — how directly it implies a purchase. high = merger_acquisition, funding, new_executive, ipo_preparation, security_incident; medium = product_launch, customer_win, expansion, new_market_entry, rebranding, partnership, technology_adoption, legal_regulatory, financial_performance; low = all hiring categories, investment, other" recency: type: string enum: [last_30d, last_90d, last_180d, unknown] description: "Most recent period across the category's signals" signals: type: array description: "One signal per real-world event" items: type: object properties: text: type: string description: "Headline, job title, or snippet copied from the source" period: type: string enum: [last_30d, last_90d, last_180d, unknown] date: type: string format: date description: "Publish date (YYYY-MM-DD) when known; omitted otherwise" sentiment: type: string enum: [positive, negative, neutral] source_tier: type: string enum: [tier_1, tier_2, tier_3] description: "Best source behind the signal. tier_1 = major outlets, press wires, or the company's own domain; tier_2 = trade and tech press; tier_3 = other" urls: type: array items: type: string description: "Source links for the event — one or more; several when multiple outlets reported it" recommended_solutions: type: array description: "B2B products or services a vendor could pitch to this company based on the category" items: type: string predicted_moves: type: array description: "Up to 5 likely near-term purchasing moves" items: type: object properties: timeframe: type: string enum: [30_days, 90_days, 6_months, 1_year] prediction: type: string description: "The predicted move, naming the tool or vendor type" driven_by: type: array description: "The intent categories behind the prediction" items: type: string signal_channels: type: object description: "Which source channels returned signals" properties: news_network: type: boolean company_website: type: boolean hiring_signals: type: boolean growth_trajectory: type: string nullable: true enum: [accelerating, stable, decelerating, restructuring] company_profile: type: object nullable: true properties: description: type: string description: "One-sentence company description" business_model: type: string nullable: true enum: [B2B, B2C, B2B2C, marketplace, platform, infrastructure, agency, other] industry: type: string nullable: true enum: [saas, fintech, healthtech, ecommerce, cybersecurity, hr_tech, martech, legaltech, edtech, logistics, manufacturing, media, consulting, financial_services, retail, telecom, real_estate, energy, ai, other] industry_vertical: type: string description: "Short phrase, e.g. payment infrastructure" meta: type: object properties: date_windows: type: object description: "Start dates (YYYY-MM-DD) of the 30-, 90- and 180-day windows" properties: 30d: type: string format: date 90d: type: string format: date 180d: type: string format: date Account_response: title: Account response type: object properties: status : type: string message: type: string data: type: object Account: title: Account type: object properties: key: type: string description: "Your api key" Account_obj: title: Account_object type: object properties: email: type: string username: type: string api_key: type: string leads: type: integer sub: type: string example: email: example1@domain.com verified: true saved: false Search: title: Search type: object properties: domain: type: string status: type: string pattern: type: string emails: type: array items: $ref: "#/components/schemas/Email" description: "" deep_search: $ref: "#/components/schemas/DeepSearch" description: "Present only when deep=true is passed. Contains AI-discovered employee contacts." example: domain: domain.com status: found emails: - email: example1@domain.com verified: true saved: false - email: press@domain.com verified: true saved: false - email: no-reply@domain.com verified: false saved: true - email: example2@domain.com verified: true saved: false DeepSearch: title: DeepSearch type: object description: "Returned when deep=true. Contains AI-discovered employee contacts for the domain." properties: names_found: type: integer description: "Total number of employee names discovered." emails_verified: type: integer description: "Number of emails successfully verified." credits_charged: type: integer description: "Credits charged for this request (5 upfront + 2 per verified email)." catch_all: type: boolean description: "If true, domain is catch-all and deep search was blocked (0 credits charged)." persons: type: array items: type: object properties: name: type: string title: type: string nullable: true email: type: string nullable: true quality: type: integer description: "Email quality score 0–100." verified: type: boolean linkedin_url: type: string nullable: true twitter_url: type: string nullable: true github_url: type: string nullable: true Email: title: Email type: object properties: email: type: string verified: type: boolean saved: type: boolean email_type: type: string description: "'personal' for individual addresses, 'generic' for role-based addresses (info@, support@, etc.)" enum: [personal, generic] name: type: string nullable: true description: "Full name of the person (populated when enrich=true)" title: type: string nullable: true description: "Job title (populated when enrich=true)" location: type: string nullable: true description: "City/country (populated when enrich=true)" gender: type: string nullable: true enum: [male, female, null] description: "Inferred gender (populated when enrich=true)" industry: type: string nullable: true description: "Broad industry sector (populated when enrich=true)" summary: type: string nullable: true description: "Short professional bio (populated when enrich=true)" example: email: example1@domain.com verified: true saved: false email_type: personal name: John Smith title: Senior Engineer location: San Francisco, CA gender: male industry: Software summary: null Enrich: title: Enrich type: object properties: status: type: string description: "'success' if enrichment data was found, 'not_found' if no data available" email: type: string name: type: string nullable: true title: type: string nullable: true description: "Job title extracted from public sources" location: type: string nullable: true description: "City/country" gender: type: string nullable: true enum: [male, female, null] industry: type: string nullable: true description: "Broad industry sector" summary: type: string nullable: true description: "Short professional bio" example: status: success email: john.smith@example.com name: John Smith title: Senior Software Engineer location: San Francisco, CA gender: male industry: Software summary: John Smith is a Senior Software Engineer at Example Corp. Validate: title: Validate type: object properties: status: type: string description: "Verification result: success, catch-all, or error" form: type: boolean description: "Whether the email format is valid" webmail: type: boolean description: "Whether the email is a personal/webmail address" mx: type: boolean description: "Whether the domain has a mail server (MX record)" exist: type: boolean description: "Whether the mailbox exists" firstname: type: string lastname: type: string disposable_status: type: string description: "Whether the email is from a disposable provider: Disposable, Not Disposable, or Unknown" enum: - Disposable - Not Disposable - Unknown example: status: success form: true webmail: false mx: true exist: true firstname: john lastname: doe disposable_status: Not Disposable DetectDisposable: title: DetectDisposable type: object properties: status: type: string description: "Request status" email: type: string description: "The email address that was checked" disposability_score: type: number description: "Score indicating disposability level (0-5, higher is more disposable)" minimum: 0 maximum: 5 format_valid: type: boolean description: "Whether the email format is valid" spam_score: type: string description: "Spam score assessment" domain_type: type: string description: "Type of domain" enum: [business, personal] disposable_status: type: string description: "User-friendly disposable status for UI display" enum: [Disposable, "Not Disposable", Unknown] a_record_status: type: string description: "User-friendly A record status for UI display" enum: [Present, Missing, Unknown] ptr_record_status: type: string description: "User-friendly PTR record status for UI display" enum: [Present, Missing, Unknown] mx_record_status: type: string description: "User-friendly MX record status for UI display" enum: [Present, Missing, Unknown] timestamp: type: number description: "Timestamp of the check" example: status: success email: test@10minutemail.com disposability_score: 4 format_valid: true spam_score: "NA" domain_type: business disposable_status: "Disposable" a_record_status: "Missing" ptr_record_status: "Missing" mx_record_status: "Present" timestamp: 1625832452.123 Find: title: Find type: object properties: status: type: string domain: type: string firstname: type: string lastname: type: string email: type: string example: status: success domain: example.com firstname: john lastname: smith email: jsmith@example.com SocialEmailFinder: title: SocialEmailFinder type: object properties: status: type: string description: '"found" | "not-found" | "error"' social_url: type: string description: The social profile URL submitted platform: type: string description: '"youtube" | "twitter"' channel_name: type: string description: Display name of the channel or profile message: type: string timestamp: type: number domains: type: array items: type: object properties: domain: type: string confidence: type: string description: '"primary" = main brand website · "secondary" = additional linked site' status: type: string name: type: string description: Company name pattern: type: string nullable: true description: Detected email format pattern emails: type: array items: type: object properties: email: type: string quality: type: integer description: 0-100 deliverability score. 75+ recommended for outreach. verified: type: boolean name: type: string email_type: type: string description: '"personal" or "generic"' saved: type: boolean example: status: found social_url: "https://www.youtube.com/@mkbhd" platform: youtube channel_name: Marques Brownlee message: "Found 2 email(s) across 1 domain(s)" timestamp: 1718000000.0 domains: - domain: mkbhd.com confidence: primary status: found name: MKBHD pattern: "first@domain" emails: - email: marques@mkbhd.com quality: 92 verified: true name: Marques Brownlee email_type: personal saved: false Convert: title: Convert type: object properties: status: type: string domain: type: string name: type: string example: status: success domain: example.com name: example Leads-ListLeads: title: Leads-ListLeads type: object properties: status: type: string leads: $ref: "#/components/schemas/Leads" example: status: success leads: domain1.com: - email: info@domain1.com verified: true domain2.com: - email: rss@domain2.com verified: true - email: press@domain2.comm verified: true - email: exampledomain2.com verified: true Leads: title: Leads type: object properties: domain1.com: type: array items: $ref: "#/components/schemas/Domain1Com" description: "" domain2.com: type: array items: $ref: "#/components/schemas/Domain1Com" description: "" example: domain1.com: - email: info@domain1.com verified: true domain2.com: - email: rss@domain2.com verified: true - email: press@domain2.comm verified: true - email: example@domain2.com verified: true Domain1Com: title: Domain1Com type: object properties: email: type: string verified: type: boolean example: email: info@domain1.com verified: true Leads-AddLeadRequest: title: Leads-AddLeadRequest type: object properties: email: type: array items: type: string description: "" example: email: - press@domain1.com - info@domain3.com - falseexample Leads-AddLead: title: Leads-AddLead type: object properties: status: type: string message: type: array items: $ref: "#/components/schemas/Message" description: "" example: status: success message: - press@domain1.com: is already in your leads - info@domain3.com: has been added to your leads - falseexample: is not in our database Message: title: Message type: object properties: press@domain1.com: type: string info@domain3.com: type: string falseexample: type: string example: press@domain1.com: is already in your leads Leads-DeleteLeadRequest: title: Leads-DeleteLeadRequest type: object properties: email: type: array items: type: string description: "" example: email: - press@domain1.com - info@domain3.com - falseexample Leads-DeleteLead: title: Leads-DeleteLead type: object properties: status: type: string message: type: array items: $ref: "#/components/schemas/Message1" description: "" example: status: success message: - press@domain1.com: is not in your leads - info@domain3.com: has been removed from your leads - sqdqsdq: is not in our database Message1: title: Message1 type: object properties: press@domain1.com: type: string info@domain3.com: type: string sqdqsdq: type: string example: press@domain1.com: is not in your leads History-List: title: History-List type: object properties: status: type: string history: type: array items: $ref: "#/components/schemas/History" description: "" example: status: success history: - status: found date: 2019-07-11 12:51:15 company: domain: domain7.com - status: found date: 2019-07-08 15:15:20 company: domain: domain6.com - status: found date: 2019-07-08 15:13:08 company: domain: domain5.com - status: found date: 2019-07-08 15:13:01 company: domain: domain4.com - status: found date: 2019-07-08 15:12:43 company: domain: domain3.com - status: found date: 2019-07-08 15:12:28 company: domain: domain2.com - status: found date: 2019-07-08 15:12:07 company: domain: domain1.com History: title: History type: object properties: status: type: string date: type: string company: $ref: "#/components/schemas/Company" example: status: found date: 2019-07-11 12:51:15 company: domain: domain7.com Company: title: Company type: object properties: domain: type: string example: domain: domain7.com History-Delete: title: History-Delete type: object properties: status: type: string message: type: string example: status: success message: history cleared Campaigns-List: title: Campaigns-List type: object properties: status: type: string campaigns: type: array items: $ref: "#/components/schemas/Campaign" Campaign: title: Campaign type: object properties: id: type: number name: type: string created_time: type: string active: type: boolean paused: type: boolean archived: type: boolean completed: type: boolean running: type: boolean example: id: 1 name: My Campaign created_time: 2022-10-18T14:59:59.056Z active: true paused: false archived: false completed: false running: false Recipient: title: Recipient type: object properties: id: type: number name: type: string recipients_count: type: number recipients: type: list example: id: 1 name: mylist recipients_count: 9 recipients: - john@minelead.io - jane@minelead.io Recipients-List: title: History-List type: object properties: status: type: string recipient_list: type: array items: $ref: "#/components/schemas/Recipient" Recipients-Create: title: Recipients-Create type: object properties: list_name: type: string emails: type: array items: type: string example: list_name: mylist emails: - press@domain1.com - info@domain3.com Recipients-Create-Response: title: Recipients-Create-Response type: object properties: status: type: string id: type: number name: type: string example: status: success id: 1 name: mylist Recipients-Edit: title: Recipients-Edit type: object properties: id: type: number operation: type: string emails: type: array items: type: string example: id: 1 opeartion: add emails: - john@minelead.io - jane@minelead.io Recipients-Edit-Response: title: Recipients-Edit-Response type: object properties: status: type: string message: type: string example: status: success message: list edited successfully Generator: title: Generate-leads type: object properties: tags: type: array items: type: string description: "" example: email: - New york - Hotel securitySchemes: api_key: type: apiKey name: key in: query security: - api_key: [trial]