# Services from Ed Moran

> Ed Moran is a Tennis coach in Miami, Florida.

Source: https://sites.coach/ed-moran/services. Every page on this site has a Markdown version at its URL plus `/index.md`, or send `Accept: text/markdown`.

## Services

- [Tennis Lessons](https://sites.coach/ed-moran/lessons)

## Packages and prices

- **60-minute private lesson**: 1 prepaid 60-minute lesson for $60.00 ($60.00 per lesson). Sold as 1 lesson. One hour of one-on-one tennis built around your goals.

## Pages on this site

- [Home](https://sites.coach/ed-moran/index.md)
- [About](https://sites.coach/ed-moran/about/index.md)
- [All services](https://sites.coach/ed-moran/services/index.md)
- [Tennis Lessons](https://sites.coach/ed-moran/lessons)
- [Lessons in Miami](https://sites.coach/ed-moran/areas/miami)
- [Devon Aire Park, Miami](https://sites.coach/ed-moran/locations/devon-aire-park-miami)
- [Douglas Park, Miami](https://sites.coach/ed-moran/locations/douglas-park-miami)
- [Ruben Dario Middle School, Miami](https://sites.coach/ed-moran/locations/ruben-dario-middle-school-miami)
- [West End Park, Miami](https://sites.coach/ed-moran/locations/west-end-park-miami)
- [Agent instructions](https://sites.coach/ed-moran/llms.txt)

## Book through the API

Ed Moran sells Tennis lessons on this site. It is one coach on TeachMe.To, listing id `47356167-a2eb-4469-9fc9-4cefd1361cd9`. An agent reads this coach, quotes what this site sells, and books it through the TeachMe.To agent API.

- [Agent instructions, generated from the live API](https://api.teachme.to/agent/v1/llms.txt): Read this before calling anything. Sessions need no registration.
- [This coach](https://api.teachme.to/agent/v1/coaches/47356167-a2eb-4469-9fc9-4cefd1361cd9): The coach read. `site.packages` are the packages sold here, priced as this site prices them, and `site.cancellationPolicy` is this site's policy.
- [Open times](https://api.teachme.to/agent/v1/coaches/47356167-a2eb-4469-9fc9-4cefd1361cd9/slots): Pass `sitePackageId` and `locationId` with `from` and `to`.
- Quotes and bookings: pass `sitePackageId` and `lessons` to `POST /quotes`, then `POST /bookings` with the quote. The booking returns `paymentUrl`; the student pays there, and the booking is readable while they do. Send `policyAccepted: true` after showing the student the policy when `site.cancellationPolicy.agreementRequired` is true.
- [OpenAPI 3.1](https://api.teachme.to/agent/v1/openapi.json): The machine contract.

The `sitePackageId` and `locationId` values for this site are in [llms.txt](https://sites.coach/ed-moran/llms.txt).
