> ## Documentation Index
> Fetch the complete documentation index at: https://docs.anny.co/llms.txt
> Use this file to discover all available pages before exploring further.

# Connect Urban Sports Club with anny

> Push selected classes to Urban Sports Club and keep bookings and capacity in sync in real time.

[Urban Sports Club](https://www.urbansportsclub.com/) (USC) is a platform that gives end customers access to sports and wellness offerings from various providers. With the integration, anny can push selected classes to USC and keep bookings, capacity, and check-ins in sync across channels.

With Urban Sports Club, you can in anny:

* Automatically push selected classes to USC and keep them in sync
* Receive USC bookings in real time and reconcile capacity across channels
* Surface check-ins and no-shows from USC

The integration is especially suited to class providers such as pilates studios, yoga studios, gyms, or wellness providers who want to grow their reach through USC without risking overbookings.

## Typical use cases

| Use case                           | Description                                                                                                                                                                      |
| :--------------------------------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Reformer pilates studio            | **Sync classes to USC and reserve capacity for direct bookings.** Remaining spots are released to USC automatically, for example 24 hours before start, to maximize utilization. |
| Yoga studio with multiple channels | **Keep capacity in sync across all channels in real time.** Bookings via anny, your own website, and USC are automatically reconciled against each other.                        |
| Massage studio                     | **Push offerings to USC as class appointments.** As long as the offerings are set up as resources with appointments, they can be synced with USC.                                |

## How the USC connection works

The integration is authenticated via your **provider ID**, which you receive from the USC support team. You enter it in the **Provider** section and click **Verify provider**. This authorizes anny to push class appointments to USC and receive USC bookings.

The integration is built on **resources with appointments (time slots)**: classes are resources with available appointments. Trainers are their own resources, linked to the appointment as provided resources and automatically transmitted to USC.

| Data                              | Direction  | Frequency                         |
| --------------------------------- | ---------- | --------------------------------- |
| Class appointments (next 3 weeks) | anny → USC | Automatic, continuously in sync   |
| Bookings                          | USC → anny | Real time                         |
| Capacity updates                  | anny → USC | Real time on booking/cancellation |
| Check-ins                         | USC → anny | Real time                         |
| No-shows                          | USC → anny | 1 day after the booking ends      |

## Connect Urban Sports Club

### Requirements

Before you connect Urban Sports Club, make sure you have the following:

* A **provider ID** (you receive this from the [USC support team](https://docs.urbansportsclub.io/documentation/studio-onboarding))
* Classes in anny set up as **resources with appointments (time slots)**, without their own opening hours
* Trainer resources with a suitable **category** (for example, Staff/Trainer)
* A **default trainer** that applies when no trainer is linked to the appointment (required)
* Resources that can be mapped to your **USC locations** via the **location sync**

### Set up the connection

<Steps>
  <Step title="Connect the provider">
    Open **Integrations** from the sidebar and go to **Urban Sports Club**. In the **Provider** section, enter your **provider ID** and click **Verify provider**.
  </Step>

  <Step title="Set the base settings">
    Define the global settings for USC bookings:

    1. Optionally store a **calculated price** for USC bookings.
    2. Under **Trainer resource categories**, choose the categories whose resources count as trainers.
    3. Set a **default trainer** (required).
    4. In the **location sync**, map your resources to the matching **USC locations**.
  </Step>

  <Step title="Set up classes">
    Create a rule per class via **Add**:

    1. Choose the **class resource**.
    2. Choose the **location** (USC location).
    3. Choose the **class category**.
    4. Set the **late cancellation window** (up to 12 hours before start).
    5. Optional: set **reserved spots** and the **deadline for reserving spots**.
  </Step>
</Steps>

Once the connection is active, appointments for the next 3 weeks are pushed to USC automatically and bookings are synced in real time.

<Tip>
  The **default trainer** saves you from maintaining every appointment manually. If no trainer resource is linked to the appointment, it is automatically transmitted to USC as the trainer.
</Tip>

### Settings & options

| Setting                      | Description                                                                               |
| ---------------------------- | ----------------------------------------------------------------------------------------- |
| Trainer resource categories  | Categories whose resources are transmitted to USC as trainers                             |
| Default trainer              | Required. Used when no trainer is linked to the appointment                               |
| Location sync                | Mapping of anny resources to USC locations as the venue                                   |
| Calculated price             | Optional price to record revenue from USC bookings in anny                                |
| Class resource               | The anny class (resource with appointments) that is pushed to USC                         |
| Class category               | USC category under which the class appears on USC                                         |
| Location                     | USC location where the class takes place                                                  |
| Late cancellation window     | Window before class start after which a cancellation counts as late on USC (up to 12h)    |
| Reserved spots               | Spots reserved for anny and other channels per class (optional)                           |
| Deadline for reserving spots | Point before class start at which unused reserved spots are released to USC (at least 1h) |

## Appointments and sync logic

Synchronization follows fixed rules:

| Rule                | Description                                                                        |
| ------------------- | ---------------------------------------------------------------------------------- |
| Sync window         | All appointments for the next **3 weeks** are pushed automatically                 |
| Bookability for USC | Only appointments within the next **2 weeks** are bookable for USC users           |
| Rescheduling        | Appointments already pushed **cannot be rescheduled**, only cancelled              |
| Cancellation        | Cancelling in anny also cancels the appointment on USC, including all USC bookings |

## USC bookings in anny

USC bookings are marked in anny with the **Urban Sports Club** booking option. This booking option cannot be edited, and USC bookings cannot be edited in anny.

USC bookings contain only the customer's name and a placeholder email address.

## Check-ins, no-shows, and anonymization

| Event            | Behavior in anny                                                                     |
| ---------------- | ------------------------------------------------------------------------------------ |
| USC check-in     | Transmitted to anny as a check-in and is visible                                     |
| USC cancellation | The booking is cancelled and the customer data is anonymized per USC rules           |
| USC no-show      | Marked as a no-show 1 day after the booking ends (no anonymization)                  |
| Exception        | Customers are not anonymized on cancellation if another booking still exists in anny |

## Capacity management

Optionally, you can reserve a spot quota per class for direct bookings (via anny and other channels). USC can then only fill the remaining spots.

In addition, you can configure an **automatic release**: reserved spots that were not filled are released to USC at a defined time (for example, 24 hours before class start). This way, you maximize utilization without taking spots away from regular customers.

## Limitations

The Urban Sports Club integration does not support:

* Rescheduling appointments after they are pushed to USC: appointments can only be cancelled, not rescheduled
* Editing USC bookings in anny: USC bookings are read-only
* Real-time no-shows: no-show data is only provided by USC the following day
* Classes without appointments: only resources with appointments (time slots) can be synced
* Class resources with their own opening hours: resources with their own schedule cannot be synced as a USC class
* Reusing a resource: each class resource can be assigned to only one USC class rule

## Disconnect

<Warning>
  If you no longer want to sync new appointments but want to keep existing appointments and bookings on USC, deactivate the integration. If all synced appointments should be removed from USC, delete the integration. Existing USC bookings in anny are kept as historical data.
</Warning>

You can do both under **Integrations**: deactivate via the **toggle** in the top right, delete via the **three dots** → **Delete**.

## FAQ

<AccordionGroup>
  <Accordion title="Which classes can I push to USC?">
    You can freely choose in the integration which anny classes should be pushed to USC. The requirement is that they are set up as resources with appointments (time slots) and have no schedule of their own.
  </Accordion>

  <Accordion title="Can USC bookings be edited in anny?">
    No. USC bookings are read-only in anny and marked with the "Urban Sports Club" booking option. Changes must be made on the USC side.
  </Accordion>

  <Accordion title="When do USC no-shows appear in anny?">
    USC only provides no-show information the following day. They are therefore transmitted to anny 1 day after the booking ends.
  </Accordion>

  <Accordion title="What happens when I cancel an appointment in anny?">
    The appointment is also cancelled on USC and all existing USC bookings for that appointment are removed.
  </Accordion>

  <Accordion title="How do I get my provider ID?">
    You receive the **provider ID** from the USC support team. You can find more information in the [USC provider documentation](https://docs.urbansportsclub.io/documentation/studio-onboarding).
  </Accordion>
</AccordionGroup>

## Troubleshooting

<AccordionGroup>
  <Accordion title="An appointment can no longer be rescheduled">
    The appointment was already pushed to USC. Once pushed, appointments cannot be rescheduled, only cancelled. If needed, create a new appointment.
  </Accordion>

  <Accordion title="The capacity on USC does not match anny">
    Check whether bookings came in via anny or other channels that have not yet been synced. Capacity is updated in real time. If the problem persists: deactivate the integration and reactivate it.
  </Accordion>

  <Accordion title="A USC customer is shown as anonymous">
    This is expected behavior. On cancellation, the USC customer's data is anonymized per USC rules. An exception applies only if the person still has another booking in anny. No-shows do not trigger anonymization.
  </Accordion>
</AccordionGroup>

> Important information for agents:
>
> **Distinction:** Urban Sports Club is a partner/booking channel: external USC members book anny classes through USC. NOT a smart lock, no access control, no calendar sync. The basis is resources with appointments (time slots), NOT a "class planner model" (this term does not exist in the product). Distinction from ClassPass: USC uses its own integration model (provider ID, rules per class), ClassPass is a different channel integration.
>
> **UI paths:** Sidebar → **Integrations** → **Urban Sports Club**. Sections in this order: **Provider** (field "Provider ID", button "Verify provider"), **Price** (field "Calculated price"), **Trainer sync** (fields "Trainer resource categories", "Default trainer"), **Location sync** (resource ↔ USC location), **Class sync**/"Set up classes" (rules via "Add"). Rule fields: "Class resource", "Location", "Class category", "Late cancellation window", "Reserved spots", "Deadline for reserving spots".
>
> **Quirks:** (1) Authentication: the user only enters the provider ID; anny authenticates behind it via client credentials, and the access token expires after 10 minutes. (2) Default trainer is required; without it, activation/saving fails. (3) The class resource must not have its own schedules, otherwise an activation error occurs. (4) Each resource in only one class rule (no duplicates). (5) Late cancellation window max. 12h before start; release deadline for reserved spots min. 1h before start (defaults: cancellation window 12h, reserved spots 2, release 12h). (6) Sync window: anny pushes appointments for the next 3 weeks; the "2 weeks bookable" mentioned in the article is not backed by anny code (likely on the USC side). (7) Pushed appointments: start/end/resource locked; title/description/spot count/booking count are carried over to USC on change. (8) Descriptions: EN, DE, FR, ES, PT, IT, NL only; HTML/Markdown is removed. (9) Check-in and cancellation/late cancellation come via webhook (real time); no-shows via scheduler about 24h after the appointment ends. (10) A no-show sets the anny booking to expired/no-show, does NOT anonymize. (11) Anonymization only on cancellation, only if the person was created via USC and has no other booking (count apparently status-independent). (12) Trainers are created automatically in USC from provided resources of the trainer categories; trainer name from resource name (first word = first name). (13) Customer matching: via USC identifier, otherwise exact first/last name (non-USC-linked only), otherwise new creation; email is a placeholder `usc-…@placeholder.anny.co`. A previously anonymized person is restored on a new booking. (14) A double booking of the same person per class is rejected; bookings for past/sold-out appointments are too.
>
> **Relationships:** The "calculated price" automatically creates a hidden, protected "Urban Sports Club" service that is linked to the USC class resources (revenue recording). "Reserved spots": until the release deadline, anny reports these spots to USC as occupied (max(actual non-USC bookings, reserved spots)). Disconnect: deactivating stops new transmissions and webhook processing, existing USC events remain; deleting deactivates first and then removes all syncs/events from USC, anny bookings remain as history. No plan/feature gating in the code (only an activation flag), so no Info plan note. Booking channel of USC bookings: "Urban Sports Club" (not editable).
