{
  "service": "ninjapear",
  "displayName": "NinjaPear",
  "categories": [
    "Data",
    "Marketing"
  ],
  "authTypes": [
    "api_key"
  ],
  "auth": [
    {
      "type": "api_key",
      "label": "API Key",
      "placeholder": "NINJAPEAR_API_KEY",
      "description": "NinjaPear API key used with the Authorization Bearer header. Get it from the API section in the NinjaPear dashboard: https://nubela.co/dashboard."
    }
  ],
  "homepageUrl": "https://nubela.co/",
  "actions": [
    {
      "id": "ninjapear.check_disposable_email",
      "service": "ninjapear",
      "name": "check_disposable_email",
      "description": "Check whether an email address is disposable or from a free email provider.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "email": {
            "type": "string",
            "description": "The email address to check.",
            "format": "email"
          }
        },
        "additionalProperties": false,
        "required": [
          "email"
        ],
        "description": "Input parameters for checking an email address."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "email": {
            "type": "string",
            "description": "The email address that was checked.",
            "format": "email"
          },
          "is_disposable_email": {
            "type": "boolean",
            "description": "Whether the email domain is a known disposable provider."
          },
          "is_free_email": {
            "type": "boolean",
            "description": "Whether the email domain is a free email provider."
          }
        },
        "additionalProperties": true,
        "description": "The email classification returned by NinjaPear."
      }
    },
    {
      "id": "ninjapear.get_company_details",
      "service": "ninjapear",
      "name": "get_company_details",
      "description": "Retrieve detailed company information such as description, industry, leadership, and addresses.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "website": {
            "type": "string",
            "minLength": 1,
            "description": "The website URL or company name of the target company. A website URL is recommended for precision."
          },
          "include_employee_count": {
            "type": "boolean",
            "description": "Whether to include fresh employee count data."
          },
          "follower_count": {
            "type": "string",
            "enum": [
              "include"
            ],
            "description": "Whether to include X follower and following counts."
          },
          "addresses": {
            "type": "string",
            "enum": [
              "hq-only",
              "best-effort-exhaustive"
            ],
            "description": "Address detail mode."
          },
          "use_cache": {
            "type": "string",
            "enum": [
              "if-recent",
              "if-present",
              "if-present-only",
              "never"
            ],
            "description": "How NinjaPear should use cached enrichment data."
          }
        },
        "additionalProperties": false,
        "required": [
          "website"
        ],
        "description": "Input parameters for retrieving company details."
      },
      "outputSchema": {
        "type": "object",
        "properties": {},
        "additionalProperties": true,
        "description": "Detailed company information returned by NinjaPear."
      }
    },
    {
      "id": "ninjapear.get_credit_balance",
      "service": "ninjapear",
      "name": "get_credit_balance",
      "description": "Get the current NinjaPear credit balance for the authenticated account.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {},
        "additionalProperties": false,
        "description": "Input parameters for getting the NinjaPear credit balance."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "credit_balance": {
            "type": "integer",
            "description": "The current credit balance."
          }
        },
        "additionalProperties": true,
        "description": "The current NinjaPear credit balance."
      }
    },
    {
      "id": "ninjapear.get_employee_count",
      "service": "ninjapear",
      "name": "get_employee_count",
      "description": "Get the estimated employee count for a company.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "website": {
            "type": "string",
            "minLength": 1,
            "description": "The website URL or company name of the target company. A website URL is recommended for precision."
          },
          "use_cache": {
            "type": "string",
            "enum": [
              "if-recent",
              "if-present",
              "if-present-only",
              "never"
            ],
            "description": "How NinjaPear should use cached enrichment data."
          }
        },
        "additionalProperties": false,
        "required": [
          "website"
        ],
        "description": "Input parameters for getting a company employee count."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "employee_count": {
            "type": "integer",
            "description": "Estimated employee count."
          }
        },
        "additionalProperties": true,
        "description": "Employee count data returned by NinjaPear."
      }
    },
    {
      "id": "ninjapear.list_competitors",
      "service": "ninjapear",
      "name": "list_competitors",
      "description": "Discover direct business competitors of a target company.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "website": {
            "type": "string",
            "minLength": 1,
            "description": "The website URL or company name of the target company. A website URL is recommended for precision."
          },
          "use_cache": {
            "type": "string",
            "enum": [
              "if-recent",
              "if-present",
              "if-present-only",
              "never"
            ],
            "description": "How NinjaPear should use cached enrichment data."
          }
        },
        "additionalProperties": false,
        "required": [
          "website"
        ],
        "description": "Input parameters for listing competitors."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "competitors": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "company_details_url": {
                  "type": "string",
                  "description": "URL to the NinjaPear Company Details API for this competitor."
                },
                "website": {
                  "type": "string",
                  "description": "Company website URL."
                },
                "competition_reason": {
                  "type": "string",
                  "enum": [
                    "organic_keyword_overlap",
                    "product_overlap"
                  ],
                  "description": "Why this company is considered a competitor."
                }
              },
              "additionalProperties": true,
              "description": "A competitor returned by NinjaPear competitor listing."
            },
            "description": "Competitors for the target company."
          }
        },
        "additionalProperties": true,
        "description": "Competitor listing returned by NinjaPear."
      }
    },
    {
      "id": "ninjapear.list_customers",
      "service": "ninjapear",
      "name": "list_customers",
      "description": "List likely customers, investors, and partner platforms for a target company.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "website": {
            "type": "string",
            "minLength": 1,
            "description": "The website URL or company name of the target company. A website URL is recommended for precision."
          },
          "cursor": {
            "type": "string",
            "minLength": 1,
            "description": "Pagination cursor returned by NinjaPear."
          },
          "page_size": {
            "type": "integer",
            "minimum": 1,
            "maximum": 200,
            "description": "Number of results per page, from 1 to 200."
          },
          "quality_filter": {
            "type": "boolean",
            "description": "Whether to filter out low-quality results."
          },
          "use_cache": {
            "type": "string",
            "enum": [
              "if-recent",
              "if-present",
              "if-present-only",
              "never"
            ],
            "description": "How NinjaPear should use cached enrichment data."
          }
        },
        "additionalProperties": false,
        "required": [
          "website"
        ],
        "description": "Input parameters for listing likely customers and partners."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "customers": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {},
              "additionalProperties": true,
              "description": "A company returned by NinjaPear customer listing."
            },
            "description": "Companies that are probable customers of the target company."
          },
          "investors": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {},
              "additionalProperties": true,
              "description": "A company returned by NinjaPear customer listing."
            },
            "description": "Investors that have invested in the target company."
          },
          "partner_platforms": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {},
              "additionalProperties": true,
              "description": "A company returned by NinjaPear customer listing."
            },
            "description": "Partners, platforms, or service providers used by the target company."
          },
          "next_page": {
            "anyOf": [
              {
                "type": "string",
                "description": "Pagination URL for the next page of results."
              },
              {
                "type": "null"
              }
            ]
          }
        },
        "additionalProperties": true,
        "description": "Customer listing returned by NinjaPear."
      }
    },
    {
      "id": "ninjapear.list_products",
      "service": "ninjapear",
      "name": "list_products",
      "description": "List products and services offered by a target company.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "website": {
            "type": "string",
            "minLength": 1,
            "description": "The website URL or company name of the target company. A website URL is recommended for precision."
          },
          "use_cache": {
            "type": "string",
            "enum": [
              "if-recent",
              "if-present",
              "if-present-only",
              "never"
            ],
            "description": "How NinjaPear should use cached enrichment data."
          }
        },
        "additionalProperties": false,
        "required": [
          "website"
        ],
        "description": "Input parameters for listing products and services."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "website": {
            "type": "string",
            "description": "The normalized website requested."
          },
          "products": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {},
              "additionalProperties": true,
              "description": "A product or service returned by NinjaPear."
            },
            "description": "Products and services offered by the target company."
          },
          "credit_cost": {
            "type": "integer",
            "description": "Total credits charged for this call."
          },
          "error": {
            "anyOf": [
              {
                "type": "string",
                "description": "Error message when a streamed live response could not return products."
              },
              {
                "type": "null"
              }
            ]
          }
        },
        "additionalProperties": true,
        "description": "Product listing returned by NinjaPear."
      }
    },
    {
      "id": "ninjapear.lookup_company_website",
      "service": "ninjapear",
      "name": "lookup_company_website",
      "description": "Resolve a company name to its canonical website URL.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "company_name": {
            "type": "string",
            "minLength": 1,
            "description": "The company name to look up."
          },
          "country_code": {
            "type": "string",
            "minLength": 2,
            "maxLength": 2,
            "description": "Optional ISO 3166-1 alpha-2 country code used to bias the search."
          },
          "hint": {
            "type": "string",
            "minLength": 1,
            "description": "Hint used to differentiate similarly named companies."
          }
        },
        "additionalProperties": false,
        "required": [
          "company_name"
        ],
        "description": "Input parameters for resolving a company website."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "website": {
            "type": "string",
            "description": "The resolved canonical website URL."
          }
        },
        "additionalProperties": true,
        "description": "The resolved company website returned by NinjaPear."
      }
    }
  ]
}
