{
  "service": "findymail",
  "displayName": "Findymail",
  "categories": [
    "Marketing",
    "Data"
  ],
  "authTypes": [
    "api_key"
  ],
  "auth": [
    {
      "type": "api_key",
      "label": "API Key",
      "placeholder": "findymail_api_key",
      "description": "Findymail API key used as a Bearer token. Create or copy it from the Findymail API dashboard: https://app.findymail.com/docs/."
    }
  ],
  "homepageUrl": "https://www.findymail.com/",
  "actions": [
    {
      "id": "findymail.get_credits",
      "service": "findymail",
      "name": "get_credits",
      "description": "Get remaining Findymail credits and usage information for the API key.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {},
        "additionalProperties": false,
        "description": "No input parameters are required for this action."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "credits": {
            "type": "object",
            "properties": {
              "credits": {
                "type": "number",
                "description": "The remaining credit count reported by Findymail."
              },
              "remaining": {
                "type": "number",
                "description": "The remaining credits reported by Findymail."
              },
              "used": {
                "type": "number",
                "description": "The used credits reported by Findymail."
              },
              "plan": {
                "type": "string",
                "description": "The plan name reported by Findymail."
              }
            },
            "additionalProperties": true,
            "description": "Findymail account credit and usage information."
          },
          "raw": {
            "description": "The raw JSON payload returned by Findymail."
          }
        },
        "additionalProperties": false,
        "required": [
          "credits",
          "raw"
        ],
        "description": "The normalized Findymail credits response."
      }
    },
    {
      "id": "findymail.search_by_name",
      "service": "findymail",
      "name": "search_by_name",
      "description": "Find a verified professional email from a person's name and company domain.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "minLength": 1,
            "description": "The person's full name. Use this or firstName and lastName."
          },
          "firstName": {
            "type": "string",
            "minLength": 1,
            "description": "The person's first name."
          },
          "lastName": {
            "type": "string",
            "minLength": 1,
            "description": "The person's last name."
          },
          "domain": {
            "type": "string",
            "minLength": 1,
            "description": "The company domain, such as example.com."
          }
        },
        "additionalProperties": false,
        "required": [
          "domain"
        ],
        "description": "Input payload for finding an email by person name and company domain."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "contact": {
            "anyOf": [
              {
                "type": "object",
                "properties": {},
                "additionalProperties": true,
                "description": "A contact object returned by Findymail."
              },
              {
                "type": "null"
              }
            ]
          },
          "raw": {
            "description": "The raw JSON payload returned by Findymail."
          }
        },
        "additionalProperties": false,
        "required": [
          "contact",
          "raw"
        ],
        "description": "The normalized Findymail name-search response."
      }
    },
    {
      "id": "findymail.search_domain",
      "service": "findymail",
      "name": "search_domain",
      "description": "Find professional email contacts associated with a company domain.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "domain": {
            "type": "string",
            "minLength": 1,
            "description": "The company domain to search, such as example.com."
          }
        },
        "additionalProperties": false,
        "required": [
          "domain"
        ],
        "description": "Input payload for finding contacts by company domain."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "contacts": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {},
              "additionalProperties": true,
              "description": "A contact object returned by Findymail."
            },
            "description": "The contacts returned by Findymail."
          },
          "raw": {
            "description": "The raw JSON payload returned by Findymail."
          }
        },
        "additionalProperties": false,
        "required": [
          "contacts",
          "raw"
        ],
        "description": "The normalized Findymail domain-search response."
      }
    },
    {
      "id": "findymail.search_employees",
      "service": "findymail",
      "name": "search_employees",
      "description": "Find employees at a company using Findymail's company search endpoint.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "domain": {
            "type": "string",
            "minLength": 1,
            "description": "The company domain to search, such as example.com."
          },
          "companyName": {
            "type": "string",
            "minLength": 1,
            "description": "The company name to search when no domain is available."
          },
          "limit": {
            "type": "integer",
            "minimum": 1,
            "maximum": 100,
            "description": "The maximum number of employees to request."
          }
        },
        "additionalProperties": false,
        "description": "Input payload for finding employees at a company."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "employees": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {},
              "additionalProperties": true,
              "description": "A contact object returned by Findymail."
            },
            "description": "The employees returned by Findymail."
          },
          "raw": {
            "description": "The raw JSON payload returned by Findymail."
          }
        },
        "additionalProperties": false,
        "required": [
          "employees",
          "raw"
        ],
        "description": "The normalized Findymail employee-search response."
      }
    },
    {
      "id": "findymail.verify_email",
      "service": "findymail",
      "name": "verify_email",
      "description": "Verify a professional email address with Findymail.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "email": {
            "type": "string",
            "description": "The email address to verify.",
            "format": "email"
          }
        },
        "additionalProperties": false,
        "required": [
          "email"
        ],
        "description": "Input payload for verifying an email address."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "verification": {
            "type": "object",
            "properties": {
              "email": {
                "type": "string",
                "description": "The email address that was verified.",
                "format": "email"
              },
              "verified": {
                "type": "boolean",
                "description": "Whether Findymail considers the email address verified."
              },
              "provider": {
                "type": "string",
                "description": "The detected email provider or verification source."
              },
              "status": {
                "type": "string",
                "description": "The verification status returned by Findymail."
              }
            },
            "additionalProperties": true,
            "description": "Findymail email verification result."
          },
          "raw": {
            "description": "The raw JSON payload returned by Findymail."
          }
        },
        "additionalProperties": false,
        "required": [
          "verification",
          "raw"
        ],
        "description": "The normalized Findymail email verification response."
      }
    }
  ]
}
