{
  "openapi": "3.1.0",
  "info": {
    "title": "Lead411 API V3",
    "version": "3.0.0",
    "description": "Lead411 V3 REST API \u2014 B2B company and contact data, search, suppression, CRM export, and account utilities.\n\n**Documentation:** [https://api.lead411.com/v3/docs/](https://api.lead411.com/v3/docs/)\n\n**Authentication:** Most endpoints accept `X-API-KEY` or `Authorization: Bearer <access_token>` (from Direct Login or OAuth token exchange).\n\n**Rate limits:** Responses may include rate-limit headers; expensive search/export routes share additional limits. See product documentation for defaults and overrides.\n\n**Legacy compatibility:** Some clients expect HTTP 200 with `status: error` for auth failures when legacy mode is enabled on the server.\n",
    "contact": {
      "name": "Lead411 Support",
      "url": "https://www.lead411.com"
    }
  },
  "servers": [
    {
      "url": "https://api.lead411.com/v3",
      "description": "Production"
    },
    {
      "url": "https://api.lead411.com/api/v3",
      "description": "Production (alternate prefix used by some gateways)"
    }
  ],
  "tags": [
    {
      "name": "Auth",
      "description": "Login, token refresh, OAuth, session validation, and logout."
    },
    {
      "name": "Customer",
      "description": "Account profile, quota, and unlock statistics."
    },
    {
      "name": "Search",
      "description": "JSON search, similar companies, employee search helpers, and search export."
    },
    {
      "name": "Suppression",
      "description": "Email and company suppression lists."
    },
    {
      "name": "Company",
      "description": "Company profile, employees, news, jobs, technology, and bulk lookup."
    },
    {
      "name": "Employee",
      "description": "Employee lookup and unlock."
    },
    {
      "name": "Options",
      "description": "Reference data and autocomplete helpers for search filters."
    },
    {
      "name": "CRM",
      "description": "CRM configuration, field mapping, and push to default CRM."
    },
    {
      "name": "Export",
      "description": "File export and download."
    },
    {
      "name": "MCP OAuth",
      "description": "Claude MCP OAuth discovery and token endpoints (public)."
    },
    {
      "name": "Internal",
      "description": "Operator-only routes (not shown in customer navigation).",
      "x-lead411-audience": "internal"
    }
  ],
  "paths": {
    "/auth/login": {
      "post": {
        "tags": [
          "Auth"
        ],
        "summary": "Authenticate user (email/password)",
        "operationId": "authLogin",
        "responses": {
          "200": {
            "description": "Authenticate user (email/password)",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/SuccessEnvelope"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "data": {
                          "$ref": "#/components/schemas/TokenData"
                        }
                      }
                    }
                  ]
                },
                "example": {
                  "status": "success",
                  "message": "success",
                  "data": {
                    "token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.example",
                    "access_token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.example",
                    "refresh_token": "def50200example_refresh_token",
                    "expires_in": 3600,
                    "token_type": "Bearer"
                  }
                }
              }
            }
          },
          "400": {
            "description": "Validation or bad request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "401": {
            "description": "Missing or invalid credentials",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "429": {
            "description": "Rate limit exceeded",
            "headers": {
              "Retry-After": {
                "schema": {
                  "type": "integer"
                }
              },
              "X-RateLimit-Limit": {
                "schema": {
                  "type": "integer"
                }
              },
              "X-RateLimit-Remaining": {
                "schema": {
                  "type": "integer"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          }
        },
        "description": "Exchange email and password for access and refresh tokens. Use the returned access token as\n`Authorization: Bearer <token>` on protected routes.\n\nCredentials may be sent as JSON body **or** as query string (PHP v3 parity):\n`POST /auth/login?email=<email>&password=<password>`. JSON body fields win when both are present.",
        "security": [],
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/LoginRequest"
              },
              "example": {
                "email": "user@example.com",
                "password": "YOUR_PASSWORD",
                "device_name": "my-integration"
              }
            }
          }
        },
        "x-lead411-auth-methods": [],
        "x-lead411-example-body": {
          "email": "user@example.com",
          "password": "YOUR_PASSWORD",
          "device_name": "my-integration"
        },
        "parameters": [
          {
            "name": "email",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            },
            "description": "User email. Legacy PHP v3 clients send this instead of a JSON body."
          },
          {
            "name": "password",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string",
              "format": "password"
            },
            "description": "User password. Legacy PHP v3 clients send this instead of a JSON body."
          }
        ],
        "x-lead411-response-example": {
          "status": "success",
          "message": "success",
          "data": {
            "token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.example",
            "access_token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.example",
            "refresh_token": "def50200example_refresh_token",
            "expires_in": 3600,
            "token_type": "Bearer"
          }
        },
        "x-lead411-usage-notes": "Send JSON body, or query string `?email=&password=` (legacy PHP v3). After login, use Bearer on protected routes or continue with X-API-KEY if you already have an API key."
      }
    },
    "/auth/refresh": {
      "post": {
        "tags": [
          "Auth"
        ],
        "summary": "Refresh access token",
        "operationId": "authRefresh",
        "responses": {
          "200": {
            "description": "Refresh access token",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/SuccessEnvelope"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "data": {
                          "$ref": "#/components/schemas/TokenData"
                        }
                      }
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "description": "Validation or bad request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "401": {
            "description": "Missing or invalid credentials",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "429": {
            "description": "Rate limit exceeded",
            "headers": {
              "Retry-After": {
                "schema": {
                  "type": "integer"
                }
              },
              "X-RateLimit-Limit": {
                "schema": {
                  "type": "integer"
                }
              },
              "X-RateLimit-Remaining": {
                "schema": {
                  "type": "integer"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          }
        },
        "security": [],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/RefreshRequest"
              },
              "example": {
                "refresh_token": "YOUR_REFRESH_TOKEN"
              }
            }
          }
        },
        "x-lead411-auth-methods": [],
        "x-lead411-example-body": {
          "refresh_token": "YOUR_REFRESH_TOKEN"
        },
        "description": "Refresh an access token using a valid refresh token."
      }
    },
    "/oauth/authorize": {
      "post": {
        "tags": [
          "Auth"
        ],
        "summary": "Generate OAuth authorization code",
        "operationId": "oauthAuthorize",
        "responses": {
          "200": {
            "description": "Generate OAuth authorization code",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/SuccessEnvelope"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "data": {
                          "$ref": "#/components/schemas/OAuthCodeData"
                        }
                      }
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "description": "Validation or bad request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "401": {
            "description": "Missing or invalid credentials",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "429": {
            "description": "Rate limit exceeded",
            "headers": {
              "Retry-After": {
                "schema": {
                  "type": "integer"
                }
              },
              "X-RateLimit-Limit": {
                "schema": {
                  "type": "integer"
                }
              },
              "X-RateLimit-Remaining": {
                "schema": {
                  "type": "integer"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          }
        },
        "security": [],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/OAuthAuthorizeRequest"
              },
              "example": {
                "client_id": "YOUR_CLIENT_ID",
                "redirect_uri": "https://your-app.example/callback",
                "response_type": "code",
                "state": "random-state"
              }
            }
          }
        },
        "x-lead411-auth-methods": [],
        "x-lead411-example-body": {
          "client_id": "YOUR_CLIENT_ID",
          "redirect_uri": "https://your-app.example/callback",
          "response_type": "code",
          "state": "random-state"
        },
        "description": "Start OAuth authorization-code flow and receive a short-lived authorization code."
      }
    },
    "/oauth/token": {
      "post": {
        "tags": [
          "Auth"
        ],
        "summary": "Exchange authorization code or refresh token",
        "operationId": "oauthToken",
        "responses": {
          "200": {
            "description": "Exchange authorization code or refresh token",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/SuccessEnvelope"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "data": {
                          "$ref": "#/components/schemas/TokenData"
                        }
                      }
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "description": "Validation or bad request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "401": {
            "description": "Missing or invalid credentials",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "429": {
            "description": "Rate limit exceeded",
            "headers": {
              "Retry-After": {
                "schema": {
                  "type": "integer"
                }
              },
              "X-RateLimit-Limit": {
                "schema": {
                  "type": "integer"
                }
              },
              "X-RateLimit-Remaining": {
                "schema": {
                  "type": "integer"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          }
        },
        "security": [
          {
            "ApiKeyAuth": []
          },
          {
            "BearerAuth": []
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/OAuthTokenRequest"
              },
              "example": {
                "grant_type": "authorization_code",
                "code": "YOUR_AUTH_CODE",
                "client_id": "YOUR_CLIENT_ID",
                "client_secret": "YOUR_CLIENT_SECRET",
                "redirect_uri": "https://your-app.example/callback"
              }
            }
          }
        },
        "x-lead411-auth-methods": [
          "oauth"
        ],
        "x-lead411-example-body": {
          "grant_type": "authorization_code",
          "code": "YOUR_AUTH_CODE",
          "client_id": "YOUR_CLIENT_ID",
          "client_secret": "YOUR_CLIENT_SECRET",
          "redirect_uri": "https://your-app.example/callback"
        },
        "description": "Exchange an authorization code or refresh token for access credentials."
      }
    },
    "/auth/checkToken": {
      "post": {
        "tags": [
          "Auth"
        ],
        "summary": "Validate API key or bearer token",
        "operationId": "authCheckToken",
        "responses": {
          "200": {
            "description": "Validate API key or bearer token",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/SuccessEnvelope"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "data": {
                          "$ref": "#/components/schemas/CheckTokenData"
                        }
                      }
                    }
                  ]
                },
                "example": {
                  "status": "success",
                  "message": "success",
                  "data": {
                    "valid": true,
                    "customer_id": 12345
                  }
                }
              }
            }
          },
          "400": {
            "description": "Validation or bad request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "401": {
            "description": "Missing or invalid credentials",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "429": {
            "description": "Rate limit exceeded",
            "headers": {
              "Retry-After": {
                "schema": {
                  "type": "integer"
                }
              },
              "X-RateLimit-Limit": {
                "schema": {
                  "type": "integer"
                }
              },
              "X-RateLimit-Remaining": {
                "schema": {
                  "type": "integer"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          }
        },
        "description": "Validate the `X-API-KEY` or Bearer token sent on this request. Empty body is OK.",
        "security": [
          {
            "ApiKeyAuth": []
          },
          {
            "BearerAuth": []
          }
        ],
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/EmptyObject"
              },
              "example": {}
            }
          }
        },
        "x-lead411-auth-methods": [
          "apiKey",
          "bearer",
          "oauth"
        ],
        "x-lead411-example-body": {},
        "x-lead411-response-example": {
          "status": "success",
          "message": "success",
          "data": {
            "valid": true,
            "customer_id": 12345
          }
        }
      }
    },
    "/logout": {
      "post": {
        "tags": [
          "Auth"
        ],
        "summary": "Logout / invalidate session",
        "operationId": "authLogout",
        "responses": {
          "200": {
            "description": "Logout / invalidate session",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/SuccessEnvelope"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "data": {
                          "$ref": "#/components/schemas/LoggedOutData"
                        }
                      }
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "description": "Validation or bad request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "401": {
            "description": "Missing or invalid credentials",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "429": {
            "description": "Rate limit exceeded",
            "headers": {
              "Retry-After": {
                "schema": {
                  "type": "integer"
                }
              },
              "X-RateLimit-Limit": {
                "schema": {
                  "type": "integer"
                }
              },
              "X-RateLimit-Remaining": {
                "schema": {
                  "type": "integer"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          }
        },
        "security": [
          {
            "ApiKeyAuth": []
          },
          {
            "BearerAuth": []
          }
        ],
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/EmptyObject"
              },
              "example": {}
            }
          }
        },
        "x-lead411-auth-methods": [
          "apiKey",
          "bearer",
          "oauth"
        ],
        "x-lead411-example-body": {},
        "description": "Log out the current bearer session."
      }
    },
    "/getCustomerDetails": {
      "post": {
        "tags": [
          "Customer"
        ],
        "summary": "Get customer details",
        "operationId": "getCustomerDetails",
        "responses": {
          "200": {
            "description": "Get customer details",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/SuccessEnvelope"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "data": {
                          "$ref": "#/components/schemas/CustomerProfile"
                        }
                      }
                    }
                  ]
                },
                "example": {
                  "status": "success",
                  "message": "success",
                  "data": {
                    "email": "user@example.com",
                    "first_name": "Jane",
                    "last_name": "Doe",
                    "company": "Example Corp",
                    "unlock_quota": 500,
                    "bonus_quota": 0,
                    "package_id": 12,
                    "member_level": "standard"
                  }
                }
              }
            }
          },
          "400": {
            "description": "Validation or bad request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "401": {
            "description": "Missing or invalid credentials",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "429": {
            "description": "Rate limit exceeded",
            "headers": {
              "Retry-After": {
                "schema": {
                  "type": "integer"
                }
              },
              "X-RateLimit-Limit": {
                "schema": {
                  "type": "integer"
                }
              },
              "X-RateLimit-Remaining": {
                "schema": {
                  "type": "integer"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          }
        },
        "security": [
          {
            "ApiKeyAuth": []
          },
          {
            "BearerAuth": []
          }
        ],
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/EmptyObject"
              },
              "example": {}
            }
          }
        },
        "x-lead411-auth-methods": [
          "apiKey",
          "bearer",
          "oauth"
        ],
        "x-lead411-example-body": {},
        "description": "Get account profile details for the authenticated customer. Empty body is OK.",
        "x-lead411-response-example": {
          "status": "success",
          "message": "success",
          "data": {
            "email": "user@example.com",
            "first_name": "Jane",
            "last_name": "Doe",
            "company": "Example Corp",
            "unlock_quota": 500,
            "bonus_quota": 0,
            "package_id": 12,
            "member_level": "standard"
          }
        }
      }
    },
    "/getCustomerDetailsMore": {
      "post": {
        "tags": [
          "Customer"
        ],
        "summary": "Get customer details (includes customer_id)",
        "operationId": "getCustomerDetailsMore",
        "responses": {
          "200": {
            "description": "Get customer details (includes customer_id)",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/SuccessEnvelope"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "data": {
                          "$ref": "#/components/schemas/CustomerProfileExtended"
                        }
                      }
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "description": "Validation or bad request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "401": {
            "description": "Missing or invalid credentials",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "429": {
            "description": "Rate limit exceeded",
            "headers": {
              "Retry-After": {
                "schema": {
                  "type": "integer"
                }
              },
              "X-RateLimit-Limit": {
                "schema": {
                  "type": "integer"
                }
              },
              "X-RateLimit-Remaining": {
                "schema": {
                  "type": "integer"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          }
        },
        "security": [
          {
            "ApiKeyAuth": []
          },
          {
            "BearerAuth": []
          }
        ],
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/EmptyObject"
              },
              "example": {}
            }
          }
        },
        "x-lead411-auth-methods": [
          "apiKey",
          "bearer",
          "oauth"
        ],
        "x-lead411-example-body": {},
        "description": "Same as `getCustomerDetails` plus `customer_id`."
      }
    },
    "/get_customer_quota": {
      "post": {
        "tags": [
          "Customer"
        ],
        "summary": "Get customer quota",
        "operationId": "getCustomerQuota",
        "responses": {
          "200": {
            "description": "Get customer quota",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/SuccessEnvelope"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "data": {
                          "$ref": "#/components/schemas/CustomerQuota"
                        }
                      }
                    }
                  ]
                },
                "example": {
                  "status": "success",
                  "message": "success",
                  "data": {
                    "unlock_quota": 500,
                    "bonus_quota": 50,
                    "total_quota": 550
                  }
                }
              }
            }
          },
          "400": {
            "description": "Validation or bad request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "401": {
            "description": "Missing or invalid credentials",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "429": {
            "description": "Rate limit exceeded",
            "headers": {
              "Retry-After": {
                "schema": {
                  "type": "integer"
                }
              },
              "X-RateLimit-Limit": {
                "schema": {
                  "type": "integer"
                }
              },
              "X-RateLimit-Remaining": {
                "schema": {
                  "type": "integer"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          }
        },
        "security": [
          {
            "ApiKeyAuth": []
          },
          {
            "BearerAuth": []
          }
        ],
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/EmptyObject"
              },
              "example": {}
            }
          }
        },
        "x-lead411-auth-methods": [
          "apiKey",
          "bearer",
          "oauth"
        ],
        "x-lead411-example-body": {},
        "description": "Current unlock quota balances for the account.",
        "x-lead411-response-example": {
          "status": "success",
          "message": "success",
          "data": {
            "unlock_quota": 500,
            "bonus_quota": 50,
            "total_quota": 550
          }
        }
      }
    },
    "/get_customer_unlock_stats_info": {
      "post": {
        "tags": [
          "Customer"
        ],
        "summary": "Get customer unlock stats",
        "operationId": "getCustomerUnlockStats",
        "responses": {
          "200": {
            "description": "Get customer unlock stats",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/SuccessEnvelope"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "data": {
                          "$ref": "#/components/schemas/CustomerUnlockStats"
                        }
                      }
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "description": "Validation or bad request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "401": {
            "description": "Missing or invalid credentials",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "429": {
            "description": "Rate limit exceeded",
            "headers": {
              "Retry-After": {
                "schema": {
                  "type": "integer"
                }
              },
              "X-RateLimit-Limit": {
                "schema": {
                  "type": "integer"
                }
              },
              "X-RateLimit-Remaining": {
                "schema": {
                  "type": "integer"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          }
        },
        "security": [
          {
            "ApiKeyAuth": []
          },
          {
            "BearerAuth": []
          }
        ],
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/EmptyObject"
              },
              "example": {}
            }
          }
        },
        "x-lead411-auth-methods": [
          "apiKey",
          "bearer",
          "oauth"
        ],
        "x-lead411-example-body": {},
        "description": "Quota plus unlock usage statistics."
      }
    },
    "/search/get_similar_companies": {
      "post": {
        "tags": [
          "Search"
        ],
        "summary": "Get similar companies",
        "operationId": "getSimilarCompanies",
        "responses": {
          "200": {
            "description": "Get similar companies",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/SuccessEnvelope"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "data": {
                          "$ref": "#/components/schemas/SimilarCompaniesResult"
                        }
                      }
                    }
                  ]
                },
                "example": {
                  "status": "success",
                  "message": "success",
                  "data": {
                    "source_company_id": 1743,
                    "totalRows": 5,
                    "showingRows": 5,
                    "record_for": "company",
                    "page": 1,
                    "AllResults": []
                  }
                }
              }
            }
          },
          "400": {
            "description": "Validation or bad request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "401": {
            "description": "Missing or invalid credentials",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "429": {
            "description": "Rate limit exceeded",
            "headers": {
              "Retry-After": {
                "schema": {
                  "type": "integer"
                }
              },
              "X-RateLimit-Limit": {
                "schema": {
                  "type": "integer"
                }
              },
              "X-RateLimit-Remaining": {
                "schema": {
                  "type": "integer"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          }
        },
        "security": [
          {
            "ApiKeyAuth": []
          },
          {
            "BearerAuth": []
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SimilarCompaniesRequest"
              },
              "example": {
                "website": "lead411.com",
                "limit": 5
              }
            }
          }
        },
        "x-lead411-auth-methods": [
          "apiKey",
          "bearer",
          "oauth"
        ],
        "x-lead411-example-body": {
          "website": "lead411.com",
          "limit": 5
        },
        "description": "Provide one of `company_id`, `website`, `domain`, or `url`.",
        "x-lead411-response-example": {
          "status": "success",
          "message": "success",
          "data": {
            "source_company_id": 1743,
            "totalRows": 5,
            "showingRows": 5,
            "record_for": "company",
            "page": 1,
            "AllResults": []
          }
        }
      }
    },
    "/search/get_company_employees_data": {
      "post": {
        "tags": [
          "Search"
        ],
        "summary": "Advanced Employee Search",
        "operationId": "getCompanyEmployeesData",
        "responses": {
          "200": {
            "description": "Advanced Employee Search",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/SuccessEnvelope"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "data": {
                          "$ref": "#/components/schemas/PHPSearchResult"
                        }
                      }
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "description": "Validation or bad request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "401": {
            "description": "Missing or invalid credentials",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "429": {
            "description": "Rate limit exceeded",
            "headers": {
              "Retry-After": {
                "schema": {
                  "type": "integer"
                }
              },
              "X-RateLimit-Limit": {
                "schema": {
                  "type": "integer"
                }
              },
              "X-RateLimit-Remaining": {
                "schema": {
                  "type": "integer"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          }
        },
        "security": [
          {
            "ApiKeyAuth": []
          },
          {
            "BearerAuth": []
          }
        ],
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CompanyEmployeesDataRequest"
              },
              "example": {
                "company_ids": "1743",
                "user_search_string": "cisco.com",
                "title_keyword": "ceo,cfo",
                "country_code": "US",
                "State_array": "CA,ON",
                "Industry_Codes": "48,500",
                "industry_linkedin": "1430,1247",
                "page": 1,
                "per_page": 25
              }
            }
          }
        },
        "x-lead411-auth-methods": [
          "apiKey",
          "bearer",
          "oauth"
        ],
        "x-lead411-example-body": {
          "company_ids": "1743",
          "user_search_string": "cisco.com",
          "title_keyword": "ceo,cfo",
          "country_code": "US",
          "State_array": "CA,ON",
          "Industry_Codes": "48,500",
          "industry_linkedin": "1430,1247",
          "page": 1,
          "per_page": 25
        },
        "description": "Advanced employee/company search with legacy PHP-compatible result shape.\nSend a JSON object with any combination of the request body fields below.\nTechnology keywords (`Technology_array`, `SoftwareHardware_array`,\n`SoftwareHardware`, `softwareHardware`, or `technology`) accept a comma-separated\nstring or a JSON string array. Pair them with `technology_uses_text`:\n`technology_uses_yes` (default) means \u201cuses this tech\u201d; `technology_uses_no`\nmeans \u201cdoes not use this tech\u201d."
      }
    },
    "/search/exportDownloadFile": {
      "post": {
        "tags": [
          "Search"
        ],
        "summary": "Export search results to file",
        "operationId": "searchExportDownloadFile",
        "responses": {
          "200": {
            "description": "Export search results to file",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/SuccessEnvelope"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "data": {
                          "$ref": "#/components/schemas/ExportDownloadData"
                        }
                      }
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "description": "Validation or bad request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "401": {
            "description": "Missing or invalid credentials",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "429": {
            "description": "Rate limit exceeded",
            "headers": {
              "Retry-After": {
                "schema": {
                  "type": "integer"
                }
              },
              "X-RateLimit-Limit": {
                "schema": {
                  "type": "integer"
                }
              },
              "X-RateLimit-Remaining": {
                "schema": {
                  "type": "integer"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          }
        },
        "security": [
          {
            "ApiKeyAuth": []
          },
          {
            "BearerAuth": []
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ExportDownloadRequest"
              },
              "example": {
                "select_action_download": "employee",
                "employee_id": "12345,67890",
                "download_all": "csv"
              }
            }
          }
        },
        "x-lead411-auth-methods": [
          "apiKey",
          "bearer",
          "oauth"
        ],
        "description": "Export search results to CSV/XLSX based on the submitted export payload.",
        "x-lead411-example-body": {
          "select_action_download": "employee",
          "employee_id": "12345,67890",
          "download_all": "csv"
        }
      }
    },
    "/search/getNewsCategoryData": {
      "post": {
        "tags": [
          "Search"
        ],
        "summary": "Get news category reference data",
        "operationId": "getNewsCategoryData",
        "responses": {
          "200": {
            "description": "Get news category reference data",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/SuccessEnvelope"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "data": {
                          "$ref": "#/components/schemas/OptionsListData"
                        }
                      }
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "description": "Validation or bad request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "401": {
            "description": "Missing or invalid credentials",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "429": {
            "description": "Rate limit exceeded",
            "headers": {
              "Retry-After": {
                "schema": {
                  "type": "integer"
                }
              },
              "X-RateLimit-Limit": {
                "schema": {
                  "type": "integer"
                }
              },
              "X-RateLimit-Remaining": {
                "schema": {
                  "type": "integer"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          }
        },
        "description": "Return available news category options. Empty body is OK.",
        "security": [
          {
            "ApiKeyAuth": []
          },
          {
            "BearerAuth": []
          }
        ],
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/EmptyObject"
              },
              "example": {}
            }
          }
        },
        "x-lead411-auth-methods": [
          "apiKey",
          "bearer",
          "oauth"
        ],
        "x-lead411-example-body": {}
      }
    },
    "/search/search_technology": {
      "post": {
        "tags": [
          "Options"
        ],
        "summary": "Search technology names",
        "operationId": "searchTechnology",
        "responses": {
          "200": {
            "description": "Search technology names",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/SuccessEnvelope"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "data": {
                          "$ref": "#/components/schemas/OptionsListData"
                        }
                      }
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "description": "Validation or bad request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "401": {
            "description": "Missing or invalid credentials",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "429": {
            "description": "Rate limit exceeded",
            "headers": {
              "Retry-After": {
                "schema": {
                  "type": "integer"
                }
              },
              "X-RateLimit-Limit": {
                "schema": {
                  "type": "integer"
                }
              },
              "X-RateLimit-Remaining": {
                "schema": {
                  "type": "integer"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          }
        },
        "description": "Search technology names used by the options UI. An empty body is treated as `{}`.",
        "security": [
          {
            "ApiKeyAuth": []
          },
          {
            "BearerAuth": []
          }
        ],
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/OptionsQueryRequest"
              },
              "example": {
                "search_string": "Salesforce",
                "limit": 20
              }
            }
          }
        },
        "x-lead411-auth-methods": [
          "apiKey",
          "bearer",
          "oauth"
        ],
        "x-lead411-example-body": {
          "search_string": "Salesforce",
          "limit": 20
        }
      }
    },
    "/suppression/insertSuppressionEmail": {
      "post": {
        "tags": [
          "Suppression"
        ],
        "summary": "Insert suppression emails",
        "operationId": "insertSuppressionEmail",
        "responses": {
          "200": {
            "description": "Insert suppression emails",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/SuccessEnvelope"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "data": {
                          "$ref": "#/components/schemas/SuppressionInsertData"
                        }
                      }
                    }
                  ]
                },
                "example": {
                  "status": "success",
                  "message": "success",
                  "data": {
                    "employee_ids": [
                      12345,
                      67890
                    ]
                  }
                }
              }
            }
          },
          "400": {
            "description": "Validation or bad request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "401": {
            "description": "Missing or invalid credentials",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "429": {
            "description": "Rate limit exceeded",
            "headers": {
              "Retry-After": {
                "schema": {
                  "type": "integer"
                }
              },
              "X-RateLimit-Limit": {
                "schema": {
                  "type": "integer"
                }
              },
              "X-RateLimit-Remaining": {
                "schema": {
                  "type": "integer"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          }
        },
        "security": [
          {
            "ApiKeyAuth": []
          },
          {
            "BearerAuth": []
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SuppressionEmailRequest"
              },
              "example": {
                "email_json": "[\"user@example.com\"]",
                "employee_id_json": "",
                "sub_account_email": ""
              }
            }
          }
        },
        "x-lead411-auth-methods": [
          "apiKey",
          "bearer",
          "oauth"
        ],
        "x-lead411-example-body": {
          "email_json": "[\"user@example.com\"]",
          "employee_id_json": "",
          "sub_account_email": ""
        },
        "description": "Suppress contacts by email and/or employee id. `email_json` and `employee_id_json` are JSON\narray strings, not raw arrays.",
        "x-lead411-response-example": {
          "status": "success",
          "message": "success",
          "data": {
            "employee_ids": [
              12345,
              67890
            ]
          }
        },
        "x-lead411-usage-notes": "In JSON, set `email_json` to a **string** whose value is a JSON array \u2014 e.g. `\"email_json\": \"[\\\"a@b.com\\\"]\"`. Do not send a raw JSON array unless your client encodes it the same way PHP clients do."
      }
    },
    "/suppression/getSuppressionEmails": {
      "post": {
        "tags": [
          "Suppression"
        ],
        "summary": "Get suppression emails",
        "operationId": "getSuppressionEmails",
        "responses": {
          "200": {
            "description": "Get suppression emails",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/SuccessEnvelope"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "data": {
                          "$ref": "#/components/schemas/SuppressionListData"
                        }
                      }
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "description": "Validation or bad request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "401": {
            "description": "Missing or invalid credentials",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "429": {
            "description": "Rate limit exceeded",
            "headers": {
              "Retry-After": {
                "schema": {
                  "type": "integer"
                }
              },
              "X-RateLimit-Limit": {
                "schema": {
                  "type": "integer"
                }
              },
              "X-RateLimit-Remaining": {
                "schema": {
                  "type": "integer"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          }
        },
        "security": [
          {
            "ApiKeyAuth": []
          },
          {
            "BearerAuth": []
          }
        ],
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SuppressionEmailRequest"
              },
              "example": {
                "sub_account_email": ""
              }
            }
          }
        },
        "x-lead411-auth-methods": [
          "apiKey",
          "bearer",
          "oauth"
        ],
        "x-lead411-example-body": {
          "sub_account_email": ""
        },
        "description": "List suppressed employees and companies for the current account. An empty body is treated as `{}`."
      }
    },
    "/suppression/deleteSuppressionEmail": {
      "post": {
        "tags": [
          "Suppression"
        ],
        "summary": "Delete suppression emails",
        "operationId": "deleteSuppressionEmail",
        "responses": {
          "200": {
            "description": "Delete suppression emails",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/SuccessEnvelope"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "data": {
                          "$ref": "#/components/schemas/DeletedFlagData"
                        }
                      }
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "description": "Validation or bad request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "401": {
            "description": "Missing or invalid credentials",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "429": {
            "description": "Rate limit exceeded",
            "headers": {
              "Retry-After": {
                "schema": {
                  "type": "integer"
                }
              },
              "X-RateLimit-Limit": {
                "schema": {
                  "type": "integer"
                }
              },
              "X-RateLimit-Remaining": {
                "schema": {
                  "type": "integer"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          }
        },
        "security": [
          {
            "ApiKeyAuth": []
          },
          {
            "BearerAuth": []
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SuppressionEmailRequest"
              },
              "example": {
                "employee_id_json": "[12345]"
              }
            }
          }
        },
        "x-lead411-auth-methods": [
          "apiKey",
          "bearer",
          "oauth"
        ],
        "x-lead411-example-body": {
          "employee_id_json": "[12345]"
        },
        "description": "Remove employee suppressions by passing `employee_id_json` as a JSON array string."
      }
    },
    "/suppression/addSuppCompany": {
      "post": {
        "tags": [
          "Suppression"
        ],
        "summary": "Add suppressed company",
        "operationId": "addSuppCompany",
        "responses": {
          "200": {
            "description": "Add suppressed company",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/SuccessEnvelope"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "data": {
                          "$ref": "#/components/schemas/SuppressionCompanyAddData"
                        }
                      }
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "description": "Validation or bad request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "401": {
            "description": "Missing or invalid credentials",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "429": {
            "description": "Rate limit exceeded",
            "headers": {
              "Retry-After": {
                "schema": {
                  "type": "integer"
                }
              },
              "X-RateLimit-Limit": {
                "schema": {
                  "type": "integer"
                }
              },
              "X-RateLimit-Remaining": {
                "schema": {
                  "type": "integer"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          }
        },
        "security": [
          {
            "ApiKeyAuth": []
          },
          {
            "BearerAuth": []
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SuppressionCompanyRequest"
              },
              "example": {
                "company_url": "https://www.example.com/",
                "company_id": 0
              }
            }
          }
        },
        "x-lead411-auth-methods": [
          "apiKey",
          "bearer",
          "oauth"
        ],
        "x-lead411-example-body": {
          "company_url": "https://www.example.com/",
          "company_id": 0
        },
        "description": "Add a suppressed company by `company_id` and/or `company_url`."
      }
    },
    "/suppression/deleteAddedSuppCompany": {
      "post": {
        "tags": [
          "Suppression"
        ],
        "summary": "Delete suppressed company",
        "operationId": "deleteAddedSuppCompany",
        "responses": {
          "200": {
            "description": "Delete suppressed company",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/SuccessEnvelope"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "data": {
                          "$ref": "#/components/schemas/DeletedFlagData"
                        }
                      }
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "description": "Validation or bad request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "401": {
            "description": "Missing or invalid credentials",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "429": {
            "description": "Rate limit exceeded",
            "headers": {
              "Retry-After": {
                "schema": {
                  "type": "integer"
                }
              },
              "X-RateLimit-Limit": {
                "schema": {
                  "type": "integer"
                }
              },
              "X-RateLimit-Remaining": {
                "schema": {
                  "type": "integer"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          }
        },
        "security": [
          {
            "ApiKeyAuth": []
          },
          {
            "BearerAuth": []
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SuppressionCompanyRequest"
              },
              "example": {
                "company_url": "https://www.example.com/"
              }
            }
          }
        },
        "x-lead411-auth-methods": [
          "apiKey",
          "bearer",
          "oauth"
        ],
        "x-lead411-example-body": {
          "company_url": "https://www.example.com/"
        },
        "description": "Remove a company suppression."
      }
    },
    "/company/getCompanyInfo": {
      "post": {
        "tags": [
          "Company"
        ],
        "summary": "Get company info",
        "operationId": "getCompanyInfo",
        "responses": {
          "200": {
            "description": "Get company info",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/SuccessEnvelope"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "data": {
                          "$ref": "#/components/schemas/CompanyInfoData"
                        }
                      }
                    }
                  ]
                },
                "example": {
                  "status": "success",
                  "message": "success",
                  "data": {
                    "company_id": 1743,
                    "company_name": "Example Inc",
                    "company_url": "https://www.example.com",
                    "employee_count": 250
                  }
                }
              }
            }
          },
          "400": {
            "description": "Validation or bad request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "401": {
            "description": "Missing or invalid credentials",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "429": {
            "description": "Rate limit exceeded",
            "headers": {
              "Retry-After": {
                "schema": {
                  "type": "integer"
                }
              },
              "X-RateLimit-Limit": {
                "schema": {
                  "type": "integer"
                }
              },
              "X-RateLimit-Remaining": {
                "schema": {
                  "type": "integer"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          }
        },
        "security": [
          {
            "ApiKeyAuth": []
          },
          {
            "BearerAuth": []
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CompanyInfoRequest"
              },
              "example": {
                "company_id": 1743
              }
            }
          }
        },
        "x-lead411-auth-methods": [
          "apiKey",
          "bearer",
          "oauth"
        ],
        "x-lead411-example-body": {
          "company_id": 1743
        },
        "description": "Look up one company by `company_id`, `company_url`, `company_name`, or `linkedin_url`.\nOptional `exclude_data_request` omits named datasets. Allowed values:\n`company_suppression`, `company_outside_tech_data`, `company_inside_tech_data`,\n`indeed_data`, `hiring_zip_code`, `news_data`.",
        "x-lead411-response-example": {
          "status": "success",
          "message": "success",
          "data": {
            "company_id": 1743,
            "company_name": "Example Inc",
            "company_url": "https://www.example.com",
            "employee_count": 250
          }
        }
      }
    },
    "/company/getCompanyEmployees": {
      "post": {
        "tags": [
          "Company"
        ],
        "summary": "Get company employees",
        "operationId": "getCompanyEmployees",
        "responses": {
          "200": {
            "description": "Get company employees",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/SuccessEnvelope"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "data": {
                          "$ref": "#/components/schemas/CompanyEmployeesData"
                        }
                      }
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "description": "Validation or bad request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "401": {
            "description": "Missing or invalid credentials",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "429": {
            "description": "Rate limit exceeded",
            "headers": {
              "Retry-After": {
                "schema": {
                  "type": "integer"
                }
              },
              "X-RateLimit-Limit": {
                "schema": {
                  "type": "integer"
                }
              },
              "X-RateLimit-Remaining": {
                "schema": {
                  "type": "integer"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          }
        },
        "security": [
          {
            "ApiKeyAuth": []
          },
          {
            "BearerAuth": []
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CompanyEmployeesRequest"
              },
              "example": {
                "company_id": 1743,
                "page": 1,
                "page_size": 25
              }
            }
          }
        },
        "x-lead411-auth-methods": [
          "apiKey",
          "bearer",
          "oauth"
        ],
        "x-lead411-example-body": {
          "company_id": 1743,
          "page": 1,
          "page_size": 25
        },
        "description": "Paginated employee list for a company."
      }
    },
    "/company/getCompanyNews": {
      "post": {
        "tags": [
          "Company"
        ],
        "summary": "Get company news",
        "operationId": "getCompanyNews",
        "responses": {
          "200": {
            "description": "Get company news",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/SuccessEnvelope"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "data": {
                          "$ref": "#/components/schemas/CompanyNewsData"
                        }
                      }
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "description": "Validation or bad request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "401": {
            "description": "Missing or invalid credentials",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "429": {
            "description": "Rate limit exceeded",
            "headers": {
              "Retry-After": {
                "schema": {
                  "type": "integer"
                }
              },
              "X-RateLimit-Limit": {
                "schema": {
                  "type": "integer"
                }
              },
              "X-RateLimit-Remaining": {
                "schema": {
                  "type": "integer"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          }
        },
        "security": [
          {
            "ApiKeyAuth": []
          },
          {
            "BearerAuth": []
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CompanyIDRequest"
              },
              "example": {
                "company_id": 1743
              }
            }
          }
        },
        "x-lead411-auth-methods": [
          "apiKey",
          "bearer",
          "oauth"
        ],
        "x-lead411-example-body": {
          "company_id": 1743
        },
        "description": "Returns only `company_id` and company-specific `news_data`."
      }
    },
    "/company/getCompanyJobs": {
      "post": {
        "tags": [
          "Company"
        ],
        "summary": "Get company jobs",
        "operationId": "getCompanyJobs",
        "responses": {
          "200": {
            "description": "Get company jobs",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/SuccessEnvelope"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "data": {
                          "$ref": "#/components/schemas/CompanyJobsData"
                        }
                      }
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "description": "Validation or bad request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "401": {
            "description": "Missing or invalid credentials",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "429": {
            "description": "Rate limit exceeded",
            "headers": {
              "Retry-After": {
                "schema": {
                  "type": "integer"
                }
              },
              "X-RateLimit-Limit": {
                "schema": {
                  "type": "integer"
                }
              },
              "X-RateLimit-Remaining": {
                "schema": {
                  "type": "integer"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          }
        },
        "security": [
          {
            "ApiKeyAuth": []
          },
          {
            "BearerAuth": []
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CompanyIDRequest"
              },
              "example": {
                "company_id": 1743
              }
            }
          }
        },
        "x-lead411-auth-methods": [
          "apiKey",
          "bearer",
          "oauth"
        ],
        "x-lead411-example-body": {
          "company_id": 1743
        },
        "description": "Returns only `company_id`, `indeed_data`, and `hiring_zip_code`."
      }
    },
    "/company/getCompanyTech": {
      "post": {
        "tags": [
          "Company"
        ],
        "summary": "Get company technology stack",
        "operationId": "getCompanyTech",
        "responses": {
          "200": {
            "description": "Get company technology stack",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/SuccessEnvelope"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "data": {
                          "$ref": "#/components/schemas/CompanyTechData"
                        }
                      }
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "description": "Validation or bad request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "401": {
            "description": "Missing or invalid credentials",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "429": {
            "description": "Rate limit exceeded",
            "headers": {
              "Retry-After": {
                "schema": {
                  "type": "integer"
                }
              },
              "X-RateLimit-Limit": {
                "schema": {
                  "type": "integer"
                }
              },
              "X-RateLimit-Remaining": {
                "schema": {
                  "type": "integer"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          }
        },
        "security": [
          {
            "ApiKeyAuth": []
          },
          {
            "BearerAuth": []
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CompanyTechRequest"
              },
              "example": {
                "company_id": 1743,
                "page": 1,
                "limit": 50
              }
            }
          }
        },
        "x-lead411-auth-methods": [
          "apiKey",
          "bearer",
          "oauth"
        ],
        "x-lead411-example-body": {
          "company_id": 1743,
          "page": 1,
          "limit": 50
        },
        "description": "Returns `company_id`, company profile `json_meta`, and one page of technologies\nin `company_outside_tech_data`. Pagination applies to this endpoint only\n(`getCompanyInfo` still returns its first 50 technologies and is not paged).\n`page` defaults to 1. `limit` is always 50 per page even if another value is sent.\nResults are ordered by technology id. The response includes `page`, `limit`,\n`total`, and `total_pages`."
      }
    },
    "/company/searchCompanyEmployees": {
      "post": {
        "tags": [
          "Company"
        ],
        "summary": "Search employees at company",
        "operationId": "searchCompanyEmployees",
        "responses": {
          "200": {
            "description": "Search employees at company",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/SuccessEnvelope"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "data": {
                          "$ref": "#/components/schemas/SearchCompanyEmployeesData"
                        }
                      }
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "description": "Validation or bad request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "401": {
            "description": "Missing or invalid credentials",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "429": {
            "description": "Rate limit exceeded",
            "headers": {
              "Retry-After": {
                "schema": {
                  "type": "integer"
                }
              },
              "X-RateLimit-Limit": {
                "schema": {
                  "type": "integer"
                }
              },
              "X-RateLimit-Remaining": {
                "schema": {
                  "type": "integer"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          }
        },
        "security": [
          {
            "ApiKeyAuth": []
          },
          {
            "BearerAuth": []
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SearchCompanyEmployeesRequest"
              },
              "example": {
                "company_linkedin_url": "http://www.linkedin.com/company/cisco"
              }
            }
          }
        },
        "x-lead411-auth-methods": [
          "apiKey",
          "bearer",
          "oauth"
        ],
        "x-lead411-example-body": {
          "company_linkedin_url": "http://www.linkedin.com/company/cisco"
        },
        "description": "Search employees within a company. Identify the company with `company_id` or\n`company_linkedin_url`. `linkedin_url` looks up an employee by their LinkedIn\nprofile (`linkedin.com/in/...`).",
        "x-lead411-usage-notes": "Send one identifier:\n`company_id` or `company_linkedin_url` to list employees at a company\n(`search_name`, `search_dept`, `search_title` apply).\n`linkedin_url` to look up a person by profile URL (`linkedin.com/in/...`).\nDo not send a company page URL in `linkedin_url`."
      }
    },
    "/company/getCompanyData": {
      "post": {
        "tags": [
          "Company"
        ],
        "summary": "Get company data bundle",
        "operationId": "getCompanyData",
        "responses": {
          "200": {
            "description": "Get company data bundle",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/SuccessEnvelope"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "data": {
                          "$ref": "#/components/schemas/CompanyListData"
                        }
                      }
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "description": "Validation or bad request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "401": {
            "description": "Missing or invalid credentials",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "429": {
            "description": "Rate limit exceeded",
            "headers": {
              "Retry-After": {
                "schema": {
                  "type": "integer"
                }
              },
              "X-RateLimit-Limit": {
                "schema": {
                  "type": "integer"
                }
              },
              "X-RateLimit-Remaining": {
                "schema": {
                  "type": "integer"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          }
        },
        "security": [
          {
            "ApiKeyAuth": []
          },
          {
            "BearerAuth": []
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CompanyListRequest"
              },
              "example": {
                "companies": [
                  {
                    "url": "https://www.example.com",
                    "company_name": "Example Inc"
                  }
                ]
              }
            }
          }
        },
        "x-lead411-auth-methods": [
          "apiKey",
          "bearer",
          "oauth"
        ],
        "x-lead411-example-body": {
          "companies": [
            {
              "url": "https://www.example.com",
              "company_name": "Example Inc"
            }
          ]
        },
        "description": "Resolve a list of companies from a `companies` array in the body."
      }
    },
    "/company/get_company_data_using_csv": {
      "post": {
        "tags": [
          "Company"
        ],
        "summary": "Bulk company lookup via CSV",
        "operationId": "get_company_data_using_csv",
        "responses": {
          "200": {
            "description": "Bulk company lookup via CSV",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/SuccessEnvelope"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "data": {
                          "$ref": "#/components/schemas/CompanyCSVExportData"
                        }
                      }
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "description": "Validation or bad request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "401": {
            "description": "Missing or invalid credentials",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "429": {
            "description": "Rate limit exceeded",
            "headers": {
              "Retry-After": {
                "schema": {
                  "type": "integer"
                }
              },
              "X-RateLimit-Limit": {
                "schema": {
                  "type": "integer"
                }
              },
              "X-RateLimit-Remaining": {
                "schema": {
                  "type": "integer"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          }
        },
        "security": [
          {
            "ApiKeyAuth": []
          },
          {
            "BearerAuth": []
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CompanyCSVRequest"
              },
              "example": {
                "filename": "companies.csv",
                "download_all": "csv"
              }
            }
          }
        },
        "x-lead411-auth-methods": [
          "apiKey",
          "bearer",
          "oauth"
        ],
        "x-lead411-example-body": {
          "filename": "companies.csv",
          "download_all": "csv"
        },
        "description": "Bulk company upload via JSON, pipe-separated URLs, or multipart CSV (`company_csv`, `file`,\n`upload_file`, or `csv_file`)."
      }
    },
    "/employee/getEmployeeInformation": {
      "post": {
        "tags": [
          "Employee"
        ],
        "summary": "Get employee information",
        "operationId": "getEmployeeInformation",
        "responses": {
          "200": {
            "description": "Get employee information",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/SuccessEnvelope"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "data": {
                          "$ref": "#/components/schemas/EmployeeListData"
                        }
                      }
                    }
                  ]
                },
                "example": {
                  "status": "success",
                  "message": "success",
                  "data": [
                    {
                      "employee_id": 12345,
                      "company_id": 1743,
                      "contact_status": "unlocked",
                      "first_name": "Alex",
                      "last_name": "Smith",
                      "title": "CEO",
                      "email": "alex@example.com"
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "description": "Validation or bad request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "401": {
            "description": "Missing or invalid credentials",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "429": {
            "description": "Rate limit exceeded",
            "headers": {
              "Retry-After": {
                "schema": {
                  "type": "integer"
                }
              },
              "X-RateLimit-Limit": {
                "schema": {
                  "type": "integer"
                }
              },
              "X-RateLimit-Remaining": {
                "schema": {
                  "type": "integer"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          }
        },
        "security": [
          {
            "ApiKeyAuth": []
          },
          {
            "BearerAuth": []
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/EmployeeInfoRequest"
              },
              "example": {
                "employee_id": 12345
              }
            }
          }
        },
        "x-lead411-auth-methods": [
          "apiKey",
          "bearer",
          "oauth"
        ],
        "x-lead411-example-body": {
          "employee_id": 12345
        },
        "description": "Find employees by `employee_id`, `email`, `linkedin_url`, or title + company.",
        "x-lead411-response-example": {
          "status": "success",
          "message": "success",
          "data": [
            {
              "employee_id": 12345,
              "company_id": 1743,
              "contact_status": "unlocked",
              "first_name": "Alex",
              "last_name": "Smith",
              "title": "CEO",
              "email": "alex@example.com"
            }
          ]
        }
      }
    },
    "/employee/unlock_employee_record": {
      "post": {
        "tags": [
          "Employee"
        ],
        "summary": "Unlock employee record",
        "operationId": "unlockEmployeeRecord",
        "responses": {
          "200": {
            "description": "Unlock employee record",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/SuccessEnvelope"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "data": {
                          "$ref": "#/components/schemas/UnlockEmployeeData"
                        }
                      }
                    }
                  ]
                },
                "example": {
                  "status": "success",
                  "message": "success",
                  "data": {
                    "status": "unlocked",
                    "employee_id": 12345,
                    "quota": {
                      "remaining": 499
                    }
                  }
                }
              }
            }
          },
          "400": {
            "description": "Validation or bad request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "401": {
            "description": "Missing or invalid credentials",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "429": {
            "description": "Rate limit exceeded",
            "headers": {
              "Retry-After": {
                "schema": {
                  "type": "integer"
                }
              },
              "X-RateLimit-Limit": {
                "schema": {
                  "type": "integer"
                }
              },
              "X-RateLimit-Remaining": {
                "schema": {
                  "type": "integer"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          }
        },
        "security": [
          {
            "ApiKeyAuth": []
          },
          {
            "BearerAuth": []
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UnlockEmployeeRequest"
              },
              "example": {
                "employee_id": "12345",
                "employee_ids_json": ""
              }
            }
          }
        },
        "x-lead411-auth-methods": [
          "apiKey",
          "bearer",
          "oauth"
        ],
        "x-lead411-example-body": {
          "employee_id": "12345",
          "employee_ids_json": ""
        },
        "description": "Unlock one or more employees. `employee_ids_json` must be a JSON array string.",
        "x-lead411-response-example": {
          "status": "success",
          "message": "success",
          "data": {
            "status": "unlocked",
            "employee_id": 12345,
            "quota": {
              "remaining": 499
            }
          }
        }
      }
    },
    "/options/get_search_sortby_options": {
      "post": {
        "tags": [
          "Options"
        ],
        "summary": "Get search sort-by options",
        "operationId": "getSearchSortByOptions",
        "responses": {
          "200": {
            "description": "Get search sort-by options",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/SuccessEnvelope"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "data": {
                          "$ref": "#/components/schemas/SearchSortByOptionsData"
                        }
                      }
                    }
                  ]
                },
                "example": {
                  "display_name": "Sort By",
                  "input_type": "dropdown",
                  "default_value": "yearlyRevDesc",
                  "values": {
                    "yearlyRevDesc": "Revenue (High to Low)",
                    "yearlyRevAsc": "Revenue (Low to High)",
                    "empSizeDesc": "Company Size (High to Low)",
                    "empSizeAsc": "Company Size (Low to High)",
                    "companyNameDesc": "Company Name (A-Z)",
                    "companyNameAsc": "Company Name (Z-A)",
                    "leadScoring": "Lead Scoring",
                    "bomboraRank": "Bombora Rank",
                    "rules": "none"
                  }
                }
              }
            }
          },
          "400": {
            "description": "Validation or bad request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "401": {
            "description": "Missing or invalid credentials",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "429": {
            "description": "Rate limit exceeded",
            "headers": {
              "Retry-After": {
                "schema": {
                  "type": "integer"
                }
              },
              "X-RateLimit-Limit": {
                "schema": {
                  "type": "integer"
                }
              },
              "X-RateLimit-Remaining": {
                "schema": {
                  "type": "integer"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          }
        },
        "security": [
          {
            "ApiKeyAuth": []
          },
          {
            "BearerAuth": []
          }
        ],
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/EmptyObject"
              },
              "example": {}
            }
          }
        },
        "x-lead411-auth-methods": [
          "apiKey",
          "bearer",
          "oauth"
        ],
        "x-lead411-example-body": {},
        "description": "Return allowed search sort options. Empty body is OK.",
        "x-lead411-response-example": {
          "display_name": "Sort By",
          "input_type": "dropdown",
          "default_value": "yearlyRevDesc",
          "values": {
            "yearlyRevDesc": "Revenue (High to Low)",
            "yearlyRevAsc": "Revenue (Low to High)",
            "empSizeDesc": "Company Size (High to Low)",
            "empSizeAsc": "Company Size (Low to High)",
            "companyNameDesc": "Company Name (A-Z)",
            "companyNameAsc": "Company Name (Z-A)",
            "leadScoring": "Lead Scoring",
            "bomboraRank": "Bombora Rank",
            "rules": "none"
          }
        }
      }
    },
    "/options/search_industry_linkedin_keywords": {
      "post": {
        "tags": [
          "Options"
        ],
        "summary": "Search industry LinkedIn keywords",
        "operationId": "searchIndustryLinkedInKeywords",
        "responses": {
          "200": {
            "description": "Search industry LinkedIn keywords",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/SuccessEnvelope"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "data": {
                          "$ref": "#/components/schemas/OptionsListData"
                        }
                      }
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "description": "Validation or bad request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "401": {
            "description": "Missing or invalid credentials",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "429": {
            "description": "Rate limit exceeded",
            "headers": {
              "Retry-After": {
                "schema": {
                  "type": "integer"
                }
              },
              "X-RateLimit-Limit": {
                "schema": {
                  "type": "integer"
                }
              },
              "X-RateLimit-Remaining": {
                "schema": {
                  "type": "integer"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          }
        },
        "security": [
          {
            "ApiKeyAuth": []
          },
          {
            "BearerAuth": []
          }
        ],
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/OptionsQueryRequest"
              },
              "example": {
                "search_string": "technology",
                "limit": 20
              }
            }
          }
        },
        "x-lead411-auth-methods": [
          "apiKey",
          "bearer",
          "oauth"
        ],
        "x-lead411-example-body": {
          "search_string": "technology",
          "limit": 20
        },
        "description": "Search LinkedIn industry keywords and return IDs for `industry_linkedin` (also usable as `Industry_Codes` / `industryCode` values over 999). Does not return classic Lead411 industry codes (IDs \u2264 999). An empty body is treated as `{}` and returns the default list."
      }
    },
    "/options/search_title": {
      "post": {
        "tags": [
          "Options"
        ],
        "summary": "Search job titles",
        "operationId": "searchTitle",
        "responses": {
          "200": {
            "description": "Search job titles",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/SuccessEnvelope"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "data": {
                          "$ref": "#/components/schemas/OptionsListData"
                        }
                      }
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "description": "Validation or bad request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "401": {
            "description": "Missing or invalid credentials",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "429": {
            "description": "Rate limit exceeded",
            "headers": {
              "Retry-After": {
                "schema": {
                  "type": "integer"
                }
              },
              "X-RateLimit-Limit": {
                "schema": {
                  "type": "integer"
                }
              },
              "X-RateLimit-Remaining": {
                "schema": {
                  "type": "integer"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          }
        },
        "security": [
          {
            "ApiKeyAuth": []
          },
          {
            "BearerAuth": []
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/OptionsQueryRequest"
              },
              "example": {
                "title_keyword": "ceo"
              }
            }
          }
        },
        "x-lead411-auth-methods": [
          "apiKey",
          "bearer",
          "oauth"
        ],
        "x-lead411-example-body": {
          "title_keyword": "ceo"
        },
        "description": "Job-title typeahead. PHP reads `q` then `title_keyword` (not `search_string` for the index lookup).\nRequires at least 3 characters. Prefix-matches titles (`@description (^term*)`), always returns at most\n8 suggestions, then sorts shortest titles first. Optional `selected_titles` excludes already-chosen tokens.\nIf nothing matches, executive-level fallback options may be returned."
      }
    },
    "/options/searchAreaCode": {
      "post": {
        "tags": [
          "Options"
        ],
        "summary": "Search area codes",
        "operationId": "searchAreaCode",
        "responses": {
          "200": {
            "description": "Search area codes",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/SuccessEnvelope"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "data": {
                          "$ref": "#/components/schemas/OptionsListData"
                        }
                      }
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "description": "Validation or bad request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "401": {
            "description": "Missing or invalid credentials",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "429": {
            "description": "Rate limit exceeded",
            "headers": {
              "Retry-After": {
                "schema": {
                  "type": "integer"
                }
              },
              "X-RateLimit-Limit": {
                "schema": {
                  "type": "integer"
                }
              },
              "X-RateLimit-Remaining": {
                "schema": {
                  "type": "integer"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          }
        },
        "security": [
          {
            "ApiKeyAuth": []
          },
          {
            "BearerAuth": []
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/OptionsQueryRequest"
              },
              "example": {
                "search_string": "415",
                "limit": 20
              }
            }
          }
        },
        "x-lead411-auth-methods": [
          "apiKey",
          "bearer",
          "oauth"
        ],
        "x-lead411-example-body": {
          "search_string": "415",
          "limit": 20
        }
      }
    },
    "/options/searchZipCode": {
      "post": {
        "tags": [
          "Options"
        ],
        "summary": "Search ZIP/postal codes",
        "operationId": "searchZipCode",
        "responses": {
          "200": {
            "description": "Search ZIP/postal codes",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/SuccessEnvelope"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "data": {
                          "$ref": "#/components/schemas/OptionsListData"
                        }
                      }
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "description": "Validation or bad request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "401": {
            "description": "Missing or invalid credentials",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "429": {
            "description": "Rate limit exceeded",
            "headers": {
              "Retry-After": {
                "schema": {
                  "type": "integer"
                }
              },
              "X-RateLimit-Limit": {
                "schema": {
                  "type": "integer"
                }
              },
              "X-RateLimit-Remaining": {
                "schema": {
                  "type": "integer"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          }
        },
        "security": [
          {
            "ApiKeyAuth": []
          },
          {
            "BearerAuth": []
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/OptionsQueryRequest"
              },
              "example": {
                "search_string": "94105",
                "limit": 20
              }
            }
          }
        },
        "x-lead411-auth-methods": [
          "apiKey",
          "bearer",
          "oauth"
        ],
        "x-lead411-example-body": {
          "search_string": "94105",
          "limit": 20
        }
      }
    },
    "/options/searchRegion": {
      "post": {
        "tags": [
          "Options"
        ],
        "summary": "Search regions",
        "operationId": "searchRegion",
        "responses": {
          "200": {
            "description": "Search regions",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/SuccessEnvelope"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "data": {
                          "$ref": "#/components/schemas/OptionsListData"
                        }
                      }
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "description": "Validation or bad request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "401": {
            "description": "Missing or invalid credentials",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "429": {
            "description": "Rate limit exceeded",
            "headers": {
              "Retry-After": {
                "schema": {
                  "type": "integer"
                }
              },
              "X-RateLimit-Limit": {
                "schema": {
                  "type": "integer"
                }
              },
              "X-RateLimit-Remaining": {
                "schema": {
                  "type": "integer"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          }
        },
        "security": [
          {
            "ApiKeyAuth": []
          },
          {
            "BearerAuth": []
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/OptionsQueryRequest"
              },
              "example": {
                "search_string": "California",
                "limit": 20
              }
            }
          }
        },
        "x-lead411-auth-methods": [
          "apiKey",
          "bearer",
          "oauth"
        ],
        "x-lead411-example-body": {
          "search_string": "California",
          "limit": 20
        }
      }
    },
    "/get_search_sortby_options": {
      "post": {
        "tags": [
          "Options"
        ],
        "summary": "Legacy alias for `/options/get_search_sortby_options`",
        "operationId": "getSearchSortByOptionsAlias",
        "responses": {
          "200": {
            "description": "Legacy alias for `/options/get_search_sortby_options`",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SuccessEnvelope"
                }
              }
            }
          },
          "400": {
            "description": "Validation or bad request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "401": {
            "description": "Missing or invalid credentials",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "429": {
            "description": "Rate limit exceeded",
            "headers": {
              "Retry-After": {
                "schema": {
                  "type": "integer"
                }
              },
              "X-RateLimit-Limit": {
                "schema": {
                  "type": "integer"
                }
              },
              "X-RateLimit-Remaining": {
                "schema": {
                  "type": "integer"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          }
        },
        "description": "Legacy path alias; same behavior as the canonical `/options/\u2026` route.",
        "deprecated": true,
        "security": [
          {
            "ApiKeyAuth": []
          },
          {
            "BearerAuth": []
          }
        ],
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/EmptyObject"
              },
              "example": {}
            }
          }
        },
        "x-lead411-auth-methods": [
          "apiKey",
          "bearer",
          "oauth"
        ],
        "x-lead411-example-body": {}
      }
    },
    "/search_industry_linkedin_keywords": {
      "post": {
        "tags": [
          "Options"
        ],
        "summary": "Legacy alias for `/options/search_industry_linkedin_keywords`",
        "operationId": "searchIndustryLinkedInKeywordsAlias",
        "responses": {
          "200": {
            "description": "Legacy alias for `/options/search_industry_linkedin_keywords`",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SuccessEnvelope"
                }
              }
            }
          },
          "400": {
            "description": "Validation or bad request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "401": {
            "description": "Missing or invalid credentials",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "429": {
            "description": "Rate limit exceeded",
            "headers": {
              "Retry-After": {
                "schema": {
                  "type": "integer"
                }
              },
              "X-RateLimit-Limit": {
                "schema": {
                  "type": "integer"
                }
              },
              "X-RateLimit-Remaining": {
                "schema": {
                  "type": "integer"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          }
        },
        "description": "Legacy path alias; same behavior as the canonical `/options/\u2026` route.",
        "deprecated": true,
        "security": [
          {
            "ApiKeyAuth": []
          },
          {
            "BearerAuth": []
          }
        ],
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/OptionsQueryRequest"
              }
            }
          }
        },
        "x-lead411-auth-methods": [
          "apiKey",
          "bearer",
          "oauth"
        ]
      }
    },
    "/search_title": {
      "post": {
        "tags": [
          "Options"
        ],
        "summary": "Legacy alias for `/options/search_title`",
        "operationId": "searchTitleAliasRoot",
        "responses": {
          "200": {
            "description": "Legacy alias for `/options/search_title`",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SuccessEnvelope"
                }
              }
            }
          },
          "400": {
            "description": "Validation or bad request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "401": {
            "description": "Missing or invalid credentials",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "429": {
            "description": "Rate limit exceeded",
            "headers": {
              "Retry-After": {
                "schema": {
                  "type": "integer"
                }
              },
              "X-RateLimit-Limit": {
                "schema": {
                  "type": "integer"
                }
              },
              "X-RateLimit-Remaining": {
                "schema": {
                  "type": "integer"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          }
        },
        "description": "Legacy path alias; same behavior as the canonical `/options/\u2026` route.",
        "deprecated": true,
        "security": [
          {
            "ApiKeyAuth": []
          },
          {
            "BearerAuth": []
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/OptionsQueryRequest"
              }
            }
          }
        },
        "x-lead411-auth-methods": [
          "apiKey",
          "bearer",
          "oauth"
        ]
      }
    },
    "/search/search_title": {
      "post": {
        "tags": [
          "Options"
        ],
        "summary": "Legacy alias for `/options/search_title`",
        "operationId": "searchTitleAliasNested",
        "responses": {
          "200": {
            "description": "Legacy alias for `/options/search_title`",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SuccessEnvelope"
                }
              }
            }
          },
          "400": {
            "description": "Validation or bad request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "401": {
            "description": "Missing or invalid credentials",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "429": {
            "description": "Rate limit exceeded",
            "headers": {
              "Retry-After": {
                "schema": {
                  "type": "integer"
                }
              },
              "X-RateLimit-Limit": {
                "schema": {
                  "type": "integer"
                }
              },
              "X-RateLimit-Remaining": {
                "schema": {
                  "type": "integer"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          }
        },
        "description": "Legacy path alias; same behavior as the canonical `/options/\u2026` route.",
        "deprecated": true,
        "security": [
          {
            "ApiKeyAuth": []
          },
          {
            "BearerAuth": []
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/OptionsQueryRequest"
              }
            }
          }
        },
        "x-lead411-auth-methods": [
          "apiKey",
          "bearer",
          "oauth"
        ]
      }
    },
    "/searchAreaCode": {
      "post": {
        "tags": [
          "Options"
        ],
        "summary": "Legacy alias for `/options/searchAreaCode`",
        "operationId": "searchAreaCodeAlias",
        "responses": {
          "200": {
            "description": "Legacy alias for `/options/searchAreaCode`",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SuccessEnvelope"
                }
              }
            }
          },
          "400": {
            "description": "Validation or bad request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "401": {
            "description": "Missing or invalid credentials",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "429": {
            "description": "Rate limit exceeded",
            "headers": {
              "Retry-After": {
                "schema": {
                  "type": "integer"
                }
              },
              "X-RateLimit-Limit": {
                "schema": {
                  "type": "integer"
                }
              },
              "X-RateLimit-Remaining": {
                "schema": {
                  "type": "integer"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          }
        },
        "description": "Legacy path alias; same behavior as the canonical `/options/\u2026` route.",
        "deprecated": true,
        "security": [
          {
            "ApiKeyAuth": []
          },
          {
            "BearerAuth": []
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/OptionsQueryRequest"
              }
            }
          }
        },
        "x-lead411-auth-methods": [
          "apiKey",
          "bearer",
          "oauth"
        ]
      }
    },
    "/searchZipCode": {
      "post": {
        "tags": [
          "Options"
        ],
        "summary": "Legacy alias for `/options/searchZipCode`",
        "operationId": "searchZipCodeAlias",
        "responses": {
          "200": {
            "description": "Legacy alias for `/options/searchZipCode`",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SuccessEnvelope"
                }
              }
            }
          },
          "400": {
            "description": "Validation or bad request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "401": {
            "description": "Missing or invalid credentials",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "429": {
            "description": "Rate limit exceeded",
            "headers": {
              "Retry-After": {
                "schema": {
                  "type": "integer"
                }
              },
              "X-RateLimit-Limit": {
                "schema": {
                  "type": "integer"
                }
              },
              "X-RateLimit-Remaining": {
                "schema": {
                  "type": "integer"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          }
        },
        "description": "Legacy path alias; same behavior as the canonical `/options/\u2026` route.",
        "deprecated": true,
        "security": [
          {
            "ApiKeyAuth": []
          },
          {
            "BearerAuth": []
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/OptionsQueryRequest"
              }
            }
          }
        },
        "x-lead411-auth-methods": [
          "apiKey",
          "bearer",
          "oauth"
        ]
      }
    },
    "/searchRegion": {
      "post": {
        "tags": [
          "Options"
        ],
        "summary": "Legacy alias for `/options/searchRegion`",
        "operationId": "searchRegionAlias",
        "responses": {
          "200": {
            "description": "Legacy alias for `/options/searchRegion`",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SuccessEnvelope"
                }
              }
            }
          },
          "400": {
            "description": "Validation or bad request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "401": {
            "description": "Missing or invalid credentials",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "429": {
            "description": "Rate limit exceeded",
            "headers": {
              "Retry-After": {
                "schema": {
                  "type": "integer"
                }
              },
              "X-RateLimit-Limit": {
                "schema": {
                  "type": "integer"
                }
              },
              "X-RateLimit-Remaining": {
                "schema": {
                  "type": "integer"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          }
        },
        "description": "Legacy path alias; same behavior as the canonical `/options/\u2026` route.",
        "deprecated": true,
        "security": [
          {
            "ApiKeyAuth": []
          },
          {
            "BearerAuth": []
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/OptionsQueryRequest"
              }
            }
          }
        },
        "x-lead411-auth-methods": [
          "apiKey",
          "bearer",
          "oauth"
        ]
      }
    },
    "/crm/get_configured_crm": {
      "post": {
        "tags": [
          "CRM"
        ],
        "summary": "Get configured CRM",
        "operationId": "getConfiguredCRM",
        "responses": {
          "200": {
            "description": "Get configured CRM",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/SuccessEnvelope"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "data": {
                          "$ref": "#/components/schemas/GenericObjectData"
                        }
                      }
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "description": "Validation or bad request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "401": {
            "description": "Missing or invalid credentials",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "429": {
            "description": "Rate limit exceeded",
            "headers": {
              "Retry-After": {
                "schema": {
                  "type": "integer"
                }
              },
              "X-RateLimit-Limit": {
                "schema": {
                  "type": "integer"
                }
              },
              "X-RateLimit-Remaining": {
                "schema": {
                  "type": "integer"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          }
        },
        "security": [
          {
            "ApiKeyAuth": []
          },
          {
            "BearerAuth": []
          }
        ],
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/EmptyObject"
              },
              "example": {}
            }
          }
        },
        "x-lead411-auth-methods": [
          "apiKey",
          "bearer",
          "oauth"
        ],
        "x-lead411-example-body": {},
        "description": "Return the CRM currently configured for the account."
      }
    },
    "/crm/get_all_supported_crms": {
      "post": {
        "tags": [
          "CRM"
        ],
        "summary": "List supported CRMs",
        "operationId": "getAllSupportedCRMs",
        "responses": {
          "200": {
            "description": "List supported CRMs",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/SuccessEnvelope"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "data": {
                          "$ref": "#/components/schemas/GenericObjectData"
                        }
                      }
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "description": "Validation or bad request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "401": {
            "description": "Missing or invalid credentials",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "429": {
            "description": "Rate limit exceeded",
            "headers": {
              "Retry-After": {
                "schema": {
                  "type": "integer"
                }
              },
              "X-RateLimit-Limit": {
                "schema": {
                  "type": "integer"
                }
              },
              "X-RateLimit-Remaining": {
                "schema": {
                  "type": "integer"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          }
        },
        "security": [
          {
            "ApiKeyAuth": []
          },
          {
            "BearerAuth": []
          }
        ],
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/EmptyObject"
              },
              "example": {}
            }
          }
        },
        "x-lead411-auth-methods": [
          "apiKey",
          "bearer",
          "oauth"
        ],
        "x-lead411-example-body": {},
        "description": "List CRM integrations supported for the account/package."
      }
    },
    "/crm/exportDataToDefaultCRM": {
      "post": {
        "tags": [
          "CRM"
        ],
        "summary": "Push employee data to default CRM",
        "operationId": "exportDataToDefaultCRM",
        "responses": {
          "200": {
            "description": "Push employee data to default CRM",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/SuccessEnvelope"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "data": {
                          "$ref": "#/components/schemas/GenericObjectData"
                        }
                      }
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "description": "Validation or bad request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "401": {
            "description": "Missing or invalid credentials",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "429": {
            "description": "Rate limit exceeded",
            "headers": {
              "Retry-After": {
                "schema": {
                  "type": "integer"
                }
              },
              "X-RateLimit-Limit": {
                "schema": {
                  "type": "integer"
                }
              },
              "X-RateLimit-Remaining": {
                "schema": {
                  "type": "integer"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          }
        },
        "security": [
          {
            "ApiKeyAuth": []
          },
          {
            "BearerAuth": []
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ExportDataToDefaultCRMRequest"
              },
              "example": {
                "employee_id": 12345,
                "action": "update"
              }
            }
          }
        },
        "x-lead411-auth-methods": [
          "apiKey",
          "bearer",
          "oauth"
        ],
        "x-lead411-example-body": {
          "employee_id": 12345,
          "action": "update"
        },
        "description": "Push employee and/or company data to the account's default CRM.\nContact path requires `employee_id` or `employee_ids_json`. Company path uses `type` + `company_info`."
      }
    },
    "/crm/getCRMFields": {
      "post": {
        "tags": [
          "CRM"
        ],
        "summary": "Get CRM field definitions",
        "operationId": "getCRMFields",
        "responses": {
          "200": {
            "description": "Get CRM field definitions",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/SuccessEnvelope"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "data": {
                          "$ref": "#/components/schemas/GenericObjectData"
                        }
                      }
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "description": "Validation or bad request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "401": {
            "description": "Missing or invalid credentials",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "429": {
            "description": "Rate limit exceeded",
            "headers": {
              "Retry-After": {
                "schema": {
                  "type": "integer"
                }
              },
              "X-RateLimit-Limit": {
                "schema": {
                  "type": "integer"
                }
              },
              "X-RateLimit-Remaining": {
                "schema": {
                  "type": "integer"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          }
        },
        "security": [
          {
            "ApiKeyAuth": []
          },
          {
            "BearerAuth": []
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CRMFieldsRequest"
              },
              "example": {
                "crm": "salesforce",
                "type": "contact"
              }
            }
          }
        },
        "x-lead411-auth-methods": [
          "apiKey",
          "bearer",
          "oauth"
        ],
        "x-lead411-example-body": {
          "crm": "salesforce",
          "type": "contact"
        },
        "description": "Get CRM field definitions for mapping."
      }
    },
    "/crm/saveCRMMapping": {
      "post": {
        "tags": [
          "CRM"
        ],
        "summary": "Save CRM field mapping",
        "operationId": "saveCRMMapping",
        "responses": {
          "200": {
            "description": "Save CRM field mapping",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/SuccessEnvelope"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "data": {
                          "$ref": "#/components/schemas/GenericObjectData"
                        }
                      }
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "description": "Validation or bad request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "401": {
            "description": "Missing or invalid credentials",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "429": {
            "description": "Rate limit exceeded",
            "headers": {
              "Retry-After": {
                "schema": {
                  "type": "integer"
                }
              },
              "X-RateLimit-Limit": {
                "schema": {
                  "type": "integer"
                }
              },
              "X-RateLimit-Remaining": {
                "schema": {
                  "type": "integer"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          }
        },
        "security": [
          {
            "ApiKeyAuth": []
          },
          {
            "BearerAuth": []
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SaveCRMMappingRequest"
              },
              "example": {
                "crm": "salesforce",
                "lead_vals": [
                  "email",
                  "first_name"
                ],
                "crm_vals": [
                  "Email",
                  "FirstName"
                ],
                "type": "contact"
              }
            }
          }
        },
        "x-lead411-auth-methods": [
          "apiKey",
          "bearer",
          "oauth"
        ],
        "description": "Save CRM field mappings. `lead_vals` and `crm_vals` are parallel arrays.",
        "x-lead411-example-body": {
          "crm": "salesforce",
          "lead_vals": [
            "email",
            "first_name"
          ],
          "crm_vals": [
            "Email",
            "FirstName"
          ],
          "type": "contact"
        }
      }
    },
    "/getCRMFields": {
      "post": {
        "tags": [
          "CRM"
        ],
        "summary": "Get CRM fields (legacy alias)",
        "operationId": "getCRMFieldsAlias",
        "responses": {
          "200": {
            "description": "Get CRM fields (legacy alias)",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/SuccessEnvelope"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "data": {
                          "$ref": "#/components/schemas/GenericObjectData"
                        }
                      }
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "description": "Validation or bad request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "401": {
            "description": "Missing or invalid credentials",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "429": {
            "description": "Rate limit exceeded",
            "headers": {
              "Retry-After": {
                "schema": {
                  "type": "integer"
                }
              },
              "X-RateLimit-Limit": {
                "schema": {
                  "type": "integer"
                }
              },
              "X-RateLimit-Remaining": {
                "schema": {
                  "type": "integer"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          }
        },
        "deprecated": true,
        "security": [
          {
            "ApiKeyAuth": []
          },
          {
            "BearerAuth": []
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CRMFieldsRequest"
              }
            }
          }
        },
        "x-lead411-auth-methods": [
          "apiKey",
          "bearer",
          "oauth"
        ]
      }
    },
    "/saveCRMMapping": {
      "post": {
        "tags": [
          "CRM"
        ],
        "summary": "Save CRM mapping (legacy alias)",
        "operationId": "saveCRMMappingAlias",
        "responses": {
          "200": {
            "description": "Save CRM mapping (legacy alias)",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/SuccessEnvelope"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "data": {
                          "$ref": "#/components/schemas/GenericObjectData"
                        }
                      }
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "description": "Validation or bad request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "401": {
            "description": "Missing or invalid credentials",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "429": {
            "description": "Rate limit exceeded",
            "headers": {
              "Retry-After": {
                "schema": {
                  "type": "integer"
                }
              },
              "X-RateLimit-Limit": {
                "schema": {
                  "type": "integer"
                }
              },
              "X-RateLimit-Remaining": {
                "schema": {
                  "type": "integer"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          }
        },
        "deprecated": true,
        "security": [
          {
            "ApiKeyAuth": []
          },
          {
            "BearerAuth": []
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SaveCRMMappingRequest"
              }
            }
          }
        },
        "x-lead411-auth-methods": [
          "apiKey",
          "bearer",
          "oauth"
        ]
      }
    },
    "/export": {
      "post": {
        "tags": [
          "Export"
        ],
        "summary": "Create export download",
        "operationId": "exportDownload",
        "responses": {
          "200": {
            "description": "Create export download",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/SuccessEnvelope"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "data": {
                          "$ref": "#/components/schemas/ExportDownloadData"
                        }
                      }
                    }
                  ]
                },
                "example": {
                  "status": "success",
                  "message": "success",
                  "data": {
                    "download_link": "https://api.lead411.com/v3/files/12345/export_20260720.csv"
                  }
                }
              }
            }
          },
          "400": {
            "description": "Validation or bad request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "401": {
            "description": "Missing or invalid credentials",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "429": {
            "description": "Rate limit exceeded",
            "headers": {
              "Retry-After": {
                "schema": {
                  "type": "integer"
                }
              },
              "X-RateLimit-Limit": {
                "schema": {
                  "type": "integer"
                }
              },
              "X-RateLimit-Remaining": {
                "schema": {
                  "type": "integer"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          }
        },
        "security": [
          {
            "ApiKeyAuth": []
          },
          {
            "BearerAuth": []
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ExportDownloadRequest"
              },
              "example": {
                "select_action_download": "employee",
                "employee_id": "12345,67890",
                "download_all": "csv",
                "filename": "export.csv"
              }
            }
          }
        },
        "x-lead411-auth-methods": [
          "apiKey",
          "bearer",
          "oauth"
        ],
        "x-lead411-example-body": {
          "select_action_download": "employee",
          "employee_id": "12345,67890",
          "download_all": "csv",
          "filename": "export.csv"
        },
        "description": "Create a file export. `select_action_download` is required.",
        "x-lead411-response-example": {
          "status": "success",
          "message": "success",
          "data": {
            "download_link": "https://api.lead411.com/v3/files/12345/export_20260720.csv"
          }
        },
        "x-lead411-usage-notes": "For large exports the API may return `offline: true` with a `download_id` instead of an immediate link."
      }
    },
    "/files/{customerID}/{fileName}": {
      "get": {
        "tags": [
          "Export"
        ],
        "summary": "Download export file",
        "operationId": "getExportFile",
        "security": [
          {
            "ApiKeyAuth": []
          },
          {
            "BearerAuth": []
          }
        ],
        "x-lead411-auth-methods": [
          "apiKey",
          "bearer",
          "oauth"
        ],
        "parameters": [
          {
            "name": "customerID",
            "in": "path",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          },
          {
            "name": "fileName",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "File stream (CSV, XLSX, or ZIP)"
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden \u2014 file must belong to authenticated customer"
          }
        },
        "description": "Download a file from a prior export. Returns file bytes (CSV/XLSX/ZIP), not JSON. The path `customerID` must match the authenticated account.",
        "x-lead411-usage-notes": "Use the URL from `download_link` in export responses. Same authentication as other protected endpoints."
      }
    },
    "/claude-mcp/oauth/authorize": {
      "get": {
        "tags": [
          "MCP OAuth"
        ],
        "summary": "MCP OAuth authorize (browser redirect)",
        "operationId": "mcpOAuthAuthorize",
        "security": [],
        "x-lead411-auth-methods": [],
        "parameters": [
          {
            "name": "client_id",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "redirect_uri",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "response_type",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "state",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "scope",
            "in": "query",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "302": {
            "description": "Redirect to login or client redirect_uri with code"
          }
        }
      }
    },
    "/claude-mcp/oauth/browser-session-login": {
      "post": {
        "tags": [
          "MCP OAuth"
        ],
        "summary": "MCP browser session login",
        "operationId": "mcpBrowserSessionLogin",
        "security": [],
        "x-lead411-auth-methods": [],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SuccessEnvelope"
                }
              }
            }
          },
          "400": {
            "description": "Validation or bad request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "401": {
            "description": "Missing or invalid credentials",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "429": {
            "description": "Rate limit exceeded",
            "headers": {
              "Retry-After": {
                "schema": {
                  "type": "integer"
                }
              },
              "X-RateLimit-Limit": {
                "schema": {
                  "type": "integer"
                }
              },
              "X-RateLimit-Remaining": {
                "schema": {
                  "type": "integer"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          }
        }
      }
    },
    "/claude-mcp/oauth/token": {
      "post": {
        "tags": [
          "MCP OAuth"
        ],
        "summary": "MCP OAuth token",
        "operationId": "mcpOAuthToken",
        "security": [],
        "x-lead411-auth-methods": [
          "oauth"
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SuccessEnvelope"
                }
              }
            }
          },
          "400": {
            "description": "Validation or bad request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "401": {
            "description": "Missing or invalid credentials",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          },
          "429": {
            "description": "Rate limit exceeded",
            "headers": {
              "Retry-After": {
                "schema": {
                  "type": "integer"
                }
              },
              "X-RateLimit-Limit": {
                "schema": {
                  "type": "integer"
                }
              },
              "X-RateLimit-Remaining": {
                "schema": {
                  "type": "integer"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorEnvelope"
                }
              }
            }
          }
        }
      }
    },
    "/claude-mcp/.well-known/openid-configuration": {
      "get": {
        "tags": [
          "MCP OAuth"
        ],
        "summary": "MCP openid-configuration",
        "operationId": "mcpOpenIDConfiguration",
        "security": [],
        "x-lead411-auth-methods": [],
        "responses": {
          "200": {
            "description": "Discovery document"
          }
        }
      }
    },
    "/claude-mcp/.well-known/oauth-authorization-server": {
      "get": {
        "tags": [
          "MCP OAuth"
        ],
        "summary": "MCP oauth-authorization-server",
        "operationId": "mcpOAuthAuthorizationServer",
        "security": [],
        "x-lead411-auth-methods": [],
        "responses": {
          "200": {
            "description": "Discovery document"
          }
        }
      }
    },
    "/claude-mcp/.well-known/jwks.json": {
      "get": {
        "tags": [
          "MCP OAuth"
        ],
        "summary": "MCP jwks.json",
        "operationId": "mcpJWKS",
        "security": [],
        "x-lead411-auth-methods": [],
        "responses": {
          "200": {
            "description": "Discovery document"
          }
        }
      }
    }
  },
  "components": {
    "securitySchemes": {
      "ApiKeyAuth": {
        "type": "apiKey",
        "in": "header",
        "name": "X-API-KEY",
        "description": "Lead411 API key issued to your account."
      },
      "BearerAuth": {
        "type": "http",
        "scheme": "bearer",
        "bearerFormat": "JWT",
        "description": "Access token from `POST /auth/login` or `POST /oauth/token`."
      },
      "OAuth2ClientCredentials": {
        "type": "oauth2",
        "description": "OAuth authorization code flow (`/oauth/authorize` + `/oauth/token`). Use the resulting access token as Bearer on protected routes.",
        "flows": {
          "authorizationCode": {
            "authorizationUrl": "https://api.lead411.com/v3/oauth/authorize",
            "tokenUrl": "https://api.lead411.com/v3/oauth/token",
            "scopes": {}
          }
        }
      }
    },
    "schemas": {
      "SuccessEnvelope": {
        "type": "object",
        "properties": {
          "status": {
            "type": "string",
            "examples": [
              "success"
            ]
          },
          "message": {
            "type": "string"
          },
          "data": {
            "description": "Endpoint-specific payload"
          }
        },
        "required": [
          "status",
          "message"
        ]
      },
      "ErrorEnvelope": {
        "type": "object",
        "properties": {
          "status": {
            "type": "string",
            "examples": [
              "error"
            ]
          },
          "message": {
            "type": "string"
          },
          "code": {
            "type": "string"
          },
          "error": {
            "type": "string"
          }
        }
      },
      "EmptyObject": {
        "type": "object",
        "description": "No request fields. Authentication context is sufficient; empty body `{}` is OK.",
        "additionalProperties": false
      },
      "ExportDataToDefaultCRMRequest": {
        "type": "object",
        "description": "Push contact and/or company data to the account's default CRM.\nProvide either a contact path (`employee_id` / `employee_ids_json`) or a company path (`type` + `company_info`).\n",
        "properties": {
          "employee_id": {
            "type": "string",
            "description": "Employee ID to push (required for contact path unless `employee_ids_json` is set)."
          },
          "employee_ids_json": {
            "type": "string",
            "description": "JSON array string of employee IDs, e.g. `\"[12345,67890]\"`."
          },
          "export_type": {
            "type": "string",
            "description": "Optional unlock/export type override."
          },
          "type": {
            "type": "string",
            "description": "Set to `company` for company push path (used with `company_info`)."
          },
          "sub_account_email": {
            "type": "string",
            "description": "Optional sub-account email when acting on behalf of a sub-user."
          },
          "action": {
            "type": "string",
            "description": "CRM push action (default `update`)."
          },
          "company_info": {
            "type": "object",
            "description": "Company fields for company push (e.g. `company_id`, `company_name`, `company_url`).",
            "additionalProperties": true
          },
          "employee_info": {
            "type": "object",
            "description": "Nested contact field overrides (aliases `employee_details`, `employee`, `contact` also accepted).",
            "additionalProperties": true
          }
        },
        "additionalProperties": true
      },
      "LoginRequest": {
        "type": "object",
        "properties": {
          "email": {
            "type": "string",
            "format": "email"
          },
          "password": {
            "type": "string",
            "format": "password"
          },
          "scopes": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "device_name": {
            "type": "string"
          }
        }
      },
      "RefreshRequest": {
        "type": "object",
        "required": [
          "refresh_token"
        ],
        "properties": {
          "refresh_token": {
            "type": "string"
          },
          "scopes": {
            "type": "array",
            "items": {
              "type": "string"
            }
          }
        }
      },
      "OAuthAuthorizeRequest": {
        "type": "object",
        "properties": {
          "client_id": {
            "type": "string"
          },
          "redirect_uri": {
            "type": "string",
            "format": "uri"
          },
          "response_type": {
            "type": "string",
            "default": "code"
          },
          "scope": {
            "type": "string"
          },
          "state": {
            "type": "string"
          },
          "customer_id": {
            "type": "integer",
            "format": "int64"
          }
        }
      },
      "OAuthTokenRequest": {
        "type": "object",
        "properties": {
          "grant_type": {
            "type": "string",
            "enum": [
              "authorization_code",
              "refresh_token"
            ]
          },
          "code": {
            "type": "string"
          },
          "redirect_uri": {
            "type": "string"
          },
          "client_id": {
            "type": "string"
          },
          "client_secret": {
            "type": "string"
          },
          "refresh_token": {
            "type": "string"
          },
          "scope": {
            "type": "string"
          }
        }
      },
      "FlexibleCompanyId": {
        "description": "Numeric company ID. Accepts a JSON number or a numeric string (PHP-compatible).",
        "oneOf": [
          {
            "type": "integer",
            "format": "int64"
          },
          {
            "type": "string",
            "pattern": "^[0-9]+$"
          }
        ]
      },
      "OptionsQueryRequest": {
        "type": "object",
        "description": "Extra request keys are ignored. For `search_technology`, the search term\nprecedence is `search_keyword`, then `search_string`, then `q`.\n",
        "additionalProperties": true,
        "properties": {
          "search_keyword": {
            "type": "string",
            "description": "Preferred search term for `search_technology`. Wins when both `search_keyword` and `search_string` are sent."
          },
          "search_string": {
            "type": "string",
            "description": "Alias used when `search_keyword` is omitted. Also used by other options endpoints."
          },
          "q": {
            "type": "string",
            "description": "For `search_technology`, final fallback search term after `search_keyword` / `search_string`.\nFor `search_title`, primary term with `title_keyword` (PHP reads `q`, then `title_keyword`).\n"
          },
          "query": {
            "type": "string"
          },
          "title_keyword": {
            "type": "string",
            "description": "For `search_title`, free-text typeahead (same as `q`). Prefix-matches `title_suggestion`\n(`@description (^term*)`). Minimum 3 characters. Always returns at most 8 rows, shortest titles first.\n`search_string` is not used for that lookup; when `q`/`title_keyword` are omitted the API\nreturns executive-level fallback options matching `search_string`.\n"
          },
          "selected_titles": {
            "type": "string",
            "description": "Optional comma-separated titles already selected. Those tokens are excluded from `search_title` suggestions."
          },
          "suggestionIdsString": {
            "type": "string"
          },
          "limit": {
            "type": "integer",
            "description": "Used by most options endpoints. Ignored for `search_title` (always 8)."
          },
          "offset": {
            "type": "integer"
          },
          "country_code": {
            "type": "string"
          }
        }
      },
      "CompanyInfoRequest": {
        "type": "object",
        "description": "Provide at least one lookup field. Extra request keys (for example `token`) are ignored.\n`company_id` may be a number or a numeric string.\n",
        "additionalProperties": true,
        "properties": {
          "company_id": {
            "$ref": "#/components/schemas/FlexibleCompanyId"
          },
          "company_url/website": {
            "type": "string",
            "description": "Company website URL",
            "x-lead411-wire-names": [
              "company_url",
              "website"
            ]
          },
          "company_name": {
            "type": "string"
          },
          "linkedin_url": {
            "type": "string"
          },
          "start": {
            "type": "integer"
          },
          "offset": {
            "type": "integer"
          },
          "exclude_data_request": {
            "type": "array",
            "description": "Optional. Use only with `getCompanyInfo` to omit named datasets from the response.\nAllowed values: `company_suppression`, `company_outside_tech_data`,\n`company_inside_tech_data`, `indeed_data`, `hiring_zip_code`, `news_data`.\nDedicated news, jobs, and tech endpoints do not use this field.\n",
            "items": {
              "type": "string",
              "enum": [
                "company_suppression",
                "company_outside_tech_data",
                "company_inside_tech_data",
                "indeed_data",
                "hiring_zip_code",
                "news_data"
              ]
            }
          }
        }
      },
      "CompanyEmployeesRequest": {
        "type": "object",
        "description": "Extra request keys (for example `website` or `token`) are ignored.",
        "additionalProperties": true,
        "required": [
          "company_id"
        ],
        "properties": {
          "company_id": {
            "$ref": "#/components/schemas/FlexibleCompanyId"
          },
          "page": {
            "type": "integer"
          },
          "page_size": {
            "type": "integer"
          },
          "start": {
            "type": "integer",
            "description": "Legacy alias for offset/page start"
          },
          "limit": {
            "type": "integer",
            "description": "Legacy alias for page size"
          }
        }
      },
      "CompanyIDRequest": {
        "type": "object",
        "description": "Extra request keys are ignored. `company_id` may be a number or a numeric string.",
        "additionalProperties": true,
        "required": [
          "company_id"
        ],
        "properties": {
          "company_id": {
            "$ref": "#/components/schemas/FlexibleCompanyId"
          }
        }
      },
      "CompanyTechRequest": {
        "type": "object",
        "description": "Extra request keys are ignored. `company_id` may be a number or a numeric string. Pagination applies only to getCompanyTech. `page` defaults to 1. `limit` is always 50 regardless of the value sent.\n",
        "additionalProperties": true,
        "required": [
          "company_id"
        ],
        "properties": {
          "company_id": {
            "$ref": "#/components/schemas/FlexibleCompanyId"
          },
          "page": {
            "type": "integer",
            "default": 1,
            "minimum": 1,
            "description": "1-based page number. Values less than 1 are treated as 1."
          },
          "limit": {
            "type": "integer",
            "default": 50,
            "description": "Page size is always 50. Other values are ignored."
          }
        }
      },
      "SearchCompanyEmployeesRequest": {
        "type": "object",
        "description": "Provide company_id, company_linkedin_url, or linkedin_url.",
        "properties": {
          "company_id": {
            "type": "integer",
            "format": "int64",
            "description": "Company to search employees in. Example 1743 (Cisco). Use this, company_linkedin_url, or linkedin_url."
          },
          "company_linkedin_url": {
            "type": "string",
            "description": "Company LinkedIn page URL (linkedin.com/company/...). Resolves the company, then returns the same employees as company_id. Example http://www.linkedin.com/company/cisco"
          },
          "linkedin_url": {
            "type": "string",
            "description": "Employee LinkedIn profile URL (linkedin.com/in/...), not a company page. You can also send a JSON array of profile URLs. Combine with company_id or company_linkedin_url to limit to one company."
          },
          "search_name": {
            "type": "string",
            "description": "Filter by employee first or last name. Applies after the company is identified. Ignored when linkedin_url is set."
          },
          "search_dept": {
            "type": "string",
            "description": "Filter by department. Applies after the company is identified. Ignored when linkedin_url is set."
          },
          "search_title": {
            "type": "string",
            "description": "Filter by job title. When present, title search runs first and takes precedence over linkedin_url."
          },
          "sort_option": {
            "type": "string",
            "description": "Sort field for the company employee list. Typical values name, last_name, title."
          },
          "sort_order": {
            "type": "string",
            "description": "Sort direction. Use asc or desc."
          },
          "start": {
            "type": "integer",
            "description": "Result offset for pagination. Used when page is not sent."
          },
          "page": {
            "type": "integer",
            "description": "1-based page number. When set, overrides start."
          },
          "per_page/limit": {
            "type": "integer",
            "description": "Page size. Default 20. Values over 100 are capped to 25.",
            "x-lead411-wire-names": [
              "per_page",
              "limit"
            ]
          }
        }
      },
      "EmployeeInfoRequest": {
        "type": "object",
        "properties": {
          "employee_id": {
            "type": "integer",
            "format": "int64"
          },
          "email": {
            "type": "string",
            "format": "email"
          },
          "title": {
            "type": "string"
          },
          "linkedin_url": {
            "type": "string"
          },
          "company_id": {
            "type": "integer",
            "format": "int64"
          },
          "company_url": {
            "type": "string"
          }
        }
      },
      "UnlockEmployeeRequest": {
        "type": "object",
        "properties": {
          "employee_id": {
            "type": "string"
          },
          "employee_ids_json": {
            "type": "string",
            "description": "JSON array of employee IDs as string"
          },
          "export_type": {
            "type": "string"
          },
          "sub_account_email": {
            "type": "string"
          }
        }
      },
      "SuppressionEmailRequest": {
        "type": "object",
        "properties": {
          "email_json": {
            "type": "string",
            "description": "JSON array encoded as a string, e.g. `\"[\\\"user@example.com\\\"]\"` in the request body.\n"
          },
          "employee_id_json": {
            "type": "string",
            "description": "JSON array of employee IDs as a string, e.g. `\"[12345,67890]\"`."
          },
          "sub_account_email": {
            "type": "string",
            "description": "Optional sub-account email when acting on behalf of a sub-user."
          }
        }
      },
      "SuppressionCompanyRequest": {
        "type": "object",
        "description": "Extra request keys are ignored. `company_id` may be a number or a numeric string.",
        "additionalProperties": true,
        "properties": {
          "company_id": {
            "$ref": "#/components/schemas/FlexibleCompanyId"
          },
          "company_url": {
            "type": "string"
          },
          "sub_account_email": {
            "type": "string"
          }
        }
      },
      "SimilarCompaniesRequest": {
        "type": "object",
        "properties": {
          "company_id": {
            "type": "integer",
            "format": "int64"
          },
          "website": {
            "type": "string"
          },
          "domain": {
            "type": "string"
          },
          "url": {
            "type": "string"
          },
          "limit": {
            "type": "integer"
          },
          "per_page": {
            "type": "integer"
          },
          "page": {
            "type": "integer"
          },
          "display_start": {
            "type": "integer"
          },
          "search_data": {
            "type": "object",
            "additionalProperties": true
          }
        }
      },
      "SearchJSONRequest": {
        "type": "object",
        "description": "Flexible search filter document (employee/company modes).",
        "additionalProperties": true
      },
      "CompanyEmployeesDataRequest": {
        "type": "object",
        "description": "Advanced employee/company search request body. All fields are optional unless noted.\nLegacy PHP field names are preserved for compatibility.\n",
        "properties": {
          "company_ids": {
            "type": "string",
            "description": "Company unique identifier(s). Comma-separated IDs."
          },
          "company_id": {
            "type": "integer",
            "description": "Single company ID, accepted as an alias for `company_ids`. When both are sent, `company_ids` wins."
          },
          "employee_company/company_url": {
            "type": "string",
            "description": "Company URL/domain filter.",
            "x-lead411-wire-names": [
              "employee_company",
              "company_url"
            ]
          },
          "user_search_string/text_to_search": {
            "type": "string",
            "description": "Search companies by URL. Example `cisco.com,openai.com`.",
            "x-lead411-wire-names": [
              "user_search_string",
              "text_to_search"
            ]
          },
          "Search_array": {
            "type": "string",
            "description": "Comma-separated company domains/URLs (bulk company search)."
          },
          "title": {
            "type": "string",
            "description": "Comma-separated titles. Used for people MATCH only when `title_keyword` is omitted.\nSame wrappers as `title_keyword`.\n"
          },
          "title_keyword": {
            "type": "string",
            "description": "Job-title MATCH (comma-separated). Wrappers:\n`CEO` = keyword plus VP/CEO-style alias expansion;\n`'Chief Executive'` (or `\"Chief Executive\"`) = phrase `@(title)(\"Chief Executive\")`;\n`[CEO]` = whole title equals CEO (`@(title)(\"^CEO$\")`).\nPrefix a token with `!` or `-` to exclude it.\nExample: `[CEO],'Chief Executive',cfo`.\n"
          },
          "Title_array": {
            "type": "string",
            "description": "Confirmed title list from the UI (comma-separated). People MATCH uses `title_keyword` (and `title` as fallback), not this field."
          },
          "country_code/country_select": {
            "type": "string",
            "description": "Two-character country code (e.g. `US`).",
            "x-lead411-wire-names": [
              "country_code",
              "country_select"
            ]
          },
          "State_array/state/state_array/region_code/region_array": {
            "type": "string",
            "description": "State/province abbreviation codes for US/Canada. Example `CA,ON`.",
            "x-lead411-wire-names": [
              "State_array",
              "state",
              "state_array",
              "region_code",
              "region_array"
            ]
          },
          "cityPostal/US_zipcodes/zip": {
            "type": "string",
            "description": "City postal/zip codes. Example `98052,02142`.",
            "x-lead411-wire-names": [
              "cityPostal",
              "US_zipcodes",
              "zip"
            ]
          },
          "range": {
            "type": "integer",
            "description": "Mile radius around zip code."
          },
          "zip_location_for": {
            "type": "string",
            "description": "Zip scope (`zip_location_company` or `zip_location_employee`)."
          },
          "include_branches": {
            "type": "string",
            "description": "Include branch locations (`yes` / `no`)."
          },
          "Area_Codes/areaCode": {
            "type": "string",
            "description": "HQ area codes. Example `303,212,415`.",
            "x-lead411-wire-names": [
              "Area_Codes",
              "areaCode"
            ]
          },
          "Industry_Codes/industryCode": {
            "type": "string",
            "description": "Classic Lead411 industry IDs (comma-separated). Values over 999 are treated as LinkedIn industry IDs (same routing as `industry_linkedin`). Example `48,500`.",
            "x-lead411-wire-names": [
              "Industry_Codes",
              "industryCode"
            ]
          },
          "industry_linkedin": {
            "type": "string",
            "description": "LinkedIn industry IDs (comma-separated). Separate taxonomy from classic `Industry_Codes`. Resolve IDs with `POST /options/search_industry_linkedin_keywords`. Example `1430,1247`."
          },
          "industry_description_string/Industry": {
            "type": "string",
            "description": "Free-text industry description keywords (comma-separated). Not an ID filter (unlike `Industry_Codes` / `industry_linkedin`). Example `software,saas`.",
            "x-lead411-wire-names": [
              "industry_description_string",
              "Industry"
            ]
          },
          "SIC_Codes/sic": {
            "type": "string",
            "description": "Four-digit SIC codes. Example `7372`.",
            "x-lead411-wire-names": [
              "SIC_Codes",
              "sic"
            ]
          },
          "company_description_string": {
            "type": "string",
            "description": "Keywords in company description/bio."
          },
          "product_keyword": {
            "type": "string",
            "description": "Product keyword filter."
          },
          "keyword_match_text": {
            "type": "string",
            "description": "Keyword match mode (e.g. `anyMatch`)."
          },
          "Technology_array/SoftwareHardware_array/SoftwareHardware/softwareHardware/technology": {
            "oneOf": [
              {
                "type": "string"
              },
              {
                "type": "array",
                "items": {
                  "type": "string"
                }
              }
            ],
            "description": "Technology stack keywords as a comma-separated string or JSON string array. Example `netsuite` or `[\"netsuite\",\"netsuite_predict\"]`. Prefer tokens from `POST /search/search_technology` (`value`, e.g. `netsuite_predict`). Also send `technology_uses_text` with these keywords.",
            "x-lead411-wire-names": [
              "Technology_array",
              "SoftwareHardware_array",
              "SoftwareHardware",
              "softwareHardware",
              "technology"
            ]
          },
          "technology_uses_text": {
            "type": "string",
            "description": "Include vs exclude the technologies in `Technology_array` / `SoftwareHardware`. `technology_uses_yes` (default when omitted) keeps companies/people whose indexed stack includes those keywords. `technology_uses_no` keeps those whose stack does **not** include them. The keywords field names the tech; this flag is required to say whether you want users of it or non-users. Has no effect if no technology keywords are sent.\n"
          },
          "news_category_source": {
            "type": "string",
            "description": "News/press event category IDs (comma-separated), matching PHP API behavior. Use `-1` for all event categories. When dates are omitted, both dates default to today."
          },
          "news_date_from": {
            "type": "string",
            "description": "Press/news start date (`YYYY-MM-DD`)."
          },
          "news_date_to": {
            "type": "string",
            "description": "Press/news end date (`YYYY-MM-DD`)."
          },
          "currently_hiring_title": {
            "type": "string",
            "description": "Job opening title keyword."
          },
          "hiring_date": {
            "type": "string",
            "description": "Job posting date filter (`YYYY-MM-DD`)."
          },
          "Employee_Skills/employeeSkills": {
            "type": "string",
            "description": "Employee skills keywords (comma-separated).",
            "x-lead411-wire-names": [
              "Employee_Skills",
              "employeeSkills"
            ]
          },
          "FilterEmployee/employee_size": {
            "type": "string",
            "description": "Employee size range IDs.",
            "x-lead411-wire-names": [
              "FilterEmployee",
              "employee_size"
            ]
          },
          "FilterRevenue/revenue_ids": {
            "type": "string",
            "description": "Revenue range IDs.",
            "x-lead411-wire-names": [
              "FilterRevenue",
              "revenue_ids"
            ]
          },
          "FilterLevel/employee_level": {
            "type": "string",
            "description": "Seniority filter (`c_level`, `vp_level`, `director_level`, `manager_level`).",
            "x-lead411-wire-names": [
              "FilterLevel",
              "employee_level"
            ]
          },
          "email_filter/peopleResults": {
            "type": "string",
            "description": "Email filter (e.g. `peopleResultsEmails`).",
            "x-lead411-wire-names": [
              "email_filter",
              "peopleResults"
            ]
          },
          "suppression_filter/suppressedResult": {
            "type": "string",
            "description": "LEGACY - kept only for older clients. Combined switch that suppresses people AND companies at once, with no way to pick individual lists.\nValues: `suppressed_no` (default, nothing suppressed), `suppressed_yes` (exclude everything you suppressed), `suppressed_teamlists` (exclude everything suppressed by any member of your team).\nUse `EmployeeSuppression` and `CompanySuppression` instead - they cover the same behaviour and additionally support list-level targeting via `employee_suppression_lists_ids` / `company_suppression_lists_ids`.\nIf sent together with those fields it is not ignored: all exclusions are added together, so a legacy `suppressed_yes` here can hide more records than the granular fields alone.",
            "x-lead411-wire-names": [
              "suppression_filter",
              "suppressedResult"
            ]
          },
          "EmployeeSuppression": {
            "type": "string",
            "description": "Excludes PEOPLE that sit on your saved employee suppression lists. Values:\n`suppressed_no` - default, no employee suppression.\n`suppressed_yes` - exclude people suppressed under your own account.\n`suppressed_teamlists` - exclude people suppressed by any member of your team.\nWhich lists are used is controlled by `employee_suppression_lists_ids`, which is only read when this field is `suppressed_yes` or `suppressed_teamlists`.\nExample: `\"EmployeeSuppression\": \"suppressed_yes\"` with `\"employee_suppression_lists_ids\": \"3106,3124\"` hides only people on lists 3106 and 3124; with `\"all\"` or an empty value it hides people on every employee suppression list.\n",
            "enum": [
              "suppressed_no",
              "suppressed_yes",
              "suppressed_teamlists"
            ],
            "example": "suppressed_no"
          },
          "CompanySuppression": {
            "type": "string",
            "description": "Excludes COMPANIES (and therefore their people) that sit on your saved company suppression lists. Values:\n`suppressed_no` - default, no company suppression.\n`suppressed_yes` - exclude companies suppressed under your own account.\n`suppressed_teamlists` - exclude companies suppressed by any member of your team.\nWhich lists are used is controlled by `company_suppression_lists_ids`, which is only read when this field is `suppressed_yes` or `suppressed_teamlists`.\nExample: `\"CompanySuppression\": \"suppressed_teamlists\"` with `\"company_suppression_lists_ids\": \"412\"` hides company list 412 for every team member; with `\"all\"` or an empty value it hides every company suppression list.\n",
            "enum": [
              "suppressed_no",
              "suppressed_yes",
              "suppressed_teamlists"
            ],
            "example": "suppressed_no"
          },
          "employee_suppression_lists_ids": {
            "type": "string",
            "description": "Comma-separated employee suppression list IDs that narrow `EmployeeSuppression`. Ignored unless `EmployeeSuppression` is `suppressed_yes` or `suppressed_teamlists`.\nSend numeric IDs (e.g. `3106,3124,3144`) to suppress only those lists, or `all` / omit the field to suppress every employee list. If the value starts with `all`, the remaining IDs are not needed.\n",
            "example": "3106,3124"
          },
          "company_suppression_lists_ids": {
            "type": "string",
            "description": "Comma-separated company suppression list IDs that narrow `CompanySuppression`. Ignored unless `CompanySuppression` is `suppressed_yes` or `suppressed_teamlists`.\nSend numeric IDs (e.g. `412,507`) to suppress only those lists, or `all` / omit the field to suppress every company list. If the value starts with `all`, the remaining IDs are not needed.\n",
            "example": "412,507"
          },
          "exportedResults": {
            "type": "string",
            "description": "Exported filter (e.g. `exported_yes`, `exported_no`)."
          },
          "linkedinResult": {
            "type": "string",
            "description": "LinkedIn URL filter (e.g. `linkedin_yes`, `linkedin_no`)."
          },
          "has_direct_dialResults": {
            "type": "string",
            "description": "Direct dial filter (`has_direct_dial_yes`, `has_direct_dial_no`, or shorthand `yes`/`no`)."
          },
          "has_mobile_dialResults": {
            "type": "string",
            "description": "Mobile dial filter (`has_mobile_dial_yes`, `has_mobile_dial_no`)."
          },
          "reachSuppression": {
            "type": "string",
            "description": "Reach suppression filter."
          },
          "default_sort_by": {
            "type": "string",
            "description": "**Sort by person** (always applied when passed):\n`empDepartmentASC`, `empDepartmentDesc`, `empLastASC`, `empLastDesc`, `empFirstASC`, `empFirstDesc`\n\n**Sort by ranking** (always applied when passed):\n`leadScoring`, `yearlyRevDesc`, `yearlyRevAsc`, `empSizeDesc`, `empSizeAsc`, `companyNameDesc`, `companyNameAsc`, `bomboraRank`\n\n**Default when omitted/unknown:** `leadScoring`. If `company_ids` is set and sort is omitted/unknown \u2192 `empDepartmentASC`.\n",
            "enum": [
              "yearlyRevDesc",
              "yearlyRevAsc",
              "empSizeDesc",
              "empSizeAsc",
              "companyNameDesc",
              "companyNameAsc",
              "leadScoring",
              "bomboraRank",
              "empDepartmentASC",
              "empDepartmentDesc",
              "empLastASC",
              "empLastDesc",
              "empFirstASC",
              "empFirstDesc"
            ],
            "example": "yearlyRevDesc"
          },
          "search_result_filter": {
            "type": "string",
            "description": "Result type (`company`, `employee`, `resultTypeCompany`, etc.)."
          },
          "FilterType": {
            "type": "string",
            "description": "Legacy composite filter string (usually auto-built when omitted)."
          },
          "since_date": {
            "type": "string",
            "description": "Records updated since date."
          },
          "date_verified": {
            "type": "string",
            "description": "Email verification date filter."
          },
          "start_date": {
            "type": "string",
            "description": "Employee start date filter."
          },
          "ddaddedsince_date": {
            "type": "string",
            "description": "Direct dial added since date."
          },
          "mobileaddedsince_date": {
            "type": "string",
            "description": "Mobile dial added since date."
          },
          "year_founded": {
            "type": "string",
            "description": "Year founded range (`min,max`, e.g. `1950,2025`)."
          },
          "employee_growth": {
            "type": "string",
            "description": "Employee growth range (`min,max`, e.g. `-100,100`)."
          },
          "company_number_of_branches_range": {
            "type": "string",
            "description": "Branch count range (`min,max`)."
          },
          "per_company_match": {
            "type": "string",
            "description": "Per-company match mode (`all`, etc.)."
          },
          "exact_widenet_value": {
            "type": "string",
            "description": "Exact/widenet match mode (`exact`, etc.)."
          },
          "leadScore": {
            "type": "boolean",
            "description": "Enable lead scoring sort/filter."
          },
          "getOnlyCountOnResults": {
            "type": "boolean",
            "description": "Return counts only (no result rows)."
          },
          "page": {
            "type": "integer",
            "description": "Page number (default 1)."
          },
          "per_page/limit": {
            "type": "integer",
            "description": "Records per page (max 100).",
            "x-lead411-wire-names": [
              "per_page",
              "limit"
            ]
          },
          "display_start/start": {
            "type": "integer",
            "description": "Legacy offset for pagination.",
            "x-lead411-wire-names": [
              "display_start",
              "start"
            ]
          },
          "sub_account_email": {
            "type": "string",
            "description": "Optional sub-account email when acting on behalf of a sub-user."
          }
        },
        "additionalProperties": true
      },
      "CompanyListRequest": {
        "type": "object",
        "required": [
          "companies"
        ],
        "properties": {
          "companies": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "url": {
                  "type": "string"
                },
                "company_name": {
                  "type": "string"
                },
                "linkedin_url": {
                  "type": "string"
                }
              }
            }
          },
          "sub_account_email": {
            "type": "string"
          }
        }
      },
      "CompanyCSVRequest": {
        "type": "object",
        "properties": {
          "companies": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "url": {
                  "type": "string"
                },
                "company_name": {
                  "type": "string"
                },
                "linkedin_url": {
                  "type": "string"
                }
              }
            }
          },
          "user_search_string": {
            "type": "string",
            "description": "Pipe-separated company URLs"
          },
          "company_urls": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "filename": {
            "type": "string"
          },
          "download_all": {
            "type": "string"
          },
          "sub_account_email": {
            "type": "string"
          }
        }
      },
      "ExportDownloadRequest": {
        "type": "object",
        "required": [
          "select_action_download"
        ],
        "properties": {
          "select_action_download": {
            "type": "string"
          },
          "company_id": {
            "type": "string"
          },
          "employee_id": {
            "type": "string"
          },
          "download_company_employee": {
            "type": "string"
          },
          "download_all": {
            "type": "string"
          },
          "filename": {
            "type": "string"
          },
          "sub_account_email": {
            "type": "string"
          },
          "export_type": {
            "type": "string"
          }
        },
        "additionalProperties": true
      },
      "CRMFieldsRequest": {
        "type": "object",
        "required": [
          "crm"
        ],
        "properties": {
          "crm": {
            "type": "string"
          },
          "type": {
            "type": "string"
          }
        }
      },
      "SaveCRMMappingRequest": {
        "type": "object",
        "required": [
          "crm",
          "lead_vals",
          "crm_vals"
        ],
        "properties": {
          "crm": {
            "type": "string"
          },
          "lead_vals": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "crm_vals": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "type": {
            "type": "string"
          },
          "save_fields_type": {
            "type": "string"
          },
          "fields_type_name": {
            "type": "string"
          },
          "crm_action_values": {
            "type": "object",
            "additionalProperties": true
          }
        }
      },
      "TokenData": {
        "type": "object",
        "properties": {
          "token": {
            "type": "string"
          },
          "access_token": {
            "type": "string"
          },
          "refresh_token": {
            "type": "string"
          },
          "expires_in": {
            "type": "integer"
          },
          "token_type": {
            "type": "string"
          }
        }
      },
      "OAuthCodeData": {
        "type": "object",
        "properties": {
          "code": {
            "type": "string"
          },
          "state": {
            "type": "string"
          }
        }
      },
      "CheckTokenData": {
        "type": "object",
        "properties": {
          "valid": {
            "type": "boolean"
          },
          "customer_id": {
            "type": "integer",
            "format": "int64"
          }
        }
      },
      "LoggedOutData": {
        "type": "object",
        "properties": {
          "logged_out": {
            "type": "boolean"
          }
        }
      },
      "CustomerProfile": {
        "type": "object",
        "properties": {
          "email": {
            "type": "string"
          },
          "first_name": {
            "type": "string"
          },
          "last_name": {
            "type": "string"
          },
          "phone": {
            "type": "string"
          },
          "company": {
            "type": "string"
          },
          "company_url": {
            "type": "string"
          },
          "member_level": {
            "type": "string"
          },
          "newsletter": {
            "type": "boolean"
          },
          "unlock_quota": {
            "type": "integer"
          },
          "bonus_quota": {
            "type": "integer"
          },
          "package_id": {
            "type": "integer"
          },
          "seats": {
            "type": "integer"
          },
          "stripe_id": {
            "type": "string"
          },
          "payment_method": {
            "type": "string"
          },
          "customer_type": {
            "type": "string"
          },
          "no_of_prospect_month": {
            "type": "integer"
          },
          "no_of_users_loggin_in": {
            "type": "integer"
          },
          "date_signed_up": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          }
        }
      },
      "CustomerProfileExtended": {
        "allOf": [
          {
            "$ref": "#/components/schemas/CustomerProfile"
          },
          {
            "type": "object",
            "properties": {
              "customer_id": {
                "type": "integer",
                "format": "int64"
              }
            }
          }
        ]
      },
      "CustomerQuota": {
        "type": "object",
        "properties": {
          "unlock_quota": {
            "type": "integer"
          },
          "bonus_quota": {
            "type": "integer"
          },
          "total_quota": {
            "type": "integer"
          }
        }
      },
      "CustomerUnlockStats": {
        "allOf": [
          {
            "$ref": "#/components/schemas/CustomerQuota"
          },
          {
            "type": "object",
            "properties": {
              "total_unlocks": {
                "type": "integer"
              },
              "unlocks_this_month": {
                "type": "integer"
              },
              "credits_used_total": {
                "type": "integer"
              },
              "credits_used_monthly": {
                "type": "integer"
              }
            }
          }
        ]
      },
      "PHPResultRow": {
        "type": "object",
        "properties": {
          "employee_id": {
            "type": "string"
          },
          "company_id": {
            "type": "string"
          },
          "employee_count": {
            "type": "integer"
          },
          "json_meta": {
            "type": "object",
            "additionalProperties": true
          },
          "customer_exported": {
            "type": "boolean"
          },
          "customer_company_suppression": {
            "type": "boolean"
          },
          "customer_employee_suppression": {
            "type": "boolean"
          },
          "lead411crm": {
            "nullable": true
          },
          "drip_bin": {
            "type": "boolean"
          },
          "in_cadence": {
            "type": "boolean"
          },
          "in_watchlist": {
            "type": "boolean"
          },
          "in_realtime": {
            "type": "boolean"
          },
          "employee_exists_in_cart": {
            "type": "boolean"
          },
          "contact_status": {
            "type": "string"
          }
        }
      },
      "PHPSearchResult": {
        "type": "object",
        "properties": {
          "totalRows": {
            "oneOf": [
              {
                "type": "string"
              },
              {
                "type": "integer"
              }
            ]
          },
          "showingRows": {
            "type": "integer"
          },
          "iDisplayLength": {
            "type": "integer"
          },
          "iFilteredTotal": {
            "oneOf": [
              {
                "type": "string"
              },
              {
                "type": "integer"
              }
            ]
          },
          "countRecords": {
            "oneOf": [
              {
                "type": "string"
              },
              {
                "type": "integer"
              }
            ]
          },
          "page": {
            "type": "integer"
          },
          "record_for": {
            "type": "string"
          },
          "AllResults": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/PHPResultRow"
            }
          },
          "TotalPeople": {
            "nullable": true
          },
          "totalRecordsText": {
            "type": "string"
          }
        }
      },
      "SimilarCompaniesResult": {
        "type": "object",
        "properties": {
          "source_company_id": {
            "type": "integer"
          },
          "totalRows": {
            "type": "integer"
          },
          "showingRows": {
            "type": "integer"
          },
          "iDisplayLength": {
            "type": "integer"
          },
          "AllResults": {
            "type": "array",
            "items": {
              "type": "object",
              "additionalProperties": true
            }
          },
          "record_for": {
            "type": "string"
          },
          "iFilteredTotal": {
            "type": "integer"
          },
          "TotalPeople": {
            "nullable": true
          },
          "page": {
            "type": "integer"
          },
          "countRecords": {
            "type": "integer"
          },
          "is_approximate": {
            "type": "boolean"
          }
        }
      },
      "CompanyInfoData": {
        "type": "object",
        "properties": {
          "company_id": {
            "type": "integer",
            "format": "int64"
          },
          "json_meta": {
            "type": "object",
            "additionalProperties": true
          },
          "lead_score": {},
          "employee_count": {
            "type": "integer",
            "format": "int64"
          },
          "offset": {
            "type": "integer"
          },
          "company_suppression": {
            "type": "string",
            "description": "Optional; omitted when excluded."
          },
          "indeed_data": {
            "type": "array",
            "description": "Optional; up to 10 job rows, omitted when excluded.",
            "items": {
              "type": "object",
              "additionalProperties": true
            }
          },
          "hiring_zip_code": {
            "description": "Optional; hiring geography rows or an empty string, omitted when excluded."
          },
          "company_outside_tech_data": {
            "type": "array",
            "description": "Optional; first 50 associated technologies (not paginated), omitted when excluded.",
            "items": {
              "$ref": "#/components/schemas/CompanyTechItem"
            }
          },
          "news_data": {
            "type": "array",
            "description": "Optional; up to 10 news rows, omitted when excluded.",
            "items": {
              "$ref": "#/components/schemas/CompanyNewsItem"
            }
          }
        },
        "additionalProperties": true
      },
      "EmployeeData": {
        "type": "object",
        "properties": {
          "employee_id": {
            "type": "integer"
          },
          "company_id": {
            "type": "integer"
          },
          "contact_status": {
            "type": "string"
          }
        },
        "additionalProperties": true
      },
      "EmployeeListData": {
        "type": "array",
        "items": {
          "$ref": "#/components/schemas/EmployeeData"
        }
      },
      "CompanyEmployeesData": {
        "type": "object",
        "properties": {
          "employees": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/EmployeeData"
            }
          },
          "total": {
            "type": "integer"
          },
          "page": {
            "type": "integer"
          },
          "page_size": {
            "type": "integer"
          }
        }
      },
      "CompanyNewsItem": {
        "type": "object",
        "properties": {
          "company_id": {
            "type": "integer",
            "format": "int64"
          },
          "date_created": {
            "type": "string",
            "format": "date"
          },
          "URL": {
            "type": "string"
          }
        }
      },
      "CompanyNewsData": {
        "type": "object",
        "required": [
          "company_id",
          "news_data"
        ],
        "properties": {
          "company_id": {
            "type": "integer",
            "format": "int64"
          },
          "news_data": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/CompanyNewsItem"
            }
          }
        }
      },
      "CompanyJobItem": {
        "type": "object",
        "properties": {
          "company_id": {
            "type": "integer",
            "format": "int64"
          },
          "job_title": {
            "type": "string"
          },
          "job_location": {
            "type": "string"
          },
          "job_state": {
            "type": "string"
          },
          "job_zipcode": {
            "type": "string"
          },
          "company_job_url": {
            "type": "string"
          },
          "created_date": {
            "type": "string"
          },
          "job_posting_date": {
            "type": "string",
            "format": "date"
          }
        }
      },
      "CompanyJobsData": {
        "type": "object",
        "required": [
          "company_id",
          "indeed_data",
          "hiring_zip_code"
        ],
        "properties": {
          "company_id": {
            "type": "integer",
            "format": "int64"
          },
          "indeed_data": {
            "type": "array",
            "description": "Up to 10 job rows.",
            "items": {
              "$ref": "#/components/schemas/CompanyJobItem"
            }
          },
          "hiring_zip_code": {
            "description": "Hiring geography rows, or an empty string when unavailable."
          }
        }
      },
      "CompanyTechItem": {
        "type": "object",
        "properties": {
          "id": {
            "type": "integer"
          },
          "technology": {
            "type": "string"
          },
          "categories": {
            "type": "string"
          }
        }
      },
      "CompanyTechData": {
        "type": "object",
        "required": [
          "company_id",
          "json_meta",
          "company_outside_tech_data",
          "page",
          "limit",
          "total",
          "total_pages"
        ],
        "properties": {
          "company_id": {
            "type": "integer",
            "format": "int64"
          },
          "json_meta": {
            "type": "object",
            "description": "Company-specific profile metadata.",
            "additionalProperties": true
          },
          "company_outside_tech_data": {
            "type": "array",
            "description": "One page of technologies associated with the requested company (always 50 per page).",
            "items": {
              "$ref": "#/components/schemas/CompanyTechItem"
            }
          },
          "page": {
            "type": "integer",
            "description": "Current page (1-based). Defaults to 1 when omitted or less than 1."
          },
          "limit": {
            "type": "integer",
            "description": "Page size. Always 50."
          },
          "total": {
            "type": "integer",
            "format": "int64",
            "description": "Total technologies associated with the company."
          },
          "total_pages": {
            "type": "integer",
            "description": "Number of pages at the fixed page size of 50."
          }
        }
      },
      "SearchCompanyEmployeesData": {
        "type": "object",
        "properties": {
          "companyEmployees": {
            "type": "array",
            "description": "Matching employees for the company or LinkedIn person lookup.",
            "items": {
              "type": "object",
              "additionalProperties": true
            }
          },
          "researchEmails": {
            "description": "Researched emails for returned employees, keyed by employee_id. Empty array when none."
          },
          "employees_limit": {
            "type": "integer",
            "description": "Page size used for this request (per_page or limit)."
          },
          "limit_offset": {
            "description": "Pagination offset used for this request.",
            "nullable": true
          },
          "more_employee_available": {
            "type": "boolean",
            "description": "Whether more employees exist after this page (company list path)."
          },
          "search_name": {
            "type": "string",
            "description": "Echo of the name filter."
          },
          "search_dept": {
            "type": "string",
            "description": "Echo of the department filter."
          },
          "sort_order": {
            "type": "string",
            "description": "Effective sort direction."
          },
          "sort_option": {
            "type": "string",
            "description": "Effective sort field."
          }
        }
      },
      "CompanyListResultItem": {
        "type": "object",
        "properties": {
          "status": {
            "type": "string"
          },
          "input": {
            "type": "object",
            "properties": {
              "url": {
                "type": "string"
              },
              "company_name": {
                "type": "string"
              },
              "linkedin_url": {
                "type": "string"
              }
            }
          },
          "company_id": {
            "type": "integer",
            "nullable": true
          },
          "company": {
            "allOf": [
              {
                "$ref": "#/components/schemas/CompanyInfoData"
              }
            ],
            "nullable": true
          }
        }
      },
      "CompanyListData": {
        "type": "object",
        "properties": {
          "summary": {
            "type": "object",
            "additionalProperties": true
          },
          "results": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/CompanyListResultItem"
            }
          }
        }
      },
      "CompanyCSVExportData": {
        "type": "object",
        "properties": {
          "download_link": {
            "type": "string"
          },
          "summary": {
            "type": "object",
            "additionalProperties": true
          },
          "row_count": {
            "type": "integer"
          }
        }
      },
      "UnlockEmployeeData": {
        "type": "object",
        "properties": {
          "status": {
            "type": "string"
          },
          "message": {
            "type": "string"
          },
          "downloaded_by": {
            "type": "string"
          },
          "quota": {
            "type": "object",
            "additionalProperties": true
          },
          "employee_id": {
            "type": "integer"
          },
          "employee_details": {
            "type": "object",
            "additionalProperties": true
          },
          "employees": {
            "type": "array",
            "items": {
              "type": "object",
              "additionalProperties": true
            }
          }
        }
      },
      "SuppressionInsertData": {
        "type": "object",
        "properties": {
          "employee_ids": {
            "type": "array",
            "items": {
              "type": "integer"
            }
          }
        }
      },
      "SuppressionListData": {
        "type": "object",
        "properties": {
          "employees": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "employee_id": {
                  "type": "integer"
                },
                "date_created": {
                  "type": "string",
                  "format": "date-time"
                }
              }
            }
          },
          "companies": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "company_id": {
                  "type": "integer"
                },
                "date_created": {
                  "type": "string",
                  "format": "date-time"
                }
              }
            }
          }
        }
      },
      "DeletedFlagData": {
        "type": "object",
        "properties": {
          "deleted": {
            "type": "boolean"
          }
        }
      },
      "SuppressionCompanyAddData": {
        "type": "object",
        "properties": {
          "company_id": {
            "type": "integer"
          }
        }
      },
      "OptionsItem": {
        "type": "object",
        "properties": {
          "label": {
            "type": "string"
          },
          "value": {
            "type": "string"
          },
          "id": {
            "nullable": true
          },
          "parent_id": {
            "nullable": true
          }
        },
        "additionalProperties": true
      },
      "OptionsListData": {
        "type": "object",
        "properties": {
          "items": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/OptionsItem"
            }
          },
          "total": {
            "type": "integer"
          }
        }
      },
      "SearchSortByOptionsData": {
        "type": "object",
        "description": "Ranking sort labels for `default_sort_by` (`leadScoring`, revenue, size, company name, Bombora).\nPerson sorts (`empDepartment*`, `empLast*`, `empFirst*`) are not in this dropdown \u2014 pass them directly on search requests.\n",
        "properties": {
          "display_name": {
            "type": "string",
            "example": "Sort By"
          },
          "input_type": {
            "type": "string",
            "example": "dropdown"
          },
          "default_value": {
            "type": "string",
            "example": "yearlyRevDesc"
          },
          "values": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "example": {
              "yearlyRevDesc": "Revenue (High to Low)",
              "yearlyRevAsc": "Revenue (Low to High)",
              "empSizeDesc": "Company Size (High to Low)",
              "empSizeAsc": "Company Size (Low to High)",
              "companyNameDesc": "Company Name (A-Z)",
              "companyNameAsc": "Company Name (Z-A)",
              "leadScoring": "Lead Scoring",
              "bomboraRank": "Bombora Rank",
              "rules": "none"
            }
          }
        },
        "required": [
          "display_name",
          "input_type",
          "default_value",
          "values"
        ]
      },
      "ExportDownloadData": {
        "type": "object",
        "properties": {
          "offline": {
            "type": "boolean"
          },
          "show_dialog": {
            "type": "boolean"
          },
          "download_id": {
            "nullable": true
          },
          "unique_id": {
            "nullable": true
          },
          "already_queued": {
            "type": "boolean"
          },
          "message": {
            "type": "string"
          },
          "estimated_rows": {
            "type": "integer"
          },
          "download_link": {
            "type": "string"
          }
        },
        "additionalProperties": true
      },
      "GenericObjectData": {
        "type": "object",
        "additionalProperties": true
      }
    }
  },
  "security": [
    {
      "ApiKeyAuth": []
    },
    {
      "BearerAuth": []
    }
  ]
}