Discover/osler.com API
live

osler.com APIwww.osler.com

Search and retrieve detailed profiles of lawyers at Osler, Hoskin & Harcourt LLP. Filter by office, role, practice area, and bar admission year.

Endpoint health
monitored
search_lawyers
get_lawyer_profile
0/2 passing latest checkself-healing
Endpoints
2
Updated
52m ago
Try it
Page number for pagination.
Filter by role category.
Free-text search query matching lawyer names.
Filter by office location.
Number of results per page, between 1 and 100.
Comma-separated list of bar admission years to filter by (e.g. '2019,2020,2021'). When specified, only lawyers admitted in any of these years are returned. Requires fetching each profile individually, so responses are slower.
Filter by practice area name (e.g. 'Capital Markets', 'Artificial Intelligence', 'Mergers and Acquisitions'). Case-insensitive. Numeric IDs are also accepted for backward compatibility.
api.parse.bot/scraper/e89d5907-bb2a-49c9-a5de-3d56c43b6dcc/<endpoint>
Ready to send
Fill in the parameters and hit sign in to send to see live response data here.
Use it in your codegrab a free API key at signup
curl -X GET 'https://api.parse.bot/scraper/e89d5907-bb2a-49c9-a5de-3d56c43b6dcc/search_lawyers?page=1&role=Partner&office=toronto&bar_years=1995%2C2000%2C2005&practice_area=Capital+Markets&per_page=10' \
  -H 'X-API-Key: $PARSE_API_KEY'
Or use the typed Python SDKfully typed · autocompletes

Typed Python client. Install the CLI, sign in, then pull this API’s generated client:

pip install parse-sdk
parse login
parse add --marketplace osler-com-api

parse add --marketplace pulls a pinned snapshot of this canonical API — it won’t change underneath you. To customize it, subscribe and swap to your own copy.


"""Walkthrough: Osler People API — search lawyers, drill into profiles."""
from parse_apis.Osler_People_API import Osler, Office, Role, LawyerNotFound

client = Osler()

# Search for partners in the Toronto office, capped at 5 results.
for lawyer in client.lawyer_summaries.search(office=Office.TORONTO, role=Role.PARTNER, limit=5):
    print(lawyer.name, "|", lawyer.role, "|", lawyer.office)

# Drill into the first result's full profile.
summary = client.lawyer_summaries.search(practice_area="Capital Markets", limit=1).first()
if summary:
    full_profile = summary.details()
    print(full_profile.name, full_profile.email)
    for admission in full_profile.bar_admissions:
        print(f"  Bar: {admission.jurisdiction}, {admission.year}")
    print(f"  Languages: {full_profile.languages}")
    print(f"  Expertise: {full_profile.expertise[:3]}")

# Fetch a lawyer directly by slug.
try:
    lawyer = client.lawyers.get(slug="sandra-abitan-ad-e")
    print(lawyer.name, lawyer.role, lawyer.office)
except LawyerNotFound as exc:
    print(f"Not found: {exc}")

# Filter by bar admission year — find recently admitted lawyers in Montreal.
for recent in client.lawyer_summaries.search(office=Office.MONTREAL, bar_years="2020,2021", limit=3):
    print(recent.name, recent.role)

print("exercised: lawyer_summaries.search / summary.details / lawyers.get / bar_years filter")
All endpoints · 2 totalmissing one? ·

Search for lawyers at Osler with optional filters. Returns paginated results with a configurable number of results per page (up to 100). The site serves 10 results per server page, so larger per_page values trigger multiple internal fetches. When bar_years is specified, each result is enriched with bar admission data and only lawyers admitted in any of the specified years are returned.

Input
ParamTypeDescription
pageintegerPage number for pagination.
rolestringFilter by role category.
querystringFree-text search query matching lawyer names.
officestringFilter by office location.
per_pageintegerNumber of results per page, between 1 and 100.
bar_yearsstringComma-separated list of bar admission years to filter by (e.g. '2019,2020,2021'). When specified, only lawyers admitted in any of these years are returned. Requires fetching each profile individually, so responses are slower.
practice_areastringFilter by practice area name (e.g. 'Capital Markets', 'Artificial Intelligence', 'Mergers and Acquisitions'). Case-insensitive. Numeric IDs are also accepted for backward compatibility.
Response
{
  "type": "object",
  "fields": {
    "page": "integer",
    "results": "array of lawyer summaries with name, slug, role, office, phone, bio_snippet, and optionally bar_admissions",
    "per_page": "integer",
    "total_pages": "integer",
    "total_results": "integer"
  },
  "sample": {
    "data": {
      "page": 1,
      "results": [
        {
          "name": "Jane Doe",
          "role": "Associate, Disputes",
          "slug": "jane-doe",
          "phone": "+1 (555) 012-3456",
          "office": "Toronto",
          "bio_snippet": "Jane Doe is an associate in the Disputes Group..."
        }
      ],
      "total_pages": 1,
      "total_results": 7
    },
    "status": "success"
  }
}

About the osler.com API

The Osler API provides 2 endpoints to search and retrieve lawyer profiles from Osler, Hoskin & Harcourt LLP, one of Canada's largest law firms. The search_lawyers endpoint returns paginated results with up to 10 lawyers per page, each including name, role, office, phone, and bio snippet. The get_lawyer_profile endpoint returns a full individual profile with 9 distinct fields including bar admissions, education, expertise areas, and languages spoken.

Searching Lawyers

The search_lawyers endpoint accepts optional filters for office, role, practice_area, and query (free-text name search). Results are paginated at 10 per page; use the page parameter to navigate. The response includes total_results and total_pages alongside an array of lawyer summaries. Each summary contains name, slug, role, office, phone, and a bio_snippet.

Filtering by Bar Admission Year

The bar_years parameter accepts a comma-separated list of years (e.g., 2019,2020,2021). When supplied, each result is enriched with a bar_admissions field and only lawyers admitted in one of those years are returned. This filter can be combined with office or practice_area to narrow results further. The practice_area filter takes a numeric ID — for example, 6989 for Capital Markets.

Full Lawyer Profiles

The get_lawyer_profile endpoint takes a slug — the URL path segment from the lawyer's profile page — and returns a complete record. Fields include name, role, email, phone, office, biography, education (array of credentials), expertise (array of practice area names), and languages. This endpoint is the right choice when you need structured contact details, full biography text, or a list of areas of expertise for a specific individual.

Coverage and Scope

The directory covers lawyers listed on the Osler website across all offices. Profile completeness varies by individual — some profiles may not include email addresses or language data if the source profile omits them. Pagination behavior and available filter IDs for practice_area reflect the categorizations used on the Osler site.

Reliability & maintenance

The osler.com API is a managed, monitored endpoint for www.osler.com — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when www.osler.com changes and a check fails, the API is automatically queued for repair and re-verified. It is built to keep working as the site underneath it changes.

This isn't an official www.osler.com API — it's an independent, maintained REST wrapper over public data. Where the source has no official API (or only a limited one), Parse gives you a stable contract over a source that never promised one, and keeps it current. Need a new endpoint or field? You can revise it yourself in plain English and the agent rebuilds it against the live site in minutes — contributing the change back to the shared API is free.

Latest check
0/2 endpoints passing
Maintenance
Monitored & self-healing
Will this API break when the source site changes?+
It's built not to. Every endpoint is health-checked on a schedule with automated test probes. When the source site changes and a check fails, the API is automatically queued for repair and re-verified — that's the self-healing layer. Each API page shows when its endpoints were last verified. And because marketplace APIs are shared, any fix reaches everyone using it.
Is this an official API from the source site?+
No — Parse APIs are independent, managed REST wrappers over publicly available data. That is the point: where a site has no official API (or only a limited one), Parse gives you a maintained, monitored endpoint for that data and keeps it working as the site changes — so you get a stable contract over a source that never promised one.
Can I fix or extend this API myself if I need a new endpoint or field?+
Yes — and you don't have to wait on us. This API was generated by the Parse agent, which stays attached. Describe the change in plain English ("add an endpoint that returns reviews", "fix the price field") in the revise box on the API page or via the revise_api MCP tool, and the agent rebuilds it against the live site in minutes. Contributing the change back to the public API is free.
What happens if I call an endpoint that has an issue?+
Errors are machine-readable: a bad call returns a clean status with the list of available endpoints and a repair hint, so an agent (or you) can recover or trigger a fix instead of failing silently. Confirmed failures feed the automatic repair queue.
Common use cases
  • Build a filtered directory of Osler lawyers by Canadian office location for a legal referral tool.
  • Identify junior associates admitted to the bar in specific years using the bar_years filter.
  • Pull structured education and expertise arrays from get_lawyer_profile to populate a CRM or knowledge base.
  • Match client needs to lawyers by querying specific practice_area IDs such as Capital Markets.
  • Extract languages fields to route multilingual clients to appropriate counsel.
  • Aggregate bio_snippet and role data from search_lawyers to compare lawyers across offices in bulk.
  • Monitor changes to individual lawyer profiles over time by periodically calling get_lawyer_profile with known slugs.
Pricing & limitsSee full pricing →
TierPriceCredits/monthRate limit
Free$0/mo1005 req/min
Hobby$30/mo1,00020 req/min
Developer$100/mo5,000250 req/min

One credit = one API call regardless of which marketplace API you call. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.

Frequently asked questions
Does Osler provide an official public developer API?+
Osler, Hoskin & Harcourt LLP does not publish a public developer API for its lawyer directory. This Parse API provides structured programmatic access to the data available on their public website.
What does search_lawyers return when I use the bar_years filter versus not using it?+
Without bar_years, each result in the array contains name, slug, role, office, phone, and bio_snippet. When bar_years is specified, results are additionally filtered to only lawyers admitted in those years, and each object gains a bar_admissions field with structured admission data.
How does pagination work in the search endpoint?+
Results are returned 10 per page. The response includes total_results and total_pages so you can calculate how many requests are needed to walk the full result set. Increment the page parameter to retrieve subsequent pages.
Does the API return a lawyer's billing rate or client matter history?+
No billing rates, hourly fees, or matter history are exposed. The API covers public directory fields: contact details, biography, practice areas, education, bar admissions, and languages. You can fork this API on Parse and revise it to add an endpoint if Osler publishes any additional structured profile data in the future.
Are alumni or former lawyers included in the directory?+
The API returns profiles currently listed on the Osler public lawyer directory. Former lawyers who no longer appear on the site are not included. You can fork the API on Parse and revise it to target any archived or legacy profile pages if your use case requires historical coverage.
Page content last updated . Spec covers 2 endpoints from www.osler.com.
Related APIs in B2b DirectorySee all →
crunchbase.com API
Search and retrieve detailed information about companies, investors, and key people to discover funding opportunities, track market competitors, and analyze investment trends. Access comprehensive profiles including organization details, investor backgrounds, and complete funding round histories all in one place.
dnb.com API
Search millions of companies in Dun & Bradstreet's global business directory to find detailed company profiles and verify D-U-N-S numbers. Look up key business information like company details and identifiers to support due diligence, sales prospecting, and business intelligence needs.
ycombinator.com API
Access comprehensive data from the Y Combinator ecosystem, including company profiles, founder and partner information, job listings, and the YC library. Filter companies by batch, industry, and hiring status, and explore detailed profiles with social links, team information, and funding metadata.
opencorporates.com API
Access comprehensive company registration data, officer details, and filing histories from OpenCorporates across jurisdictions worldwide to research businesses and their leadership. Search for specific companies or officers, retrieve detailed corporate information, and explore filing records to support due diligence, compliance checks, and business intelligence.
explodingtopics.com API
Discover rapidly growing trends, emerging startups, and top-performing websites by filtering through trending topics by category and volatility. Programmatically access detailed trend analysis, related topics, blog coverage, and curated highlights to stay ahead of market movements.
yellowpages.com.au API
Search Australian businesses by category to find contact details, addresses, and emails, then retrieve comprehensive business information for any listing. Perfect for building lead lists, verifying business information, or discovering local service providers across Australia.
yellowpages.com API
Search and retrieve business listings, contact info, hours, categories, and customer reviews from YellowPages.com. Browse by category or location across the US.
yellowpages.ca API
Search for businesses across Canada and retrieve detailed information including contact details, ratings, reviews, and website data. Supports keyword and location-based discovery of local businesses for research, analysis, and data enrichment use cases.