MyMenopauseRxfor developers

Quickstart

From zero to your first provider list in five minutes — no key required.

The provider directory is public, so there's nothing to sign up for. You can run the first call below right now.

See which states we serve

Start here. /v1/states returns the states with bookable care — each with a code, a name, and an appointmentTypeCount — so you can drive a state picker instead of hard-coding codes.

curl https://api.mymenopauserx.com/v1/states

You'll get back { states: [{ code, name, appointmentTypeCount }] }. Pick a code (we'll use CA below) for the state-scoped calls that follow.

List providers in a state

Ask for the first two providers licensed in California.

curl https://api.mymenopauserx.com/v1/providers \
  -G \
  --data-urlencode "state=CA" \
  --data-urlencode "limit=2"
const res = await fetch(
  'https://api.mymenopauserx.com/v1/providers?' +
    new URLSearchParams({ state: 'CA', limit: '2' }),
);
const { total, providers } = await res.json();
console.log(`${total} providers in CA`, providers[0].displayName);
import requests

res = requests.get(
    "https://api.mymenopauserx.com/v1/providers",
    params={"state": "CA", "limit": 2},
)
data = res.json()
print(data["total"], "providers in CA", data["providers"][0]["displayName"])

You'll get back a ProviderDirectoryListResponsetotal, the applied limit and offset, and a providers array.

Narrow it down with filters

Every filter is an optional query parameter and they stack. Combine state, insurance, providerType, and gender to pre-qualify a patient before they ever sign up.

curl https://api.mymenopauserx.com/v1/providers \
  -G \
  --data-urlencode "state=CA" \
  --data-urlencode "insurance=aetna" \
  --data-urlencode "providerType=physician"

The accepted insurance values aren't free text — list them with /v1/insurances, optionally scoping to a state:

curl https://api.mymenopauserx.com/v1/insurances \
  -G --data-urlencode "state=CA"

Filter values are enums

providerType (physician, nursePractitioner) and gender (female, male, nonBinary, other, preferNotToSay) are fixed enums — see the List providers reference for the exact accepted values.

Fetch a full profile

Once you have a provider's slug, pull their complete public profile for a detail page.

curl https://api.mymenopauserx.com/v1/providers/anna-hanna-md

The response is a PublicProviderProfile. Alongside displayName, credentials, bio, education, certifications, and clinicalInterests, a few fields are worth calling out:

  • headshotUrl and profileUrl — a portrait image (nullable) and the canonical URL of the provider's profile on mymenopauserx.com. Prefer profileUrl over building links yourself.
  • appointmentTypes — an array of { id, name, states, description }. The states array tells you which states each visit type is offered in, so you can show only what's bookable where the patient lives.
  • acceptedInsuranceByState — insurance acceptance keyed by state code, since a provider may take different plans in different states.

Licensed ≠ accepting new patients

statesLicensed and statesAcceptingPatients are distinct. A provider can be licensed in a state without currently taking new patients there. The state filter on the list endpoint matches licensure — if you need availability, check statesAcceptingPatients on the profile.

See what visit types a state offers

List the appointment types available in a state, each with an integer id, a name, and its modality (video or async). Omit state to get the full catalog.

curl https://api.mymenopauserx.com/v1/appointment-types \
  -G --data-urlencode "state=CA"

Each item's id is what the availability endpoint expects as its appointmentType — note one down for the next step.

Check open appointment slots

Surface upcoming openings in a state to pre-qualify a patient before signup. Narrow with optional filters: appointmentType (an integer id from the previous step), provider (a slug, to check a single clinician), horizonDays (how far ahead to look), and limit (how many slots to return).

curl https://api.mymenopauserx.com/v1/availability \
  -G \
  --data-urlencode "state=CA" \
  --data-urlencode "appointmentType=1" \
  --data-urlencode "limit=5"

The response echoes back the state, appointmentType, and provider you filtered on, plus a slots array of { startTime, providerSlug } (soonest first) and a convenience nextAvailable timestamp — null when nothing is open.

Next up

On this page