# Services from David Ostlund

> David Ostlund is a Pickleball coach in Plymouth, Minnesota.

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

## Services

- [Pickleball Lessons](https://sites.coach/david-ostlund/lessons)
- [Private Lessons](https://sites.coach/david-ostlund/private-lessons/index.md)
- [Group Lessons](https://sites.coach/david-ostlund/group-lessons/index.md)

## Packages and prices

- **Single lesson**: 1 prepaid 60-minute lesson for $75.00 ($75.00 per lesson). Sold as 1 lesson, 1 to 4 students. One private lesson. Pay as you go.
- **5-lesson pack**: 5 prepaid 60-minute lessons for $320.00 ($64.00 per lesson). Sold as 5 lessons, 1 to 4 students. Paid up front. Book them anytime.
- **10-lesson pack**: 10 prepaid 60-minute lessons for $600.00 ($60.00 per lesson). Sold as 10 lessons, 1 to 4 students. Best value for committed students.

## Pages on this site

- [Home](https://sites.coach/david-ostlund/index.md)
- [All services](https://sites.coach/david-ostlund/services/index.md)
- [Pickleball Lessons](https://sites.coach/david-ostlund/lessons)
- [Private Lessons](https://sites.coach/david-ostlund/private-lessons/index.md)
- [Group Lessons](https://sites.coach/david-ostlund/group-lessons/index.md)
- [Lessons in Edina](https://sites.coach/david-ostlund/areas/edina)
- [Lessons in Hopkins](https://sites.coach/david-ostlund/areas/hopkins)
- [Lessons in Mendota Heights](https://sites.coach/david-ostlund/areas/mendota-heights)
- [Lessons in Minneapolis](https://sites.coach/david-ostlund/areas/minneapolis)
- [Lessons in Minnetonka](https://sites.coach/david-ostlund/areas/minnetonka)
- [Lessons in Plymouth](https://sites.coach/david-ostlund/areas/plymouth)
- [Lessons in Saint Louis Park](https://sites.coach/david-ostlund/areas/saint-louis-park)
- [Countryside Park - Edina, Edina](https://sites.coach/david-ostlund/locations/countryside-park-edina)
- [Countryside Park (Tennis Court), Edina](https://sites.coach/david-ostlund/locations/countryside-park-tennis-court-edina)
- [Mooty Pickleball Court, Edina](https://sites.coach/david-ostlund/locations/mooty-pickleball-court-edina)
- [Rosland Park, Edina](https://sites.coach/david-ostlund/locations/rosland-park-edina)
- [Legacy Pickleball, Hopkins](https://sites.coach/david-ostlund/locations/legacy-pickleball-hopkins)
- [The Heights Racquet and Social Club, Mendota Heights](https://sites.coach/david-ostlund/locations/the-heights-racquet-and-social-club-mendota-heights)
- [Garden Park (Tennis Court), Minneapolis](https://sites.coach/david-ostlund/locations/garden-park-tennis-court-minneapolis)
- [Lone Lake Park, Minnetonka](https://sites.coach/david-ostlund/locations/lone-lake-park-minnetonka)
- [PickleX, Plymouth](https://sites.coach/david-ostlund/locations/picklex-plymouth)
- [Wolfe Park, Saint Louis Park](https://sites.coach/david-ostlund/locations/wolfe-park-saint-louis-park)
- [Agent instructions](https://sites.coach/david-ostlund/llms.txt)

## Book through the API

David Ostlund sells Pickleball lessons on this site. It is one coach on TeachMe.To, listing id `ef505ec0-4328-4068-9eb0-71f10b928155`. 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/ef505ec0-4328-4068-9eb0-71f10b928155): 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/ef505ec0-4328-4068-9eb0-71f10b928155/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/david-ostlund/llms.txt).
