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
      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"
      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: press@domain.com
                    verified: true
                    saved: false
                  - email: no-reply@domain.com
                    verified: false
                    saved: true
                  - email: example2@domain.com
                    verified: true
                    saved: false
                
      deprecated: false
  /validate:
    get:
      summary: Validate
      description: Check the validity of an email address
      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
      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
  # /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:
    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: ""
      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
    Email:
      title: Email
      type: object
      properties:
        email:
          type: string
        verified:
          type: boolean
        saved:
          type: boolean
      example:
        email: example1@domain.com
        verified: true
        saved: false
    Validate:
      title: Validate
      type: object
      properties:
        status:
          type: string
        form:
          type: boolean
        webmail:
          type: boolean
        mx:
          type: boolean
        exist:
          type: boolean
        firstname: 
          type: string
        lastname:
          type: string
      example:
        status: success||catch-all
        form: true
        webmail: true
        mx: true
        exist: true
        firstname: john
        lastname: doe
    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
    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]