Gottlieb-Cohen APIgottliebcohen.com ↗
Access the public practice profile of Gottlieb-Cohen Psychotherapy via API: provider credentials, contact info, office locations, modalities, specialties, and fees.
What is the Gottlieb-Cohen API?
The Gottlieb-Cohen Psychotherapy API exposes the full public practice profile of this New Haven, CT psychotherapy practice in a single endpoint — get_practice_profile — returning 11 structured fields including provider credentials, office records with geocoordinates, treatment modalities, specialties, accepted fees by service type, and published contact numbers. Everything the practice publishes about itself is returned in one round trip with no required inputs.
No input parameters required.
curl -X GET 'https://api.parse.bot/scraper/beb4fce8-c7e5-4ca3-b45a-5dc8a3611e58/get_practice_profile' \ -H 'X-API-Key: $PARSE_API_KEY'
Typed, relational, agent-ready
A generated client with real types, enums, and the links between objects — the structure a flat JSON response can't carry. Autocompletes in your editor and reads cleanly to coding agents.
- Fully typed · autocompletes
- Objects link to objects
- Typed errors & pagination
Typed Python client. Set up the SDK in your uv project, then pull this API’s typed client:
uv add parse-sdk uv run parse init uv run parse add --marketplace gottliebcohen-com-api
uv run 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: Gottlieb-Cohen Psychotherapy practice profile SDK."""
from parse_apis.gottliebcohen_com_api import GottliebCohen, ParseError
client = GottliebCohen()
# Fetch the full practice profile in a single call.
try:
practice = client.practices.get()
except ParseError as e:
print("Could not load practice profile:", e)
raise
print(practice.practice_name, "-", practice.provider_name)
print("Title:", practice.provider_title, "| Credentials:", practice.credentials)
# Contact info
print("Phone:", practice.phone)
print("Email:", practice.contact_email)
print("Address:", practice.service_address)
print("Website:", practice.website_url)
# Office details
for office in practice.offices:
print(f"Office: {office.name} — {office.city}, {office.state} {office.zip}")
print(f" Coordinates: ({office.latitude}, {office.longitude})")
# Modalities and specialties
print("Modalities:", ", ".join(practice.modalities))
print("Specialties:", ", ".join(practice.specialties[:5]))
# Insurance and fees
print("Accepts insurance:", practice.accepts_insurance)
print("Insurance:", ", ".join(practice.insurance_providers))
if practice.fees:
fee = practice.fees[0]
print(f"Fee: {fee.service} — ${fee.min_fee} {fee.currency.upper()}")
# Booking path for new clients
booking = practice.new_client_appointment
print("Accepting new clients:", booking.accepting_new_clients)
print("Online booking:", booking.new_clients_may_book_online)
print("Client portal:", booking.client_portal_url)
print("exercised: practices.get")
Returns the practice's public profile as one object in a single round trip, read from the practice website's embedded data. Includes the provider name and credential suffix (e.g. LCSW), the listed phone numbers, the published service address and office records, treatment modalities, specialties, whether insurance is accepted and which plans are listed, published fees (min_fee/max_fee are numbers in the stated currency; max_fee is null when only a single rate is published), telehealth/online-payment flags, and a new_client_appointment block describing how a prospective client can book (accepting_new_clients flag, whether a request-appointment link is shown, whether online self-scheduling is enabled, client portal URL, and booking phone). Takes no parameters. Narrative fields (about, intro) are free text as published.
No input parameters required.
{
"type": "object",
"fields": {
"fees": "array of {service, min_fee, max_fee, currency}; max_fee null when a single rate is published",
"about": "published about text",
"intro": "published welcome text",
"phone": "primary practice phone as published",
"phones": "array of {type, number} phone records",
"offices": "array of office records {office_id, name, city, state, zip, phone, is_video, is_public, latitude, longitude}",
"timezone": "IANA timezone of the practice",
"modalities": "array of treatment modality names",
"credentials": "credential/licensure suffix parsed from provider_name (e.g. LCSW); null if none published",
"specialties": "array of specialty names",
"website_url": "practice website URL",
"contact_email": "practice contact email, null if not published",
"practice_name": "practice display name",
"provider_name": "clinician's full name with credential suffix as published",
"provider_title": "clinician's professional title",
"online_payments": "boolean",
"service_address": "current service address as a single published string",
"accepts_insurance": "boolean, whether the practice indicates it accepts insurance",
"offers_telehealth": "boolean",
"insurance_providers": "array of accepted insurance plan names",
"new_client_appointment": "object describing the new-client booking path: accepting_new_clients, request_appointment_link_shown, online_self_scheduling_enabled, new_clients_may_book_online, new_clients_may_join_waitlist, booking_minimum_lead_seconds, client_portal_enabled, client_portal_url, contact_form_available, booking_phone"
},
"sample": {
"data": {
"fees": [
{
"max_fee": null,
"min_fee": 150,
"service": "Psychotherapy (55 minutes)",
"currency": "usd"
}
],
"about": "My top priority is to make our therapeutic relationship client-centered and collaborative...",
"intro": "I believe that a therapist's role is not to dictate or prescribe solutions...",
"phone": "+1 (555) 012-3456",
"phones": [
{
"type": "Mobile",
"number": "+1 (555) 012-3456"
}
],
"offices": [
{
"zip": "06515-2168",
"city": "New Haven",
"name": "Office",
"phone": "+1 (555) 012-3456",
"state": "CT",
"is_video": false,
"latitude": 41.33,
"is_public": false,
"longitude": -72.96,
"office_id": "35323523"
}
],
"timezone": "America/New_York",
"modalities": [
"Psychodynamic Therapy",
"Cognitive Behavioral Therapy (CBT)",
"Trauma Focused"
],
"credentials": "LCSW",
"specialties": [
"Anxiety",
"Depression",
"Trauma"
],
"website_url": "https://www.gottliebcohen.com/",
"contact_email": "[email protected]",
"practice_name": "Gottlieb-Cohen Psychotherapy",
"provider_name": "John Doe, LCSW",
"provider_title": "Psychotherapist",
"online_payments": true,
"service_address": "123 Main St, Springfield, IL 62704",
"accepts_insurance": true,
"offers_telehealth": true,
"insurance_providers": [
"Optum/United Behavioral Health"
],
"new_client_appointment": {
"booking_phone": "+1 (555) 012-3456",
"client_portal_url": "https://www.gottliebcohen.com/sign-in",
"accepting_new_clients": false,
"client_portal_enabled": true,
"contact_form_available": false,
"new_clients_may_book_online": true,
"booking_minimum_lead_seconds": 86400,
"new_clients_may_join_waitlist": false,
"online_self_scheduling_enabled": false,
"request_appointment_link_shown": true
}
},
"status": "success"
}
}About the Gottlieb-Cohen API
What the API Returns
The single get_practice_profile endpoint returns the complete public profile of Gottlieb-Cohen Psychotherapy as one structured object. Core identity fields include the provider's credential suffix (e.g. LCSW) parsed from the published name, the primary phone, and a phones array that breaks down each number by type. The about and intro fields carry the practice's published descriptive text, useful for directory display or profile aggregation.
Location and Office Data
The offices array provides one record per office location, each with office_id, name, city, state, zip, phone, latitude, longitude, is_video, and is_public flags. The timezone field returns the practice's IANA timezone string. These fields are suitable for mapping, scheduling context, or directory listings that need geocoordinates alongside contact data.
Clinical Profile Fields
The modalities array lists named treatment approaches the practice publishes (e.g. cognitive-behavioral, psychodynamic). The specialties array lists the clinical focus areas. Together these fields allow filtering or matching in mental health directory applications without any free-text parsing.
Fee Structure
The fees array contains one object per published service, each with service name, min_fee, max_fee, and currency. When the practice publishes a single rate rather than a range, max_fee is returned as null. This makes it straightforward to display fee ranges or flat rates conditionally in a UI.
The Gottlieb-Cohen API is a managed, monitored endpoint for gottliebcohen.com — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when gottliebcohen.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 gottliebcohen.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.
Will this API break when the source site changes?+
Is this an official API from the source site?+
Can I fix or extend this API myself if I need a new endpoint or field?+
What happens if I call an endpoint that has an issue?+
- Populate a mental health provider directory card with credentials, specialty areas, and office address from the
officesandcredentialsfields. - Display a fee transparency widget using the
feesarray to show per-service cost ranges or flat rates. - Build a geocoded provider map using
latitudeandlongitudefrom theofficesrecords. - Filter providers by treatment approach in a therapist-matching tool using the
modalitiesarray. - Aggregate clinical specialty data across multiple practices using the
specialtiesfield for category analysis. - Surface telehealth availability by reading the
is_videoflag on each office record. - Keep a CRM or referral database current with the practice's published contact numbers from the
phonesarray.
| Tier | Price | Credits/month | Rate limit |
|---|---|---|---|
| Free | $0/mo | 200 | 5 req/min |
| Hobby | $30/mo | 1,000 | 20 req/min |
| Developer | $100/mo | 5,000 | 100 req/min |
| Team | $300/mo | 20,000 | 300 req/min |
| Company | $1,000/mo | 100,000 | 500 req/min |
Each endpoint has a fixed posted price per successful call — most fall between 1 and 10 credits — shown on this API's page before you run it. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.
Does gottliebcohen.com have an official developer API?+
What does the offices array actually contain, and does it cover multiple locations?+
offices includes office_id, name, city, state, zip, phone, latitude, longitude, is_video, and is_public. The array reflects whatever office records the practice publishes — if only one location is listed on the site, only one record is returned.Does the API return insurance plans the practice accepts?+
How current is the data returned by get_practice_profile?+
get_practice_profile will return the updated values.Can I retrieve individual fields like just the phone number or just the fees without fetching the full profile?+
get_practice_profile endpoint takes no inputs and always returns the full profile object. There is no field-level filtering built in. The API covers all published fields in one response, so callers should select the fields they need client-side. You can fork the API on Parse and revise it to expose a slimmer endpoint if you need a subset-only response.