{
  "openapi": "3.0.1",
  "info": {
    "title": "Martindale Scraper with Mails | US & Canada Lawyer Directory",
    "description": "Scrape verified lawyer profiles from Martindale.com across the U.S. and Canada including names, firms, ratings, contacts, and practice areas. Ideal for legal market insights, research, or lead generation.",
    "version": "0.1",
    "x-build-id": "c73aKyrSh79dbskwm"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/fatihtahta~martindale-scraper/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-fatihtahta-martindale-scraper",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor, waits for its completion, and returns Actor's dataset items in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/acts/fatihtahta~martindale-scraper/runs": {
      "post": {
        "operationId": "runs-sync-fatihtahta-martindale-scraper",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor and returns information about the initiated run in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/runsResponseSchema"
                }
              }
            }
          }
        }
      }
    },
    "/acts/fatihtahta~martindale-scraper/run-sync": {
      "post": {
        "operationId": "run-sync-fatihtahta-martindale-scraper",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor, waits for completion, and returns the OUTPUT from Key-value store in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    }
  },
  "components": {
    "schemas": {
      "inputSchema": {
        "type": "object",
        "properties": {
          "searchByCategory": {
            "title": "Choose the Legal Practice Area to Collect",
            "enum": [
              "all-lawyers",
              "bankruptcy-lawyers",
              "business-law-lawyers",
              "civil-litigation-lawyers",
              "criminal-law-lawyers",
              "divorce-lawyers",
              "elder-law-lawyers",
              "estate-planning-lawyers",
              "family-law-lawyers",
              "general-practice-lawyers",
              "labor-and-employment-lawyers",
              "landlord-and-tenant-law-lawyers",
              "libel-slander-and-defamation-lawyers",
              "lottery-law-lawyers",
              "medical-malpractice-lawyers",
              "personal-injury-lawyers",
              "real-estate-lawyers",
              "social-security-disability-lawyers",
              "traffic-violations-lawyers",
              "trusts-and-estates-lawyers",
              "wills-and-probate-lawyers"
            ],
            "type": "string",
            "description": "Select the Martindale practice-area directory to collect, such as Business Law, Family Law, Personal Injury, Real Estate, or Trusts & Estates. Use All Lawyers for broader regional discovery when specialty filtering is not required."
          },
          "searchByLocation": {
            "title": "Choose the U.S. State or Canadian Province/Territory",
            "enum": [
              "alabama",
              "alaska",
              "arizona",
              "arkansas",
              "california",
              "colorado",
              "connecticut",
              "delaware",
              "district-of-columbia",
              "florida",
              "georgia",
              "hawaii",
              "idaho",
              "illinois",
              "indiana",
              "iowa",
              "kansas",
              "kentucky",
              "louisiana",
              "maine",
              "maryland",
              "massachusetts",
              "michigan",
              "minnesota",
              "mississippi",
              "missouri",
              "montana",
              "nebraska",
              "nevada",
              "new-hampshire",
              "new-jersey",
              "new-mexico",
              "new-york",
              "north-carolina",
              "north-dakota",
              "ohio",
              "oklahoma",
              "oregon",
              "pennsylvania",
              "rhode-island",
              "south-carolina",
              "south-dakota",
              "tennessee",
              "texas",
              "utah",
              "vermont",
              "virginia",
              "washington",
              "west-virginia",
              "wisconsin",
              "wyoming",
              "alberta",
              "british-columbia",
              "manitoba",
              "new-brunswick",
              "newfoundland-and-labrador",
              "northwest-territories",
              "nova-scotia",
              "nunavut",
              "ontario",
              "prince-edward-island",
              "quebec",
              "saskatchewan",
              "yukon-territory"
            ],
            "type": "string",
            "description": "Select the geographic directory to pair with the practice area. Use one focused region per run when you need cleaner monitoring, easier deduplication, or repeatable exports for a specific market."
          },
          "startUrls": {
            "title": "Add Direct Martindale URLs to Collect",
            "type": "array",
            "description": "Paste Martindale search result pages, practice-area directory pages, location pages, or individual lawyer profile URLs, for example https://www.martindale.com/trusts-and-estates-lawyers/all/wyoming/ or https://www.martindale.com/attorney/example-name-123456/. Leave empty when you only want to use the structured search fields above.",
            "items": {
              "type": "string"
            }
          },
          "enrich_data": {
            "title": "Fetch Full Individual Lawyer Profile Details",
            "type": "boolean",
            "description": "Turn this on to visit each individual lawyer page and collect richer public fields such as biography, education and credentials, practice areas, profile photo, firm and office details, ratings, awards, and peer or external-directory reviews. Leave it off for the faster search-card-only flow.",
            "default": false
          },
          "getEmails": {
            "title": "Find Lawyer Email Addresses When Available",
            "type": "boolean",
            "description": "Turn this on to enrich lawyer profiles with likely email addresses when a firm website or usable contact domain is available. Leave it off for faster directory-only exports focused on profile, firm, location, rating, and review metadata.",
            "default": false
          },
          "includeRiskyEmails": {
            "title": "Allow Riskier Email Matches for Broader Coverage",
            "type": "boolean",
            "description": "Keep enabled when broader contact coverage is more important than strict confidence. Turn it off when your workflow should keep only stronger verified email matches and avoid catch-all or lower-confidence candidates.",
            "default": true
          },
          "limit": {
            "title": "Set the Maximum Number of Lawyer Profiles to Save",
            "minimum": 10,
            "type": "integer",
            "description": "Choose the maximum number of profile records to save for each configured source. Use a smaller limit for validation runs and a larger limit for scheduled market monitoring, enrichment backfills, or warehouse imports.",
            "default": 50000
          }
        }
      },
      "runsResponseSchema": {
        "type": "object",
        "properties": {
          "data": {
            "type": "object",
            "properties": {
              "id": {
                "type": "string"
              },
              "actId": {
                "type": "string"
              },
              "userId": {
                "type": "string"
              },
              "startedAt": {
                "type": "string",
                "format": "date-time",
                "example": "2025-01-08T00:00:00.000Z"
              },
              "finishedAt": {
                "type": "string",
                "format": "date-time",
                "example": "2025-01-08T00:00:00.000Z"
              },
              "status": {
                "type": "string",
                "example": "READY"
              },
              "meta": {
                "type": "object",
                "properties": {
                  "origin": {
                    "type": "string",
                    "example": "API"
                  },
                  "userAgent": {
                    "type": "string"
                  }
                }
              },
              "stats": {
                "type": "object",
                "properties": {
                  "inputBodyLen": {
                    "type": "integer",
                    "example": 2000
                  },
                  "rebootCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "restartCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "resurrectCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "computeUnits": {
                    "type": "integer",
                    "example": 0
                  }
                }
              },
              "options": {
                "type": "object",
                "properties": {
                  "build": {
                    "type": "string",
                    "example": "latest"
                  },
                  "timeoutSecs": {
                    "type": "integer",
                    "example": 300
                  },
                  "memoryMbytes": {
                    "type": "integer",
                    "example": 1024
                  },
                  "diskMbytes": {
                    "type": "integer",
                    "example": 2048
                  }
                }
              },
              "buildId": {
                "type": "string"
              },
              "defaultKeyValueStoreId": {
                "type": "string"
              },
              "defaultDatasetId": {
                "type": "string"
              },
              "defaultRequestQueueId": {
                "type": "string"
              },
              "buildNumber": {
                "type": "string",
                "example": "1.0.0"
              },
              "containerUrl": {
                "type": "string"
              },
              "usage": {
                "type": "object",
                "properties": {
                  "ACTOR_COMPUTE_UNITS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_WRITES": {
                    "type": "integer",
                    "example": 1
                  },
                  "KEY_VALUE_STORE_LISTS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_INTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_EXTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_SERPS": {
                    "type": "integer",
                    "example": 0
                  }
                }
              },
              "usageTotalUsd": {
                "type": "number",
                "example": 0.00005
              },
              "usageUsd": {
                "type": "object",
                "properties": {
                  "ACTOR_COMPUTE_UNITS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_WRITES": {
                    "type": "number",
                    "example": 0.00005
                  },
                  "KEY_VALUE_STORE_LISTS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_INTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_EXTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_SERPS": {
                    "type": "integer",
                    "example": 0
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}