Hunter · Arazzo Workflow

Hunter Author Finder

Version 1.0.0

Resolve an author's email from their name and publication domain, verify it, then enrich their profile.

1 workflow 3 source APIs 1 provider
View Spec View on GitHub Email FinderEmail VerifierLead GenerationOutreachProspectingEnrichmentSalesMarketingArazzoWorkflows

Provider

hunter-io

Workflows

author-finder
Find, verify, and enrich an author by name and publication domain.
Finds an author's email at a domain, verifies it, and enriches the verified address into a full person profile, branching so enrichment runs only when the address is valid.
3 steps inputs: apiKey, domain, fullName outputs: email, seniority, title, verificationStatus
1
findAuthorEmail
emailFinder
Find the most likely email address for the author at the publication domain using their full name.
2
verifyAuthorEmail
emailVerifier
Verify deliverability of the author's email and branch to enrichment only when the status is valid.
3
enrichAuthor
enrichPerson
Enrich the verified author email into a full person profile including employment, role, seniority, and social handles.

Source API Descriptions

Arazzo Workflow Specification

hunter-io-author-finder-workflow.yml Raw ↑
arazzo: 1.0.1
info:
  title: Hunter Author Finder
  summary: Resolve an author's email from their name and publication domain, verify it, then enrich their profile.
  description: >-
    Hunter has no dedicated author-finder endpoint, so this workflow adapts the
    theme by chaining the operations the specs do support: the Email Finder
    resolves the most likely address for a named author at a publication or
    company domain, the Email Verifier confirms deliverability, and the
    Enrichment People Find endpoint turns the verified address into a rich
    person profile (employment, seniority, social handles, geo). The flow
    branches on verification so enrichment only runs for deliverable addresses.
    Every request inlines the api_key query parameter for direct execution.
  version: 1.0.0
sourceDescriptions:
- name: emailFinderApi
  url: ../openapi/hunter-email-finder-api-openapi.yml
  type: openapi
- name: emailVerifierApi
  url: ../openapi/hunter-email-verifier-api-openapi.yml
  type: openapi
- name: enrichmentApi
  url: ../openapi/hunter-enrichment-api-openapi.yml
  type: openapi
workflows:
- workflowId: author-finder
  summary: Find, verify, and enrich an author by name and publication domain.
  description: >-
    Finds an author's email at a domain, verifies it, and enriches the verified
    address into a full person profile, branching so enrichment runs only when
    the address is valid.
  inputs:
    type: object
    required:
    - apiKey
    - domain
    - fullName
    properties:
      apiKey:
        type: string
        description: Your Hunter API key, passed as the api_key query parameter.
      domain:
        type: string
        description: The publication or company domain the author writes for.
      fullName:
        type: string
        description: The author's full name.
  steps:
  - stepId: findAuthorEmail
    description: >-
      Find the most likely email address for the author at the publication
      domain using their full name.
    operationId: emailFinder
    parameters:
    - name: domain
      in: query
      value: $inputs.domain
    - name: full_name
      in: query
      value: $inputs.fullName
    - name: api_key
      in: query
      value: $inputs.apiKey
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      email: $response.body#/data/email
      score: $response.body#/data/score
      linkedinUrl: $response.body#/data/linkedin_url
  - stepId: verifyAuthorEmail
    description: >-
      Verify deliverability of the author's email and branch to enrichment only
      when the status is valid.
    operationId: emailVerifier
    parameters:
    - name: email
      in: query
      value: $steps.findAuthorEmail.outputs.email
    - name: api_key
      in: query
      value: $inputs.apiKey
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      status: $response.body#/data/status
    onSuccess:
    - name: valid
      type: goto
      stepId: enrichAuthor
      criteria:
      - context: $response.body
        condition: $.data.status == "valid"
        type: jsonpath
    - name: notValid
      type: end
      criteria:
      - context: $response.body
        condition: $.data.status != "valid"
        type: jsonpath
  - stepId: enrichAuthor
    description: >-
      Enrich the verified author email into a full person profile including
      employment, role, seniority, and social handles.
    operationId: enrichPerson
    parameters:
    - name: email
      in: query
      value: $steps.findAuthorEmail.outputs.email
    - name: api_key
      in: query
      value: $inputs.apiKey
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      fullName: $response.body#/data/name/fullName
      title: $response.body#/data/employment/title
      seniority: $response.body#/data/employment/seniority
      twitterHandle: $response.body#/data/twitter/handle
  outputs:
    email: $steps.findAuthorEmail.outputs.email
    verificationStatus: $steps.verifyAuthorEmail.outputs.status
    title: $steps.enrichAuthor.outputs.title
    seniority: $steps.enrichAuthor.outputs.seniority